问题标签 [ros]
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.
android - Android 上的简单标记检测(不是传统的增强现实),可能使用 OpenCV
对于我在大学的最后一年项目,我正在扩展一个名为 Rviz for Android 的应用程序。这是一款适用于 Android 平板电脑的应用程序,它使用 ROS(机器人操作系统)来显示来自机器人的信息。该项目的主要意图本质上与传统的增强现实相反——我不是将数字化的东西投影到现实世界的视图上,而是将来自平板电脑相机的现实世界的视图投影到数字化视图上。世界(抽象地图)。该应用程序的预期目的是当平板电脑四处移动时,现实世界的视图应该在地图上移动。
为了在屏幕上移动摄像头的视图,我使用平板电脑的加速度计并计算行进距离。这本质上是有缺陷的,因此,运动远非准确(这本身并不重要——它是我报告的好材料)。为了改善摄像机源的移动,我希望使用放置在现实世界中预定义位置的标记,目的是如果检测到标记,视图会跳转到标记的位置。不幸的是,虽然有许多处理标记检测的 SDK(例如 Qualcomm SDK),但它们都面向适当的增强现实(也就是说,在标记上覆盖一些东西)。
到目前为止,我确定的唯一两个可能有用的框架是 OpenCV(看起来确实很有前途,尽管我对 C++ 不是很熟悉)和 AndAR,它似乎又非常专注于传统的 AR 用途,但我可能能够修改。这些框架中的任何一个都适合吗?还有其他方法可以实现解决方案吗?
如果它有帮助,这是我正在扩展的应用程序的源代码,这是 Android 上 ROS 的源代码(使用相机的代码在“android_gingerbread_mr1”文件夹中。我还可以提供一个链接到我对 Rviz 的扩展,如果这也有帮助的话。非常感谢!
编辑:我目前遇到的主要问题是尝试集成访问相机的两个单独的类(OpenCV 中的 JavaCameraView 和 ROS 中的 CameraPreviewView)。他们都需要同时活跃,但他们做的事情不同。我确信我可以将它们结合起来。如前所述,如果需要,我将链接到/上传有问题的类。
python - 在ros中使用python的操纵杆控制/导航
我是ros的初学者。我想从操纵杆获取一些数据。我是一个 python 粉丝 - 不太了解 cpp。
我想将我的操纵杆连接到 USB 端口,并想创建一个节点(/包)来提供来自操纵杆的数据,以便我可以直接使用它来控制我的机器人。
我的疑惑
如何将操纵杆运动控制链接到我的机器人?是否需要任何额外的驱动程序/安装来支持我的操纵杆?我可以使用 python 来破坏它吗?操纵杆是否需要任何其他要求/规格?
opencv - 在没有 sse 的情况下编译 OpenCV 以在 ROS 中使用
所以我遇到了一个似乎与在不支持 SSE 的处理器上使用 ROS 中的 OpenCV 相关的问题。具体来说,每当尝试使用 OpenNI 或 freenect 与 Xbox Kinect 交互时,就会出现此问题。每当我尝试启动其中任何一个时,都会收到“非法指令”错误。根据我的阅读,这个问题可以追溯到 opencv 并且它使用 SSE,这在我的处理器上不受支持(Roboard RB100 上的 Vortex86DX)。我找到了有关如何从源代码编译 OpenCV 以及使用标志在没有 SSE 的情况下进行编译的说明,但无法弄清楚如何在 ROS 中使用它。有人知道如何在 ROS 中使用自定义编译版本的 OpenCV 来缓解这个问题吗?
谢谢!
如果您需要任何进一步的信息,请询问。
c++ - 从 C++ 中类的函数成员返回一个数组
我在 C++ 环境中使用 ROS 和 OpenCV,以便从 ROS 节点获取视频(灰度),通过 cv_bridge 转换数据(以便通过 OpenCV 详细说明),提取一些数据并将它们发布在一个主题上作为 ROS 消息。
我的问题是我不知道如何将数组发送frame
到main
函数以便详细说明!我无法详细说明,因为我需要区分不同帧的不同数据。这是我的代码:
我希望这个问题足够清楚。你能帮我吗?
pointers - 使用 ipmage 的 ROS 应用程序中的分段错误
我正在尝试在我的ROS节点中使用cvBlob lib检测视频源上的 blob。我想,我在指针上犯了一个错误,但我不知道在哪里。此外,我是否必须释放一些这个变量?
c++ - 令人困惑的 (*this) 指针转换
这是 Transform 类中 ROS(链接)中 Transform.h 的代码。
有人可以解释这段代码在做什么吗?这是我的想法(作为上下文,我有几年 C 程序员的经验,第一次用 C++ 开发。)
调用以下函数时调用该函数
然后它将 Vector3 对象转换为 Transform 对象并返回结果(我很不清楚这怎么可能,因为这两种类型似乎不兼容)。
但是返回的结果是 Vector3... 这就是我的心理模型崩溃的地方。
此外,该函数应该是基于 Transform 类转换 Vector3 点......所以我的理解肯定在某个地方存在缺陷。
我将不胜感激任何见解。
谢谢
编辑
谢谢回复!上面的函数是:
我明白了,现在,发生了什么事。再次感谢。
yaml-cpp - 在 ROS 中使用 yaml-cpp 时出错?
我正在尝试使用 yaml-cpp,根据wiki,它是系统依赖项,因此我们甚至不需要更改 CMakelists.txt 或 manifest.xml。但是,当我编译代码时,我仍然会收到如下错误:
我添加到 CMakeLists.txt 的唯一代码是:
我在 Linux 中使用 fuerte。任何解决方案有人吗?
编辑:我找到了我的解决方案!我更改了我的 CMakeLists.txt 以先构建可执行文件,然后添加 yaml-cpp 库!
我的 CMakeLists.txt 中的这两行工作正常!
c++ - 您将如何在结构向量的 ROS 中发布消息?
我想发布一个包含两个整数和两个字符串的结构长度未知的向量。ROS中是否有发布者和订阅者可以做到这一点?
如果没有,我一直在看如何创建自定义消息的教程,我想我可以制作一个.msg
包含以下内容的文件:
和另一个.msg
包含先前消息数组的文件。但是教程没有给出如何使用数组的例子,所以我不知道在第二个.msg
文件中放什么。此外,我什至不确定如何在 C++ 程序中使用此自定义消息。
关于如何做到这一点的任何提示都会很棒!
python - 如何从python中的另一个方法获取值对象
我真的不明白我做错了什么..我尝试从另一种方法获取值对象..这是我的代码
但是,我得到这个错误
这个问题是怎么解决的???
笔记 :
rospy.Subscriber('robotis/servo_head_pan_joint', Float64, self.posisi_ax12_pan)
rospy.Subscriber('robotis/servo_head_tilt_joint', Float64, self.posisi_ax12_tilt)
rospy.Subscriber('robotis/servo_right_elbow_joint', Float64, self.posisi_ax12_elbow)
rospy.Subscriber 是为 self.posisi_ax12_pan 方法、self.posisi_ax12_tilt 方法和 self.posisi_ax12_elbow 插入 Float64 数据的行命令。
robotics - Irobot 在 ROS 中创建编码器
我正在使用 ROS 对我的 iRobot Create 机器人进行编程,但我没有在 ROS 中找到轮式编码器。是否可以在 ROS 中为 iRobot Create 机器人使用编码器?