代码拉取完成,页面将自动刷新
同步操作将从 mynameisi/书法体识别APP 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
import cv2 # OpenCV,用于图像处理
import numpy as np # NumPy,用于科学计算
from skimage import io,img_as_float,color,exposure,feature # skimage的io和img_as_float,用于图像读取和转换
from tensorflow.keras.preprocessing.image import img_to_array,load_img
from tensorflow.keras.applications.vgg16 import VGG16, preprocess_input
#传统图像展平
def preprocess_image(file_name, new_size):
"""
预处理图像:读取图像,调整大小,并展平为一维数组
"""
# 以灰度模式读取图像,并将图像转为浮点类型
img = img_as_float(io.imread(file_name, as_gray=True))
#调整图像大小
img = cv2.resize(img, new_size)
#将图像展平为一维数组
img = img.ravel()
return img
#HOG特征提取
# def preprocess_image(file_name, new_size):
# """
# 预处理图像:读取图像,调整大小,提取特征
# """
# # 加载图片并将其转化为灰度图,因为HOG特征只对灰度图有效
# img = img_as_float(io.imread(file_name, as_gray=True))
#
# # 调整图像大小
# img = cv2.resize(img, new_size)
#
# # 灰度图像提取特征,不用再进行额外的展平操作,已经是一维数组
# img = feature.hog(img, orientations=9, pixels_pe _cell=(16, 16), cells_per_block=(2, 2))
#
# return img
#CNN模型VGG16特征提取
# def preprocess_image(file_name, new_size):
# """
# 预处理图像:读取图像,调整大小,并将其转换为VGG16模型的输入格式
# """
# # 加载图像并调整大小
# img = load_img(file_name, target_size=new_size)
#
# # 将图像转换为Numpy数组
# img = img_to_array(img)
# X = np.array([img])
#
# # 对图像进行预处理以适合VGG16模型
# img_preprocessed = preprocess_input(X)
#
# # 调用VGG16模型并加载预训练权重
# model = VGG16(weights='imagenet', include_top=False,pooling="max")
#
# # 使用VGG16模型对图像进行特征提取
# features = model.predict(img_preprocessed)
#
# return features.flatten()#返回一维
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。