本文主要是介绍九点标定与手眼标定,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、九点标定本质
九点标定本质是点的仿射变换
条件:正坐标系(俩个坐标系X,Y方向在一个面)
四种状态:
1.从上往下拍照,对九次
2.自动标定(运动标定)
3.从下往上拍照(下相机)
4.斜拍
九点标定第二种方式:---下相机拍照
1.下相机拍照抓取识别一个物料,如圆,得到像素行列坐标,此时也有机器人的实际坐标,记录 下来
2.拍照九次,记录九个像素坐标,九个实际坐标
3.求点的仿射变换 vector_to_hom_mat2d 输出矩阵
九点标定的第三种方式--运动标定 自动标定
1 准备一个mark点 拍照--让我们的mark点在视野中心
2 对mark点 并且计算拍照位与对上mark点后的偏差-XY(抓取位 - 拍照位)
3 进行九次九宫格运动拍照并且记录像素和拍照位的坐标,并且求九点矩阵(注意这里对应的顺序)
4 回到P5位置进行识别
5 识别出实际位置后还要加上第二步求出来的偏差发给机器人这才是正确的
九点标定的第四种方式--斜拍
gen_image_to_world_plane_map
二、点的仿射变换矩阵推导
vector_to_hom_mat2d 求九点标定矩阵
affine_trans_point_2d 求点的仿射变换
write_tuple 保存矩阵
read_tuple 读取矩阵
三、精度分析
1.对点位置影响 2.点数的影响
3.畸变的影响 4.相机倾斜倒置俩个坐标系没有完全在一个面上
5.点的像素坐标位置提取
6.在标定位置识别,否则需要加补偿(平移,选择,缩放矩阵)
九点标定,手眼标定区别:
1.九点标定是点的仿射变换,手眼标定是坐标系之间的关系
眼在手上: t-c[工具坐标系,相机坐标系]之间的关系
眼在手外:b-c[基础坐标系,相机坐标系]之间的关系
2.九点标定精度若雨手眼标定,手眼标定操作难度高
3.九点标定需要在正坐标系,需要在标定位置拍照,否则需要加补偿,手眼标定可在任意位置拍照。
四、手眼标定
定义:寻找机械手和摄像机的关系
类型:眼在手上,眼在手外
b:基础坐标系 t:工具坐标系
c:相机坐标系 o:工件坐标系
这篇关于九点标定与手眼标定的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!