【基于3D相机的的生产线智能分拣系统中工件位姿测量分析案例6400字】_第1页
【基于3D相机的的生产线智能分拣系统中工件位姿测量分析案例6400字】_第2页
【基于3D相机的的生产线智能分拣系统中工件位姿测量分析案例6400字】_第3页
【基于3D相机的的生产线智能分拣系统中工件位姿测量分析案例6400字】_第4页
【基于3D相机的的生产线智能分拣系统中工件位姿测量分析案例6400字】_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

基于3D相机的的生产线智能分拣系统中工件位姿测量分析案例目录TOC\o"1-3"\h\u23101基于3D相机的的生产线智能分拣系统中工件位姿测量分析案例 1310981.1获取深度图及生成点云模型 115611.1.1深度图的原理及获取 169541.1.2深度图转换成点云模型 3320921.2工件的分割 6153701.2.1工件分割的方法及原理 6132801.2.2区域生长法 7178371.2.3XYZ图像的获取 896121.2.4基于区域生长法的工件分割 106571.3工件位姿的估计 13711.3.1位姿估计方法 13268151.3.2工件表面三维重建与姿态变换 14由激光三角原理的3D相机采集出来的图像是映射工件表面轮廓信息的深度图,需要通过后续的一系列处理才能实现散乱工件位姿的确定。由于点云的处理和匹配需要消耗大量的运算时间,所以本文在基于机器视觉的生产线智能分拣系统的硬件平台的基础上,对散乱工件的位姿测量算法进行了设计和分析,利用2D算法处理3D点云。首先对深度图的成像原理进行分析,并将采集到的深度图转化成点云模型,然后将点云模型映射成各个方向的坐标映射图像,并对坐标映射图像进行处理,确定最顶层待夹取工件的特征,最后进行点云模型的重建,得到夹取面区域的点云模型,进行变换确定工件位姿。1.1获取深度图及生成点云模型1.1.1深度图的原理及获取前文已经介绍了AT一体式C5-2040-CS30-330的成像原理,通过对目标场景发射连续不断的红外激光,并由传感器捕获经过工件反射回来的红外激光,因为激光会因接触工件而发生形状的变形,所以通过捕捉图像位置以及变形程度,利用激光三角原理计算可得到场景中各个点的深度信息,深度图成像原理如图1.1所示。图1.1深度图成像原理Fig.1.1PrincipleofDepthMapImaging当工件与相机之间的距离发生变化时,激光发生偏移,传感器所接收的散射光或者反射光的角度也就不同。故可以选取一个参考面,计算每一点的成像规律,从而得到深度图。图中相机镜头为C点,激光发射器D点,E为激光照射在参考平面点,经过平面的漫反射或者反射成像在点B,如果光路中间遇到工件表面,就会发生反射,成像点在点A,通过测量图像上点A与点B的距离就可以知道工件表面的深度信息,推导过程如下:由三角形相似可得:(1.1)由式1.1可得:(1.2)由三角形相似可得:(1.3)由式1.3可得:(1.4)由式1.2和式1.4可推出:(1.5)式中:CD—镜头和激光发射器距离L—相机与参考平面距离f—镜头焦距n—偏移像素量p—一个像素的实际距离本文搭建的生产线智能分拣系统将ATC5-2040-CS30-330一体式3D相机固定在机械手末端,与工件平台保持垂直,利用3D相机SDK采集散乱工件的深度信息,形成深度图如图1.2所示,为后续的图像处理奠定基础。图1.2工件深度图Fig.1.2Workpiecedepthmap1.1.2深度图转换成点云模型深度图转换成点云模型的原理主要根据相机标定的内外参变换公式换算而来。3D相机获得的深度图包含工件的所有深度信息,即Z坐标方向的信息,但深度图获得的深度信息是相对于图像坐标系的深度信息,所以需要根据相机标定的原理,将深度信息从图像坐标系变换到成世界坐标系中。世界坐标系下点A(X,Y,Z)转换到图像坐标系下点a(u,v)的过程如图1.3所示:图1.3成像原理图Fig.1.3Imagingprinciplediagram由相机标定原理可得:(1.6)式中:u、v—图像坐标系下的任意坐标点u0、v0—图像的中心坐标A—世界坐标系下的三维点Zc—目标到相机的距离R、T—外参3*3旋转矩阵和3*1平移矩阵由于相机坐标与世界坐标重合,所以既没有旋转矩阵,也没有平移矩阵,因此可得:(1.7)由式1.6和式1.7可求解出图像坐标系中点a(u,v)到世界坐标系中点A(X,Y,Z)的变换关系为:(1.8)由第三章标定完成后储存的标定文件可以得出内外参,利用视觉处理软件调取标定文件获得参数并对获得的参数进行处理,用有规律的公式代替参数,在预定义的独立字符间将字符串分离为子字符串,将字符串元组转换为矩阵。同时,使用较高的阈值找到大于零的点作为有效点进而获得区域的坐标,读取图像的灰度值,定义X、Y、Z的值,X的值为区域的列坐标;Y的值为区域的行坐标;Z的值为区域的灰度值。计算参数矩阵与图像坐标矩阵,使深度图数据转换为实际3D相机的位置,获得所有深度信息的三维点坐标,最后将得到的所有三维点信息转换为点云模型,点云模型如图1.4所示。图1.4点云模型Fig.1.4Pointcloudmodel1.2工件的分割1.2.1工件分割的方法及原理在实际的生产线中,待分拣的工件一般都是散乱堆放在一起的,工件之间相互遮挡,相互连接,因此为了使机器人可以顺利对工件进行抓取,需要将待抓取的工件从堆放的散乱工件中分割出来。图像分割算法有:图像区域分割、阈值分割两种。=1\*GB3①基于图像的边缘分割算法是最先想到也是研究较多的算法,该算法解决分割问题是通过检测含有不同连通域的边缘来进行分割。经过卷积得到梯度图像,利用卷积后边缘灰度发生变化而出现的区域分界线进行边缘检测。串行、并行边缘检测是常见的边缘检测分类,判别依据是针对当前检测像素的边缘线与前一条或邻域属于前一条边缘线即为串行边缘检测;属于邻域边缘线即为并行边缘检测。sobel、roberts等边缘检测算法是几种常见的检测算法。分割速度快、定位准确是基于图像的边缘分割算法的优势,但在处理边缘的连续性和封闭性效果不佳,尤其在散乱工件中更无法得到保证,并且在不平滑工件的表面会形成大量的碎边缘,影响图像处理的精度。=2\*GB3②基于图像阈值的分割算法是最常见的直接对图像分割的算法,依据图像灰度值的不同来进行图像分割。单一图像只需要确定一个阈值就可以将目标物体和背景分割开,这称为单阈值分割,单阈值的灰度直方图如图1.5(a)所示;当目标场景复杂,需要确定多个阈值才能将目标物体分割出来,这称为多阈值分割,多阈值的灰度直方图如图1.5(b)所示。阈值分割算法的实现最重要的部分就是要确定一个合适的阈值。最大熵法、利用直方图法、最大类间方差法和基本全局阈值法这四种方法是目前获取阈值的主要途径。图像的灰度值决定全局阈值分割的阈值,只选择与图像中每个像素的属性相关的阈值;局部阈值分割的阈值由图像的灰度值和点邻域的某些局部特征决定;动态阈值或自适应阈值由图像的灰度值、点邻域的一些局部特征和空间坐标确定,坐标与阈值有关。阈值分割有很大的优势,成本低、实现简单,当目标物体和背景区域的的灰度值具有明显差异时,该算法可以非常有效的对目标物体进行分割。(a)单阈值的灰度直方图(b)多阈值的灰度直方图图1.5阈值的灰度直方图Fig.1.5Thresholdgrayhistogram=3\*GB3③基于图像区域的分割是将目标物体的区域从图像中找出来,也就是找出目标物体对应的像素集合。往往有多种物体分布图像中且不同的物体占据着不同的区域,为了将我们感兴趣的部分提取出来,我们把每张图片按不同物体类型划分成不同的区域,这就称为区域分割。区域分割的目的是为了获得目标物体的特征,只有正确的分割才能产生正确的目标物体的特征。由于图像的多样性和独特性,需要根据不同的区域分割法进行分割。常见的有直方图法、轮廓拟合法等。区域分割有以下特点:(1)同一区域内,各个部分具备相同的属性;(2)同一个区域内的各个像素是相互联通的,很少出现空缺;(3)区域的边缘完整,边缘曲线是封闭的;(4)不同区域的属性不同,尤其是相邻区域的属性差异明显。对于生产线分拣的工作场景,工件一般都是散乱摆放的,工件与工件之间相互堆叠,颜色相近,并且没有明显的灰度差异,同时很多工件的边缘轮廓也很难完整的提取,当面对工件散乱的情况下,基于阈值或基于边缘的图像分割方法处理略有不足。基于区域生长法通过利用工件像素点的相似性,将目标工件分割成不同的区域,相较于前者更为适合。1.2.2区域生长法区域生长是将同一区域内具备如灰度值、颜色、纹理等的相似性质聚集边缘像素点上的一种方法。区域生长法以一组种子点开始,将与种子具备相似性质的像素附加到这组种子上,种子的产生可以根据需要解决的问题的性质选择一组种子,将图像中像素的特性计算到特性集中,在生长过程中可将多个具备相同的特性集拓展为一个更大特性集区域,如果计算结果出现不同簇的值,那么簇的中心像素可以作为种子。当没有像素点满足区域的条件时,那么区域将停止生长。区域生长法判断相似性的准则包括:灰度级类似准则、纹理类似准则和颜色类似准则。举例说明区域生长法的原理如图1.6所示,在种子点1的四个邻域像素中,即点2、3、4、5,像素点5的灰度值为12,像素点1的灰度值是11,像素点5和像素点1的灰度值最接近,所以该分割区域将纳入新的像素点5,新的种子点是由像素点1和5组成的,继续重复前面的过程。在第二阶的生长过程中,领域像素点从点2、3、4增加了6、7、8,此时点7的灰度值是13与第一阶分割区域的灰度值11.5最为相近,因此分割区域纳入像素点7到集合中,图1.6(c)区域生长的方向,颜色由浅到深。2263158471514191112253013157(a)像素点标号(b)像素点灰度值(c)区域生长方向图1.6区域生长法原理示意图Fig.1.6Schematicdiagramoftheprincipleofregionalgrowthmethod1.2.3XYZ图像的获取3D的映射也称为XYZ映射,是将3D坐标映射为2D坐标的图像,即X坐标编码为X坐标的灰度值,Y

坐标编码为

Y

图像中的灰度值,Z

坐标编码为

Z

图像中的灰度值,将3D点云模型映射为X图像、Y图像和Z图像,映射主要流程如图1.7所示。创建恒定灰度值图像创建恒定灰度值图像缩减图像定义域Y坐标设置为灰度值获得Y图像创建恒定灰度值图像缩减图像定义域将Z坐标设置为灰度值获得Z图像创建恒定灰度值图像缩减图像定义域X坐标设置为灰度值获得X图像图1.73D映射流程图Fig.1.73Dmappingflowchart根据以上映射方式将X坐标、Y坐标、Z坐标映射成X、Y、Z图像,如图1.8所示。可以看到同一3D

场景的三个图像。强度看起来是可被当成普通

2D

图像正常处理的。在

XYZ

图像中,我们大体上看到与强度图像中相同的结构(六个工件)。但是图像未包含强度值,而是包含相关

3D

点的

X、Y

Z

坐标。因此,在

XYZ

图像中,3D

点坐标按行和列顺序排列成

2D

图像。图像中还可以看到XYZ图像具备以下特点:(1)X

映射的灰度值从左到右递增;(2)Y

映射的灰度值从上到下递增;(3)Z

映射的灰度值在远离相机的物体部分递增。(a)X-图像(b)Y-图像(c)Z-图像图1.8XYZ图像Fig.1.8XYZimage通过将3D点云映射成XYZ图像,为后续图像的分割和提取定位做铺垫。在3D视觉中融入了XYZ图像环节,具备以下两个优势:(1)加快3D算子速度。3D

数据的许多运算都需要不同

3D

点之间邻域的信息。对于包含

XYZ

映射的点云,可从XYZ

图像映射中

3D

点的独特关系得出邻域,从而加快代价高昂的

3D

运算。(2)通过使用2D算子提高灵活性。可以在

XYZ

图像上使用许多强大的

2D

算子,例如过滤和分割等,从而提高灵活性。通常,在

XYZ

图像上使用

2D

算子也比类似的

3D

算子快。总之,本文在3D视觉中融入了包含

XYZ

映射的

3D

物体模型可以显著提高应用的速度、灵活性和稳定性。1.2.4基于区域生长法的工件分割在生产线分拣的场景中,因为在最高处的工件可见的面积最大、包含的信息最多,被其他工件遮挡的面积少,并且在机械手夹取工件时不容易造成其他工件的干扰,所以在进行散乱工件的夹取时按照工件的位置高低进行依次夹取。利用上文提到的Z映射图可以获得与工件高度相关的信息,即图像灰度值越小,工件相对相机的距离越小,工件的位置越高,如图1.9所示,点1相对于点2的位置更高,点1的灰度值更小。对于Z映射图的分割,本文使用基于区域生长法的图像分割算法,获得最高位置工件区域,进而实现机械手对散乱工件位置由高到低的依次抓取。图1.9Z-图像的高度关系Fig.1.9Z-imageheightrelationship本文针对散乱工件场景的特征,采用区域生长法对Z图像进行处理,将Z图像分割为不同的区域,根据区域的面积等特征提取目标区域所在的位置,最后根据各个区域灰度值的最小值确定散乱工件的最高位置工件。具体步骤如下:(1)对点云映射得到的Z图像应用区域生长法进行图像的分割,设置T为能忍受的最大灰度差距,即当像素值小于T时将会被合成一个区域,当像素值大于T时将被分割为两个部分,从而达到将Z图像被分割为两个不同区域的目的;(2)设置分割区域面积的阈值为S1和S2,根据提取区域形状特征并且面积在S1~S2范围内的区域就是分割出来的所有工件的区域;(3)计算分割后所有区域的灰度值的最小值;(4)将各个区域灰度值的最小值进行排序,得到灰度值的最小值所在的区域,该区域就是散乱工件中位置最高的工件所在的区域。为了验证上述方法对散乱工件场景的有效性,本文针对工件不同摆放情况进行了处理。散乱工件的摆放主要包括两种情况:一种是工件之间相互分离;另一种是工件之间产生堆叠。如图1.10和图1.11所示为两种摆放情况的处理过程,两种情况下能忍受的最大的灰度差距取6,即当相邻两个像素的灰度差值小于等于6时,两个像素合并为一个区域;当两个像素大于6时,分割为两个不同的区域。设定选定的区域面积为1—70000,区域面积选的尽量大是为了排除干扰,并将圆度设为选择特征,去除区域面积不在范围内并且形状特征不符合筛选标准的区域,最后根据灰度最大值提取位置最高的工件所在区域的Z图像。从图1.10和图1.11中可以看出,基于区域生长法的工件分割算法可以有效的分割工件散乱摆放的工作场景,获得完整的、清晰的最高位置工件的Z图像,证明了方法的可行性。(a)Z-图像(b)区域分割法分割区域(c)分割后各个区域(d)最高位置Z-图像图1.10工件分开摆放结果Fig.1.10Theresultofplacingtheworkpiecesseparately(a)Z-图像(b)区域分割法分割区域(c)分割后各个区域(d)最高位置Z-图像图1.11工件重叠摆放结果Fig.1.11Theresultofoverlappingworkpieces1.3工件位姿的估计1.3.1位姿估计方法位姿估计在机器视觉中扮演着十分重要的角色,使用视觉系统估计工件的位姿在智能分拣系统中发挥着极大的作用。位姿估计的主要环节就是在世界坐标系中找到图像坐标系中的点。常用的工件识别定位方法包括:基于深度学习的定位方法和基于模型匹配的定位方法。基于深度学习的定位方法利用深度学习算法对图像和工件实际的位姿关系进行大量的训练,获得两者之间的映射关系,进而得到工件在世界坐标系中的位姿信息,包括PointNetLK、DeepICP、DCP,PRNet、IDAM、RPM-Net、3DRegNet、DGR等算法。基于深度学习的定位方法的性能与速度均超过传统的位姿估计算法,但该算法网络结构复杂,结果难以复现,在工件分拣前需要进行大量的样本训练,相对于传统位姿估计算法要困难得多。基于模型匹配的定位方法利用分拣工作开始前建立的CAD模型,为确定目标工件的位姿信息,首先提取关于点云信息的CAD模型,实现工件配准。基于模型匹配的定位方法的准确度高,算法结构简单,且CAD模型容易获取,实现简单,但使用该法进行点云配准时,需将CAD模型的点云匹配目标工件的点云信息,由于点云数据多且复杂,所以这种方法需要消耗大量的时间来处理点云信息,降低了整个分拣系统的工作效率。本文利用融合方法进行目标工件位姿估计。该方法是将2D图像特征与3D点云特征融合处理后的方法,具体过程包括:对3D图像特征进行提取,选取与2D特征相符合的3D点云数据模型,将该模型进行坐标系转换,即图像与世界坐标系的转换,从而确定工件的位姿,引导机械手夹取。1.3.2工件表面三维重建与姿态变换基于区域生长法的图像分割是进行工件表面3D点云重建的基础,不仅减少了3D点云重建的数据量,而且可以将工件感兴趣区域提取出来,2D图像的分割效果直接影响三维重建的结果。利用二维图像进行三维点云重建的具体步骤如下:(1)基于区域生长法的图像分割算法分割出工件最高位置感兴趣区域,将感兴趣区域部分像素设为1,其余部分设为0;(2)感兴趣区域像素坐标储存在ROI数组中,剩余

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论