问题标签 [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 投票
0 回答
1037 浏览

c++ - aruco 库中的检测功能出错

我第一次尝试使用 aruco 库。因此,对于安装,我在 Visual Studio 2013 上关注了此链接 ArUco

当我执行代码时,它会给出错误的行MDetector.detect,我什至得到 getPredefinedDictionary 的错误。是否有一些额外的设置我必须使用字典库函数。

输入图像是在此处输入图像描述

我想做的就是检测二维码并找到姿势和方向

0 投票
1 回答
100 浏览

c++ - 在 Aruco 代码中发现 C++ 奇怪的语法

我在一些 Aruco 文件中发现了奇怪的语法:

似乎thres_images是函数,但如果是,那么vector< cv::Mat >它前面是什么?它不是声明也不是定义。后来它被用作数组:

PS:完整代码可以在这里找到

0 投票
5 回答
8049 浏览

opencv - 如何生成 ChAruco 板校准?

如何生成 ChAruco 板校准?我试图在谷歌搜索中找到一个现有的板,但我找不到它。

谢谢,卡洛斯

0 投票
1 回答
96 浏览

linux - 如何解释 ArUco 的输出

我是 ArUco 的新手,在尝试理解输出中的单位时遇到了一些问题,如下所示:

817=(527.126,235.966) (525.665,210.056) (552.459,208.619) (553.243,234.68) Txyz=0.155419 -0.0140956 0.56691 Rxyz=-1.53​​672 0.11339 0.11339 0.11339 0.155419

我知道第一个数字(817)是标记代码,前4个括号是角的位置,其余的值是平移和旋转。但是它们的单位是什么?

先感谢您!

0 投票
1 回答
1916 浏览

c# - aruco.net - 如何找到标记方向

我正在尝试使用 openCV.NET 来读取扫描的表格。问题在于,有时相关感兴趣区域的位置和对齐方式可能会因打印表单的打印机和用户扫描表单的方式而异。

所以我想我可以使用 ArUco 标记作为参考点,因为已经构建了可以识别它们的库 (ArUco.NET)。我希望找出 ArUco 代码旋转了多少,然后将表单向后旋转该数量以确保文本是直的。然后我可以使用 ArUco 代码的中心作为参考点,在表单上的特定区域使用 OCR。

我正在使用以下代码来获取 OpenGL modelViewMatrix。但是,无论 ArUco 代码旋转哪个角度,它似乎总是相同的数字。我刚刚开始使用所有这些库,但我认为 modelViewMatrix 会根据标记的旋转给我不同的值。为什么总是一样?

0 投票
1 回答
842 浏览

qt - QT C++ - 基于标记的增强现实

我正在使用 aruco 检测标记;

为了使用 drawDetectedMarkers 方法,我想在标记上添加 3d 对象。我查看了用 C# 语言实现的类似项目。我拿了他们的统一对象。但是我不确定将任何 3D 对象放在标记上的最佳方法。我应该使用openscenegraph还是opengl?我也可以在这个过程中使用标记板。我实时获得了 rvec(棋盘的旋转向量)和 tvec(棋盘的平移向量)值。这是我第一次使用 3d 对象 - QT。我愿意接受所有建议。

0 投票
0 回答
383 浏览

three.js - 如何在three.js中停止WebAR场景的凹凸/闪烁

例如,我尝试在 three.js 中设置一个 AR 场景。

我使用“aruco.js”来做到这一点。当我加载 obj 或任何其他模型时,一切正常,但是当标记放在相机前面时,它会被检测到并且场景剧烈闪烁/颠簸。发生这种情况的任何严重原因?

由于现场演示很难设置,我刚刚在 YouTube 上上传了一个视频来说明我的观点:https ://youtu.be/9jMso7vmw1M

所以我的确切问题是:让 AR 场景粘在标记上而没有任何闪烁的最佳方法是什么?

jsfiddle 中的代码:https ://jsfiddle.net/6cw3ta57/

0 投票
1 回答
2586 浏览

opencv - OpenCV获取到旋转基准标记的距离(Aruco)

(在 iOS 中)我需要确定到可以旋转的基准标记的距离。

我正在使用 Aruco 库,到目前为止,我已经在 iOS 中实现了标记检测和姿势估计,但我真正需要的是相机到该标记的距离。

我已经看到一些示例,您使用标记的实际大小、相机的焦距和标记的屏幕尺寸来计算距离,但这并没有考虑应用于标记的任何旋转。

由于我有姿势估计工作,我“猜测”应该可以取消旋转标记的角点,然后使用这些点的边界框,以及实际尺寸和相机焦距。虽然我不完全确定这是正确的,或者如何实现它。

这是我第一次使用 OpenCV,所以我现在只是在猜测。

非常感谢任何和所有帮助。

非常感谢

0 投票
1 回答
3249 浏览

opencv - aruco::detectMarkers 没有找到标记的真实边缘

我正在使用 ArUco 标记来校正透视并计算图像中的大小。在这张图片中,我知道标记外边缘之间的确切距离,并使用它来计算黑色矩形的大小。

我的问题是它aruco::detectMarkers并不总是能识别标记的真实边缘(如细节图所示)。当我根据标记的角校正透视时,它会导致失真,从而影响图像中对象的大小计算。

有没有办法提高边缘检测精度aruco::detectMarkers

这是整个电路板的按比例缩小的照片:

标记板

这是显示边缘检测不准确的左下标记的详细信息:

左下标记

这是右上角标记的详细信息,显示了对同一标记 ID 的准确边缘检测:

在此处输入图像描述

在这个缩小的图像中很难看到,但左上角的标记是准确的,而右下角的标记是不准确的。

我的函数调用detectMarkers

0 投票
2 回答
1418 浏览

c++ - 我们如何确认内在矩阵是正确的?

我使用 aruco 标记进行了相机校准。由于内在矩阵是 K = [fx 0 cx; 0 fy cy; 0 0 1]和哪里 fx = image_width/2 and fy = image_height/2。我进行了两次校准,结果是:

情况1

案例二

图片的分辨率是1920*1200,所以cxandcy应该是960和600。第二种情况,cxand和cy预期的一样;重投影误差很大。在其他情况下cxcy不匹配,但重投影误差非常低(小于 1)。

那么现在可以考虑哪些结果是最好的,一般如何fx定义fy