您好, 访客   登录/注册

基于MATLAB图像特征提取的零件位置识别

来源:用户上传      作者:张天悦 安琳 王宇茹

  摘   要:本文针对机械加工零件在工业自动化生产线中零件位置识别问题,首先利用获取的数据,菱形的四个角点特征明显,建立直角坐标系角点匹配模型,坐标系的原点为左上角顶点,然后利用MATLAB的corner函数计算散乱零件的四个角点坐标和标注位置的四个角点坐标,在机械手通过四个角点位置抓取零件,进行标准位置与散乱位置四个角点的随机一一对应,将散乱位置的角点放到标准位置的对应角点处。
  关键词:图像特征识别  特征提取  角点  形心
  中图分类号:TP39                                   文献标识码:A                        文章编号:1674-098X(2019)04(c)-0133-02
  在自动化生产线中,装夹,包装,分拣等均需要机器人准确识别出对象物体。机器人视觉就是这其中的核心技术,机器视觉主要用计算机来模拟人的视觉功能,从客观事物的图像中提取信息,进行处理并加以理解,最终用于实际检测、测量和控制。机器视觉技术最大的特点是速度快、信息量大、功能多。图像识别技术的精、准、快尤为重要,识别出图像后,对位置的计算也很重要,使机器人可以高效快速的对物体执行操作[2]。
  1  模型介绍
  本文获取了部分零件数据,零件形状为接近菱形(正方形),在零件中央位置有三个圆。对零件进行特征提取,菱形的四个角点特征明显,且确定四个角点坐标即可令机械手得知此零件的精准位置实施抓取。假设标准零件的坐标位置对于以图片左上角为原点建立的坐标系而言是一致的。所以在本模型中我们以拍摄图片的左上角即第一矩阵点坐标为原点,以矩阵的第一行为x轴,以矩阵的第一列为y轴建立直角坐标系。利用MATLAB自帶corner函数计算菱形四个角点坐标A(a1,a2),B(b1,b2),C(c1,c2),D(d1,d2),机械手可以根据四个角点坐标抓取零件,将未在标准位置上的零件移动到与标准位置角点一致的位置上。
  2  模型求解
  在本模型中我们利用了MATLAB中自带的corner函数对数据进行角点的求解。计算图像中的角点首先要计算出它的灰度变化率。其函数及展开式如下:
  把W(x,y)和矩阵结合起来,用一个新的符号Z来表示,便可将原始公式转化成如下形式:
  矩阵Z的两个特征向量l1和l2与矩阵Z的主曲率成正比。它利用l1、l2来表征变化最快和最慢的两个方向。若两个都很大就是角点,一个大一个小就是边缘,两个都小就是在变化缓慢的图像区域[3]。
  但是解特征向量需要比较多的计算量,且两个特征值的和等于矩阵Z的迹,两个特征值的积等于矩阵Z的行列式。所以用如下式子来判定角点质量(k常取0.04-0.06)。
  具体算法实现如下:
  第一步:对每一像素点计算相关矩阵。
  第二步:计算每像素点的Harris 角点响应。
  第三步:在W×W范围内寻找极大值点,若它的角点响应大于阀值,则视为角点:根据以上算法,分别求出的标准零件与待抓取零件角点以及其坐标。
  3  结语
  可得到带抓取零件角点坐标A1(25,87),B1(42,49),C1(54,105),D1(70,76)以及标准位置角点坐标为A(38,35),B(66,18),C(55,64),D(83,46),再根据得到的待抓取零件角点的四个坐标,机械手即可移动到指定位置抓取。为了在运算过程中减少时间,我们对原有图进行了缩放,因此待抓取零件和标准零件角点位置应扩大为原来的5倍。机械手可以根据四个角点坐标抓取零件,将其放置标准位置零件的角点相同的位置上。
  参考文献
  [1] 国务院关于印发《中国制造2025》的通知[A].中国农机工业协会风能设备分会《风能产业》(2015年第8期)[C].2015:14.
  [2] 百度百科.“机器视觉技术”词条[EB/OL].https://baike.baidu.com/item/机器视觉技术/5685545.
  [3] 张丽鹏,顾寄南,丁卫.基于MATLAB图像处理的齿轮中心定位[J].工具技术,2016,50(12):86-88.
转载注明来源:https://www.xzbu.com/1/view-15021795.htm