products
产品中心
Contact Us
联系我们
联  系  人:王先生
服务热线 :18108095398 
座       机:028-8665-8158
Q        Q :2851138192
电子邮箱:
2851138192@qq.com
地址:成都市府城大道西段399号天府新谷7栋一单元1501
你现在的位置:技术支持 > 技术支持 > 技术支持 >
更新时间:2023-12-11 09:59:22

多相机视觉系统坐标系标定与统一(一)

随着机器视觉的应用日益广泛,对幅面多相机视觉系统的需求越来越大。主要应用方向是大幅面高精度定位测量和场景拼接等。多相机视觉系统的难点在于多相机坐标系的统一。可以分为两类,一类是相机视场之间没有重叠,一类是相机视场之间有重叠。相机之间没有重叠的情况主要用于大画幅多相机的高精度定位和测量;相机之间存在重叠的情况主要用于场景拼接。


相机之间没有重叠。介绍两种典型方法:
1、使用大标定板统一坐标

简介:

该方法使用大标定板来统一每个相机的坐标。每个大标定板都有几个小标定板,每个小标定板之间的位置关系已知,每个相机可以捕获一个小标定板。通过各个小标定板可以对各个相机的内参数和外部参数进行标定,并且可以将各个相机的坐标转换到各个小标定板的坐标系中,从而统一各个相机的坐标。

系统结构:


image.png


相机在各个位置拍摄Mark图像,通过图像处理方法得到Mark坐标

常用的标定板形式:


image.png

上图显示了单个校准板图像。大标定板由若干个单个标定板组成。标定板的尺寸和数量根据实际测量情况确定。

多个标定板组合示意图:


image.png

注意:

这种方法需要将多个相机的坐标统一到一个坐标系中,并且单个相机还需要自己做标定以保证精度。根据检测要求,设定取多少个点作为参考,但这会影响测试时间,需要酌情考虑。

2.利用相对运动来统一坐标

简介:

该方法利用相机与被测物体之间的相对运动来统一相机的坐标。相机和被测物体只一侧可以移动,记录每个位置的坐标,然后通过数学运算统一坐标。通常,相机位置固定,通过机械手等移动装置移动待测物体,然后将相机坐标系设置为机械手等移动装置的原点。

整体结构:


image.png


方法介绍:

通过相机拍摄的图像定位Mark点,从而计算出被测物体相对于标准位置的偏差,包括角度偏差和位移偏差,确定机械装置需要旋转的角度和距离待翻译。以手机触摸屏和手机壳的定位系统来介绍算法原理。


手机触摸屏与手机外壳的定位系统采用多个相机代替一个摄像头进行定位,使得手机触摸屏与手机外壳能够精确组装。摄像机分为两组,每组两台相机。一组拍摄手机外壳(组1),另一组拍摄触摸屏(组2)。两组相机的标定方法相同。下面只介绍拍摄手机壳的两个摄像头的标定。 相机固定,机械手吸住手机壳并移动。两个相机分别拍摄手机壳的两个定位孔,并利用模板匹配的方法识别出两个定位孔,如下图所示:


微信图片_20231211095425.jpg


(1)通过机械手Move获取用于标定的坐标

第 1 组摄像机 1:

将Mark点移动到相机视野中,确定相机的初始位置,并获取初始Mark点Point11的中心坐标(cRow11,cColumn11)。机械手沿X方向移动一定距离(5mm)后,得到Mark点Point12(cRow12,cColumn11)的中心坐标。 cColumn12),机器人在Y方向移动一定距离(6mm)后,得到Mark点Point13的中心坐标(cRow13,cColumn13)。同时可以得到机器人在上述三个位置的空间坐标Robot11(X1[0],Y1[0]),Robot12(X1[1],Y1[1]),Robot13(X1[2] ],Y1[2])。

第 1 组摄像机 2:

同上,将同一个Mark点移入相机视野,通过同样的操作获取坐标:Point21(cRow21,cColumn21)、Point22(cRow22,cColumn22)、Point23(cRow23,cColumn23)、Robot21(X2[ 0],Y2[0]),机器人22(X2[1],Y2[1]),机器人23(X2[2],Y2[2])。 (2)图像距离与实际距离换算比例关系的确定:

通过数学运算可以计算出比例关系。


 (3)旋转中心的确定

基于三点定圆的原理,让机械臂在初始位置旋转3次,得到Robot31、Robot32、Robot33相对于机械臂坐标系的三个坐标。点,三个点的坐标可以用来计算旋转圆的圆心坐标。

(4) 计算标准线的斜率:

需要在两个摄像机的视野内选择一点作为标准线的起点和终点,然后计算这条标准线在机器人坐标系中的斜率。将机械手调整到合适的位置,并将其确定为标准位置。此时,第1组的两个摄像机拍摄初始位置的两个不同Mark点的图像。通过模板匹配的方法找到两个相机初始位置视场中两个Mark点的中心坐标Point10(Row10,Column10)和Point20(Row20,Column20)。将Point10和Point20确定为标准线的起点和终点。找到Point10在机械臂中的坐标如下图所示。下图中,XOY为机械臂坐标系,X1O1Y1为第1组相机1的图像坐标。

image.png


通过计算该点到直线的距离即可得到d14、d15、d16的实际长度。由于运动过程中使用了相同的标记点,因此d1、d2和d3在摄像机1和摄像机2的视野内,值是相同的。因此,我们可以得到Point10在机器人坐标系中的实际坐标:Point10X=X1[1]+d16+d2,Point10Y=Y1[1]+(d1-d15)。

还可以得到Point20在机器人坐标系中的实际坐标:

Point20X=X2[1]+d26+d2,Point20Y=Y2[1]+(d1-d25)。


获取标准线的斜率;

K = (Point20Y-Point10Y) / (Ponit20X-Point20X)

= (Y2[1]-Y1[1]-d25+d15) / (X2[1]-X1[1]+d26-d16)


定位校准

以后每次测试时,都会将得到的结果与标准线进行比较。可以获得与标准线的角度以及相对于标准位置的位置偏差,并根据获得的角度和位置偏差进行修正。校正过程中需要先旋转后平移,形成闭环反馈系统进行实时校正。

相关产品 / Related