机器视觉旋转标定算法+补偿角度计算讲解(现场应用版)
B站 :道传科技上位机 观看教程
一、疑问解答
一.为何需要标定旋转中心呢?
机器视觉进行旋转中心标定的主要目的是确保机械臂或机器人末端执行器(如吸嘴、抓手等)的旋转中心与相机视野中的旋转轴精确对应,从而提高定位精度和运动控制的准确性。
二、为什么有了R轴还需要进行标定,直接走角度不行吗?
1、机械定位精度不足
机械臂的旋转轴通常存在制造误差或安装偏差,导致实际旋转中心与理论位置不一致。若不标定,可能造成工件定位偏差,尤其在旋转角度较大时误差更明显。
2、视觉系统需要精确的空间坐标转换
旋转中心标定可建立相机像素坐标与机械臂世界坐标之间的精确转换关系,确保图像中的旋转角度与实际机械旋转轴的对应性。
二、模板匹配输出了一个坐标,为什么不能用来旋转R轴
输出角度以弧度为单位,范围由AngleStart(起始角度)和AngleExtent(旋转范围)决定。例如,若AngleStart=0且AngleExtent=360,则输出角度范围为0\~360°。
若搜索范围包含多个方向,角度计算需结合金字塔层级逐层调整,最终匹配结果可能偏离初始角度。和实际的角度没有关系
二、旋转中心标定过程
机器视觉旋转标定主要用于解决机械臂或机器人旋转轴与工具末端中心不重合导致的定位误差问题,通过标定旋转中心和旋转半径实现精确控制。
操作步骤
固定标记点:在旋转工具末端安装可识别的标记点(如圆形、角点)。
旋转并记录坐标:驱动旋转轴以不同角度(至少三个角度)转动,用相机记录标记点的图像坐标。
转换坐标系:将图像坐标转换为世界坐标系(需预先完成九点标定)。
拟合圆心:用三个世界坐标点拟合圆,圆心即为旋转中心,半径为旋转半径。
三、标定算法讲解 制作标定模板
一、制作模板(Mark) shape NCC等
HOperatorSet.CreateShapeModel
二、保存模板到本地(Mark)
HOperatorSet.WriteShapeModel
其他算子 等
HOperatorSet.ReduceDomain
HOperatorSet.DetermineShapeModelParams
四、生成标定文件
一、流程
1、机器人或者模组走三个角度拍三张图片,每张图片输出一个XY坐标
方法一:HOperatorSet.FindShapeModel //模板匹配(方法一)
方法二:HOperatorSet.OpeningCircle //有专门的圆孔等等
2、三点得到圆心的坐标和半径并且保存
五、实际流程
一、流程
A点为模板的物料像素坐标,或者贴正常料的示教像素坐标
B点位你现在实际做的物料的像素坐标
0点标定的旋转中心
θ 为你需要纠偏的角度 可以直接给到旋转轴