问题标签 [aruco]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
523 浏览

c++ - 在 iOS 上使用 aruco 构建 opencv 时,“不允许从 id 到 double 的函数式转换”

我正在尝试制作一个可以检测 Aruco 标记的 iOS 应用程序。所以,我下载了适用于 iOS 的 opencv2.framework,但我意识到 Aruco 并不包含在其中。在此页面之后,我手动编译将 opencv_contrib( https://github.com/opencv/opencv_contrib.git) 模块文件夹添加到 opencv 模块文件夹中。这个过程运行良好,在 Xcode 中我可以访问 Aruco 函数。但我也得到了这个奇怪的错误: function-style cast xcode error

我试过调试,运行时 v 作为双变量传递。显式转换(double)v也无效。我怎样才能解决这个问题?

0 投票
1 回答
1245 浏览

python - 为什么 ArUco 标记检测会给出奇怪且违反直觉的结果?

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

  • 检测标记
  • 估计姿势单标记
  • 绘制检测标记

我的目标是查看程序在连接到车辆时检测 ArUco 标记的准确度。(即印在车辆上的 ArUco 标记

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

其次,我生成了一组图像并得出了如下所示的错误结果。-角度结果 - ArUco 标记尺寸 80 厘米

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

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

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

0 投票
1 回答
885 浏览

opencv - 关于将detect_markers.cpp 与opencv aruco 一起使用的问题?

我正在使用 opencv 网站上的 detect_markers.cpp 来使用相机检测标记的姿势。编译没有错误后我得到了这个,那么我如何输入参数?http://docs.opencv.org/3.1.0/d5/dae/tutorial_aruco_detection.html

这是我得到的信息:基本标记检测用法:detecttest [params]

0 投票
1 回答
1146 浏览

python - OpenCV-python 和 ArUco 库估计PoseSingleMarker() 模块没有属性

使用 OpenCV-python 和 aruco 库进行跟踪项目。使用时抛出以下错误

错误:

其他人工作正常

aruco.Dictionary_get(aruco.Dict_6x6_250)

aruco.DetectParameters_create()

知道为什么它会抛出那个错误吗?

编辑:它在帮助文档中

0 投票
0 回答
666 浏览

c++ - 在 aruco opencv 中使用单色相机捕获视频

我目前正在尝试将单色相机与 aruco 和 opencv 库一起使用,以加速计算并获得更好的标记捕获。我遇到的问题是,在运行 aruco_test 程序时,单色提要在屏幕上增加了三倍,因此分辨率降低了三分之二,并且每次检测到标记三次而不是一次。

我看到提要讨论了 opencv 中单色相机的类似问题。一些答案建议裁剪图像(这可以解决三倍问题,但不能解决较小的分辨率),但这似乎都是由 BGR2GRAY 或 GRAY2BGR 的转换引起的。任何有关究竟是什么导致图像增加三倍以及如何在 aruco 源代码或 opencv 源代码中绕过该部分的任何帮助将不胜感激。

信息:

驱动程序信息(不使用 libv4l2):

使用 Aruco 2.0.19 和 OpenCV 3.2

像素格式不是 YUYV 我不能简单地从相机输入中获取 Y 通道。

执行的代码:

0 投票
1 回答
2927 浏览

c++ - 无法使用 OpenCV 3.1.0 检测 ArUco 标记

我正在尝试编写一个简单的 C++ 例程,首先将预定义的 ArUco 标记字典(例如 4x4_100)写入文件夹,然后使用 OpenCV 3.1 和 Visual Studio 2017 从文件夹中选择的特定图像中检测 ArUco 标记。我已经编译了所有使用 ArUco 标记所需的 OpenCV-contrib 库。我的例程构建没有任何错误,但即使在为内置的“aruco::detectMarkers”函数提供了所有正确的参数(例如图像、字典等)之后,我也无法检测到标记。你能帮我理解我的方法有什么问题吗?下面是一个最小的工作示例,测试图像附在此处“4x4Marker_40.jpg”

0 投票
0 回答
483 浏览

c++ - 错误“命名空间 cv::aruco 没有成员:CharucoBoard”

我正在尝试使用 C++ 中的 ChArUcoBoard (chessboard + ArUco) 类校准相机,但在导入 Charuco 类时出现以下错误:“”namespace cv::aruco has no member :CharucoBoard”。事实上,我无法导入任何与“Charuco”相关的功能。我已经编译了 Opencv3.3.0 库,并且能够使用除“Charuco”功能之外的整个“aruco”类。您能否指出那里可能出现的问题?

0 投票
1 回答
473 浏览

ros - 旋转矢量 (Rxyz) 的 Aruco Ros 约定

Aruco Ros 打印标签 id,后跟关键点、Txyz(平移)和 Rxyz(旋转)。Rxyz 有 3 个弧度角。它代表哪个角度?是欧拉角吗?如果是,那么在6 个内在约定和 6 个外在约定中,它遵循哪一个?是罗德里格斯角还是其他什么?我有一个特殊情况,我知道标签和相机的轴。我可以弄清楚他们的 Rxyz 约定吗?

0 投票
1 回答
1083 浏览

java - 捕获小型 arUco 标记

当我检测到 aruco 标记的一个小像素(长度和宽度都小于 0.4 厘米)时,我遇到了问题。有没有办法通过Android Java解决这个问题?

我的 aruco 的图像

0 投票
1 回答
612 浏览

opencv - OpenCV:charuco(钻石)不适用于更大的图像。调整哪些参数?

以某种方式检测 charuco 钻石对我来说不适用于更大的图像。使用我的 1920x1080 原始图像,它既不能可靠地识别 id(钻石 id 元素每次都在切换位置)。在第一张图片中,您可以看到它识别出 (7, 9, 45, 2)。

1920x1080 图像。 错误的 ID 顺序和姿势估计

然后我尝试将图像下采样到 960x540,并将校准参数 f、c 分成一半,它可以工作!id被正确识别为(2,7,45,9),姿态估计准确。

960x540 图像。 正确估计

如何使它适用于更大的图像?我尝试根据绝对像素单位(与图像大小无关)更改检测参数。这是我当前参数的列表。我意识到增加阈值的窗口大小有助于识别正方形,但不适用于 id 或姿势估计。

nmarkers: 1024 adaptiveThreshWinSizeMin: 13 adaptiveThreshWinSizeMax: 113 adaptiveThreshWinSizeStep: 10 adaptiveThreshWinSize: 42 adaptiveThreshConstant: 7 minMarkerPerimeterRate: 0.1 maxMarkerPerimeterRate: 4.0 polygonalApproxAccuracyRate: 0.05 minCornerDistance: 10.0 minDistanceToBorder: 10 minMarkerDistance: 10.0 minMarkerDistanceRate: 0.05 doCornerRefinement: false cornerRefinementWinSize: 5 cornerRefinementMaxIterations: 30 cornerRefinementMinAccuracy: 0.1 markerBorderBits: 1 perspectiveRemovePixelPerCell: 8 perspectiveRemoveIgnoredMarginPerCell: 0.13 maxErroneousBitsInBorderRate: 0.04 minOtsuStdDev: 5.0 errorCorrectionRate: 0.6 有什么提示吗?

谢谢你!