1.一种基于角点检测的贴片机吸嘴元件角度的自动校正方法,其特征在于,所述基于角点检测的贴片机吸嘴元件角度的自动校正方法,包括:步骤1:获取元件的灰度图像;
步骤2:根据预设的截取区域对灰度图像进行截取;
步骤3:采用Shi Tomasi算法对截取获得的图像进行角点提取;
步骤4:将提取的角点中像素值大于阈值的角点去除;
步骤5:基于步骤4去除后剩余的角点,筛选最小外接矩形的面积小于阈值的角点集合;
步骤6:获取角点集合形成的最小外接矩形的区域图像,并采用三次样条插值方法对区域图像进行放大;
步骤7:对步骤6放大后的区域图像进行预处理;
步骤8:对预处理后的图像进行canny边缘检测,采用概率霍夫变换进行直线检测,提取得到若干线段;
步骤9:在提取的线段中筛选出至少一对相互平行的线段以及至少一条与相互平行的线段垂直的线段;
步骤10:判断互相垂直的两条线段中是否存在角度与步骤5中筛选得到的最小外接矩形的角度一致的线段,若存在,则将最小外接矩形的角度作为元件的旋转角度;若不存在,则根据筛选出的线段计算得到旋转角度。
2.如权利要求1所述的基于角点检测的贴片机吸嘴元件角度的自动校正方法,其特征在于,所述根据预设的截取区域对灰度图像进行截取,包括:若元件为长为d、宽为w的长方形;
则预设的截取区域为长方形,且该长方形的长为α×d、宽为α×w,α为预设倍数;
对灰度图像进行区域截取时,以灰度图像的中心作为截取区域的中心,以灰度图像的长边作为截取区域的长,以灰度图像的短边作为截取区域的宽进行截取。
3.如权利要求1所述的基于角点检测的贴片机吸嘴元件角度的自动校正方法,其特征在于,所述采用Shi Tomasi算法对截取获得的图像进行角点提取,包括:步骤3.1:假设图像中像素点(x,y)的灰度值为I(x,y),则像素点(x,y)在局部小窗口W(x,y)的各个方向移动(u,v)的像素变化E(x,y)为:其中ωu,v为加权函数;
步骤3.2:将I(x+u,y+v)进行泰勒展开得到:I(x+u,y+v)=I(x,y)+uIx+vIy+O(u2,v2)其中Ix,Iy是一阶灰度梯度;
将泰勒展开后得到关系式忽略二阶及以上项后代入E(x,y)中得到:步骤3.3:设置矩阵M如下所示,且λ1,λ2分别是矩阵M的两个特征值:若λ1,λ2满足λ1≥λ2且λ2≥kλ2max,则像素点(x,y)为强角点;否则像素点(x,y)不是强角点;其中λ2max是所有像素点较小特征值中的最大值,k为中间参数。
4.如权利要求1所述的基于角点检测的贴片机吸嘴元件角度的自动校正方法,其特征在于,所述基于步骤4去除后剩余的角点,筛选最小外接矩形的面积小于阈值的角点集合,包括:
步骤5.1:基于步骤4去除后剩余的角点生成角点集合P,所述角点集合P的大小为n;
步骤5.2:若角点集合P的最小外接矩形的面积大于1.2倍的当前元件的实际面积,则设置循环次数i=0,并执行步骤5.3;否则以角点集合P作为最终的角点集合并结束筛选步骤;
步骤5.3:复制角点集合P得到角点集合Pt,删除角点集合Pt中的第i个角点,并以角点集合Pt中的剩余角点得到最小外接矩形;
步骤5.4:若i
步骤5.5:判断最小外接矩形Rm的面积与元件的实际面积的关系,若最小外接矩形Rm的面积小于0.9倍的元件的实际面积,则将角点集合Pm作为角点集合P,并重新执行步骤5.2;
否则执行步骤5.6;
步骤5.6:以最小外接矩形Rm的较长一边作为长、较短一边作为宽,若最小外接矩形Rm的长大于1.2倍的元件的长,则执行步骤5.7;否则执行步骤5.10;
步骤5.7:以最小外接矩形Rm的长为y轴、宽为x轴建立坐标,获取y轴坐标最大和最小的两个角点,y轴坐标最大的角点的y坐标为ymax,y轴坐标最小的角点的y坐标为ymin;
步骤5.8:获取最小外接矩形Rm在y轴坐标为ymin~(ymax+ymin)/2范围内的角点个数c1,获取最小外接矩形Rm在y轴坐标为(ymax+ymin)/2~ymax范围内的角点个数c2;
步骤5.9:若c1>c2,则删除角点集合Pm中y轴坐标为ymax对应的角点,并将删除后剩余的角点作为角点集合P,重新执行步骤5.2;否则删除角点集合Pm中y轴坐标为ymin对应的角点,并将删除后剩余的角点作为角点集合P,重新执行步骤5.2;
步骤5.10:若最小外接矩形Rm的宽大于1.2倍的元件的宽,则执行步骤5.11;否则角点集合Pm作为最终的角点集合并结束筛选步骤;
步骤5.11:以最小外接矩形Rm的长为y轴、宽为x轴建立坐标,获取x轴坐标最大和最小的两个角点,x轴坐标最大的角点的x坐标为xmax,x轴坐标最小的角点的x坐标为xmin;
步骤5.12:获取最小外接矩形Rm在x轴坐标为xmin~(xmax+xmin)/2范围内的角点个数c3,获取最小外接矩形Rm在x轴坐标为(xmax+xmin)/2~xmax范围内的角点个数c4;
步骤5.13:若c3>c4,则删除角点集合Pm中x轴坐标为xmax对应的角点,并将删除后剩余的角点作为角点集合P,重新执行步骤5.2;否则删除角点集合Pm中x轴坐标为xmin对应的角点,并将删除后剩余的角点作为角点集合P,重新执行步骤5.2。
5.如权利要求1所述的基于角点检测的贴片机吸嘴元件角度的自动校正方法,其特征在于,所述对放大后的区域图像进行预处理,包括:采用直方图均衡化方法处理放大后的区域图像,得到第一图像;
对所述第一图像采用5×5的窗口进行中值滤波,得到第二图像;
对所述第二图像采用7×7的窗口进行高斯滤波,得到预处理完成的图像。
6.如权利要求1所述的基于角点检测的贴片机吸嘴元件角度的自动校正方法,其特征在于,所述在提取的线段中筛选出至少一对相互平行的线段以及至少一条与相互平行的线段垂直的线段,包括:
步骤9.1:计算各线段的角度angle为:其中,(x1,y1)、(x2,y2)为线段上的两个不同点;
步骤9.2:按角度angle从小到大的顺序对所有线段进行排序,并选取相邻两条线段之间的角度angle相差小于3°的线段;
步骤9.3:按角度angle从大到小遍历所有线段,判断是否存在与步骤9.2中找到的线段相互垂直的线段,若存在,则得到符合条件的线段;否则选取与步骤9.2中找到的线段最接近垂直的线段。
7.如权利要求6所述的基于角点检测的贴片机吸嘴元件角度的自动校正方法,其特征在于,所述根据两组平行线的最长距离,判断元件的长和宽,得到旋转角度,包括:步骤10.1:统计互为垂直的两个角度r1、r2分别对应的线段个数c1、c2;
步骤10.2:若c1≥2且c2≥2,则执行步骤10.3;否则执行步骤10.4;
步骤10.3:计算两个角度r1、r2分别对应的所有平行线段之间的最大距离d1、d2;且若d1
步骤10.4:若c1≥2且c2==1,则执行步骤10.5;否则执行步骤10.6;
步骤10.5:计算角度r1对应的所有平行线段之间的最大距离d1,计算角度为r2的线段的两端到角度为r1的线段的最大距离l1;且若d1
步骤10.6:若c2≥2且c1==1,则执行步骤10.7;否则结束旋转角度计算步骤;
步骤10.7:计算角度r2对应的所有平行线段之间的最大距离d2,计算角度为r1的线段的两端到角度为r2的线段的最大距离l2;且若d2