机器学习——图像识别(卷积神经网络)
提取图片的特征,特征分类处理,训练并建立模型,然后在进行识别。主要通过通过颜色和纹理对图像特征进行提取。定义一个模型并提供初始的参数值向模型输入图像数据集和已知的正确标签进行训练模型重复校验,训练数据,持续调整参数值直至找到合适的参数使模型输出尽可能多的正确结果当训练完成,找到最优(接近最优的模型参数)。
图像识别是指对原始图像进行整体分析来达到预测原始图像所属类别的技术。计算机视觉领域中对图像识别技术进行了优化,与此同时,深度学习技术也对图像识别领域展开了突破。
首先,定义一个通用的数学模型,将输入图像转换为输出标签。
这个模型的实际输出不仅仅依赖于图像本身,还依赖模型内建的参数。这些参数由计算机通过学习获得。
图像识别步骤:
定义一个模型并提供初始的参数值
向模型输入图像数据集和已知的正确标签进行训练
模型重复校验,训练数据,持续调整参数值
直至找到合适的参数使模型输出尽可能多的正确结果
当训练完成,找到最优(接近最优的模型参数)。
首先是提取图片的特征,将这些特征进行分类处理,训练并建立模型,然后在进行识别。
但是让计算机去区分这些图片分别是哪一类是很不容易的,不过计算机可以知道图像的像素值的,因此,在图像识别过程中,通过颜色特征来识别是相似图片是我们常用的方式,
卷积神经网络:
卷积神经网络就相当于是采用一个内核,即一个规模较小的矩阵,去处理一个比较小的区域,然后去通过移动这个小矩阵,去处理不同的这个块。(自动从图像中去提取特征)
利用这些图片,需要对图像进行处理,提高图片质量或提取图片内容信息。 图像处理的常见操作包括图像显示,基本操作如裁剪,翻转,旋转等,图像分割,分类和特征提取,图像恢复和图像识别。
颜色:
利用颜色直方图描述图像中像素颜色的数值分布情况,可以反映图像颜色的统计分布和图像基本色调。
plt.figure()
plt.subplot(221)
plt.axis('off')
plt.title('原始图像')
plt.imshow(img)
纹理:
统计纹理分析方法是较常用的纹理特征描述分析方法,通过统计图像的空间频率、边界频率以及空间灰度依赖关系等对纹理进行描述。
ax = fig.add_subplot(3, 2, 2)
ax.plot(xs[:len(grass_patches)], ys[:len(grass_patches)], 'go', label='Grass')
ax.plot(xs[:len(sky_patches)], ys[:len(sky_patches)], 'bo', label='Sky')
ax.set_xlabel('灰度共生矩阵相似性')
ax.set_ylabel('灰度共生矩阵相关度')
ax.legend()
本文参考链接:
更多推荐
所有评论(0)