使用对象的单个图像的3D对象姿态CAD

问题描述:

我正在研究一种商业产品,我需要在单个2D图像中估计已知3D CAD(闭合2-manifold三角形网格)的6DOF姿态。在一般情况下,这是一个困难的问题,但我们的工作条件下,我们可以给予下列约束条件简化问题:使用对象的单个图像的3D对象姿态CAD

  1. 的CAD对象是已知的,我们的目的不是用于一般性像识别类的所有椅子。
  2. 我们可以让用户将相机大致定位到特定的姿势(距离物体的距离,一般方向+/- 15度等)
  3. 如果可能,我们只会使用图像的边缘(如Canny)找到并匹配从给定位置查看的对象。
  4. 这将用于人造物体(管道,阀门,路口等)没有太多质地的工业环境。

所有这些限制让我觉得即使是相对较旧的,有点基本的技术也可以工作。例如,在Sonka和al。本书第12.3.2节Goad的算法解释了1986年Goad C撰写的一篇论文“基于快速三维模型的视觉”,它可以在我们的假设下采用自上而下的“假设 - 验证”方法相对较好地工作。 我也知道,工业视觉和机器人界已经解决了这个问题,并且它的泛化时间很长,所以肯定会有一些可用的东西。

有人会知道商业上可用的实现(如OpenCV等)解决这个问题吗?

更具体地说:

  • 我不是在寻找深度学习的东西需要与成千上万的观点离线学习阶段,从我们的CAD模型。
  • 我不是在寻找依靠深度传感器的RGB-D技术。由于CAD是无色的,颜色也是无关紧要的。
  • 出于研究时尚的“旧”技术可以,甚至是首选,因为我们将在低性能计算机上运行。理想情况下,使用C或C++(可能取决于OpenCV)。
  • 可以商业使用(BSD,MIT,BOOST等许可),而不是GPL。

在此先感谢任何人可以提供的任何线索。

+0

如果您有CAD模型,可以尝试在用户姿势周围采样多个姿势,并使用相似性度量来确定哪个姿势与当前视图最接近。 – Catree

+0

@RCYR如果您能够分享您重新考虑的方法,我会感兴趣。从类似案例开始。 –

+0

您是否找到解决方案? – Ketan

我会尝试创建CAD模型的许多渲染图像并减去真实图像并尽量减少差异。

为了最小化搜索空间,您可以考虑先创建前景对象的边界框,如果可行的话。