描述:
采用Jetson Xavier NX跑Vins fusion算法
编译警告信息:warning: libopencv_imgproc.so.4.2, needed by /opt/ros/noetic/lib/libcv_bridge.so, may conflict with libopencv_imgproc.so.4.5等,提示冲突。
运行报错:
1、 OpenCV(4.5.4) /home/ubuntu/build_opencv/opencv/modules/core/src/matrix.cpp:250: error: (-215:Assertion failed) s >= 0 in function ‘setSize’
2、what(): OpenCV(4.5.4) /home/ubuntu/build_opencv/opencv/modules/core/src/alloc.cpp:73: error: (-4:Insufficient memory) Failed to allocate 558470286869760 bytes in function ‘OutOfMemoryError’
原因:
由于cv_bridge与opencv版本冲突导致的:例如本机采用的opencv版本为4.5.4,而采用apt-get install cv_bridge的对应版本为4.2.0.
解决:
卸载原cv_bridge sudo apt-get remove ros-melodic-cv-bridge
,下载自己的ros对应版本的cv_bridge并链接到指定的opencv。
参考博客:
1、解决ROS的cv_bridge与自己安装的opencv的版