Ask Your Question
1

Camera_Info_Manager [closed]

asked 2011-05-30 02:13:20 -0500

migueloliveira gravatar image

updated 2011-05-30 02:15:46 -0500

Hello

I am trying to do a bumblebee xb3 driver and I have the following problem.

I found out a driver needs to supply the service set_camera_info for stereo camera calibration, because when i run stereo calibration the output is

mike@BLACKBANDIT:~$ rosrun camera_calibration cameracalibrator.py --size 8x6 --square 0.108 right:=/xb3_short/right/image_raw left:=/xb3_short/left/image_raw right_camera:=/xb3_short/right left_camera:=/xb3_short/left Waiting for service /xb3_short/left/set_camera_info ... Service not found Waiting for service /xb3_short/right/set_camera_info ... Service not found

Hence i started looking for this service. I found in http://www.ros.org/doc/api/camera1394... that we should use dynamic_reconfigure.

I also found that one should use camera_info_manager.

Well, problem is I cannot make them work togheter.

To have the dynamic_reconfigure i need to add to the CMakeLists.txt the follwoing

add dynamic reconfigure api

rosbuild_find_ros_package(dynamic_reconfigure) include(${dynamic_reconfigure_PACKAGE_PATH}/cmake/cfgbuild.cmake) gencfg() rosbuild_add_executable(dynamic_reconfigure_node src/dynamic_reconfigure_node.cpp)

And when I do add this to the CmakeList.txt there is a strange linking error about the camera_info_manager

[ 0%] Built target rospack_genmsg_libexe [ 0%] Built target rosbuild_precompile [ 25%] Building CXX object CMakeFiles/pgrlibdcstereo.dir/src/pgr_conversions.o [ 50%] Building CXX object CMakeFiles/pgrlibdcstereo.dir/src/pgr_registers.o [ 75%] Building CXX object CMakeFiles/pgrlibdcstereo.dir/src/pgr_stereocam.o Linking CXX shared library lib/libpgrlibdcstereo.so [ 75%] Built target pgrlibdcstereo [100%] Building CXX object CMakeFiles/xb3.dir/src/xb3.o Linking CXX executable bin/xb3 CMakeFiles/xb3.dir/src/xb3.o: In function main': xb3.cpp:(.text+0x173d): undefined reference tocamera_info_manager::CameraInfoManager::CameraInfoManager(ros::NodeHandle, std::basic_string<char, std::char_traits<char="">, std::allocator<char> > const&, std::basic_string<char, std::char_traits<char="">, std::allocator<char> > const&)' collect2: ld returned 1 exit status

This does not occur when I have the CMakeList.txt without the previous lines.

I initialize camera_info_manager standard like

ros::NodeHandle nh;
CameraInfoManager TEST(nh);

Any hint?

Thanks

Miguel

edit retag flag offensive reopen merge delete

Closed for the following reason the question is answered, right answer was accepted by Vincent Rabaud
close date 2014-10-03 10:59:35.993005

Comments

I found the problem. I had a problem in the CMakeList.txt. Sorry for the trouble. Its solved.
migueloliveira gravatar image migueloliveira  ( 2011-05-30 03:07:46 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2011-08-02 11:18:13 -0500

Wim gravatar image

I found the problem. I had a problem in the CMakeList.txt. Sorry for the trouble. Its solved. - migueloliveira (May 30)

edit flag offensive delete link more

Question Tools

Stats

Asked: 2011-05-30 02:13:20 -0500

Seen: 811 times

Last updated: Aug 02 '11