相机固定引导机器人移动:从非线性校正到最终输出结果
相机不移动,向上和向下查找指导机器人移动机器人和视觉校准理论的详细说明
相机不移动,向上和向下查找指导机器人移动
1。摄像机非线性校正
使用校准板进行非线性校正
2。相机和机器人进行9分进行校准
您可以使用机器人扳9分,或者机器人抓住工件并放置9个位置,获得9个机械坐标,相机还获得9个像素坐标,然后校准
3。计算机器人的旋转中心
机器人抓取工件在相机视觉中分别旋转三个角度,相机可以获得三个坐标值,并且通过三个坐标值获得了圆形心脏坐标。
4。相机可以通过公式绘制最终输出结果
(rx0,ry0)是旋转中心,(x,y)是旋转点的点,(x0,y0)旋转后的点
x0 = cos(a) *(x-rx0)-sin(a) *(y-) +rx0
y0 = cos(a) *(y-) + sin(a) *(x-rx0) + ry0
相机不移动,下去看
1。摄像机非线性校正
使用机器人吸吮校准板进行非线性校正
2。相机和机器人进行9分进行校准
您可以使用物理校准。机器人抓住工件并放置9个位置,获得9个机械坐标,相机还获得9个像素坐标,然后校准。
请参考上述上下。
相机固定在机器人上,旋转中心更近
1。摄像机非线性校正
2。相机和机器人进行9分进行校准
您可以使用物理校准。机器人抓住工件并放置9个位置,获得9个机械坐标,并且相机还获得9个像素坐标(机器人一次需要一次返回固定位置),然后校准校准。
3。计算机器人的旋转中心
机器人抓取工件在相机视觉中分别旋转三个角度,相机可以获得三个坐标值,并且通过三个坐标值获得了圆形心脏坐标。
4。相机可以通过公式计算最终输出结果
相机固定在机器人上,旋转中心很远
1。摄像机非线性校正
2。相机和机器人进行9分进行校准
3。计算机器人的旋转中心
4。相机可以通过公式计算最终输出结果
注意:由于选择中心距离很遥远,因此通常拟合的旋转中心是相对较大的误差,这会影响定位精度。
分离轴
分离轴有许多设计方法。 xy+θ,x+yθ,xθ+y…。,特定条件的特定分析,目的是找到旋转中心,并进行9点进行校准。
1。摄像机非线性校正
2。相机和机器人进行9分进行校准
3。计算机器人的旋转中心
4。相机可以通过公式绘制最终输出结果
旋转中心校准描述
https://img1.baidu.com/it/u=2528111927,2288787128&fm=253&fmt=JPEG&app=138&f=JPEG?w=699&h=318
旋转中心方法用于所有机器人和视觉合作场景
方法:计算工件的实际偏移和旋转,将机器人的旋转中心结合起来进行次级补偿,补偿金额
将其发送到机器人,然后抓取或在机器人之后放置补偿金额;
点坐标旋转法
如图所示,在围绕另一点的一定旋转点后计算坐标:
机器人和视觉校准理论的详细说明
a(x,y)围绕B(rx0,ry0)旋转c(x0,y0)的位置,并且存在以下关系:
x0 = cos(a) *(x-rx0)-sin(a) *(y-) +rx0
y0 = cos(a) *(y-) + sin(a) *(x-rx0) + ry0
所有旋转和偏移的以下计算基于上述公式
旋转中心校准描述
STD方法的计算:
cdx = cos(a) *(cx0-x0)-sin(a) *(cy0-y0) + x1-cx0
cdy = cos(a) *(cy0-y0) + sin(a) *(cx0-x0) + y1-cy0
x'= cos(a) *(x0-cx0)-sin(a) *(y0-) + cx0
y'= cos(a) *(y0-color)-sin(a) *(x0-cx0) + cy0
cdx = x1-x'
cdy = y1-y'
这是在将进料带到材料当前角度之前校正其自身角度的机器人。在(x',y')的位置,然后移动CDX,CDY并与材料位置一致,然后删除进料。这样,材料与每次进食后机器人的位置一致,因此可以将其直接放置在目标位置。此方法适用于服用材料时的位置调整,因此它适用于固定在机器上的相机和固定安装的相机。如果摄像机是从底部固定的,因为机器人目前已采用机器人,则不适合使用。
特别注意
在此计算的CDX和CDY必须补偿材料的进食位置,并且不能补偿进料位置。通过旋转中心方法计算的偏差可以直接补偿到材料位置。原因如下:
计算旋转中心法律:
(x,y)是定位产品的定位。 (gx,gy)是标准模板位置,(x',y')是补偿角度后的新位置,然后
x'=cosθ *(x-xo)-sinθ *(y-y-yo) + xo;
y'=cosθ*(y-yo) +sinθ*(x-xo) + yo;
x = x'-gx
y = y'-gy
theta =θ
如何旋转中心
当相机FOV非常靠近旋转中心时,您可以使用旋转超过3点来结合思维圈
当相机FOV远离旋转中心时,使用3或多个点,精度将非常差。
解决方案
https://img2.baidu.com/it/u=518660516,3741955874&fm=253&fmt=JPEG&app=138&f=JPEG?w=772&h=500
(x0,y0)是旋转中心(x1,y1)和(x2,y2)是视野中旋转角度A的前后坐标。
d =√(x2-x1)^2 +(y2-y1)^2
角度a
r = d/2/sin(a/2)
r/d =(xt-x1)/(x2-x1)
r/d =(yt-y1)/(y2-y1)
XT =(1-r/d)*x1 +(r/d)*x2
yt =(1-r/d)*y1 +(r/d)*y2
x0 = cos(90-a/2) *(xt-x1)-sin(90-a/2) *(yt-y1) +x1
y0 = cos(90-a/2) *(yt-y1) + sin(90-a/2) *(XT-x1) + y1
角度:X+ Y+是正面的,否则为负
旋转中心校准 - 计算补偿CDX CDY计算过程,旋转角度A
机器人和视觉校准理论的详细说明
cdx = cos(a) *(cx0-x0)-sin(a) *(cy0-y0) + x1-cx0
=(cos(a)-1) *(cx0-x0)-sin(a) *(cy0-y0) + mdx
=(cos(a)-1) * stdx -sin(a) * stdy+ mdx
cdy = cos(a) *(cy0-y0) + sin(a) *(cx0-x0) + y1-cy0
=(cos(a)-1) *(cy0-y0) + sin(a) *(cx0-x0) + mdy
=(cos(a)-1) * stdy + sin(a) * stdx + mdy
从公式可以看出,stdx = cx0-x0,stdy = cy0-y0是一个常数,而mdx和mdy是工件(mark)的工件坐标(mark)之间的差异;
如何计算STDX和Stdy?蓝色是双轴方程。我们需要旋转一个角度来计算;
如果计算了stdx和stdy,则在运行时,您可以直接带上上述公式,您可以快速计算CDX,CDY给出了机器人的偏移,而无需计算旋转中心的确切坐标;
如何解决STDX和Stdy
STDX,Stdy计算过程,首先在特定角度旋转一定角度的机器人角度(必须由机器人给出)
机器人和视觉校准理论的详细说明
cdx = cos(a) *(cx0-x0)-sin(a) *(cy0-y0) + x1-cx0
=(cos(a)-1) *(cx0-x0)-sin(a) *(cy0-y0) + mdx
=(cos(a)-1) * stdx -sin(a) * stdy+ mdx
cdy = cos(a) *(cy0-y0) + sin(a) *(cx0-x0) + y1-cy0
=(cos(a)-1) *(cy0-y0) + sin(a) *(cx0-x0) + mdy
=(cos(a)-1) * stdy + sin(a) * stdx + mdy
以下介绍了如何解决STDX和Stdy。旋转一定角度A后,MDX和MDY是确定性值。
0 =(cos(a)-1) * stdx -sin(a) * stdy+ mdx
0 =(cos(a)-1) * stdy + sin(a) * stdx + mdy
stdx = -0.5*(mdx*(cos(a)-1)+mdy*sin(a)) /(1 -cos(a))
stdy = 0.5*(mdx*sin(a)-mdy*(cos(a)-1))/(1 -cos(a))
A是旋转标准的角度
mdx = x1-x0,即旋转后标记坐标和训练模板的标记坐标
页:
[1]