为什么ArUco Marker Detection会产生奇怪且反直觉的结果?

时间:2017-05-31 10:39:03

标签: python opencv detection marker aruco

我正在使用简单的ArUco标记检测程序,该程序具有输入图像或视频以及输出旋转(角度w.r.t 3D轴)和变换(位置w.r.t 3D轴向量)。该计划主要基于以下3个功能:

  • detectMarker
  • estimatePoseSingleMarkers
  • drawDetectedMarkers

我的目标是了解程序在连接到车辆时检测到ArUco标记的准确程度。 (即ArUco Marker printed on a vehicle

首先,我使用了calibrateCameraCharuco()从Blender(我用来渲染图像的软件)中获取相机参数,这些参数与理想的相机参数非常接近。(使用理想的相机参数,我得到相同的结果)< / p>

其次,我生成了一组图像,并提出了如下所示的错误结果。 - Angle Results - ArUco Marker Size 80cm

角度的行为很奇怪,因为对于低值,误差首先是低,对于中值,误差是高,对于高角度值,误差再次低。此外,距离误差结果看起来与角度相同。

我想知道您之前是否有过这样的结果,或者您是否有任何关于为什么检测到ArUco Markers的行为有这样的建议。

感谢您的关注,我提前感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

您是否使用相机校准来校正相机产生的图像?我使用可下载软件进行的一些校准产生了一些疯狂的结果。我发现将终端窗口的边缘对准图像中的直线可以显示相机图像的某些区域处理得非常好,但其他区域则很疯狂。 很明显,正在积极努力提高ARUCO的准确性: https://www.researchgate.net/publication/282269016_Accuracy_analysis_of_an_augmented_reality_system 根据您所需的准确性,ARUCO的目标是将CGI实时放入视频中,这不符合您的需求。 我很惊讶你得到70或80度的值。我发现他们不被认可。