我试图将Ros映像桥接到OpenCV,所以我开始使用cv_bridge并遵循了本教程。 http://wiki.ros.org/cv_bridge/Tutorials/UsingCvBridgeToConvertBetweenROSImagesAndOpenCVImages
我认为我能够使CMakeLists.txt
文件正确,并且使用catkin_make
确实可以生成可执行文件并运行代码,但是除了使用{时显示为叶主题的节点之外,什么都没有发生{1}}。
但是,我在本教程的行中遇到了一些问题,它说:运行相机或播放bag文件以生成图像流。现在,您可以运行此节点,将“输入”重新映射到实际的图像流主题。
我正在使用Kinect作为图像源,并且已经安装了openni驱动程序,并且可以确认它是否正常运行,例如当我运行rviz或rtabmap点云图像时。
我猜测问题是我没有正确映射发布者和订阅者,因为当我尝试使用image_view查看相机数据是否正在工作时,它返回空白。在命令行中,我输入:rqt_graph
但是,我收到此错误:rosrun image_view image_view image:=/camera/rgb/image_color
,我认为这是我重命名主题时出错。
在同时运行openni节点和教程文件的GLib-GObject-CRITICAL **: 15:13:13.357: g_object_unref: assertion 'G_IS_OBJECT (object)' failed
时,它看起来像这样。
rqt_graph
答案 0 :(得分:0)
我通过使用rostpic hz [topic]
并检查了哪些正在接收相机数据来解决此问题。从那里,我将订阅者更改为image_sub_ = it_.subscribe("camera/rgb/image_color", 1, &ImageConverter::imageCb, this);
,并且可以正常使用