《使用Halcon 9点标定旋转中心标定与使用.docx》由会员分享,可在线阅读,更多相关《使用Halcon 9点标定旋转中心标定与使用.docx(21页珍藏版)》请在第壹文秘上搜索。
1、使用Ha1.con9点标定旋转中心标定与使用一、标定介绍1 .标定模型A,相机固定夹具不旋转夹具夹取产品或者标定块,选取一个特征,开始进行标定X轴、Y轴移动一个位置,记录轴的物理坐标:(QXI,QyD提取图像中对应特征点,图像像素坐标:(Px1.,Py1.)运动第N位置,记录卜点位轴粕坐标(QXNqYN),t提取像素坐标:(PXN,PyN)一般9点、16点,特征均匀分布在图像的各个位置即可haIcon算子计算:假如把上面记录的点转化成ha1.con的使用的方式.如下:Px:=1.,2,3Pg1.,2,3Qx=3,9,121Qy:-3,9,12九点标定使用仿射变换.最少三个点,不能消除愤头和相机
2、崎变vector_to_hom_mat2d(Px,Py,Qx,Qy,HomMat20)HomMat2D就是得到矩药此案例不需要标定旋转中心,使Affine_Trans_Point_2d(HomMat2D,ProductCo1.,PrOdUCtROW,Qx,Qy);Qx,Qy为变换后的机械坐标,可直接发给机器人做移动处理.2 .标定模型B1.相机移动(不旋转)相机固定到X或者丫他上,不能旋转,这种是大部分设备的移动相机的模式,黄色部分是可旋转的、当时很多设备这黄色部分是包含Z釉或者上卜放料气缸。标定时,把标定特征的产品或者标定块放在相机下方位比固定不动移动相机即移动轴),每走一个点,记录下点位轴
3、轴坐标QxN,QyN),提取像素坐标:(PXN,PyN)ha1.con第子计算:*把上面记录的点转化成ha1.con的使用的方式,如下:P=1.,231Py:=1.,2,3)Qx:=3,9,12Qy:=3z942九点标定使用(仿射变换vector-to-hom-mat2d(P,PyzQx,QrHOmMat2D)HomMat2D就是得到矩阵,注意虽然计算过程和模型A-模一样,但是矩阵的使用是不相同.后面会有说明3.标定模型C:相机固定(夹具旋转)苜先实际固定相机的项目,基本上夹具都是可以扰转的,因为我们去夹取的产品用定有角度偏差,然后抽过下方固定相机的拍照,补偿贴合,这也是固定相机意义所在。所以
4、标定模型A只能补偿Dx、Dy(X轴、Y轴偏差).适用的实际项目情况还是比较特殊的:当前模型衢要补偿出角度,但是这个匹鼠找到产品的角度并不是旋转一下这个角度就好,这会产生一下偏差,这也看手迷,者短常鼠付的一个付,只有了解这个问的定位才算入门.1)苔本的扑倭诲程首先为大家讲一个整体的补偿过程,是怎样产生补偿的.旋转补偿和平移补偌的区别。放大模型如下:这是一个放大的模型,轴心和夹具中心不型合,就算我们的夹具中心和旋转轴中心是R合,但是我们夹取或不吸取产品也不能保证产品的中心和旋转中心合,所以结论:涉及旋转必须进行旋转标定,不然每次贴合总会带有旋转产生的误差卜面分析这个旋转到底是怎样带来误差的,也就是
5、我们旋转标定到杼在计算什么东西.这一部分也同时解择怎样去补偿这个旋转误差。上图的放大模型从卜往上看,简化模型在坐标系中,一定搞清楚这里,不然后面旋传起来就没办法理解了红色圆圈:旋转轴中心黄色圆圈:夹具中心,这个夹具肯定很大,这里代表其中心位置,在后面计算中没有意义连线:表示刚性连接(就是两者固定在一起的)模板位置和夹具中心重合,夹具的中心没有实际意义,因为夹具只要把产品抓取进行,我们匹配得到的点位数据是产品的位置,九点标定也是标定特征的数据.和央具中心没有任何关系,我们C1.接把模板位置的产品中心当做夹具中心也行。实际项目中,训练好后,我们就会手动移动釉或者机械手到要放的位置,这就是示教个标准
6、放置位荏加(x,y,u)(xy轴坐标位,旋转轴U轴值.后面会用到,记住),然后就是抓取产晶拍照.补偿贴分0所以当前帙板产品位置的偏差(0,0,0)当我们的抓取的一个待放的产品时,它此时的位置可能和我们示教产品的位置不同,这里相当于匹配中心,偏移了(1.1,)旋转了45度,如下图:同时注意产品足夹具抓取的,所以旋转轴、夹具、产品是一体,旋转和平移都是一体进行的。讲到这里,我们很多时候可能开始在这幅上纠结了,处怎么去补偿、旋转等等,试了半天,发现补偿还是不对,呆后发现不知道怎会执了,蒙了,我在哪里,我是设?这里我就要给大家一个定位的这种问时的通用的思路,让人不至于最后幅模,说到这里,你们难道不点个
7、的,收僦一下.打黄一下?第一步.首先明确我们的目标,就是我们到底在般端,想这个产品放到我们的目标问题,所以我们不要在上面图的位置分析。第二步.假设我们1:面的产品没有偏差.直接把产品移动到我们的目标位置:标准放置位置Xn(XMU).放下产品第三步,确定我们的看看位置到底是怎样偏走的,然后就知道我们该怎样旋转平移了.(1,1,45)第四步,最后推理出补偿,存见上而图大家可能感觉很简单了,黄色表示标准位评.贴的产品,绿色表示当前产品位置,但是一定要明确上面的图是在我们产品放置位置M视产生的.所以这个补偿(Dx,Dy,Du)只要直接叠加到M1.(x,y,u)上,即得到我们最终的运动位附M2(x+Dx
8、,y+Dv,u+Du),釉或者机器人直.接运动到这个位以,放下产品即可.第五步.计算这个偏差补偿(Dx,Dy,Du,这是我们回到抓取产品的拍照位置,如下图:是不足位置和上面一张在产品位置放置点的i模一样,所以直接在这里计算,就可以计算这个偏差。同时我这么强调产品放置位置和拍照位置.除了让大家了解一个正常定位的补偿流程和思路外,就是得出一个结论:固定的下相机(仅仅这种模型的相机),它作用是通过计算后得一个偏差,而不是鬟去计算一线葩对位置:而绝对贴合的位置是由其他相机或者示教等等产生的:合在起就组成一个完成补偿。现在可以I可到正8S,这个旅转真是怎样产生误差的.我打只要绿色产品位置移动到黄色位置即
9、可,流程如下:第一步:移动产品产生的偏差(1.1):红色旋转中心坐标就变成了(-2,-2),绿色产品中心(OQ)第二步:施转角度45。,一定记住旋转中心在红色圆圈旋转中心因为绿色产品中和旋转中心的即黑2J2,嫩色产品中心位置:(-2.22-2)所以可以看出,羟过平移和旋转并不能把产M移动到目标位置,发现还差一个偏差(-2,22-2)(就是旋游后坐标减去板转前坐标),这样解决解面的疑惑仅巴接旋转获得的角度不正确,会出现个偏差.这里点位和角度都很特殊,后面会讲通用的角度位置偏差怎么通过Ha1.COn算子计算,同时,一定要注意在我们计算这个偏差的时候,我们用到了旋转中心的坐标:但是非常遗憾的问题,我
10、们在做九点校正的时候(根据标定模型A,标定的范准是标定特征的中心,而不是加精中心,实际项目中我们夹具抓取标定块进行标定,根本做不到把旋转中心和标定特征的中心理合,所以我外就需要通过施转标定找到旋转中心并消除它.此模式:相机固定.夹具旋转.忘记了的看卷上面模型图片.2)先九点方嵬首先夹具旋粘位置选择,一定要注意因为夹具是可以旋转的,所以当我们夹住产M开始标定时,我们选取那个角度就行标定呢?这个角度要选好.因为,这就是我们抓取拍照或者飞拍的时候也需要保杼这个角度姿态,如果不是这个角度,需要?R新经过个计算转换回去才行,这里需要大神来帮忙补充一下:因为我现在理到的项目初时还没有要求这个,因为只要加精
11、好的姿态标定就可以满足.其本要求:A、知度肯定能到拍照位置能拍照别选一个角度导致轴或者机器人最后根本就走不到拍照点B.选择这个角度姿态.有利于我们在定点旋转时.能修旋转更大的加友,因为施转标定找圆心,其实就是定点碇转我们的标定特征,然后拟合找回心,很明显点分布的角度越大,精度越鬲(没有做过旋转的,不理解没关系,后面讲解,到时何来看看就知遒怎么回事了);200旋转效果已经非常好了,很多时候因为视野和机构问遨.能到达90,就已经可以了:九点标定过程:当这个旋转角度确定后,九点标定就变成了了标准模型A,过程就不详细讲了,这时就汨到了一个矩阵:HOmMat2D,我们前面提到过这个陆阵其实就是两个坐标系
12、转换关系,这里是指卜相机的图片上像素坐标和标定特征中心的物理坐标的关系,但是上面我们知道j我们需要的足下相机的图片上像素坐标和旋转中心的物理坐标的关系,所以下面进行旋转标定,说一个跑外话,那如果遇到目的旋转惜很长,视野不够大,旋转几度都没有.这种项目有吗?肯定书啊.如果你们谁遇到了,由于读到这里受启发,是不是I可来帮忙点个贷呢.方法就是旋转后,标定特征离开视畀,只需要平移到视野中,提取特征计算后要减去这个平移值在拟合.ihaIcon管理员sc6231565解答来Ts标定模型C1.O图片Hha1.con管理员sc6231565提供的图片)视野很小,旋转轴行很长情况:还有一个小诀窍,如果新度不是太
13、南,两个点就行,一个点记录,然后宜接转180度,再记录,口接就是食径了,两个点计算物理点相加除以2就是圆心,具体你们自己看着办吧,是不是感觉处处是惊再明,又学到了一招.网上搜索相机标定,一大堆像素坐标系、图像坐标系、相机坐标系、世界坐标系,还有手眼标定里面的各个坐标系都不要去考虑.九点标定就是相机得到的图像像索坐标与轴或者机人的X、Y物理坐标的关系.就是两个平面坐标的转换,不要去复杂话你的系统考虑中间问题.所以六轴机器人来做九点标定,第一步应该是建立与工作平面平行的平面,然后再这个平面移动做九点标定,至于这个机涔人的这个新坐标系怎么建立就找搞机器人的就行:当然如果要求不高.忽略.3)旋标定首先
14、选择一个定点,记录下点物理坐标P1.(x,Q,然后如下图绕希红色的旋转中心板转,黄色表示标定的特征中心,灰色表示相机的图像,并且可以从图像看出,左边的旋转角度可能旋转90-120之间,其他位置已经跑出图像外/,而右边的旅转半径的(标定特征中心和旋转中心跑鸿,实际项目机械结构决定的),觇野大,所以旋转大于200度,保证特征在视野内。再次强得这个旋转的前提,在定点P1.(X,y)不变的位置进行旋转,这个点是“初始角度”的标定特征中心的坐标,而不是旋转中心的坐标,计算过程如下:记录第一个点物理点P1.(X,Q,提取特征中心的像素为(Prx1.,PryD旋转一个小角度,记录第二个点物理点P1.(x,Q
15、,提取特征中心的像素为(Prx2,Pry2)咦,怎么物理点都没变呢都是P1.呢,肯定啊,X.Y轴都没有动,X/Y坐标肯定不变啊:既然不变为啥要提他呢.因为我知道很多人一转起来又怡逼了.又不清楚自己在哪里了:一定搞清建什么在变动,什么不变,艇转第N个点物珅点P1.(x,y),提取特征中心的像点为(PrXN,PryN)具体多少个点,旅转16-20个点先全够了.现在已知的条件:定点物理点P1.(,y),一系列像索坐标(PrXMPrVN),还是有我Q前面九点标定矩阵HomMat2D(不要忘/).求取?一团乱,求取啥呢?一定不要忘了我们的初衷,得到旋转中心坐标和图像的像素坐标的关系,本痂上呢:就是一个矩阵:HomMat2I)_CI(模型C矩阵)求取:HOmMaI2D_CI下面将足本文章中第一个核心知识,直接项目用的Ha1.con源码.自动化行业B的有道门按,你回发现在M上很难找到些般础的源码或者直接可用的资料,大多数是原理性或者思路性的东西,但毡只要你进入家公司,就很轻松获得一些自己非常难杳闻到的东西,知识的流动见终变成人的流动,从一公司带到另一个公M.如果什么知识都可以查到,公司不是完蛋了吗?别人都把好