1.一种集卡锁头位置识别方法,其特征在于包括具体步骤如下:步骤1:用工业相机拍摄集卡的图像,并转成灰度图像f;
步骤2:根据式(1)-(7)采用混合的形态学算法提取图像f的边缘信息:Gmin=min{G1,G2} (4)
Gmax=max{G1,G2} (5)
ΔG=Gmax-Gmin (6)
G=G3+θΔG,0≤θ≤1 (7)
其中,b1、b2、b3都属于灰度级形态学中的结构元,b1表示一种不平坦结构元,b2、b3分别表示一种平坦结构元,G1表示了一种经由多结构元降低负噪声的边缘图像,G2表示了一种经由多结构元降低正噪声的边缘图像,G3表示了一种经由多结构元降低噪声的边缘图像,Gmin表示G1、G2叠加后的较暗边界,Gmax表示G1、G2叠加后的较亮边,θ表示一种阈值,用于控制最终结果图像G的轮廓,表示膨胀操作,Θ是腐蚀操作,是开操作,·是闭操作;
步骤3:根据图像G生成直方图
H={pi|pi=ni/n,i=0,1,…,255},其中ni表示灰度值为i的像素个数,n表示图像G的像素总数,pi表示灰度值为i的像素个数占图像G中的像素总素的比例;
步骤4:确定阈值threshold使其满足式(8):其中的μ为事先选定,μ∈[0.9,1];
步骤5:根据式(9)对图像G进行二值化得到图像Gf:步骤6:使用标准霍夫变换提取得到二值图Gf上的直线段集L={li|i=1,2,...,m};过滤掉L集合中与水平方向夹角不大于45°的线段,得到集合Ltheta={li|theta(li)∈([45°,
135°]∪[-135°,-45°])且i=1,2,…,m},theta(li)表示直线段li与水平方向的夹角;在Ltheta中找到最长的一条直线段并延伸至图像G的边界,将该直线段记为lmax;
步骤7:在图像G中,在lmax的中点处上下各截取大小为bound*bound的子图像,分别记为和 其中bound表示子图像的宽度和高度,根据式(10)计算:确定的集卡锁头位置;
步骤8:在步骤7中确定的集卡锁头位置方位选取最近的与lmax平行的直线段作为集卡锁头所在平板的另一条边缘线并延伸至图像G的边界,记该直线段为lneares;
步骤9:在图像G中截取lmax和lneares之间的区域子图,记为Gbw,使用OTSU方法确定阈值并对Gbw进行二值化,得到图像Gbwb;
步骤10:根据式(11)的开闭运算增强Gbwb中的连通区域,得到图Gbwc:其中,
步骤11:找出Gbwc中最大的连通区域,记为Gbwd;
步骤12:使用与lmax方向垂直的线型结构对Gbwd做开运算,并剔除开运算结果后过于小的连通区域,得到目标区域二值图;
步骤13:对目标区域二值图取外接矩形,并显示在原图f上;
步骤14:通过计算外接矩形区域的中心点,得到对应集卡左右锁头中心位置,完成集卡锁头位置的识别。
2.根据权利要求1所述的一种集卡锁头位置识别方法,其特征在于步骤2中θ趋向1则有更多噪声,更少的细节,更清晰的边界,反之亦反。
3.根据权利要求1所述的一种集卡锁头位置识别方法,其特征在于步骤4中确定threshold的μ为事先选定,μ∈[0.9,1],μ趋向0.9则有更多噪声,更多的细节,更连续的边界,反之亦反。
4.根据权利要求1所述的一种集卡锁头位置识别方法,其特征在于步骤7中若sumup>sumdown,则说明集卡锁头位置在图像G中的上方;否则,集卡锁孔位置在图像G中的下方。
5.根据权利要求1所述的一种集卡锁头位置识别方法,其特征在于步骤7中bound赋值为20-50。
6.根据权利要求1所述的一种集卡锁头位置识别方法,其特征在于步骤7中bound赋值为20。
7.根据权利要求1所述的一种集卡锁头位置识别方法,其特征在于步骤12中并剔除开运算结果像素数量小于1000的连通区域。