问题标签 [apriltags]
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.
python - Python student_Apriltags:DLL 路径问题“找不到模块”
您好,我在 python 中遇到了有关student_apriltags的问题。我一直在寻找超过 1 周的时间并尝试了多种解决方案,但都没有奏效。
我的问题不在于库的导入,而是当我尝试创建检测器时。有一个对 xxxx.dll 文件的引用(我认为)它不起作用。
我的代码
非常简单
我的错误
我的配置
- 蟒蛇 3.8.5
- 视窗 10
python - 如何估计带有标签的对象的姿势,并始终显示具有已知旋转和平移向量的整个对象?
我已经能够在这样的 apriltags 板上检测到多个 apriltags:
这是使用 AprilTag 库完成的:https ://github.com/swatbotics/apriltag 。我使用 OpenCV solvePnP() 和 projectPoints() 来获取旋转和平移向量,并将 3D 点投影到 2D 点上以显示这些 apriltags 的位姿。
请参见下面的代码:
这非常适合 apriltag 板。但是,现在我正在尝试检测附加了 apriltags 的对象(十二面体:Dodecapen)的姿势。这些已经校准并附带列出每个标签大小的 json 文件,以及对应于正确标签 ID 的旋转和平移向量。
使用该 json 文件中的旋转和平移向量,我需要将所有 apriltags(甚至是在框架中未检测到的那些)覆盖到 OpenCV 窗口上。为此,我将不得不使用对象点内的旋转和平移向量,而不仅仅是使用标签大小来使用来自 json 的向量获取对象点的位置,并将它们用作solvePnP中的3D点( )。我会将罗德里格斯应用于旋转矢量,然后将其应用于对象点,但我不确定如何将它们应用于对象点。
为了始终将所有 apriltags 显示在屏幕上,我在想,一旦我从 solvePnP() 获得旋转和平移,我可以将该旋转和平移应用于对象附带的预定义旋转和平移向量,然后使用 projectPoints() 投影这些点并绘制它,以显示覆盖?
因此,总而言之,在检测到帧中的 1 个或多个 apriltags 时,我试图估计整个对象(十二面体)的姿势,对于未检测到的 apriltags(例如对象后面的那些),我是使用现有的起始姿势(来自 .json 文件的旋转和平移向量)将它们显示在屏幕上。
因此,基于此,我的问题是:
我将如何去做,最好的方法是什么?
如何在对象点内使用为对象提供的旋转和平移向量来获得 3D 世界中的姿势并将它们投影到 2D 图像中,以便所有 apriltags 都显示在 openCV 窗口上,是我认为最好的方法是什么?
如果我要在 for 循环之外提供对象和图像点数组,如下所示:
这些数组被附加在第一个代码示例的循环中。在 for 循环中,solvePnP 会正常工作吗?
任何帮助将不胜感激!
opencv - 带棋盘的相机校准单元
我正在尝试构建一个系统,该系统将根据它们的姿势估计来跟踪apriltags 。所需的主要步骤之一是执行相机校准,但我正在努力使用校准单元。我正在尝试遵循 OpenCV 棋盘校准方法来完成这项任务。
一些消息来源提到单位并不重要,它们可能是“真实世界像素”或只是“毫米”,但我想在我的应用程序中它们确实很重要,因为我将估计姿势,然后执行一些转换以米为单位确定位置。
在这种情况下,哪些单位更可取?或者我可以以某种方式简单地从我的最终内在矩阵转换单位吗?失真系数会发生什么,因为它们应该没有单位?
python - ROS 启动文件问题
我正在实现一个简单的 roslaunch 文件,但我得到了一个退出代码 2 状态我已将确切的日志粘贴在任何想法会导致此问题以及如何纠正它的下方。当通过 rosrun 用作节点时,它可以完美运行。
启动文件代码如下
编辑 1:我添加了用于发布到 ROS 的功能,其中 ROS 节点被初始化和使用。
我用来发布数据的功能如下
编辑 2:删除了完整代码,现在只显示开源代码
链接到 ROS 论坛上的相同问题:https ://answers.ros.org/question/391124/roslaunch-exit-code-2-error/
python - 在 Windows 10 上使用 AprilTag python 库?
我需要一个漫游车项目的基准标记,因为它的主要控制是用于沿着车道转向的图像处理,当它到达终点时,我需要它去一个精确的位置。
我打算使用 ArUco 标签,但我的 OpenCV 版本的 OpenVino 框架不支持它。然后我尝试使用 AprilTags,但我无法将其安装在我的 Windows 10 机器上,后来发现该操作系统不支持它。虽然我的机器人使用 RaspPi,但我绝对需要我的桌面环境进行开发和调试。
有人得到为 Windows Python 3 编译的 AprilTag 库吗?如果没有,是否有人知道类似的替代标签库(不是 ArUco)?我在这里不需要任何花哨的东西 - 只需打印在 4" x 4" (ish) 纸上的东西,我的图像处理管道可以轻松地从图像中挑选出来,然后我可以导航到它。我什至不需要在上面编码数据——只需要一些独特的东西来锁定。
非常感激!
python - 错误:apriltag 构建轮子失败
我正在尝试 pip install apriltag,但收到错误消息ERROR: Failed building wheel for apriltag
。我看过几篇关于失败构建轮子的帖子,但似乎找不到可以解决我的特定问题的帖子。我确实安装了“轮子”。我也已经安装了opencv并通过pip install opencv-contrib-python
这是我做的整个输出pip install apriltag
euler-angles - 获取相对于标签的位置,忽略 X&Z 轴旋转
对于无人机应用程序,我试图在标签框架参考中获取无人机位置,但忽略 X 和 Z 轴旋转。标签垂直定位,我想忽略 Z 和 X 轴的旋转
目标是获得与 Y 轴正交指向标签的无人机位置,无论其他轴的其他方向如何。
我是旋转矩阵的菜鸟,我真的开始了!
我使用的是 Java 和 April Tag V3,但在 AruCo Tags 中应该是一样的。
我正在尝试这种事情但没有成功
有没有人可以解释我做错了什么?