"Assertion `!pthread_mutex_lock(&m)' failed." runtime error while working with custom message and kinect
I'm working with the Microsoft Kinect.
I'm using pointcloud_to_laserscan to retrieve a laserscan from kinect.
And there is another node which retrieves the rgb image from kinect for feature extraction and advertises the features using a custom ros message on a topic called "features".
Now I have another node. This node should subscribe to the pointcloud_to_laserscan and to the features topic using message_filters, because I need the laserscan and the features taken at the same time.
I tried to use the tutorial on http://www.ros.org/wiki/message_filters
I defined a sync policy:
typedef message_filters::sync_policies::ApproximateTime<sensor_msgs::LaserScan, myNode::myMsg> SyncLaserNodePolicy; message_filters::Synchronizer<SyncLaserNodePolicy> sync2_; message_filters::Subscriber<sensor_msgs::LaserScan> kinectLaser_sub; message_filters::Subscriber<myNode::myMsg> feature_sub;
In the constructor of the node I initialize:
kinectLaser_sub(n,"kinectLaser",1), feature_sub(n,"features",1), sync2_(SyncLaserNodePolicy(10),kinectLaser_sub,feature_sub),
My custom message is defined as:
Header header surfKeyp2d keypoints2d surfKeyp3d keypoints3d surfDescMsg descriptors uint32 number sensor_msgs/Image image geometry_msgs/TransformStamped trans
The code is compiling without errors, but when I try to run my node I get the following error:
myNode: /usr/include/boost/thread/pthread/mutex.hpp:50: void boost::mutex::lock(): Assertion `!pthread_mutex_lock(&m)' failed. Aborted
Anybody have an idea whats wrong?
Thanks a lot!