1.化妆品纸质标签缺陷检测方法,其特征在于,包括以下步骤:步骤(1):获取图像G,执行步骤(2);
步骤(2):对获取的图像G进行角度旋转,使图像前景与水平方向垂直,得到图像F,执行步骤(3);
步骤(2)包括以下步骤:
步骤(2.1):对图像G进行OTSU阈值分割,将标签与背景分割开来,得出相应的前景所占区域R;
步骤(2.2):遍历区域R的像素,统计出区域R包含的N个像素坐标(xi,yi),i=1,2,...,N,计算区域的中心坐标(x0,y0):区域R与水平方向的夹角Phi:
(7)式中M11、M02和M20是区域R的二阶矩;
步骤(2.3):以中心坐标(x0,y0)为基准点,(Phi1‑Phi)为旋转角度对原图像进行旋转变换,得到仿射变换后的图像F;
构造齐次旋转变换矩阵H:
(8)式中phi1=rad(90°)是旋转后图像与水平方向的夹角;
则有:
F=H*G (9)(9)式中F为仿射变换后的图像;
步骤(3):提取图像F中的前景图像中的不干胶标贴区域R1,判断其位置及相对于水平位置的倾斜角度Phi2;执行步骤(4);
步骤(3)包括以下步骤:
步骤(3.1):对图像F进行OTSU双阈值分割,提取出不干胶标贴区域R1;
步骤(3.2):对提取出的不干胶标贴区域R1作最小外接矩形,求出区域R1的质心位置(x1,y1)、标贴的宽高DW,DH及其相对于水平位置的倾斜角度Phi2;
区域R1的(i+j)阶几何矩mi,j公式为:(11)式中(r,c)表示区域R1内点的坐标,i,j表示行列坐标的次幂;
区域R1的质心坐标(x1,y1)为:(12)式中m10,m01是区域R1的一阶矩,m00是区域R1的零阶矩;
区域R1的宽DW和高DH:
其中有:
区域R1的方向角度Phi2:
以上(13)和(14)式中的m20、m02、m11是区域R1的二阶矩;
步骤(4):判断不干胶标贴所占区域R1的位置相对于标签的位置是否正确,若位置不正确则结束检测,判为不合格产品;若位置正确则执行步骤(5);
步骤(4)包括以下步骤:
步骤(4.1):根据步骤(3.2)所得区域R1的倾斜角度Phi2与步骤(2.2)中的角度Phi1,来判定不干胶标贴的倾斜角度是否达到产品参数要求:If(abs[abs(Phi1)‑abs(Phi2)]<=R_Angle)Cout<<”执行步骤(4.2)”<
Else
Cout<<”产品不合格,结束检测”<
其中R_Angle为相应角度技术参数;
步骤(4.2):判断不干胶标贴在竖直方向上是否覆盖住标签上其它描述产品信息内容的汉字及字符:If(R_DistanceL<=abs(x1‑x0)<=R_DistanceH)Cout<<”执行步骤(4.3)”<
Else
Cout<<”产品不合格,结束检测”<
其中x0、x1分别由步骤(2.2)和步骤(3.2)获得,R_DistanceL和R_DistanceH为相应的竖直方向位置技术参数;
步骤(4.3):判断不干胶标贴在水平方向上的位置是否达到相关参数要求:If(abs(y1‑y0)<=C_Distance)Cout<<”执行步骤(5)”<
Else
Cout<<”产品不合格,结束检测”<
其中y0、y1分别由步骤(2.2)和步骤(3.2)获得,C_Distance为相应水平方向上位置技术参数;
步骤(5):将汉字图像从图像F中提取出来,得到图像W;
步骤(5)包括以下步骤:
步骤(5.1):根据区域R1的坐标位置将对应的不干胶标贴图像从图像F中提取出来得到不干胶标贴图像;
步骤(5.2):对不干胶标贴图像进行灰度拉伸,增强对比度,得到图像C;
灰度拉伸公式:
s(x,y)=a*w(x,y)+b (1)其中a和b为实验所取得的固定值,a取值为5,b取值‑120;
步骤(5.3):手动选取样本标签图像的ROI图像作为模板图像P,采用自适应阈值的Canny算法检测模板图像P的边缘轮廓;
先利用高斯滤波器H(X,Y,σ)对模板图像P(X,Y)进行降噪处理,平滑后的图像G(X,Y)如下:G(X,Y)=H(X,Y,σ)×P(X,Y) (2)其中,高斯函数为:
σ为高斯滤波函数的标准差控制的平滑程度;
计算图像G(X,Y)的梯度幅值T和方向角θ:θ[X,Y]=arctan(GX(X,Y)/GY(X,Y)) (5)其中GX、GY分别为X、Y的偏导;GX和GY利用如下2×2一阶差分近似计算:GX=[P(X+1,Y)‑P(X,Y)+P(X+1,Y+1)‑P(X,Y+1)]/2 (6)GY=[P(X,Y+1)‑P(X,Y)+P(X+1,Y+1)‑P(X+1,Y)]/2 (7)利用阈值对梯度幅值T(X,Y)进行非极大值抑制,选取双阈值并连接图像边缘,查找经过中最大的像素值记为L,构建图像边缘梯度直方图,统计非极大值抑制(NMS)后的图像中不为0的像素总数数的累积记为Hist;
假设k×Hist处的灰度值为L,0
然后对边缘检测图像Q(X,Y)进行图像边缘轮廓的提取,利用Freeman链码对此边缘检测图像Q(X,Y)进行编码,用来表示图像边缘轮廓;
然后对图像边缘轮廓的特征提取;得到Mi和Ni;
步骤(5.4):用基于轮廓的模板匹配方法定位图像C中汉字所在区域;
用归一化法对匹配结果进行相似度的计算,其公式为:上式中Mi表示模板图像P的7个轮廓不变矩,Ni表示图像C中匹配目标区域的7个轮廓不变矩,S表示匹配值,S∈(0,1);
计算出所匹配区域的中心坐标,并根据汉字所占像素大小,以该中心坐标为基准点生成一个能覆盖住表示颜色信息汉字的矩形区域R2;根据区域R2的坐标位置将对应的汉字图像从图像F中提取出来,得到图像W;
步骤(6):对图像W的汉字字符进行分割处理,得到交集区域R4;
步骤(6)包括以下步骤:
步骤(6.1):对图像W进行灰度变换,增强对比度,得到图像S;
步骤(6.2):对图像S进行阈值分割,得到汉字区域R3,并对区域R3进行形态学开运算操作,得到区域R31;
选取结构元素H,则H对R3的开运算可以表示为:步骤(6.3):将步骤(5.4)中得到的区域R2按照汉字的宽高进行分割,将分割后的区域R21与区域R31求交集,得到交集区域R4其表达式为:R4=R21∩R31 (2);
步骤(7):训练BP神经网络;
步骤(8):将交集区域R4用步骤(7)训练好的BP神经网络进行识别,然后将识别出的汉字与预先输入的汉字信息进行比较,如果相同,执行步骤(9);否则,判定不合格,结束检测;
步骤(9):提取图像F中日期在标签上所对应的区域Rd;
步骤(9)包括以下步骤:
步骤(9.1):对图像F用OTSU算法做分割,得到相应区域R5;
步骤(9.2):采用宽和高均为40的结构元H1对区域R5进行膨胀,其表达式可表示为:式中M表示集合的平移量, 代表膨胀操作符;
步骤(9.3):计算区域R51的连通域组件,并计算各组件连通域面积,用筛选面积的方法提取出日期所对应的连通区域Rd;
步骤(10):对区域Rd作最小外接矩形,并求出相应的质心坐标(x2,y2)、区域Rd的宽高Dw、Dh及其相对于水平位置的倾斜角度Phi3,从而确定日期位置;
步骤(11):判断日期所占区域Rd的位置相对于标签的位置是否正确,若位置不正确,判为不合格产品,结束检测;若位置正确则执行步骤(12);
步骤(11)包括以下步骤:
步骤(11.1):判定日期的倾斜角度Phi3是否达到产品参数要求:If(abs(Phi3)<=D_Angle)Cout<<”执行步骤(11.2)”<
Else
Cout<<”产品不合格,结束检测”<
其中D_Angle为相应角度技术参数;
步骤(11.2):判断日期在竖直方向上的位置:If(D_DistanceL<=abs(x2‑x0)<=D_DistanceH)Cout<<”执行步骤(11.3)”<
Else
Cout<<”产品不合格,结束检测”<
其中x0、x2分别由步骤(2.2)和步骤(10)获得,D_DistanceL和D_DistanceH为相应的竖直方向位置技术参数;
步骤(11.3):判断日期在水平方向上的位置:If(abs(y2‑y0)<=D_Distance)Cout<<”执行步骤(12)”<
Else
Cout<<”产品不合格,结束检测”<
其中y0、y2分别由步骤(2.2)和步骤(10)获得,D_Distance为相应水平方向上位置技术参数;
步骤(12):求区域Rd的最小外接矩形区域Rd1,根据矩形区域Rd1的坐标从图像F中提取出相对应的日期图像,得到图像D;
步骤(13):对图像D的日期字符做分割处理,得到分割开的日期字符区域RS,步骤(14):用步骤(7)中保存的训练好的神经网络,对分割开的日期字符区域RS进行识别;
步骤(15):将步骤(14)识别出来的字母与数字与预先输入的字母与数字相比较,若信息相同,则判为产品合格,结束检测;否则,判为不合格产品,结束检测。