(普)学习路线------物体坐标系转换、姿态估计

参考

如何理解物体的6D位姿估计任务?

​​​​​刚体6D位姿估计方法综述

PointNet-基于PointNet直接从点云中估计抓取位姿

由于世界上的所有物体,我们都可以建立它的三维模型,即以物体中心点为坐标原点,建立一个三维坐标系,那么我们就能得到物体所有部位点在自身坐标系下的3D坐标值。由于物体是刚体,所以物体在自身坐标系下的3D坐标值永远是不会变的(物体坐标系和物体之间不发生相对运动),进而它在物体坐标系下的三维位置和三维朝向也不会变。


但物体在相机系下的三维位置和三维朝向时时刻刻都在发生变化,因为相机的移动就表示相机坐标系的移动变化,(相机坐标系和物体之间发生相对移动),那么物体在相机系下的3D坐标值就会变化。比如我们开车行驶在道路上,前方车辆在我们的视角下,三维位置和朝向时时刻刻发生变化,因为我方视角是移动变化的,但其在它自身坐标系下的三维位置和朝向是永远不变的,这一点很重要。


这里面需要区别物体姿态相机姿态。物体姿态是估计当前帧坐标系,相对物体自身坐标系,物体在这两个坐标系之间的变换关系。而相机姿态是,当前帧坐标系相对前一帧坐标系,物体在这两个坐标系之间的变换。当前一帧坐标系为物体坐标系时,此时的相机的姿态估计就是物体姿态估计。
    
由于在6D姿态估计任务中,我们知道物体在自身坐标系下三维模型,就知道了它在自身坐标系下的三维位置和朝向。如果我们能知道物体从它自身坐标系变换到相机系下,所发生的R和t为多大,我们就能准确知道物体当前时刻在相机系下的三维位置和朝向是怎样的了。所以说,准确地估计出物体在相机系下的R和t,就能让机器自己知道它眼前的物体所处的位置和朝向。

物体所有部位点,在自身坐标系下,有一组坐标值;在中间坐标系下,有一组值;在相机系下,也有一组值。
中间坐标系和相机坐标系,基相同,但原点不同;
中间坐标系和物体自身坐标系,原点相同,但基不同。
因此,两组坐标值在中间坐标系和物体自身坐标系之间发生的变换,就是旋转R。


两组坐标值在中间坐标系和相机坐标系之间发生的变换,就是平移t。由于物体中心点在自身坐标系下的坐标为(0,0,0),那么其在相机系下的3D坐标值就是平移t。

pnp的算法原理:找到若干匹配的点对,一是知道这些关键点在物体3维模型下的3D坐标值,
二是知道这些关键点在相机系下的2D像素点,那么便可以求得这些关键点在相机系下的3D坐标值,知道了点在不同坐标系下的坐标值,从而就能知道旋转矩阵R和平移t,将物体从物体坐标系变换到相机坐标系。后面可以再通过RANSAC优化算法,使得预测结果更加准确
 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 手眼标定算法是一种重要的基于机器视觉的算法,用于计算机器人机构的姿态信息。其核心是将机械臂(s)的末端效应器(e)和机器人手眼系(c)之间的关系建立起来。这种算法基于一组机器人手眼系统的标定点,通过计算机算法得出机器人起始手臂底座坐标系(b)与相机坐标系(p)之间的相对关系。形象地说,目标就是计算出机器人的位置和方向,使得机器人运动过程中的末端执行器能够精确地执行预定的任务。这种算法有利于提高机器人的操作精度和运动速度,使得机器人在工业和服务行业中得到更广泛的应用。 手眼标定算法包括两个主要步骤: 1.手眼标定数据采集。该步骤旨在获取一组机器人手臂和相机位置的数据,以计算机编程方式将其转换成数字信号,用于后续的计算和分析。数据采集的主要任务是确定物体相机空间中的位置和方向,这样机器人就可以准确地处理该物体。 2.手眼标定计算。该步骤将先前采集的数据输入到计算机程序中,并计算机器人起始手臂底座坐标系相机坐标系之间的变换矩阵。这个变换矩阵是一组用于计算机器人位置和方向的数学变换公式。 总之,手眼标定算法在控制机器人的运动过程中发挥重要作用,提高了机器人的精度和速度,为机器人在工业和服务行业中的应用提供了有力支持。 ### 回答2: 手眼标定算法,也称为eye-to-hand calibration,是指在机器人控制中,将机器人末端执行器的坐标系与机器人基座坐标系进行校准的过程。目的是为了达到控制机器人末端执行器的位置和姿态时,能与机器人基座坐标系之间建立良好的关系,使机器人能够准确地执行任务。手眼标定算法在机器人应用中非常重要,因为它保证了机器人的准确性和稳定性。 手眼标定算法的过程分为两个部分:手眼标定和坐标变换。在手眼标定过程中,需要对机器人末端执行器和摄像头进行标定,确定它们各自的坐标系。在坐标变换中,将机器人末端执行器和摄像头的坐标系进行转换,以使它们两个坐标系相互关联。这个过程的关键是找到一组准确的变换矩阵,将机器人的坐标系与摄像头的坐标系之间的关系确定下来。 手眼标定算法有许多方法和技术可供选择,包括基于线性代数的方法、角度差法、四元数法等。在实际应用中,用户需要依据具体的场景,选择合适的方法和算法。总的来说,手眼标定算法是机器人控制和应用中不可或缺的一部分,它对机器人的精度、稳定性和效率都有着至关重要的影响。 ### 回答3: 手眼标定指的是利用机器人控制器控制机械臂末端执行器的运动来确定相机与机器人的运动之间的关系。手眼标定算法可以用于改善机器人视觉导航的精度和准确性,使机器人可以在运动中对环境进行快速和精确的感知。 手眼标定算法包括两种方法:手眼标定与眼手标定。在手眼标定中,机器人的手部和相机的位置和姿态都是已知的,通过对它们的运动进行测量,并分析它们的关系来估计它们之间的变换矩阵。而在眼手标定中,相机被移动到多个位置来捕捉机器人手部的不同位置,通过计算相机和机器人手部之间的运动变换矩阵,来进行标定。 手眼标定算法不仅可以用于机器人视觉导航,还可以用于了解机器人在空间中的绝对位置和姿态,以及机器人的关节抖动等问题。此外,手眼标定算法还可以用于机器人在协作操作中的运动控制,通过将相机和机器人手部相对位置的变化进行跟踪,可以快速和准确地匹配两者的运动。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值