CCNYRoboticsLab / ccny_rgbd_tools

ccny_rgbd_tools
GNU Lesser General Public License v3.0
125 stars 76 forks source link

Error when starting camera #49

Open GettingChen opened 3 years ago

GettingChen commented 3 years ago

Now it worked on my indigo ,but when I run roslaunch ccny_openni_launch openni.launch I get some errors [ERROR] [1606915862.002452561]: Failed to load nodelet [/openni_driver] of type [openni_camera/driver] even after refreshing the cache: According to the loaded plugin descriptions the class openni_camera/driver with base class type nodelet::Nodelet does not exist. Declared types are SlamGMappingNodelet astra_camera/AstraDriverNodelet ccny_rgbd/RGBDImageProcNodelet depth_image_proc/convert_metric depth_image_proc/crop_foremost depth_image_proc/disparity depth_image_proc/point_cloud_xyz depth_image_proc/point_cloud_xyz_radial depth_image_proc/point_cloud_xyzi depth_image_proc/point_cloud_xyzi_radial depth_image_proc/point_cloud_xyzrgb depth_image_proc/register depthimage_to_laserscan/DepthImageToLaserScanNodelet freenect_camera/driver image_proc/crop_decimate image_proc/crop_nonZero image_proc/crop_non_zero image_proc/debayer image_proc/rectify image_proc/resize image_publisher/image_publisher image_rotate/image_rotate image_view/disparity image_view/image kobuki_auto_docking/AutoDockingNodelet kobuki_bumper2pc/Bumper2PcNodelet kobuki_node/KobukiNodelet kobuki_random_walker/RandomWalkerControllerNodelet kobuki_safety_controller/SafetyControllerNodelet nodelet_tutorial_math/Plus openni2_camera/OpenNI2DriverNodelet pcl/BAGReader pcl/BoundaryEstimation pcl/ConvexHull2D pcl/CropBox pcl/EuclideanClusterExtraction pcl/ExtractIndices pcl/ExtractPolygonalPrismData pcl/FPFHEstimation pcl/FPFHEstimationOMP pcl/MomentInvariantsEstimation pcl/MovingLeastSquares pcl/NodeletDEMUX pcl/NodeletMUX pcl/NormalEstimation pcl/NormalEstimationOMP pcl/NormalEstimationTBB pcl/PCDReader pcl/PCDWriter pcl/PFHEstimation pcl/PassThrough pcl/PointCloudConcatenateDataSynchronizer pcl/PointCloudConcatenateFieldsSynchronizer pcl/PrincipalCurvaturesEstimation pcl/ProjectInliers pcl/RadiusOutlierRemoval pcl/SACSegmentation pcl/SACSegmentationFromNormals pcl/SHOTEstimation pcl/SHOTEstimationOMP pcl/SegmentDifferences pcl/StatisticalOutlierRemoval pcl/VFHEstimation pcl/VoxelGrid pointcloud_to_laserscan/pointcloud_to_laserscan_nodelet realsense_camera/F200Nodelet realsense_camera/R200Nodelet realsense_camera/SR300Nodelet realsense_camera/ZR300Nodelet stdr_robot/Robot stereo_image_proc/disparity stereo_image_proc/point_cloud2 turtlebot_follower/TurtlebotFollower yocs_cmd_vel_mux/CmdVelMuxNodelet yocs_velocity_smoother/VelocitySmootherNodelet [ERROR] [1606915862.002529790]: The error before refreshing the cache was: According to the loaded plugin descriptions the class openni_camera/driver with base class type nodelet::Nodelet does not exist. Declared types are SlamGMappingNodelet astra_camera/AstraDriverNodelet ccny_rgbd/RGBDImageProcNodelet depth_image_proc/convert_metric depth_image_proc/crop_foremost depth_image_proc/disparity depth_image_proc/point_cloud_xyz depth_image_proc/point_cloud_xyz_radial depth_image_proc/point_cloud_xyzi depth_image_proc/point_cloud_xyzi_radial depth_image_proc/point_cloud_xyzrgb depth_image_proc/register depthimage_to_laserscan/DepthImageToLaserScanNodelet freenect_camera/driver image_proc/crop_decimate image_proc/crop_nonZero image_proc/crop_non_zero image_proc/debayer image_proc/rectify image_proc/resize image_publisher/image_publisher image_rotate/image_rotate image_view/disparity image_view/image kobuki_auto_docking/AutoDockingNodelet kobuki_bumper2pc/Bumper2PcNodelet kobuki_node/KobukiNodelet kobuki_random_walker/RandomWalkerControllerNodelet kobuki_safety_controller/SafetyControllerNodelet nodelet_tutorial_math/Plus openni2_camera/OpenNI2DriverNodelet pcl/BAGReader pcl/BoundaryEstimation pcl/ConvexHull2D pcl/CropBox pcl/EuclideanClusterExtraction pcl/ExtractIndices pcl/ExtractPolygonalPrismData pcl/FPFHEstimation pcl/FPFHEstimationOMP pcl/MomentInvariantsEstimation pcl/MovingLeastSquares pcl/NodeletDEMUX pcl/NodeletMUX pcl/NormalEstimation pcl/NormalEstimationOMP pcl/NormalEstimationTBB pcl/PCDReader pcl/PCDWriter pcl/PFHEstimation pcl/PassThrough pcl/PointCloudConcatenateDataSynchronizer pcl/PointCloudConcatenateFieldsSynchronizer pcl/PrincipalCurvaturesEstimation pcl/ProjectInliers pcl/RadiusOutlierRemoval pcl/SACSegmentation pcl/SACSegmentationFromNormals pcl/SHOTEstimation pcl/SHOTEstimationOMP pcl/SegmentDifferences pcl/StatisticalOutlierRemoval pcl/VFHEstimation pcl/VoxelGrid pointcloud_to_laserscan/pointcloud_to_laserscan_nodelet realsense_camera/F200Nodelet realsense_camera/R200Nodelet realsense_camera/SR300Nodelet realsense_camera/ZR300Nodelet stdr_robot/Robot stereo_image_proc/disparity stereo_image_proc/point_cloud2 turtlebot_follower/TurtlebotFollower yocs_cmd_vel_mux/CmdVelMuxNodelet yocs_velocity_smoother/VelocitySmootherNodelet [FATAL] [1606915862.002629802]: Failed to load nodelet '/openni_driver of type openni_camera/driver to manager rgbd_manager' [openni_driver-2] process has died [pid 5248, exit code 255, cmd /opt/ros/indigo/lib/nodelet/nodelet load openni_camera/driver rgbd_manager ir:=camera/ir rgb:=camera/rgb depth:=camera/depth __name:=openni_driver __log:=/home/cjt/.ros/log/82e7c03e-34a2-11eb-b0cb-ffd58a0c6b73/openni_driver-2.log]. log file: /home/cjt/.ros/log/82e7c03e-34a2-11eb-b0cb-ffd58a0c6b73/openni_driver-2*.log Thanks to your reply!

GettingChen commented 3 years ago

Now it works on my computer ,but where is your ccny_rgbd/launch/rviz.cfg.I can't find this file.

EricLYang commented 3 years ago

Sorry, was overly booked the last week. You don't need the rviz.cfg, what you can do is:

rostopic list

get the pose and the other message published, then open rviz

rosrun rviz rviz

to add a pose or other component to visualize the message.

you can also try

rostopic echo /message

to see if it is successfully published

GettingChen commented 3 years ago

When I run the program, I can only get the real-time point cloud, as shown below image How can I get a complete map of the house like in your paper?Thanks in advance.

EricLYang commented 3 years ago

you need checkout to branch 3Dto2D-dense

https://github.com/ccny-ros-pkg/ccny_rgbd_tools/blob/3Dto2D-dense/ccny_rgbd/src/apps/keyframe_mapper.cpp

you need to call bool KeyframeMapper::savePcdMap(const std::string& path) to save the global pointcloud, as it differs from VO , it is keyframe based mapping.

you can simply call bool KeyframeMapper::savePcdMapSrvCallback( to save the pcd

GettingChen commented 3 years ago

When I compile the branch 3Dto2D-dense,I got some new problems ` [rosbuild] Building package ccny_rgbd Failed to invoke /opt/ros/indigo/bin/rospack deps-manifests ccny_rgbd [rospack] Error: package 'ccny_rgbd' depends on non-existent package 'pcl' and rosdep claims that it is not a system dependency. Check the ROS_PACKAGE_PATH or try calling 'rosdep update'

CMake Error at /opt/ros/indigo/share/ros/core/rosbuild/public.cmake:129 (message):

Failed to invoke rospack to get compile flags for package 'ccny_rgbd'.
Look above for errors from rospack itself.  Aborting.  Please fix the
broken dependency!

Call Stack (most recent call first): /opt/ros/indigo/share/ros/core/rosbuild/public.cmake:207 (rosbuild_invoke_rospack) CMakeLists.txt:12 (rosbuild_init)

-- Configuring incomplete, errors occurred! ` The weird thing is that I have installed pcl, but I still get this error.Do you have any idea about this?

GettingChen commented 3 years ago

I will not be able to graduate soon. I hope to get a master's degree by improving your procedures. I really need your help and look forward to your reply.