发明名称 单针扫描式螺纹测量仪探针X轴旋转偏差的视觉检测方法
摘要 本发明提供了一种单针扫描式螺纹测量仪探针X轴旋转偏差的视觉检测方法,涉及图像处理技术领域。包括以下过程:步骤1、初始化标定:步骤2、实时检测探针尖点:步骤3、计算旋转偏差角度。本发明能够通过图像处理手段测量、调节探针的X轴旋转定位偏差大小,实现自动化测量,在保证安装精度的前提下,提高效率。
申请公布号 CN103337067B 申请公布日期 2016.03.02
申请号 CN201310217418.3 申请日期 2013.06.03
申请人 南京航空航天大学 发明人 赵东标;陈盛;陆永华;刘凯;王扬威;章永年;贡国云;沈建清
分类号 G06T7/00(2006.01)I;G01B11/26(2006.01)I 主分类号 G06T7/00(2006.01)I
代理机构 江苏圣典律师事务所 32237 代理人 贺翔
主权项 一种对单针扫描式螺纹测量仪测量探针的X轴旋转偏差的视觉检测方法,其特征在于,包括以下过程:步骤1、初始化标定:步骤1‑1、采集第1帧包括探针运动区域的RGB图像,根据以下公式将RGB图像转化为灰度图像;Gray=(R*19595+G*38469+B*7472)&gt;&gt;16其中,R、G、B分别表示RGB图像中的对应的红、绿、蓝三个颜色分量,Gray表示灰度值;步骤1‑2、利用SUSAN角点检测算法,对灰度图像进行角点检测,得到包括上、下探针尖点在内的所有角点信息;步骤1‑3、人工操作,选中上、下探针尖点对应的两个角点;步骤2、实时检测探针尖点:步骤2‑1、采集第i+1帧包括探针运动区域的RGB图像,将其转化为灰度图像,其中i≥1;步骤2‑2、当i=1时,以前一帧图像中探针尖点的位置为预测尖点,即P′<sub>i+1</sub>=P<sub>i</sub>;当i≥2时,根据第i‑1帧和i帧的灰度图像中探针尖点的位置,通过以下预测公式预测i+1帧图像中的探针尖点位置;P′<sub>i+1</sub>=P<sub>i</sub>+(P<sub>i</sub>‑P<sub>i‑1</sub>)=2P<sub>i</sub>‑P<sub>i‑1</sub>;其中,P为探针尖点的坐标向量,P’为探针尖点的预测坐标向量,i为图像的帧数;步骤2‑3、以探针尖点预测坐标向量P’为基础,在第i+1帧灰度图像上构建局部感兴趣区域;步骤2‑4、通过对局部感兴趣区域进行SUSAN角点检测,过滤出上、下探针尖点位置;步骤2‑5、对过滤出的上、下探针尖点进行距离校验;距离校验条件1为|d(P<sub>up</sub>,P<sub>down</sub>)‑d<sub>0</sub>(P<sub>up</sub>,P<sub>down</sub>)|<ε<sub>1</sub>其中,d(P<sub>up</sub>,P<sub>down</sub>)表示i+1帧图像中的上、下探针尖点之间的距离;d<sub>0</sub>(P<sub>up</sub>,P<sub>down</sub>)表示i帧图像中的上、下探针尖点之间的距离;ε<sub>1</sub>为误差阈值;步骤2‑6、判断步骤2‑5校验结果,如满足条件1,则转入步骤2‑10,否则转步骤2‑7;步骤2‑7、以Canny算子检测局部感兴趣区域中图像边缘信息,利用Hough变换提取直线轮廓,进一步根据以下规则分别得到上尖点和下尖点对应的圆锥母线:a)在所提取的直线中,两条探针圆锥母线与图像中X轴夹角大小在60°~80°之间;b)两条圆锥母线之间的夹角满足<img file="FDA0000821924010000021.GIF" wi="566" he="158" />θ<sub>1</sub>,θ<sub>2</sub>分别是两条探针圆锥母线与图像X轴夹角;c)圆锥母线交点Q为所有配对成功直线交点的最高点,并且在图像内;步骤2‑8、根据所得上尖点和下尖点对应的圆锥母线,计算上、下轮廓交点,并进行距离校验;距离校验条件2为|d(Q<sub>up</sub>,Q<sub>down</sub>)‑d<sub>0</sub>(Q<sub>up</sub>,Q<sub>down</sub>)|<ε<sub>2</sub>其中,d(Q<sub>up</sub>,Q<sub>down</sub>)表示当前帧图像中的上、下探针尖点之间的距离;d<sub>0</sub>(Q<sub>up</sub>,Q<sub>down</sub>)表示前一帧图像中的上、下探针尖点之间的距离;ε<sub>2</sub>为误差阈值;步骤2‑9、判断步骤2‑8校验结果,如满足条件2,则根据上一帧图像中理想探针尖点Q<sub>0</sub>与P<sub>0</sub>的距离以及当前帧图像中理想探针尖点Q,按下式计算当前帧中实际探针尖点P;P=Q+P<sub>0</sub>‑Q<sub>0</sub>,转入步骤2‑10;若条件2亦不满足,则认为当前帧图像检测失败,测量数据点不存入数据库中,转步骤2‑1;步骤2‑10记录上、下探针尖点的位置及其连线斜率k;步骤3、计算旋转偏差角度步骤3‑1、分别拟合探针上、下尖点位置,求出探针运动直线,具体过程如下:探针一次上、下运动捕获的视频序列中,若检测出的有效探针尖点图像数为N,利用线性回归方程<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>k</mi><mi>M</mi></msub><mo>=</mo><mfrac><mrow><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><mrow><mo>(</mo><msub><mi>x</mi><mi>i</mi></msub><mo>-</mo><mover><mi>x</mi><mo>&OverBar;</mo></mover><mo>)</mo></mrow><mrow><mo>(</mo><msub><mi>y</mi><mi>i</mi></msub><mo>-</mo><mover><mi>y</mi><mo>&OverBar;</mo></mover><mo>)</mo></mrow></mrow><mrow><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msup><mrow><mo>(</mo><msub><mi>x</mi><mi>i</mi></msub><mo>-</mo><mover><mi>x</mi><mo>&OverBar;</mo></mover><mo>)</mo></mrow><mn>2</mn></msup></mrow></mfrac><mo>=</mo><mfrac><mrow><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msub><mi>x</mi><mi>i</mi></msub><msub><mi>y</mi><mi>i</mi></msub><mo>-</mo><mi>N</mi><mover><mrow><mi>x</mi><mi>y</mi></mrow><mo>&OverBar;</mo></mover></mrow><mrow><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msubsup><mi>x</mi><mi>i</mi><mn>2</mn></msubsup><mo>-</mo><mi>N</mi><msup><mover><mi>x</mi><mo>&OverBar;</mo></mover><mn>2</mn></msup></mrow></mfrac></mrow>]]></math><img file="FDA0000821924010000031.GIF" wi="813" he="271" /></maths>求出探针运动直线;其中,k<sub>M</sub>为运动直线的斜率;x<sub>i</sub>,y<sub>i</sub>分别为第i帧图像中探针尖点的横、纵坐标;<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mover><mi>x</mi><mo>&OverBar;</mo></mover><mo>=</mo><mfrac><mrow><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msub><mi>x</mi><mi>i</mi></msub></mrow><mi>N</mi></mfrac><mo>,</mo></mrow>]]></math><img file="FDA0000821924010000032.GIF" wi="224" he="199" /></maths><maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mover><mi>y</mi><mo>&OverBar;</mo></mover><mo>=</mo><mfrac><mrow><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msub><mi>y</mi><mi>i</mi></msub></mrow><mi>N</mi></mfrac><mo>,</mo></mrow>]]></math><img file="FDA0000821924010000033.GIF" wi="229" he="199" /></maths>步骤3‑2、根据每帧图像中的上、下探针尖点位置,求出各帧图像中探针所在直线方向;即<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msub><mi>k</mi><mi>i</mi></msub><mo>=</mo><mfrac><mrow><msub><mi>y</mi><mrow><mi>u</mi><mi>p</mi></mrow></msub><mo>-</mo><msub><mi>y</mi><mrow><mi>d</mi><mi>o</mi><mi>w</mi><mi>n</mi></mrow></msub></mrow><mrow><msub><mi>x</mi><mrow><mi>u</mi><mi>p</mi></mrow></msub><mo>-</mo><msub><mi>x</mi><mrow><mi>d</mi><mi>o</mi><mi>w</mi><mi>n</mi></mrow></msub></mrow></mfrac><mo>,</mo><mi>i</mi><mo>=</mo><mn>1</mn><mo>,</mo><mn>2</mn><mo>...</mo><mo>,</mo><mi>N</mi></mrow>]]></math><img file="FDA0000821924010000034.GIF" wi="637" he="150" /></maths>其中,k<sub>i</sub>为第i帧图像中,探针上、下尖点的连线斜率;(x<sub>up</sub>,y<sub>up</sub>)为上探针尖点坐标,(x<sub>down</sub>,y<sub>down</sub>)为下探针尖点坐标;探针上、下尖点连线斜率k的均值为<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><msub><mi>k</mi><mi>L</mi></msub><mo>=</mo><mfrac><mrow><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><mi>N</mi></munderover><msub><mi>k</mi><mi>i</mi></msub></mrow><mi>N</mi></mfrac></mrow>]]></math><img file="FDA0000821924010000035.GIF" wi="214" he="198" /></maths>利用探针上、下尖点连线平均斜率k<sub>L</sub>得到一条上、下尖点的拟合直线;步骤3‑3、计算探针运动直线与上、下尖点拟合直线的夹角θ<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><mi>&theta;</mi><mo>=</mo><mi>a</mi><mi>t</mi><mi>a</mi><mi>n</mi><mrow><mo>|</mo><mfrac><mrow><msub><mi>k</mi><mi>L</mi></msub><mo>-</mo><msub><mi>k</mi><mi>M</mi></msub></mrow><mrow><mn>1</mn><mo>+</mo><msub><mi>k</mi><mi>L</mi></msub><msub><mi>k</mi><mi>M</mi></msub></mrow></mfrac><mo>|</mo></mrow></mrow>]]></math><img file="FDA0000821924010000036.GIF" wi="370" he="158" /></maths>θ即为旋转偏差角度。
地址 210016 江苏省南京市白下区御道街29号