Failed to load nodelet '/kinect2_bridgeof type
kinect2_bridge/kinect2_bridge_nodeletto manager
kinect2’解决记录
在编译好Kinect V2的相关包libfreenect2和iai_kinect2后,使用
roslaunch kinect2_bridge kinect2_bridge.launch
rosrun kinect2_viewer kinect2_viewer
对其进行测试,出现以下问题:
[ INFO] [1656554487.779169545]: [DepthRegistration::New] Using OpenCL registration method!
[ INFO] [1656554487.779245228]: [DepthRegistration::New] Using OpenCL registration method!
X server found. dri2 connection failed!
DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument
Assuming 131072kB available aperture size.
May lead to reduced performance or incorrect rendering.
get chip id failed: -1 [22]
param: 4, val: 0
[FATAL] [1656554488.956823588]: Failed to load nodelet '/kinect2_bridge` of type `kinect2_bridge/kinect2_bridge_nodelet` to manager `kinect2'
[FATAL] [1656554488.956817211]: Failed to load nodelet '/kinect2_points_xyzrgb_qhd` of type `depth_image_proc/point_cloud_xyzrgb` to manager `kinect2'
[FATAL] [1656554488.956932308]: Failed to load nodelet '/kinect2_points_xyzrgb_sd` of type `depth_image_proc/point_cloud_xyzrgb` to manager `kinect2'
[kinect2-2] process has died [pid 70257, exit code -11, cmd /opt/ros/noetic/lib/nodelet/nodelet manager __name:=kinect2 __log:=/home/kevin/.ros/log/8c649c14-f818-11ec-8eb1-13493bb18f30/kinect2-2.log].
log file: /home/kevin/.ros/log/8c649c14-f818-11ec-8eb1-13493bb18f30/kinect2-2*.log
开始按照[FATAL] [1656554488.956823588]: Failed to load nodelet '/kinect2_bridgeof type
kinect2_bridge/kinect2_bridge_nodeletto manager
kinect2’去寻找相关的解决方法,但都没有解决,这里提供一个新思路。
仔细看了一下提示信息,搜索DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument,发现可能是CUDA的问题,按照CUDA DRM_IOCTL_I915_GEM_APERTURE错误给出的解决方案,执行
sudo apt-get remove beignet
sudo apt purge beignet
sudo apt-get remove beignet-opencl-icd
sudo apt purge beignet-opencl-icd
再次执行
roslaunch kinect2_bridge kinect2_bridge.launch
rosrun kinect2_viewer kinect2_viewer
问题解决。