Ask Your Question

weaponeer's profile - activity

2012-11-22 09:47:40 -0500 received badge  Famous Question (source)
2012-11-22 09:47:40 -0500 received badge  Notable Question (source)
2012-08-16 11:28:03 -0500 received badge  Famous Question (source)
2012-06-26 08:56:43 -0500 received badge  Student (source)
2012-05-24 06:33:23 -0500 received badge  Notable Question (source)
2012-02-09 22:11:54 -0500 received badge  Popular Question (source)
2012-01-18 22:01:20 -0500 received badge  Popular Question (source)
2011-09-02 11:24:45 -0500 marked best answer Cannot rosbag record -a from electric openni
Cannot stream RGB and IR at the same time

This explains why -a doesn't work; you can't subscribe to both the IR and RGB camera streams at the same time. This is a limitation of the driver; see this question for details about the driver. Also, take a look at sglaser's answer to this question for why rosbag -a with a Kinect is a Very Bad Idea.

2011-08-21 14:22:19 -0500 commented answer Cannot rosbag record -a from electric openni
I'll give openni_camera_unstable a go, that looks ideal. I could never get a -x (exclude) formulated that would please electric. Cheers, MarkC
2011-08-20 14:29:13 -0500 asked a question Cannot rosbag record -a from electric openni

OpenNI starts up fine, and I can use rviz, etc., but when I want to save the bags out -- OpenNI's stack dies..

First all starts ok -- but dies complaining about IR and RGB. roslaunch openni_launch openni.launch

(in another window)

rosbag record -b 2048 -O test.bag -a

When I -x out "/camera/ir(.*)" -- it dies still with an even more obscure error...

BTW -- 2.6.35-28-generic #50-Ubuntu SMP Fri Mar 18 18:42:20 UTC 2011 x86_64 GNU/Linux

NOTE -- lots of info

[ INFO] [1313893203.118028525]: Number devices connected: 1
[ INFO] [1313893203.118184242]: 1. device on bus 001:14 is a Xbox NUI Camera (2ae) from Microsoft (45e) with serial id 'B00364611855051B'
[ INFO] [1313893203.119212409]: Searching for device with index = 1
[ INFO] [1313893203.169810408]: Opened 'Xbox NUI Camera' on bus 1:14 with serial number 'B00364611855051B'
[ INFO] [1313893203.204956990]: rgb_frame_id = '/camera_rgb_optical_frame' 
[ INFO] [1313893203.204992411]: depth_frame_id = '/camera_depth_optical_frame' 
[ INFO] [1313893203.207416573]: using default calibration URL
[ INFO] [1313893203.207466453]: camera calibration URL: file:///home/markc/.ros/camera_info/rgb_B00364611855051B.yaml
[ERROR] [1313893203.207554999]: Unable to open camera calibration file [/home/markc/.ros/camera_info/rgb_B00364611855051B.yaml]
[ WARN] [1313893203.207588545]: Camera calibration file /home/markc/.ros/camera_info/rgb_B00364611855051B.yaml not found.
[ INFO] [1313893203.208563311]: using default calibration URL
[ INFO] [1313893203.208590715]: camera calibration URL: file:///home/markc/.ros/camera_info/depth_B00364611855051B.yaml
[ERROR] [1313893203.208615349]: Unable to open camera calibration file [/home/markc/.ros/camera_info/depth_B00364611855051B.yaml]
[ WARN] [1313893203.208634926]: Camera calibration file /home/markc/.ros/camera_info/depth_B00364611855051B.yaml not found.
[ WARN] [1313893203.209323348]: Using default parameters for RGB camera calibration.
[ WARN] [1313893203.209348312]: Using default parameters for IR camera calibration.
[ERROR] [1313893203.667063017]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/compressed/set_parameters]
[ERROR] [1313893203.673611007]: Tried to advertise a service that is already advertised in this node [/camera/depth_registered/image_rect_raw/theora/set_parameters]
[ERROR] [1313893219.381133111]: Cannot stream RGB and IR at the same time. Streaming RGB only.
[ERROR] [1313893219.381449652]: Cannot stream RGB and IR at the same time. Streaming RGB only.
[ERROR] [1313893219.381575808]: Cannot stream RGB and IR at the same time. Streaming RGB only.
[ERROR] [1313893219.381847566]: Cannot stream RGB and IR at the same time. Streaming RGB only.
OpenCV Error: Image step is wrong () in cvInitMatHeader, file /tmp/buildd/libopencv-2.3.1+svn6514+branch23/modules/core/src/array.cpp, line 162
[ERROR] [1313893219.381938778]: Cannot stream RGB and IR at the same time. Streaming RGB only.
[ERROR] [1313893219.382660492]: Cannot stream RGB and IR at the same time. Streaming RGB only.
[ERROR] [1313893219.382995474]: Cannot stream RGB and IR at the same time. Streaming RGB only.
[ERROR] [1313893219.383094324]: Cannot stream RGB and IR at the same time. Streaming RGB only.
[ERROR] [1313893219.383176384]: Cannot stream RGB and IR at the same time. Streaming RGB only.
[ERROR] [1313893219.383251578]: Cannot stream RGB and IR at the same time. Streaming RGB only.
[ERROR] [1313893219.383335205]: Cannot stream RGB and IR at the same time. Streaming RGB only.
[ERROR] [1313893219.383411773]: Cannot stream RGB ...
(more)
2011-07-14 08:08:26 -0500 received badge  Taxonomist
2011-02-25 10:11:39 -0500 marked best answer kinect_aux compilation errors

Hmm, I don't see how that ever would have worked. Maybe the author forgot to push a later commit. Anyhow, try changing that block of code to this, which actually compiles and seems to work (at least, data is published--I can't say if it's right or not):

// publish tilt angle and status
if (pub_tilt_angle.getNumSubscribers() > 0)
{
  std_msgs::Float64 angle_msg;
  angle_msg.data = tilt_angle/2;
  pub_tilt_angle.publish(angle_msg);
}

if (pub_tilt_status.getNumSubscribers() > 0)
{
  std_msgs::UInt8 status_msg;
  status_msg.data = tilt_status;
  pub_tilt_status.publish(status_msg);
}
2011-02-25 01:03:34 -0500 answered a question kinect_aux compilation errors

Patrick,

This works, brilliant ! And thanks, that little bit of code put into context all the headers I read through trying to figure this out.

I was looking at the template types, and the 'C' stype casts -- and I got fumbled.

Great objectness, and well typed -- I think I'm going to enjoy this !

Mark

2011-02-25 00:54:11 -0500 received badge  Supporter (source)
2011-02-24 14:07:38 -0500 asked a question kinect_aux compilation errors

I am having some issues getting kinect_aux to compile cleanly under diamondback.

This is the 2nd hour I have logged working with ROS, so forgive me if I've missed the obvious. I get compile errors @ lines 108 and 110 -- publish methods on comm classes I think...

I got rid of the error on line 108 by changing the double cast to float64_t -- but the error on 110 remains -- despite various attempts to cast to class happy types..

Compiler output is at the end -- here is the code localized -- if the two publish method calls are commented out -- all compiles -- but I want to change the tilt -- so thats moot.

// publish tilt angle and status -- ORIGINAL

    if (pub_tilt_angle.getNumSubscribers() > 0)
            pub_tilt_angle.publish(double(tilt_angle) / 2.);
    if (pub_tilt_status.getNumSubscribers() > 0)
            pub_tilt_status.publish(tilt_status);

// publish tilt angle and status -- FIXED 108

    if (pub_tilt_angle.getNumSubscribers() > 0)
            pub_tilt_angle.publish(float64_t(tilt_angle) / 2.);
    if (pub_tilt_status.getNumSubscribers() > 0)
            pub_tilt_status.publish(tilt_status);

Error snippet...

[ rosmake ] Last 40 linesnect_aux: 1.3 sec ] [ kinect_camera: 0.6 sec ]                                                                                                                                                                             [ 2 Active 57/60 Complete ]
{-------------------------------------------------------------------------------
  [  0%] Built target rospack_genmsg_libexe
  make[3]: Entering directory `/home/markc/kinect-devel/kinect/kinect_aux/build'
  make[3]: Leaving directory `/home/markc/kinect-devel/kinect/kinect_aux/build'
  [  0%] Built target rosbuild_precompile
  make[3]: Entering directory `/home/markc/kinect-devel/kinect/kinect_aux/build'
  make[3]: Leaving directory `/home/markc/kinect-devel/kinect/kinect_aux/build'
  make[3]: Entering directory `/home/markc/kinect-devel/kinect/kinect_aux/build'
  [100%] Building CXX object CMakeFiles/kinect_aux_node.dir/src/kinect_aux.o
  In file included from /opt/ros/diamondback/stacks/ros_comm/clients/cpp/roscpp_serialization/include/ros/serialization.h:35,
                   from /opt/ros/diamondback/stacks/ros_comm/clients/cpp/roscpp/include/ros/publisher.h:34,
                   from /opt/ros/diamondback/stacks/ros_comm/clients/cpp/roscpp/include/ros/node_handle.h:32,
                   from /opt/ros/diamondback/stacks/ros_comm/clients/cpp/roscpp/include/ros/ros.h:45,
                   from /home/markc/kinect-devel/kinect/kinect_aux/src/kinect_aux.cpp:2:
  /opt/ros/diamondback/stacks/ros_comm/clients/cpp/roscpp_traits/include/ros/message_traits.h: In static member function ‘static const char* ros::message_traits::MD5Sum<M>::value(const M&) [with M = double]’:
  /opt/ros/diamondback/stacks/ros_comm/clients/cpp/roscpp_traits/include/ros/message_traits.h:250:   instantiated from ‘const char* ros::message_traits::md5sum(const M&) [with M = double]’
  /opt/ros/diamondback/stacks/ros_comm/clients/cpp/roscpp/include/ros/publisher.h:111:   instantiated from ‘void ros::Publisher::publish(const M&) const [with M = double]’
  /home/markc/kinect-devel/kinect/kinect_aux/src/kinect_aux.cpp:108:   instantiated from here
  /opt/ros/diamondback/stacks/ros_comm/clients/cpp/roscpp_traits/include/ros/message_traits.h:121: error: request for member ‘__getMD5Sum’ in ‘m’, which is of non-class type ‘const double’
  /opt/ros/diamondback/stacks/ros_comm/clients/cpp/roscpp_traits/include/ros/message_traits.h: In static member function ‘static const char* ros::message_traits::DataType<M>::value(const M&) [with M = double]’:
  /opt/ros/diamondback/stacks/ros_comm/clients/cpp/roscpp_traits/include/ros/message_traits.h:259:   instantiated from ‘const char* ros::message_traits::datatype(const M&) [with M = double]’
  /opt/ros/diamondback/stacks/ros_comm/clients/cpp/roscpp/include/ros/publisher.h:111:   instantiated from ‘void ros::Publisher ...
(more)