rgbdslam v2 process has died
Hello all,
I have (supposedly) successfully catkinmake'd rgbdslamv2 following the instructions from (http://felixendres.github.io/rgbdslam_v2/) on ros-hydro and ubuntu.
Then I run :
roslaunch rgbdslam rgbdslam.launch
Everything good so far, also i recorded some PCD file.
But, when i want to load PCD file I get the error below:
/home/ahmed/catkin_ws/devel/lib/rgbdslam/point cloud to node wise_0001.pcd
[ INFO] [1458254044.225434759]: Processing file /home/ahmed/catkin_ws/devel/lib/rgbdslam/point cloud to node wise_0001.pcd
[ INFO] [1458254044.234612792]: Received data from pcd file reader
[ WARN] [1458254044.234693868]: First RGBD-Data Received
[ INFO] [1458254044.235898013]: Construction of Node with ORB Features
[ INFO] [1458254044.251699491]: Feature 2d size: 331, 3D: 331
[ INFO] [1458254044.251751634]: Feature 2d size: 331, 3D: 331
rgbdslam: /home/ahmed/catkin_ws/src/rgbdslam_v2-hydro/src/node.cpp:315: Node::Node(cv::Mat, cv::Ptr<cv::FeatureDetector>, cv::Ptr<cv::DescriptorExtractor>, pcl::PointCloud<pcl::PointXYZRGB>::Ptr, cv::Mat): Assertion `feature_locations_2d_.size() == feature_locations_3d_.size()' failed.
================================================================================REQUIRED process [rgbdslam-23] has died!
process has died [pid 10394, exit code -6, cmd /home/ahmed/catkin_ws/devel/lib/rgbdslam/rgbdslam __name:=rgbdslam __log:=/home/ahmed/.ros/log/5421407c-ec90-11e5-a8d2-fcf8ae4cc7ff/rgbdslam-23.log].
log file: /home/ahmed/.ros/log/5421407c-ec90-11e5-a8d2-fcf8ae4cc7ff/rgbdslam-23*.log
Initiating shutdown!
================================================================================
Here all log commands executed in the terminal:
ahmed@ahmed-server:~$ roslaunch rgbdslam openni+rgbdslam.launch
... logging to /home/ahmed/.ros/log/5421407c-ec90-11e5-a8d2-fcf8ae4cc7ff/roslaunch-ahmed-server-10063.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://ahmed-server:49983/
SUMMARY
========
PARAMETERS
* /camera/camera_nodelet_manager/num_worker_threads
* /camera/depth_rectify_depth/interpolation
* /camera/depth_registered_rectify_depth/interpolation
* /camera/disparity_depth/max_range
* /camera/disparity_depth/min_range
* /camera/disparity_registered_hw/max_range
* /camera/disparity_registered_hw/min_range
* /camera/disparity_registered_sw/max_range
* /camera/disparity_registered_sw/min_range
* /camera/driver/depth_camera_info_url
* /camera/driver/depth_frame_id
* /camera/driver/depth_registration
* /camera/driver/device_id
* /camera/driver/rgb_camera_info_url
* /camera/driver/rgb_frame_id
* /rgbdslam/config/backend_solver
* /rgbdslam/config/cloud_creation_skip_step
* /rgbdslam/config/cloud_display_type
* /rgbdslam/config/detector_grid_resolution
* /rgbdslam/config/feature_detector_type
* /rgbdslam/config/feature_extractor_type
* /rgbdslam/config/max_keypoints
* /rgbdslam/config/max_matches
* /rgbdslam/config/min_sampled_candidates
* /rgbdslam/config/neighbor_candidates
* /rgbdslam/config/optimizer_skip_step
* /rgbdslam/config/pose_relative_to
* /rgbdslam/config/predecessor_candidates
* /rgbdslam/config/ransac_iterations
* /rgbdslam/config/topic_image_depth
* /rgbdslam/config/topic_image_mono
* /rosdistro
* /rosversion
NODES
/camera/
camera_nodelet_manager (nodelet/nodelet)
debayer (nodelet/nodelet)
depth_metric (nodelet/nodelet)
depth_metric_rect (nodelet/nodelet)
depth_points (nodelet/nodelet)
depth_rectify_depth (nodelet/nodelet)
depth_registered_rectify_depth (nodelet/nodelet)
disparity_depth (nodelet/nodelet)
disparity_registered_hw (nodelet/nodelet)
disparity_registered_sw (nodelet/nodelet)
driver (nodelet/nodelet)
points_xyzrgb_hw_registered (nodelet/nodelet)
points_xyzrgb_sw_registered (nodelet/nodelet)
rectify_color (nodelet/nodelet)
rectify_ir (nodelet/nodelet)
rectify_mono (nodelet/nodelet)
register_depth_rgb (nodelet/nodelet)
/
camera_base_link (tf/static_transform_publisher)
camera_base_link1 (tf/static_transform_publisher)
camera_base_link2 (tf/static_transform_publisher)
camera_base_link3 (tf/static_transform_publisher)
rgbdslam (rgbdslam/rgbdslam)
auto-starting new master
process[master]: started with pid [10078]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to 5421407c-ec90-11e5-a8d2-fcf8ae4cc7ff
process[rosout-1]: started with pid [10091]
started core service [/rosout]
process[camera/camera_nodelet_manager-2]: started with pid [10103]
[ INFO] [1458254034.151722815]: Initializing nodelet with 4 worker threads.
process[camera/driver-3]: started with pid [10124]
process[camera/debayer-4]: started with pid [10140]
[ INFO] [1458254034.230334750]: No devices connected.... waiting for devices to be connected
process[camera/rectify_mono-5]: started with pid [10154]
process[camera/rectify_color-6]: started with pid [10168]
process[camera/rectify_ir-7]: started with pid [10182]
process[camera/depth_rectify_depth-8]: started with pid [10196]
process[camera/depth_metric_rect-9]: started with pid [10210]
process[camera/depth_metric-10]: started with pid [10224]
process[camera/depth_points-11]: started with pid [10238]
process[camera/register_depth_rgb-12]: started with pid [10252]
process[camera/points_xyzrgb_sw_registered-13]: started with pid [10266]
process[camera/depth_registered_rectify_depth-14]: started with pid [10280]
process[camera/points_xyzrgb_hw_registered-15]: started with pid [10294]
process[camera/disparity_depth-16]: started with pid [10308]
process[camera/disparity_registered_sw-17]: started with pid [10322]
process[camera/disparity_registered_hw-18]: started with pid [10336]
process[camera_base_link-19]: started with pid [10350]
process[camera_base_link1-20]: started with pid [10361]
process[camera_base_link2-21]: started with pid [10372]
process[camera_base_link3-22]: started with pid [10383]
process[rgbdslam-23]: started with pid [10394]
Initializing Node...
[ INFO] [1458254035.027834117]: Connected to roscore
[ INFO] [1458254035.170299594]: Using ORB keypoint detector.
[ INFO] [1458254035.170371337]: Using gridded keypoint detector with 3x3 cells, keeping 900 keypoints in total.
[ INFO] [1458254035.170402918]: Using adjusted keypoint detector with 5 maximum iterations, keeping the number of keypoints between 67 and 100
[ INFO] [1458254035.175332338]: Listening to /camera/rgb/image_color and /camera/depth_registered/sw_registered/image_rect_raw
[ INFO] [1458254037.235490304]: No devices connected.... waiting for devices to be connected
[ INFO] [1458254040.241189574]: No devices connected.... waiting for devices to be connected
[ INFO] [1458254043.245851761]: No devices connected.... waiting for devices to be connected
/home/ahmed/catkin_ws/devel/lib/rgbdslam/point cloud to node wise_0001.pcd
[ INFO] [1458254044.225434759]: Processing file /home/ahmed/catkin_ws/devel/lib/rgbdslam/point cloud to node wise_0001.pcd
[ INFO] [1458254044.234612792]: Received data from pcd file reader
[ WARN] [1458254044.234693868]: First RGBD-Data Received
[ INFO] [1458254044.235898013]: Construction of Node with ORB Features
[ INFO] [1458254044.251699491]: Feature 2d size: 331, 3D: 331
[ INFO] [1458254044.251751634]: Feature 2d size: 331, 3D: 331
rgbdslam: /home/ahmed/catkin_ws/src/rgbdslam_v2-hydro/src/node.cpp:315: Node::Node(cv::Mat, cv::Ptr<cv::FeatureDetector>, cv::Ptr<cv::DescriptorExtractor>, pcl::PointCloud<pcl::PointXYZRGB>::Ptr, cv::Mat): Assertion `feature_locations_2d_.size() == feature_locations_3d_.size()' failed.
================================================================================REQUIRED process [rgbdslam-23] has died!
process has died [pid 10394, exit code -6, cmd /home/ahmed/catkin_ws/devel/lib/rgbdslam/rgbdslam __name:=rgbdslam __log:=/home/ahmed/.ros/log/5421407c-ec90-11e5-a8d2-fcf8ae4cc7ff/rgbdslam-23.log].
log file: /home/ahmed/.ros/log/5421407c-ec90-11e5-a8d2-fcf8ae4cc7ff/rgbdslam-23*.log
Initiating shutdown!
================================================================================
[rgbdslam-23] killing on exit
[camera_base_link3-22] killing on exit
[camera_base_link2-21] killing on exit
[camera_base_link1-20] killing on exit
[camera_base_link-19] killing on exit
[camera/disparity_registered_hw-18] killing on exit
[camera/disparity_registered_sw-17] killing on exit
[camera/disparity_depth-16] killing on exit
[camera/depth_registered_rectify_depth-14] killing on exit
[camera/points_xyzrgb_hw_registered-15] killing on exit
[camera/points_xyzrgb_sw_registered-13] killing on exit
[camera/depth_points-11] killing on exit
[camera/depth_metric-10] killing on exit
[camera/register_depth_rgb-12] killing on exit
[camera/depth_rectify_depth-8] killing on exit
[camera/depth_metric_rect-9] killing on exit
[camera/rectify_ir-7] killing on exit
[camera/rectify_color-6] killing on exit
[camera/rectify_mono-5] killing on exit
[camera/driver-3] killing on exit
[camera/debayer-4] killing on exit
[camera/camera_nodelet_manager-2] killing on exit
[camera/camera_nodelet_manager-2] escalating to SIGTERM
[rosout-1] killing on exit
[master] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done
Anyone have an idea on how to solve this problem ?
Asked by ahmed charef on 2016-03-17 17:42:03 UTC
Answers
Hello,
May be because for hydro the good version is the first version of RGBDSLAM not RGBDSLAM_v2 ?
Hydro = first version of RGBDSLAM
Indigo = RGBDSLAM_v2
Hope this helps.
Asked by goupil35000 on 2016-03-18 09:01:34 UTC
Comments
I'm using Ubuntu 12.04 LTS and Hydro.
Asked by ahmed charef on 2016-03-18 10:54:32 UTC
rgbdslam_v2 is for both, hydro and indigo. The original rgbdslam is for fuerte.
Asked by Felix Endres on 2016-03-21 05:15:58 UTC
That's a bug. The assertion is false (but required to be true by later code).
As a quick fix, could you please try to copy line 307 of src/node.cpp (projectTo3D....
) below line 310? It should then look like this
if(ps->get<std::string>("feature_detector_type") != "GICP")
{
projectTo3D(feature_locations_2d_, feature_locations_3d_, pc_col); //takes less than 0.01 sec
// projectTo3d need a dense cloud to use the points.at(px.x,px.y)-Call
ScopedTimer s("Feature Extraction");
extractor->compute(gray_img, feature_locations_2d_, feature_descriptors_); //fill feature_descriptors_ with information
projectTo3D(feature_locations_2d_, feature_locations_3d_, pc_col); //takes less than 0.01 sec
}
Asked by Felix Endres on 2016-03-21 05:35:56 UTC
Comments
thank you,i just have add this line projectTo3D(feature_locations_2d_, feature_locations_3d_, pc_col); //takes less than 0.01 sec
but when i have insert multiple *.pcd files i got some new errors (line 317):
Asked by ahmed charef on 2016-03-21 19:38:49 UTC
node.cpp:317: Node::Node(cv::Mat, cv::Ptr<cv::FeatureDetector>, cv::Ptr<cv::DescriptorExtractor>, pcl::PointCloud<pcl::PointXYZRGB>::Ptr, cv::Mat): Assertion feature_locations_3d_.size() == (unsigned int)feature_descriptors_.rows' failed.
Asked by ahmed charef on 2016-03-21 19:39:20 UTC
I think it's a concurrency issue (the cloud changes between the calls to projectTo3D. Could you set the parameter "concurrent_node_construction" to false please, e.g. in the launch file?
Asked by Felix Endres on 2016-03-26 17:32:15 UTC
Sorry i don't have this parameter in the launch file.
Asked by ahmed charef on 2016-03-27 06:31:40 UTC
add it then. <param name="concurrent_node_construction" value="false" />
Asked by Felix Endres on 2016-03-29 10:24:59 UTC
Comments