基于机器视觉的首饰识别

2019-11-05 10:20郑李强赵飞郭江涛
计算技术与自动化 2019年3期
关键词:机器视觉识别特征提取

郑李强 赵飞 郭江涛

摘   要:为了实现首饰的自动识别,设计了一套基于机器视觉的首饰识别系统,并提出相应的算法。采用8种首饰作为试验样本,利用G+R分量和的颜色阈值分割法,并用27×27的模板对二值化图像进行滤波,采用2×2窗口内像素灰度值之和并结合阈值的边缘提取方法。提取面积特征和图像形心到边缘的距离特征。对面积判断其大小在设定数值范围内,对距离特征采用互相关算法处理。实验结果表明,该方法的识别准确率达100%,识别一个首饰所用时间约3秒,满足在实际中应用的要求。

关键词:机器视觉;首饰;特征提取;识别;互相关算法

中图分类号:TP391                                          文献标识码:A

Abstract:In order to realize automatic recognition of the jewelry,a set of jewelry recognition system based on machine vision is designed,and the corresponding algorithm is proposed. In this study,8 different kinds of jewels are used as experimental samples.The color threshold segmentation method is used by the componentsofG+R. Binary image is filtered with a template of 27×27 pixel. A method of edge extraction is proposedbased on values of pixels combined with the threshold by the 2×2pixel window.The features of areaand the distancefrom image centroid to edgeare extracted.The values of area are judgedwithin the limits of given values,and the cross-correlation algorithm is applied to the values of distance feature. The experimental results show that the precision rate of the method is 100% and average recognition time for each is about 3 seconds,which meets the requirements of practical application.

Key words:machine vision;jewelry;feature extraction;recognition;cross-correlation algorithm

首飾品在现代生活中的消费量越来越多,首饰生产后集中装在一起,销售时需要分类。目前,首饰的分类由人工完成,工作量大,生产效率低且准确率低。机器视觉技术在首饰识别方面的应用鲜有报道。本文尝试利用机器视觉技术进行首饰的识别。

机器视觉技术已经应用在表面损伤检测、物体识别和目标跟踪等领域。慕军营等[1]通过选用Lab空间的a通道分量提取猕猴桃的特征,然后基于正椭圆Hough变换提取猕猴桃的质心、面积、周长和圆形度。杨眉等[2]为实现对扇贝的识别和分类,用canny算子提取出扇贝图像的边界,计算边界到中心点的平均距离及其绝对平均误差,运用特征信息训练BP神经网络,实现快速的识别效果。张志强等[3]提取4种淡水鱼的长短轴之比和各个颜色分量等特征值,建立识别模型。高雄等[4]提取甘蓝3种常见害虫的面积、周长、偏心率、圆形度、矩形度等5个形状特征,通过模糊识别方法来识别害虫的种类。Nazlibilek等[5]通过提取细胞的最小外接矩形、面积、长轴和短轴的特征信息,在神经网络中进行训练,对细胞的正确识别率达到95%。随着机器视觉技术的发展,在实际领域的应用更加广泛。

1   首饰识别系统的构建

实验装置由硬件和软件组成,示意图如图1所示。软件编程平台是Visual C++ 2010,硬件主要包括计算机(AMD A6-3400M,1.4GHz,4GB内存,操作系统为Windows764位)、摄像机、光照箱和环形光源。相机采用大恒公司生产的彩色DH-HV3151UC型,镜头采用Kowa的LM12JCM型。光照箱是定制的800 mm×800 mm×1000 mm铝合金实验箱,内壁涂成白色,保证图像采集和识别时处于同样的环境。环形光源采用可调节亮度的LED灯。可调节支架用于调节摄像机、光源和待测首饰之间的距离。

2   图像预处理

2.1   彩色图像的二值化

2.1.1   彩色图像颜色分量的选择

颜色阈值分割方法在图像分割中使用广泛[6],如文献[7-9]采用RGB彩色模型中的分量实现目标与背景的分离。实验装置处于光照箱内,光照强度恒定,因此适合采用RGB模型[10]。首饰呈现金黄色,因此采用G+R分量和将彩色图像转化为灰度图像,能够减少运算量,效果最好,得到的灰度图像如图2左图所示。

2.1.2   阈值的选择

选择不同的阈值,处理后的图像效果不同,选择合适的分割阈值对后面特征的提取具有重要影响[11]。由于目标和背景对比明显,采用Otsu算法计算8种首饰灰度图像的阈值,求出的阈值平均值为86,对所有首饰图像采用同一个该阈值。灰度图像及其二值化图像如图2右图所示。

2.2   基于中值滤波方法的模板滤波

根据图像中最大噪声的大小,基于中值滤波思想采用27×27大小的模板,根据模板覆盖下黑点和白点数目并结合阈值判断该点像素取值的滤波方法。该算法统计在模板覆盖下的像素黑点数目,如果黑点数目大于设定阈值,则该点取值为黑点;否则该点取为白点。该方法能够一次性去除图像中的所有噪声点。滤波后图像如图3左图所示。

2.3   改进Roberts算子的边缘提取

由二值化图像的特征可知,图像的边缘位置必然是黑点和白点交界处。本文提出的算法是:用2×2的模板遍历原图像,计算模板覆盖的4个像素的灰度值之和。预先设定的最大值是 和最小值是255×nBottom,其中nBottom可以取值为0、1或2。如果计算出的4个点的灰度值之和在设定的阈值范围内,则对应新生成图像的灰度值为255,否则该点的灰度值设为0。当nBottom取值为1时,所得到的边缘为单像素宽度且连续,效果最好,边缘检测结果如图3右图所示。

3   特征提取

3.1   距离特征提取

3.1.1   确定首饰图像的形心

采用滤波后的二值化图像计算形心,得到的形心位置精确。计算物体形心的方法:遍历二值化图像的每个像素点,将灰度值为255的像素点的横坐标和纵坐标分别累加求和,灰度值为255的像素点的总个数也是首饰区域的面积。将上述得到的横、纵坐标的值分别除以灰度值为255的像素总数,分别得到首饰图像形心的横坐标和纵坐标。

3.1.2   交点数和射线数的优化选择

如图4所示,坐标轴上数字表示像素的数量,即是首饰的面积;折线尖顶处数字表示射线数;两条虚线的交点表示同一种首饰在样本和新采集时取该交点处的射线数。首先根据二值化后首饰图像的面积确定11个面积阈值,根据11个阈值分成12个区间。对于同一种首饰,在样本采集时得到的图像面积与实际进行分类时采集的图像面积很可能存在不同。因此对于同一种首饰,设计其面积对应两组取值情况。特别地,在第一个面积区间和最后一个面积区间,分别只对应一组射线数和交点数,而在其他区间同一个面积对应两组取值情况。

3.1.3   提取距离特征

将图像按照圆周分成4个区间:第一条分界线的起始位置是nE0;第二条分界线的起始位置是nE1;第三条分界线的起始位置是nE2;第四条分界线的起始位置是nE;分界线的结束位置(与第一条分界线的起始位置nE0重合)是nE4。

将整个圆周平均分成k份,k是由面积确定的射线数。由形心向外作k条射线,如下图5所示区间nE0 ~ nE1内。求射线与边缘灰度值为255的像素交点位置,并设定每条射线与边缘的交点只有一个。求射线与边缘的交点位置到形心的欧氏距离,这些距离值作为形心到物体边缘的距离特征信息,共得到k个距离值。

在4个角度区间求解距离特征算法如下:

第一个角度区间对应的角度范围为nE0~nE1。角度起始位置为nE0,每次射线所在的角度位置为dTheta。在同一条射线上,横坐标x的初始最大值均为xMax(xMax表示图像边缘点在x轴上的最大值坐标),x每次移动间隔的像素点数为cst_nStep,每条射线上求出1个距离值。根据x的值,利用程序语言公式y = (int)(x*tan(dTheta))求出y的值,利用x和y的值求出坐标点的位置,并判断该点的灰度值。如果该像素点的灰度值、该点垂直方向上面一个像素的灰度值以及该点垂直方向下面一个像素的灰度值均不是255,结束本次循环。否则,即是寻找到一个灰度值为255的边缘点。计算该点到形心的欧式距离,作为一个距离特征值。依次循环,求出第一个角度区间的所有距离值。同理,求出其余3个角度区间的距离特征值。将上述距离值输入到MATLAB中,得到8种首饰边缘到形心的距离曲线,其中一种首饰的距离曲线如图6所示。

3.2   面积特征提取

首饰面积的大小根据滤波后的二值化图像获得,即是滤波后二值化图像中的白点个数。求得8种首饰的面积如表1所示。

4   识别算法

4.1   对面积特征数据的处理

假设新采集首饰的面积用s表示,将s与样本中保存在每个图像尾部的面积比较,根据样本面积确定的区间为[s1,s2],确定s1和s2的取值系数分别为0.95和1.05。首先判断是否满足该种首饰的面积条件,如果满足继续计算距离特征。

4.2   对距离特征数据的处理

利用样本和新采集图像的距离特征数据作互相关处理,本文所用离散自相关和互相关函数表达式分别如公式(1)和(2)所示。

式中,S表示样本图像数据,N表示新采集图像数据,m表示k个距离数组中从起始位置开始的第m个数;n表示样本和新采樣数据起始位置的间隔个数,n取值区间是[0,k-1]。S(m+n)表示样本数组中从起始位置开始的第m+n个数;N(m)表示新采集图像距离数组中从起始位置开始的第m个数。

具体算法如下:由离散自相关函数的性质可知,当n = 0时,函数取得最大值。令n = 0,对于样本图像的k个距离数据采用离散自相关函数处理,并将该最大值作为样本图像的特征值。将新采集首饰的k个距离值与样本首饰的k个距离值作离散互相关处理,求出离散互相关的最大值。由样本求出的离散自相关最大值分别乘以一个小于1和大于1的系数,从而确定一个数值区间。如果离散互相关最大值在该区间内,则说明待检测首饰和样本首饰属于同一种。分别对8种首饰进行实际识别试验,其中一种首饰的识别结果如下图7所示。

5   结束语

设计了一套基于机器视觉的首饰识别系统。首先对彩色图像利用颜色阈值分割法进行二值化;对二值化图像采用基于中值滤波方法的模板滤波法,能够一次性去除所有噪声;提出一种基于Roberts算子的新的边缘检测方法获得单像素细化且连续的边缘。提取首饰面积和边缘到形心的距离特征,对距离值采用离散互相关算法处理,实现了较好的识别效果。

参考文献

[1]    慕军营,陈军,孙高杰,等. 基于机器视觉的猕猴桃特征参数提取[J].农机化研究,2014(6): 138—142.

[2]    杨眉,魏鸿磊,华顺刚. 一种基于神经网络的扇贝图像识别方法[J]. 大连海洋大学学报,2014,29(1): 70—74.

[3]    张志强,牛智有,赵思明. 基于机器视觉技术的淡水鱼品种识别[J]. 农业工程学报,2010,27(11): 388—392.

[4]    高雄,汤岩,陈铁英,等. 基于图像处理的甘蓝虫害识别研究[J]. 江苏农业科学,2017,45(23): 235—238。

[5]    NAZLIBILEK S,KARACOR D,ERCAN T,et al. Automatic segmentation,counting,size determination and classification of white blood cells[J]. Measurement,2014,55(2): 58—65.

[6]    耿茵茵,蔡安妮,孙景鳌. 自动图像阈值分割算法[J]. 计算机工程与应用,2002,38(17): 119—122.

[7]    李昕,李立君,高自成,等. 改进类圆随机Hough变换及其在油茶果实遮挡识别中的应用[J]. 农业工程学报,2013,29(1): 164—170.

[8]    GONG Ai-ping,YU Jun-lin,He Yong,et al. Citrus yield estimation based on images processed by an Android mobile phone[J]. Biosystems Engineering,2013,115(2): 162—170.

[9]    李宏利,何東健. 图像中被遮挡苹果的还原及定位技术研究[J]. 农机化研究,2013,35(9): 20—23.

[10]  于超超,侯进,侯长征. 基于显著图与傅里叶描述子的交通标志检测[J]. 计算机工程,2017,43(5): 28—34.

[11]  DAVIES E R. Computer and machine vision: theory,algorithms,practicalities[M]. Waltham: Academic Press,2012.

猜你喜欢
机器视觉识别特征提取
基于MED—MOMEDA的风电齿轮箱复合故障特征提取研究
基于曲率局部二值模式的深度图像手势特征提取
大场景三维激光扫描仪在研究生实践教学培养中的应用
基于机器视觉的工件锯片缺陷检测系统设计
基于机器视觉技术的动态“白带”常规检测系统的开发
论犯罪危险人格的识别
机器视觉技术在烟支钢印检测中的应用