ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
1

camera_pose_calibration image format error [closed]

asked 2012-09-24 23:55:15 -0500

Pedro gravatar image

Hi,

I'm trying to use camera_pose_calibration to calibrate my Asus Xtion depth camera to a RGB camera. I calibrated both cameras and the launch file, except for this warning

"[ WARN] [1346835528.616595129]: You've passed in true for auto_start for the C++ action server at [/tf2_buffer_server]. You should always pass in false to avoid race conditions."

starts everything normally. But when I try to start calibrate_2_camera.launch, I get the following error:

"Creating aggregator for ['/gscam', '/camera/rgb']

ERROR [1346837613.386631463]: Unable to convert '8UC3' image to bgr8: 'Unsupported conversion from [8UC3] to [bgr8]' "

Which keeps repeating periodically. This happens both with the built in RGB camera (for that I use a bag file) and an external RGB camera. The version of camera_pose_calibration that I'm using comes from here.

Does anyone know what's causing this and/or how to solve it? Thanks in advance!

edit retag flag offensive reopen merge delete

Closed for the following reason the question is answered, right answer was accepted by Pedro
close date 2012-10-10 04:21:52

Comments

What's the output of 'rostopic echo /camera/rgb/encoding' ?

jbohren gravatar image jbohren  ( 2012-09-25 01:47:11 -0500 )edit

From Asus Xtion, /camera/rgb/image_rect encoding is mono8.

Pedro gravatar image Pedro  ( 2012-09-27 02:47:50 -0500 )edit

That's confusing! So if /camera/rgb/image_rect is a mono image, is there something wrong with the openni pipeline with the Xtion?

jbohren gravatar image jbohren  ( 2012-09-27 03:32:28 -0500 )edit

image_rect is published by image_proc and it's supposed to be mono. image_rect_color is bgr8, but the tutorial about extrinsic calibration in openni_launch says to use image_rect.

Pedro gravatar image Pedro  ( 2012-09-27 21:39:30 -0500 )edit

Ah right. So have you tried it with image_rect_color?

jbohren gravatar image jbohren  ( 2012-09-28 04:22:16 -0500 )edit

I did and the same happened. Anyway, with the last ROS update it's finally working (with image_rect). Thanks!

Pedro gravatar image Pedro  ( 2012-10-02 04:34:46 -0500 )edit

3 Answers

Sort by ยป oldest newest most voted
2

answered 2012-09-25 11:20:38 -0500

Vincent Rabaud gravatar image

it is a bug as the behavior got broken but it is still doing the right thing: 8UC3 just tells you your image has 3 channels that are uint8. There is absolutely no color information in there: it could be RGB, BGR, YUV .... It therefore does not make sense to convert it to a color coded format.

Then again, 1.8.5 restores that behavior (it assumes 8UC3 is RGB). Groovy will throw that message again (but camera_pose_calibration will be fixed then).

edit flag offensive delete link more

Comments

Vincent, are you resurrecting camera_pose_calibration?

jbohren gravatar image jbohren  ( 2012-09-26 04:28:57 -0500 )edit

From these comments it seems like this problem was supposed to be fixed but I'm still getting the same errors trying to use the camera_pose_calibration right now. Is there a more updated package for multiple Kinect calibration that you know of? Or can this be used with Hydro?

Athoesen gravatar image Athoesen  ( 2014-01-06 10:46:14 -0500 )edit
5

answered 2012-09-25 08:13:01 -0500

ahendrix gravatar image

This is a bug in the new cv_bridge API. It should be fixed in the next release, 1.8.5, which will be available in deb packages in the next few days.

edit flag offensive delete link more
0

answered 2012-10-02 04:35:26 -0500

Pedro gravatar image

Yep, it's working after the last ROS update. Thanks!

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2012-09-24 23:55:15 -0500

Seen: 954 times

Last updated: Oct 02 '12