基于图像处理的菌类识别研究
2020-06-15郭昊楠
郭昊楠 赵 平*
(天津农学院,天津300800)
1 概述
1.1 研究背景与现状。在目前的技术发展中,国内外的人工智能以及自动识别技术已经发展的非常迅速,依赖于移动APP平台所实现的识别程序也越来越多,图像处理技术也越来越得到人们的重视,尤其是在农业领域,对于菌类的识别更是如此。因此,如同人脸识别技术的发展一样,对于识别菌类来说,做到可以准确识别并区分不同菌类是目前为止具有挑战性的实践。
在对图像识别上的研究中,中国农业大学于新文教授取得了较为显著的进步,他主要采用了相似距离分类法以及二差分类法,再加上他所使用的判别模型分类法,他将这三类方法相结合,在对相关数字图像的识别进行研究的同时,也对所识别的图像有了非常高的精确度[1]。
1.2 研究过程。所谓图像识别技术,就是以图像本质为基础,利用计算机对图像进行处理分析和整合理解。首先对图像进行预处理,利用不同的处理方法(灰度化处理以及平滑处理)处理菌类图像;其次根据图像的质量以及针对性的去噪,以达到对基于阈值的图像分割的目的[1];最后利用分类和提取出图像的重要特征,采用其图像具有的代表性特征来识别它本身所具有的作为匹配的指标项,然后将各个指标值进行对比,通过Sift 算法进行特征匹配,确定指定范围内的识别种类。
2 图像的预处理
2.1 图像的灰度化处理。对图像的颜色进去处理后,图像丢失颜色,保留下了其它方面信息的过程就是图像灰度化处理。灰度化处理后的图像中,去除了其本身所具有的一些颜色信息,因此便能减少在图像处理过程中所包含的计算量,从而大大的提高图像的处理效率。[2]
2.2 图像的平滑处理。从信号处理的角度看图像的平滑处理就是去除其中的高频信息,保留低频信息,它是一种能够极大改善图像质量的一种图像预处理的方法,在图像经过平滑处理后,其会增强本身图像中的主要特征,进而最后减弱图像噪声和失真对图像的影响,最终使图像亮度平缓[3]。
2.3 基于阈值的图像分割。将图像划分成特定的和独特的各个区域,提取出识别系统所需要的目标和过程就是图像分割,它是图像分析中的关键步骤之一。对于菌类识别的图像分割方法,选择基于阈值分割图像的方法更为合适,原因在于其更能处理较小的图像,处理速度简单快捷。
经过分割处理后的图像,不仅能够减少除本目标之外的图像干扰,还突出了所抽取的特征目标区域,提高了识别系统对图像的处理效率。图像分割的地位不能忽视,它会直接作用在图像的后续处理和分析识别上,所以图像分割在图像识别过程中起着至关重要的作用[3]。
基于阈值的图像分割法最重要的一点是阈值的选择,它需要根据具体问题来确定[2]。对于给定的图像,可以通过分析直方图的方法确定最佳的阈值,当直方图明显呈现双峰情况时,可以选择两个峰值的中点作为最佳阈值。也可以把图像分成n*n块子图,取每一块子图的灰度均值,即为均值阈值法,其中子图越多分割效果越好,但效率可能会变慢[3]。
3 菌类特征匹配
3.1 特征抽取与选择。在进行菌类特征匹配之前,首先需要对不同菌类的各种特征项进行抽取筛选,选择出便于后续匹配的特征,在模式识别过程中,特征抽取是图像识别的重要步骤之一,从大量的菌类原始数据中找出最能代表其种类的少量特征,以便于进行分类和识别[4]。
降维是特征抽取的本质,同时还不能丢失模式的分类信息,在研究过程中采取了主成分分析(PCA)的方法,对菌类种类所具有的特征进行分组降维,选择出符合代表性的特征,利用SPSS 工具分别对不同种类的菌类进行了主成分分析的步骤,最终抽取出每个菌类对应的其代表性特征,总括如下:菌类的形状,菌类的大小,菌类的纹理等几种主成分分析中输出结果贡献率高于90%的特征点组,因此在进行匹配特征时,就采用这几种特征值来进行Sift 算法操作。
3.2 Sift 匹配算法。Sift 算法又称尺度不变特征转换,它是一种电脑视觉的算法,用来侦测与描述图像中的局部性特征,并在空间尺度中寻找到对应的极值点,然后对其提取出位置、尺度、旋转不变量等。选择Sift 算法的原因在于:
该算法具有较好的稳定性和不变性,能在一定程度上不受视角变化、仿射变换以及图像噪声的干扰;区分性好,多量性,能产生大量特征向量;高速性,能够对特征向量快速进行匹配;可扩展性,能够联合其它形式的特征向量[5]。
Sift 算法步骤分为:提取关键点、定位关键点、确定特征方向、通过各关键点的特征向量,进行两两比较找出相互匹配的若干对特征点,建立之间的对应关系[6]。算法实质如图所示。
其中对特征点的检测以及描述过程就是Sift 算法所计算的过程,在对菌类的特征组进行检测之后,计算机中进行描述把其中的特征点集与数据库中所存储的原图像中的特征点集进行对比匹配,在相应的关键点的对比下,分离出相像的特征点,由此得出对应的特征向量,最终在原图像与目标图像匹配的高度相似的特征点进行收集矫正,但是由于Sift 算法的速度较慢、数据复杂、耗时长,以及对边缘光滑的目标无法准确提取特征点的弊端,导致最后只能初步实现对不同菌类的粗略识别[6]。
4 结论
在以上的研究过程中,重点的研究了图像预处理过程以及匹配特征两大方面,采用了灰度化处理、平滑处理、阈值分割等比较常见而且实用的预处理方法,在对菌类识别的过程中不断更新着这些预处理方法。
对匹配特征值Sift 算法进行深层次分析,利用Sift 算法的优势对菌类目标图像的特征点与原图像的特征点进行比较,并通过不断改进这种算法中的关键点对比来进行最终的菌类识别。
图像处理是当今应用领域非常广泛的一门技术,对图像的各种处理及识别需要更多的知识与时间来研究学习,才能掌握基于图像处理技术的菌类识别方法,在对识别过程中的图像预处理、图像分割、图像增强、匹配特征,以及最后实现成功识别不同菌类的功能,仍然需要改进,将识别的过程以及结果更加准确化,才能更好的对所需要识别的图像进行分析研究。