三维姿态估计
编辑三维姿态估计是一个从用户定义的参考姿态预测物体的转变的过程,给定一个图像或三维扫描。它出现在计算机视觉或机器人技术中,其中物体的姿势或变换可用于计算机辅助设计模型的对齐、识别、抓取或操纵物体。确定物体姿态的图像数据可以是单幅图像、立体图像对或图像序列,其中相机通常以已知速度移动。所考虑的物体可以是相当普遍的,包括活人或身体部位,如头部或手部。然而,用于确定物体姿势的方法通常是针对某一类物体的,一般不能期望对其他类型的物体也能很好地工作。
从未经校准的二维相机中
编辑如果已知物体的近似三维模型和二维图像中的相应点,就有可能从一张二维照片中估计出三维物体的三维旋转和平移。最近,解决这个问题的常用技术是POSIT,即直接从三维模型点和二维图像点来估计三维姿态,并迭代修正误差,直到从一张图像中找到一个好的估计值。大多数POSIT的实现只对非共面点起作用(换句话说,它对平面物体或平面不起作用)。另一种方法是在已知物体的照片上注册一个三维CAD模型,通过优化与姿势参数有关的合适的距离度量,计算照片中的物体和三维CAD模型在给定姿势下的投影之间的距离度量。视角投影或正交投影是可能的,这取决于使用的姿势表示。这种方法适合于已知物体的三维CAD模型可用的应用。
从经过校准的二维摄像机
编辑给出一个物体的二维图像,以及相对于世界坐标系进行校准的摄像机,也可以找到在其物体坐标系中给出三维物体的姿势。
从二维提取三维
编辑从二维图像开始,提取对应于图像中的角的图像点。来自图像点的投影射线由二维点重建,这样就可以确定三维点,它们必须与重建的射线相交。
伪代码
编辑确定姿势估计的算法是基于迭代的最接近点算法。其主要思想是确定二维图像特征和三维模型曲线上的点之间的对应关系。(a)从图像点重建投影射线(b)估计每个投影射线与三维轮廓上的一个点的最近点(c)利用这个对应集估计轮廓的姿势(d)得到(b)上述算法没有考虑到含有部分遮挡的物体的图像。下面的算法假设所有的轮廓都是刚性耦合的,也就是说,一个轮廓的姿态决定了另一个轮廓的姿态。(a)从图像点重建投影射线(b)对于每个投影射线R:(c)对于每个三维轮廓:(c1)估计射线R的最近点P1到轮廓上的一个点(c2)如果(n==1)选择P1作为点线对应的实际P(c3)否则比较P1和P:如果dist(P1,R)小于dist(P,R)则选择P1作为新P(d)使用(P,R)作为对应集。(e)用这个对应集估计姿势(f)变换轮廓,执行(b)
通过比较来估计姿态
编辑有一些系统使用一个物体在不同旋转和平移时的数据库来比较输入的图像以估计姿态。这些系统的准确性仅限于他们的图像数据库中所代表的情况,然而其目标是识别姿势,而不是确定姿势。用于从3D-2D对应关系中进行6DoF姿势估计。用于从只有两个3D-2D对应关系的点与方向(矢量)或曲线(点-切线)上的点进行6DoF姿势估计。这些点可以是具有特征方向的SIFT属性。MINUS:用于三个视图的(相对)姿势估计的C++包。包括三个对应点与这些点上的线的情况,也包括三个对应点和一条线的对应情况。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/174402/