您的位置:首页 > 理论基础

【计算机视觉】 相机姿态估计之标记检测-Aruco模块常见问题解答 6

2017-06-04 16:02 555 查看

Aruco模块常见问题解答

原文来源 opencv     http://docs.opencv.org/master/d1/dcb/tutorial_aruco_faq.html

这是一个编译的问题可能是有用的对于那些想要使用aruco模块。

我只想标签一些对象,我应该使用什么?

在这种情况下,您只需要单一ArUco标记。 您可以将一个或多个标记不同的id在每个对象的识别。
算法用于标记检测吗?

aruco模块是基于原始aruco字块。 一个完整的描述的检测过程中可以发现:

S. Garrido-Jurado, R. Muñoz-Salinas, F. J. Madrid-Cuevas, and M. J. Marín-Jiménez. 2014. "Automatic generation and detection of highly reliable
fiducial markers under occlusion". Pattern Recogn. 47, 6 (June 2014), 2280-2292. DOI=10.1016/j.patcog.2014.01.005

我的正确标记不被发现,我能做什么?

可能有很多因素,避免标记的正确检测。 你可能需要调整一些参数 
DetectorParameters
对象。
你可以做的第一件事就是检查如果你标记作为拒绝候选人的返回 
detectMarkers()
函数。
根据这一点,你应该试着修改不同的参数。

如果您使用的是ArUco板,你也可以尝试 
refineDetectedMarkers()
函数。
ArUco标识板的好处是什么? 缺点是什么?

使用的标记可以获得相机的姿势从一组标记,而不是一个。 这种方式,检测是能够处理遮挡部分的观点,因为只有一个标记获取姿势是必要的。

此外,在大多数情况下,您正在使用更多的角落姿势估计,这将是更精确的比使用一个标记。

标识板的主要缺点是不像一个通用的标记。
的好处是什么ChArUco标识板ArUco板? 和缺点?

ChArUco板结合了棋盘和ArUco标识板。 谢谢,ChArUco标识板提供的角落提供更精确的比ArUco标识板(或单标记)。

的主要缺点是ChArUco标识板不像ArUco多才多艺的标识板。
例如,ChArUco板是一种平面板与特定标记布局而ArUco标识板可以拥有任意布局,甚至在3 d。 此外,标记ChArUco标识板通常是更小、更难以检测。
我不需要姿态估计,我应该用ChArUco板吗?

不。 ChArUco标识板的主要目的是提供高精确的角落的姿势估计或照相机校准。
都应该标记在一个ArUco被放置在相同的飞机吗?

不,标记在一个角落ArUco标识板可以放置在其三维坐标系统。
都应该标记在一个ChArUco被放置在相同的飞机吗?

是的,所有的标记ChArUco标识板需要在同一个平面上,棋盘布局是固定的形状。
之间的区别是什么 
标识板
对象和一个 
GridBoard
对象?

的 
GridBoard
类是继承自一个特定类型标识板
类。
一个 
GridBoard
对象是一个标识板的标记放置在同一个平面上,在网格布局。
钻石标记是什么?

钻石标记非常类似于ChArUco 3 x3委员会广场。 然而,相反ChArUco标识板,钻石的检测是基于相对位置的标记。
他们是有用的,当你想提供一个概念意义的任何(或者全部)标记的钻石。 一个例子是使用一个标记来提供钻石规模。
我需要检测标记板检测之前,ChArUco板检测或钻石检测吗?

是的,单一标记的检测是一个基本工具aruco模块。 它是使用完成的 
detectMarkers()
函数。
其余的函数从这个函数接收检测到标记的列表。
我想调整我的相机,我可以用这个模块吗?

是的,aruco模块提供的函数来校准相机使用,aruco标识板和ChArUco标识板。
我应该使用ChArUco校准板或ArUco板吗?

强烈建议使用ChArUco校准板由于精度高。
我应该使用一个预定义的字典或生成自己的字典吗?

一般来说,更容易使用一个预定义的字典。 然而,如果你需要一个更大的字典(的标记或数量的比特数)你应该生成自己的字典。 字典一代也很有用,如果你想最大化inter-marker距离达到一个更好的纠错过程中识别的步骤。
我创造我自己的字典,但花费的时间太长了

字典代初只应做一次你的应用程序,应该采取一些秒。 如果你是生成的词典在每个迭代检测循环,你做错了。

此外,它是值得推荐的字典保存到文件,阅读每个执行,所以你不需要生成它。
我想用一些标记的原始ArUco库,我已经打印出来,我可以使用它们吗?

是的,一个预定义的字典 
DICT_ARUCO_ORIGINAL
检测到标记的原始ArUco库相同的标识符。
我可以用板配置文件的原始ArUco字块这个模块吗?

没有直接的联系,您将需要调整的信息ArUco ArUco模块板格式文件。
我可以使用这个模块来检测其他基于二进制基准标记库的标记吗?

可能是的,但你需要端口字典原始库aruco模块的格式。
我需要字典信息存储在一个文件,所以我可以使用它在不同的执行?

如果您正在使用一个预定义的字典,它不是必要的。 否则,它是值得推荐的,你将其保存到文件中。
我需要的信息存储在一个文件,所以我可以使用它在不同的执行?

如果您使用的是 
GridBoard
或者一个 
ChArUco
板只需要存储板提供给的测量 
GridBoard:create()
或 
ChArUco:create()
函数。
如果您手动修改标记id的标识板,或如果你使用一种不同类型的板,你应该保存你的标识板对象文件。
aruco模块提供的函数将字典或标识板保存到文件?

不是现在。 但是字典和板类的数据成员都是公开的,可以很容易地存储。
好吧,但是我怎么能呈现一个3 d模型创建一个增强现实应用程序?

为此,您将需要使用一个外部的渲染引擎库,比如OpenGL。 aruco模块只提供函数获得相机姿势,即旋转和traslation向量,有必要创建增强现实的效果。
然而,你需要适应OpenCV的旋转和traslation矢量格式的格式接受你的3 d渲染库。 原ArUco库包含的例子为OpenGL和Ogre3D怎么做。
我有使用这个模块在我的研究工作,我怎么能引用吗?

您可以引用原始ArUco库:

S.
Garrido-Jurado, R. Muñoz-Salinas, F. J. Madrid-Cuevas, and M. J. Marín-Jiménez. 2014. "Automatic generation and detection of highly reliable fiducial markers under occlusion". Pattern Recogn. 47, 6 (June 2014), 2280-2292. DOI=10.1016/j.patcog.2014.01.005
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐