ros-drivers / pointgrey_camera_driver

ROS driver for Pt. Grey cameras, based on the official FlyCapture2 SDK.
128 stars 180 forks source link

*/camera_info not publishing #134

Closed benjaminabruzzo closed 6 years ago

benjaminabruzzo commented 6 years ago

I am having an issue where the camera info is not getting published when running the driver. The images are getting published, just not the camera info. This is an issue with using other packages that require the camera info.

Does anyone have any idea why this might be the case? (yaml and launch files changed to txt to upload)

create_pgrlaunch.txt

17094423yaml.txt

16369047yaml.txt

benjaminabruzzo commented 6 years ago

I'm not sure what the collision is, but I have isolated the issue to installing the viso2 visual odometry package: http://wiki.ros.org/viso2_ros

mikepurvis commented 6 years ago

Is it enough to simply install that package without running anything? If so, that's super weird. What's the output of:

dpkg -l ros-indigo-viso2-ros
dpkg -l ros-indigo-viso2
dpkg -l ros-indigo-libviso2

Just wondering if one these is smuggling a bad udev rule or something else into your system.

Under other circumstances, I would have assumed outdated firmware on your cameras, but the connection to this other package is super screwy.

benjaminabruzzo commented 6 years ago

This issue has been confounding me for the past two weeks. Now, I can't even get the most minimal configuration to work. In the link to my google drive, there are five files: the pipeline after a clean install, two launch files for my cameras(single and stereo), and two simple yaml calibration files.

mwe docs

benjaminabruzzo commented 6 years ago

I think the issue that I'm having is how the driver handles USB cameras. Using a pair of USB3 chameleons (cm3-us-13s2c), a pair of USB2 fireflies (mv fmvu-03mtc), and a pair of gigE blackflies (bfly-pge-13h2c), I tested this driver for all three pairs, and on the fireflies, I tested the 1394 driver. The four launch files are linked below.

Using this driver, the blackflies are able to publish both images and their camera info (though when fired by an external trigger simultaneously, the image consistency errors cause dropped frames).

Using this driver, the chameleons publish the images, but not the camera_info.

Lastly, using this driver, the fireflie publish the images, but not the camera_info. However, using the 1394 driver, both images and camera_info are getting published.

To install the 1394 driver, I used these commands:

sudo apt-get install ros-indigo-camera1394
rosdep install camera1394

files

benjaminabruzzo commented 6 years ago

By using the apt-get installation in ros-indigo, I may have just duplicated the symptoms from this gist

benjaminabruzzo commented 6 years ago

For others: I modified the file in the above gist to use a ros parameter for the yaml filename (instead of a command line argument) and then made a launch file for it: node_py launch