温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,汇文网负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
网站客服:3074922707
面向
工业
现场
矩形
工件
定位
算法
第 卷 第 期 年 月北 京 信 息 科 技 大 学 学 报 .文 章 编 号:():/./.面向工业现场的矩形工件定位算法朱曾生佟强杨大利侯凌燕(北京信息科技大学 计算机学院北京)摘 要:为了提高工业现场矩形工件的定位效率提出了一种基于多边形近似的矩形检测算法将矩形检测分为粗定位和精定位两步 在粗定位阶段利用多边形近似算法剔除掉多余轮廓筛选出矩形获取矩形 个角的粗定位坐标在精定位阶段利用亚像素技术对矩形的 个角进行精确定位计算出其亚像素坐标 实验结果表明:所提算法的平均检测误差为.像素检测效率分别是基于 方法和 变换方法的.倍和.倍 该算法满足工业应用中的快速、高精度要求具有一定的实用意义关 键 词:图像处理矩形检测多边形近似亚像素中图分类号:.文献标志码:():.:.:收稿日期:基金项目:北京市教委科研计划科技一般项目()作者简介:第一作者:朱曾生男硕士研究生通信作者:佟强男博士讲师 引言智能制造是生产企业的发展新趋势利用视觉技术检测工件是智能化生产的重要应用 矩形工件是工业生产中最常见的工件类型快速、准确地检测出图像中的矩形具有十分广泛的应用价值 例如机器人的自动码垛、工业产品的缺陷检测等目前关于矩形的检测方法主要分为两种一种是基于 角点检测的方法另一种是基于 变换 的方法基于 角点检测的矩形检测方法是先检测出矩形的角点再从角点中筛选出构成矩形的 个角 张从鹏等提出只检测图像中的 型角点再筛选出构成矩形的角点该方法运算速度快但容易受到角点信息的干扰可能会检测出多余的矩形基于 变换的矩形检测方法是通过检测矩形的 条边来实现矩形的检测将矩形检测问题转换成了直线检测问题 李强兵等分析了矩形在 空第 期朱曾生等:面向工业现场的矩形工件定位算法 间的几何特征通过对 空间中的直线段进行组合比较筛选出符合条件的直线段从而检测出矩形路鹭等提出了一种快速高精度的矩形检测算法利用模糊数学理论对轮廓线段进行模糊融合计算从而实现对矩形的高精度检测定位 目前对于 变换的一些改进主要有随机 变换和概率 变换但二者的计算量仍然较高且无论从角出发还是从边出发随着检测出的角点和直线数量增加组合数都会变得很大导致计算量大大增加对于实时性要求较高的应用场景实用性不高本文针对工业现场的矩形工件定位效率低的问题提出了一种基于多边形近似的矩形检测算法以轮廓为对象将矩形的检测分为粗定位和精定位两步 首先通过对边缘轮廓的多边形近似筛选出矩形轮廓获取矩形的粗定位坐标然后在矩形粗定位坐标的邻域内利用亚像素技术对矩形的 个角进行精定位计算出其亚像素坐标从而确定矩形的位置 该算法能快速、准确地检测出矩形的位置具有一定的实用价值 算法相关原理.多边形近似原理多边形近似是一种以点弦距为误差衡量标准将物体轮廓转换成一系列直线段的算法常用于对曲线矢量的压缩其原理主要源自于 算法 该算法以曲线轮廓的第一个点和最后一个点的连线为弦开始分别计算轮廓上的点到弦的距离若所有距离均在阈值范围内则以该弦代替该段轮廓曲线当存在距离超过设定的阈值的轮廓点时将最大距离点记为新的端点将轮廓分成两段重复上述操作直到所有的点弦距均在阈值范围内 将所得到的端点组成的多边形近似取代原轮廓曲线 其原理如图 所示图 多边形近似原理示意图图中点 和点 是某段轮廓的两个端点连接 为弦点 为该段轮廓上到弦 距离最远的轮廓点 设置距离阈值为 点 到弦 的距离记为 若 小于阈值 则把 段轮廓曲线近似成线段 若 大于阈值 则记点 为新的端点将轮廓分成 和 两段分别在两段轮廓上找出距离对应的弦最远的点依次迭代细分直到轮廓上的点到对应弦的距离均在阈值范围内最终将整个轮廓近似成多边形 当距离阈值设置得越小近似出的多边形越接近原轮廓.角点的亚像素定位原理像素是图像中的基本单位常被用来表示图像的物理分辨率 在图像处理中提高检测精度的方法有两种一种是通过提高相机的分辨率从硬件上提高图像的精度另一种就是利用亚像素细分技术从软件上提高图像的检测精度 亚像素细分技术最早由 提出目前已经取得了很好的效果 角点就是边缘的交点角点的亚像素定位是利用其与边缘点的连线垂直于边缘点的梯度方向通过最小化误差函数迭代来求解亚像素坐标角点的亚像素定位原理如图 所示图 角点的亚像素定位原理示意图图中方框区域为初始角点的邻域 为亚像素角点的位置 点为初始角点邻域内的点当 点在均匀区域的内部时其灰度梯度为 当 点在边缘上时其灰度梯度方向垂直于边缘方向亚像素点到边缘点的向量与灰度梯度向量点积为 亚像素位置按式()求得:()()式中:为亚像素点坐标是需要求解的角点坐标为其邻域内的点为点 处的灰度梯度使用 算子进行卷积计算即可获得 根据最小二乘法可以将式()转换成如式()所示的最小二乘形式:()根据最小二乘解可得 的最优解为 ()()()式中:为邻域内 点的个数 将计算结果作为新的初始点通过迭代可进一步精确定位 点处的亚像素坐标 北京信息科技大学学报第 卷.双目视觉定位原理双目视觉是一种利用视差原理进行定位的视觉方法其定位原理如图 所示 通过两个相机模拟人的双眼在不同的位置同时获取同一目标的两幅图像然后根据目标点在两幅图像之间的差异计算目标点的三维坐标实现目标点的三维定位图 双目视觉定位原理图目标点在相机中的成像过程可以看作是目标点在不同坐标系中的坐标转换过程其中包括世界坐标系、相机坐标系、图像坐标系和像素坐标系 设空间目标点 在世界坐标系的坐标为()其在左右图像中所成图像的像素坐标为()和()则其均满足如式()所示的方程 ()式中:为比例系数为相机的内参矩阵表示相机坐标系到像素坐标系的转换关系为相机的外参矩阵表示世界坐标系到相机坐标系的转换关系 和 通过相机标定即可获得 根据式()将目标点在左右图像中的像素坐标联立即可计算出目标点的三维空间坐标 矩形检测的实施方法.基本思想本算法主要将矩形的检测分为粗定位和精定位两个步骤 在粗定位阶段利用多边形近似算法对图像中的轮廓进行多边形近似剔除掉多余的轮廓只保留矩形轮廓减少计算量提高矩形的检测速度在精定位阶段利用亚像素技术对粗定位所获得的矩形角点进行精确定位通过迭代计算出矩形角点的亚像素坐标从而提高矩形的检测精度.矩形检测算法的步骤及流程本算法以轮廓为研究对象通过多边形近似算法检测出矩形并对其进行精确定位 算法的主要步骤如下)输入图像 打开相机采集图像或选取已采集好的图像以进行矩形检测)图像预处理 对输入的图像进行灰度化、二值化等预处理以便提取图像轮廓)提取轮廓 对预处理后的图像进行轮廓提取提取出待检测物体的外轮廓)多边形近似 利用多边形近似算法对提取出的外轮廓曲线进行多边形近似将轮廓曲线近似为多边形)轮廓筛选 实现矩形的粗定位算法去除多余轮廓减少计算量 对近似成多边形的轮廓曲线进行筛选首先只保留四边形剔除掉三角形、六边形等其余多边形然后对保留的四边形轮廓进行凹凸性检测剔除掉凹四边形最后利用矩形 个角为直角的特点对四边形的 个角进行余弦值计算当 个角的余弦值均小于接近 的阈值时认为该四边形为矩形记录矩形 个角的坐标)亚像素定位 利用亚像素技术对矩形 个角进行精确定位 以矩形的角为初始坐标设置邻域窗口根据邻域点的位置信息和灰度信息计算邻域点的梯度信息根据邻域点的位置信息和梯度信息结合公式计算角点的亚像素坐标以计算出的亚像素坐标为新的初始点反复迭代直到满足迭代终止条件计算出角点的最终亚像素坐标算法流程如图 所示图 矩形检测算法流程第 期朱曾生等:面向工业现场的矩形工件定位算法 实验为了验证所提算法的有效性和稳健性本实验采用 的高清自动对焦相机进行图像采集以黑色为背景采集大量不同尺寸、不同角度摆放的矩形工件 所采集图像的分辨率为 像素 像素.速度实验设计本文所提矩形检测算法的速度主要体现在粗定位阶段实验:本实验以相机采集的真实图像为实验对象 分别用传统的基于 的方法和基于 变换的方法对矩形工件进行检测分别记录下其检测出矩形工件所花费的时间将记录结果与本文所提算法的检测时间相比较以验证本文所提算法的检测效率.精度实验设计本文所提矩形检测算法的精度主要体现在精定位阶段实验:本实验以 种不同尺寸的矩形工件为实验对象利用相机采集随机摆放的矩形工件图像利用画图工具人工确定矩形工件的 个角的像素坐标并将之作为矩形工件的实际坐标 通过所提算法程序对矩形工件进行检测将检测出的坐标值与实际坐标值进行对比以检验所提算法的检测精度实验:本实验以上述实验所采集的图像为实验对象分别用传统的基于 的方法和基于 变换的方法对同一图像进行检测将检测出的坐标与本文所提算法检测出的坐标进行比较以验证所提算法的检测效果 实验结果与分析.检测速度分别用基于 方法、基于 变换方法和本文算法对工件图像进行检测其检测时间如图 所示从图中可以看出对于同一图像的检测基于 的 方 法 耗 时 最 长 平 均 消 耗 时 间 为.基于 变换的方法采用的是改进后的概率 变换计算量有所下降平均耗时为.本文方法的平均耗时为.检测效率最高分别为前二者的.倍和.倍 从图中的曲线波动可以看出受原始图像的影响基于 方法的矩形检测算法受到检测出的角点数量的影响计算量波动较大导致运行时间波动较大本文方法以轮廓为研究对象受图像噪声影响较小检测效率相对比较稳定图 矩形检测时间对比.检测精度将矩形工件随机摆放不同的角度不同的位置采集 幅分辨率为 像素 像素的图像使用本文所提矩形检测算法进行矩形检测 以画图工具读取的矩形角点像素坐标为实际坐标将本文算法的检测结果与之相比较其部分检测结果对比如表 所示 将本文算法检测出的结果与实际坐标相比计算出二者间的欧氏距离将计算结果作为误差部分实验结果如图 所示表 工件的矩形检测结果像素序号实际坐标粗定位精定位()()(.)()()(.)()()(.)()()(.)图 矩形检测算法误差 北京信息科技大学学报第 卷对所采集的 幅图像检测结果进行统计本文所提矩形检测算法在粗定位阶段可以粗略定位出矩形的位置其误差可以控制在 像素左右 在精定位阶段通过亚像素计算矩形的定位精度有所提高其中最大误差为.像素误差在一个像素以内定位精度能够达到亚像素精度 从图 可以看出通过对不同图像的检测本文所提矩形算法的检测误差基本保持在 像素以内检测效果比较稳定对所采集的 幅图像检测结果进行统计本文算法的平均检测误差为.像素与文献的检测精度.像素相比略有下降但能满足工业现场的应用需求根据本文算法检测出的矩形工件角点像素坐标利用双目视觉技术计算出矩形工件角点的三维坐标与实际三维坐标进行对比部分实验结果如表 所示 对不同工件图像的检测结果进行三维坐标计算以计算出的三维坐标与工件的实际三维坐标的欧氏距离为误差部分工件定位的尺寸误差如图 所示表 工件的三维坐标计算结果序号计算坐标实际坐标绝对误差(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)(.)图 矩形工件定位误差对定位结果进行统计经本文算法检测出的矩形工件 坐标的最大误差为.坐标的最大误差为.坐标的最大误差为.绝对误差均在 以内 对不同工件进行定位其误差基本保持在 之内 经统计矩形工件的平均定位误差为.可以满足工业应用需求分别使用基于 角点检测的方法和基于 变换的方法以及本文所提算法对同一矩形工件进行检测部分对比结果如表 所示表 矩形检测算法精度部分对比实验结果像素算法像素坐标亚像素坐标 方法()(.)()(.)()(.)()(.)方法()(.)()(.)()(.)()(.)本文方法()(.)()(.)()(.)()(.)对所采集的 幅图像检测结果进行统计基于 方法的整像素坐标最大误差为 像素基于 变换方法的整像素坐标最大误差为 像素本文所提算法的粗定位坐标最大误差为 像素三者相差不大 在对整像素坐标精确到亚像素坐标之后三者的亚像素坐标基本一致 因此从最终的检测结果来看在检测精度上本文方法与基于 方法和基于 变换方法的精度相当总体而言本文所提矩形检测算法与传统的基于 方法和基于 变换方法的检测精度相当能够达到亚像素精度而在检测效率上本文方法有着明显提升可以满足工业应用中的快速、准确检测出矩形的要求 结束语为了提高工业现场中矩形工