ros-naoqi/naoqi_driver

naoqi_driver is not publishing point cloud

Opened this issue · 4 comments

Hello,

I am working on octomap package where I need point cloud of the pepper robot. unfortunately naoqi_driver is not publishing point cloud. and these are my rostopic list:

/clock
/cmd_vel
/diagnostics
/joint_angles
/joint_states
/move_base_simple/goal
/naoqi_driver/audio
/naoqi_driver/bumper
/naoqi_driver/camera/bottom/camera_info
/naoqi_driver/camera/bottom/image_raw
/naoqi_driver/camera/bottom/image_raw/compressed
/naoqi_driver/camera/bottom/image_raw/compressed/parameter_descriptions
/naoqi_driver/camera/bottom/image_raw/compressed/parameter_updates
/naoqi_driver/camera/bottom/image_raw/theora
/naoqi_driver/camera/bottom/image_raw/theora/parameter_descriptions
/naoqi_driver/camera/bottom/image_raw/theora/parameter_updates
/naoqi_driver/camera/depth/camera_info
/naoqi_driver/camera/depth/image_raw
/naoqi_driver/camera/depth/image_raw/compressed
/naoqi_driver/camera/depth/image_raw/compressed/parameter_descriptions
/naoqi_driver/camera/depth/image_raw/compressed/parameter_updates
/naoqi_driver/camera/depth/image_raw/compressedDepth
/naoqi_driver/camera/depth/image_raw/compressedDepth/parameter_descriptions
/naoqi_driver/camera/depth/image_raw/compressedDepth/parameter_updates
/naoqi_driver/camera/depth/image_raw/theora
/naoqi_driver/camera/depth/image_raw/theora/parameter_descriptions
/naoqi_driver/camera/depth/image_raw/theora/parameter_updates
/naoqi_driver/camera/front/camera_info
/naoqi_driver/camera/front/image_raw
/naoqi_driver/camera/front/image_raw/compressed
/naoqi_driver/camera/front/image_raw/compressed/parameter_descriptions
/naoqi_driver/camera/front/image_raw/compressed/parameter_updates
/naoqi_driver/camera/front/image_raw/theora
/naoqi_driver/camera/front/image_raw/theora/parameter_descriptions
/naoqi_driver/camera/front/image_raw/theora/parameter_updates
/naoqi_driver/camera/stereo/camera_info
/naoqi_driver/camera/stereo/image_raw
/naoqi_driver/camera/stereo/image_raw/compressed
/naoqi_driver/camera/stereo/image_raw/compressed/parameter_descriptions
/naoqi_driver/camera/stereo/image_raw/compressed/parameter_updates
/naoqi_driver/camera/stereo/image_raw/theora
/naoqi_driver/camera/stereo/image_raw/theora/parameter_descriptions
/naoqi_driver/camera/stereo/image_raw/theora/parameter_updates
/naoqi_driver/hand_touch
/naoqi_driver/head_touch
/naoqi_driver/imu/base
/naoqi_driver/imu/torso
/naoqi_driver/info
/naoqi_driver/laser
/naoqi_driver/odom
/naoqi_driver/sonar/back
/naoqi_driver/sonar/front
/naoqi_driver_node/audio
/naoqi_driver_node/bumper
/naoqi_driver_node/camera/bottom/camera_info
/naoqi_driver_node/camera/bottom/image_raw
/naoqi_driver_node/camera/bottom/image_raw/compressed
/naoqi_driver_node/camera/bottom/image_raw/compressed/parameter_descriptions
/naoqi_driver_node/camera/bottom/image_raw/compressed/parameter_updates
/naoqi_driver_node/camera/bottom/image_raw/theora
/naoqi_driver_node/camera/bottom/image_raw/theora/parameter_descriptions
/naoqi_driver_node/camera/bottom/image_raw/theora/parameter_updates
/naoqi_driver_node/camera/depth/camera_info
/naoqi_driver_node/camera/depth/image_raw
/naoqi_driver_node/camera/depth/image_raw/compressed
/naoqi_driver_node/camera/depth/image_raw/compressed/parameter_descriptions
/naoqi_driver_node/camera/depth/image_raw/compressed/parameter_updates
/naoqi_driver_node/camera/depth/image_raw/compressedDepth
/naoqi_driver_node/camera/depth/image_raw/compressedDepth/parameter_descriptions
/naoqi_driver_node/camera/depth/image_raw/compressedDepth/parameter_updates
/naoqi_driver_node/camera/depth/image_raw/theora
/naoqi_driver_node/camera/depth/image_raw/theora/parameter_descriptions
/naoqi_driver_node/camera/depth/image_raw/theora/parameter_updates
/naoqi_driver_node/camera/front/camera_info
/naoqi_driver_node/camera/front/image_raw
/naoqi_driver_node/camera/front/image_raw/compressed
/naoqi_driver_node/camera/front/image_raw/compressed/parameter_descriptions
/naoqi_driver_node/camera/front/image_raw/compressed/parameter_updates
/naoqi_driver_node/camera/front/image_raw/theora
/naoqi_driver_node/camera/front/image_raw/theora/parameter_descriptions
/naoqi_driver_node/camera/front/image_raw/theora/parameter_updates
/naoqi_driver_node/camera/stereo/camera_info
/naoqi_driver_node/camera/stereo/image_raw
/naoqi_driver_node/camera/stereo/image_raw/compressed
/naoqi_driver_node/camera/stereo/image_raw/compressed/parameter_descriptions
/naoqi_driver_node/camera/stereo/image_raw/compressed/parameter_updates
/naoqi_driver_node/camera/stereo/image_raw/theora
/naoqi_driver_node/camera/stereo/image_raw/theora/parameter_descriptions
/naoqi_driver_node/camera/stereo/image_raw/theora/parameter_updates
/naoqi_driver_node/hand_touch
/naoqi_driver_node/head_touch
/naoqi_driver_node/imu/base
/naoqi_driver_node/imu/torso
/naoqi_driver_node/info
/naoqi_driver_node/laser
/naoqi_driver_node/odom
/naoqi_driver_node/sonar/back
/naoqi_driver_node/sonar/front
/rosout
/rosout_agg
/speech
/tf

I have uncommented those two lines in camera_info_definitions.hpp but I am getting errors as below
error: ambiguous overload for ‘operator=’ (operand types are ‘sensor_msgs::CameraInfo_<std::allocator >::_D_type {aka std::vector}’ and ‘boost::assign_detail::generic_list’)
cam_info_msg.D = boost::assign::list_of(-0.0688388724945936)(0.0697453843669642)(0.00309518737071049)(-0.00570486993696543)(0);
^
In file included from /usr/include/c++/5/vector:69:0,
from /usr/include/c++/5/bits/random.h:34,
from /usr/include/c++/5/random:49,
from /usr/include/c++/5/bits/stl_algo.h:66,
from /usr/include/c++/5/algorithm:62,
from /usr/include/boost/function/detail/prologue.hpp:13,
from /usr/include/boost/function.hpp:24,
from /opt/ros/kinetic/include/qi/anyfunction.hpp:11,
from /opt/ros/kinetic/include/qi/signal.hpp:12,
from /opt/ros/kinetic/include/qi/anyobject.hpp:15,
from /home/uday/Desktop/pepper/workspace/catkin_ws/src/naoqi_driver/include/naoqi_driver/tools.hpp:30,
from /home/uday/Desktop/pepper/workspace/catkin_ws/src/naoqi_driver/src/converters/converter_base.hpp:24,
from /home/uday/Desktop/pepper/workspace/catkin_ws/src/naoqi_driver/src/converters/camera.hpp:24,
from /home/uday/Desktop/pepper/workspace/catkin_ws/src/naoqi_driver/src/converters/camera.cpp:21:
/usr/include/c++/5/bits/vector.tcc:167:5: note: candidate: std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(const std::vector<_Tp, _Alloc>&) [with _Tp = double; _Alloc = std::allocator]
vector<_Tp, _Alloc>::
^
In file included from /usr/include/c++/5/vector:64:0,
from /usr/include/c++/5/bits/random.h:34,
from /usr/include/c++/5/random:49,
from /usr/include/c++/5/bits/stl_algo.h:66,
from /usr/include/c++/5/algorithm:62,
from /usr/include/boost/function/detail/prologue.hpp:13,
from /usr/include/boost/function.hpp:24,
from /opt/ros/kinetic/include/qi/anyfunction.hpp:11,
from /opt/ros/kinetic/include/qi/signal.hpp:12,
from /opt/ros/kinetic/include/qi/anyobject.hpp:15,
from /home/uday/Desktop/pepper/workspace/catkin_ws/src/naoqi_driver/include/naoqi_driver/tools.hpp:30,
from /home/uday/Desktop/pepper/workspace/catkin_ws/src/naoqi_driver/src/converters/converter_base.hpp:24,
from /home/uday/Desktop/pepper/workspace/catkin_ws/src/naoqi_driver/src/converters/camera.hpp:24,
from /home/uday/Desktop/pepper/workspace/catkin_ws/src/naoqi_driver/src/converters/camera.cpp:21:
/usr/include/c++/5/bits/stl_vector.h:448:7: note: candidate: std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(std::vector<_Tp, _Alloc>&&) [with _Tp = double; _Alloc = std::allocator]
operator=(vector&& __x) noexcept(_Alloc_traits::_S_nothrow_move())
^
/usr/include/c++/5/bits/stl_vector.h:470:7: note: candidate: std::vector<_Tp, _Alloc>& std::vector<_Tp, _Alloc>::operator=(std::initializer_list<_Tp>) [with _Tp = double; _Alloc = std::allocator]
operator=(initializer_list<value_type> __l)
^
naoqi_driver/CMakeFiles/naoqi_driver.dir/build.make:230: recipe for target 'naoqi_driver/CMakeFiles/naoqi_driver.dir/src/converters/camera.cpp.o' failed
make[2]: *** [naoqi_driver/CMakeFiles/naoqi_driver.dir/src/converters/camera.cpp.o] Error 1
CMakeFiles/Makefile2:8397: recipe for target 'naoqi_driver/CMakeFiles/naoqi_driver.dir/all' failed
make[1]: *** [naoqi_driver/CMakeFiles/naoqi_driver.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2

and even I have checked with SoftBank's version. even though I am not getting point cloud information. Does anyone solve this issue? or Am I missing any thing?

I am using ROS_Kinetic.

Hello, could somebody solve this issue? I am using the Pepper Robot as well but I dont get any message in the depth points camera topic

Hi @sasilva1998, try this with this repo. You will get depth information.

At last I got it working by using the C++ sdk, however, I get a really low frequency. I get about 1 pointcloud message per second. How much frequency do you get from the Depth Camera @UdayRockzz?

Thanks for your advice

wow. you are getting point cloud data from C++ SDK. that's nice. As I mentioned before, I am using python-based SDK and this is the rosbag from the topic
. even the same for me.

depthbag