[发明专利]一种工件表面轮廓的二维激光实时探测方法有效

专利信息
申请号: 201510278480.2 申请日: 2015-05-27
公开(公告)号: CN104880160B 公开(公告)日: 2017-05-17
发明(设计)人: 刘跃虎;李辛昭;崔志超;翟少卓;苏远歧 申请(专利权)人: 西安交通大学
主分类号: G01B11/24 分类号: G01B11/24
代理公司: 西安智大知识产权代理事务所61215 代理人: 何会侠
地址: 710049*** 国省代码: 陕西;61
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 工件 表面 轮廓 二维 激光 实时 探测 方法
【权利要求书】:

1.一种工件表面轮廓的二维激光实时探测方法,其特征在于,包括以下步骤:

1)从2D激光传感器中获取到一帧轮廓点数据,每个点用如下符号表示:

R={r1,...,rl};

2)对获取的轮廓点数据做预处理,预处理包括零值轮廓点去除和重复轮廓点去除;

3)对预处理过后的轮廓点数据进行线段提取,得到轮廓点数据的线段拟合结果;

4)对线段提取的结果进行类内点删除操作,去除错误分类的边缘点,保证整个点集的直线拟合参数的正确性;

5)轮廓形状检测,获得轮廓点数据线段提取的结果之后,把所要提取的目标形状检测并定位出来;

所述对预处理过后的轮廓点数据进行线段提取的方法,包括以下步骤:

(1)使用自适应阈值的迭代中断点拟合IEPF算法对轮廓点数据进行过分割,通过点集R的起点r1和终点rl确定直线L,在该点集中搜索到该直线L距离最大的点rj,验证准则为若该点到该直线L的距离dj大于设定的阈值threshold,则以该点为断点,将该点集分割为R'和R″两个点集,之后对每个分割点集执行相同的分割过程,直到所有点集都满足验证准则;

得到过分割之后的点集集合V:

V={q1,...,qn},qk={ri,...,rj},k∈n

其中qk为第k个过分割点集,r为该点集所包含的点;

(2)建立无向图G=[v,ε],节点v为过分割之后的n个点集V={q1,...,qn},无向图的边ε则表征两个节点之间的关系,分为主边和次边,定义ε表征两个点集能进一步融合的概率,其计算函数如下:

<mrow><mi>F</mi><mrow><mo>(</mo><msub><mi>q</mi><mi>i</mi></msub><mo>,</mo><msub><mi>q</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>=</mo><mfrac><mrow><msub><mi>f</mi><mi>r</mi></msub><mrow><mo>(</mo><msub><mi>q</mi><mi>i</mi></msub><mo>,</mo><msub><mi>q</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>+</mo><mi>&alpha;</mi><mo>*</mo><msub><mi>f</mi><mi>k</mi></msub><mrow><mo>(</mo><msub><mi>q</mi><mi>i</mi></msub><mo>,</mo><msub><mi>q</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>+</mo><mi>&beta;</mi><mo>*</mo><msub><mi>f</mi><mi>s</mi></msub><mrow><mo>(</mo><msub><mi>q</mi><mi>i</mi></msub><mo>,</mo><msub><mi>q</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>+</mo><mi>&gamma;</mi><mo>*</mo><msub><mi>f</mi><mi>d</mi></msub><mrow><mo>(</mo><msub><mi>q</mi><mi>i</mi></msub><mo>,</mo><msub><mi>q</mi><mi>j</mi></msub><mo>)</mo></mrow></mrow><mrow><mn>1</mn><mo>+</mo><mi>&alpha;</mi><mo>+</mo><mi>&beta;</mi><mo>+</mo><mi>&gamma;</mi></mrow></mfrac></mrow>

其中qi,qj为任意两个节点,α,β,γ为常量;

fr(qi,qj)为粗IEPF融合项:

其中length(qi)为qi点集所含轮廓点的长度,Dmid(qi)为qi集合远端点到IEPF拟合直线的距离,DMAX为IEPF融合阈值,Dmid为Dmid(qi)和Dmid(qj)中较小的那个值;

fk(qi,qj)为kmeans聚类项:

<mrow><msub><mi>f</mi><mi>k</mi></msub><mrow><mo>(</mo><msub><mi>q</mi><mi>i</mi></msub><mo>,</mo><msub><mi>q</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mn>1</mn></mtd><mtd><mrow><msub><mi>q</mi><mi>i</mi></msub><mo>&Element;</mo><msub><mi>S</mi><mi>i</mi></msub><mi>a</mi><mi>n</mi><mi>d</mi><mi> </mi><msub><mi>q</mi><mi>j</mi></msub><mo>&Element;</mo><msub><mi>S</mi><mi>i</mi></msub></mrow></mtd></mtr><mtr><mtd><mfrac><mrow><mi>K</mi><mrow><mo>(</mo><msub><mi>q</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>-</mo><msub><mi>K</mi><mrow><mi>m</mi><mi>e</mi><mi>a</mi><mi>n</mi></mrow></msub><mrow><mo>(</mo><msub><mi>S</mi><mi>i</mi></msub><mo>)</mo></mrow></mrow><mrow><mi>K</mi><mrow><mo>(</mo><msub><mi>q</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>-</mo><msub><mi>K</mi><mrow><mi>m</mi><mi>e</mi><mi>a</mi><mi>n</mi></mrow></msub><mrow><mo>(</mo><msub><mi>S</mi><mi>i</mi></msub><mo>)</mo></mrow></mrow></mfrac></mtd><mtd><mrow><msub><mi>q</mi><mi>i</mi></msub><mo>&Element;</mo><msub><mi>S</mi><mi>i</mi></msub><mi>a</mi><mi>n</mi><mi>d</mi><mi> </mi><msub><mi>q</mi><mi>j</mi></msub><mo>&NotElement;</mo><msub><mi>S</mi><mi>i</mi></msub></mrow></mtd></mtr></mtable></mfenced></mrow>

其中Si为kmeans聚类集合S中的第i类,K(qi)为qi集合直线拟合斜率,Kmean(Si)为kmeans聚类后集合的斜率均值;

fs(qi,qj)为锯齿边缘项:

<mrow><msub><mi>f</mi><mi>s</mi></msub><mrow><mo>(</mo><msub><mi>q</mi><mi>i</mi></msub><mo>,</mo><msub><mi>q</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><msqrt><mfrac><msup><mrow><mo>(</mo><msub><mi>length</mi><mi>min</mi></msub><mo>(</mo><mrow><msub><mi>q</mi><mn>1</mn></msub><mo>,</mo><mn>...</mn><mo>,</mo><msub><mi>q</mi><mi>n</mi></msub></mrow><mo>)</mo><mo>)</mo></mrow><mn>2</mn></msup><mrow><mi>l</mi><mi>e</mi><mi>n</mi><mi>g</mi><mi>t</mi><mi>h</mi><mrow><mo>(</mo><msub><mi>q</mi><mi>i</mi></msub><mo>)</mo></mrow><mo>*</mo><mi>l</mi><mi>e</mi><mi>n</mi><mi>g</mi><mi>t</mi><mi>h</mi><mrow><mo>(</mo><msub><mi>q</mi><mi>j</mi></msub><mo>)</mo></mrow></mrow></mfrac></msqrt></mtd><mtd><mtable><mtr><mtd><mrow><mi>j</mi><mo>=</mo><mi>i</mi><mo>+</mo><mn>1</mn><mi>a</mi><mi>n</mi><mi>d</mi><mi> </mi><msub><mi>k</mi><msub><mi>q</mi><mi>i</mi></msub></msub><mo>*</mo><msub><mi>k</mi><msub><mi>q</mi><mi>j</mi></msub></msub><mo>&lt;</mo><mn>0</mn><mi>a</mi><mi>n</mi><mi>d</mi></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>k</mi><msub><mi>q</mi><mi>i</mi></msub></msub><mo>*</mo><msub><mi>k</mi><msub><mi>q</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn></mrow></msub></msub><mo>&lt;</mo><mn>0</mn><mi>a</mi><mi>n</mi><mi>d</mi><mi> </mi><msub><mi>k</mi><msub><mi>q</mi><mi>j</mi></msub></msub><mo>*</mo><msub><mi>k</mi><msub><mi>q</mi><mrow><mi>j</mi><mo>+</mo><mn>1</mn></mrow></msub></msub><mo>&lt;</mo><mn>0</mn></mrow></mtd></mtr></mtable></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mrow><mi>e</mi><mi>l</mi><mi>s</mi><mi>e</mi></mrow></mtd></mtr></mtable></mfenced></mrow>

其中qi和qj为点集p的左右临近点集,lengthmin(q1,...,qn)为所有点集中的最短点集的长度,k为该点集的平均斜率;

fd(qi,qj)为点集距离项:

<mrow><msub><mi>f</mi><mi>d</mi></msub><mrow><mo>(</mo><msub><mi>q</mi><mi>i</mi></msub><mo>,</mo><msub><mi>q</mi><mi>j</mi></msub><mo>)</mo></mrow><mo>=</mo><mi>exp</mi><mrow><mo>(</mo><mo>-</mo><mfrac><mn>1</mn><mrow><mn>2</mn><mi>&sigma;</mi></mrow></mfrac><mo>|</mo><mo>|</mo><msub><mi>c</mi><mrow><mi>q</mi><mi>i</mi></mrow></msub><mo>-</mo><msub><mi>c</mi><mrow><mi>q</mi><mi>j</mi></mrow></msub><mo>|</mo><mo>|</mo><mo>)</mo></mrow></mrow>

其中为点集qi,qj中距离最近的两个点的坐标;

(3)创建分割无向图的能量函数,使分割无向图的能量函数最小化则得到过分割的点集之间的融合关系;

首先定义一下主边和次边的概念,认为节点V={q1,...,qn}是有顺序的,当一条边表示的qi,qj满足j=i+1时,则该边为主边,否则该边为次边;实际上就是紧挨的点集组成的边即为主边;

在构造能量函数之前要先对无向图做几步预处理:

1)在主边中,找到极大值的边作为生长种子边:

Seed={ci|sign(Fmain(ci)′)′=-2},ci∈ε

2)在主边中,找到函数值小于0.375的边作为截断边,作为种子边生长的最大范围:

Break={cj|Fmain(cj)<0.375},cj∈ε

所有点集被截断边分为N类,故能量函数设为:

<mrow><mi>E</mi><mrow><mo>(</mo><mi>M</mi><mo>)</mo></mrow><mo>=</mo><msub><mi>min</mi><mrow><mi>M</mi><mo>&GreaterEqual;</mo><mi>N</mi></mrow></msub><mo>-</mo><mi>log</mi><mrow><mo>(</mo><mfrac><mrow><msubsup><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>M</mi></msubsup><mfrac><mrow><msubsup><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>1</mn></mrow><msub><mi>m</mi><mi>k</mi></msub></msubsup><msubsup><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mi>i</mi><mo>+</mo><mn>1</mn></mrow><msub><mi>m</mi><mi>k</mi></msub></msubsup><mfrac><mrow><mi>F</mi><mrow><mo>(</mo><msub><mi>q</mi><mi>i</mi></msub><mo>,</mo><msub><mi>q</mi><mi>j</mi></msub><mo>)</mo></mrow></mrow><mrow><mi>j</mi><mo>-</mo><mi>i</mi></mrow></mfrac></mrow><mrow><msub><mi>m</mi><mi>k</mi></msub><mo>-</mo><mn>1</mn></mrow></mfrac></mrow><mi>M</mi></mfrac><mo>)</mo></mrow></mrow>

其中M为融合之后得到的集合的数量,mk为融合之后第k类中包含的点集数目,mk-1则为第k类包含的主边数目,j-i衡量的是次边的权重程度。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安交通大学,未经西安交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510278480.2/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top