解决ROS的cv_bridge与自己安装的opencv的版本冲突的问题

如果用ROS的topic传输图片,需要用到cv_bridge,这是个ros自带的opencv中的库,如果此时项目中引用了自己安装的opencv,自己安装的opencv会与ros自带的opencv中的cv_bridge冲突。编译时弹出warning: libopencv_imgproc.so.407, needed by /usr/local/lib/libopencv_features2d.so.4.7.0, may conflict with libopencv_imgproc.so.4.2。运行后 cv::imshow报Segmentation fault这个错误。

解决方法:

修改/opt/ros/noetic/share/cv_bridge/cmake文件夹中的cv_bridgeConfig.cmake,ctrl+f 搜索"set(libraries" 会看到cv_bridge所需要的库,这里面都是 .4.2.0的版本,将发生冲突的库改为自己的版本,比如我的是opencv4.8,就改为 .4.8.0,注意还有前面的路径一起改,4.8.0版本的这些库/usr/local/lib中,安装自己的opencv的时候安装到这里的。修改完后cv::imshow就不会报错了。

参考了这位博主的做法:解决Ubuntu环境下ROS Kinetic中的cv_bridge和自己安装OpenCV 2.4.xx兼容性笔记_ros安装opencv-CSDN博客

相关推荐
沃达德软件1 小时前
智慧警务图像融合大数据
大数据·图像处理·人工智能·目标检测·计算机视觉·目标跟踪
ghie90905 小时前
线性三角波连续调频毫米波雷达目标识别
人工智能·算法·计算机视觉
老欧学视觉6 小时前
ubuntu20.04系统下安装SlowFast行为检测项目并跑通训练
python·深度学习·计算机视觉
却道天凉_好个秋9 小时前
OpenCV(三十三):什么是轮廓?
人工智能·opencv·计算机视觉
Coding茶水间10 小时前
基于深度学习的PCB缺陷检测系统演示与介绍(YOLOv12/v11/v8/v5模型+Pyqt5界面+训练代码+数据集)
图像处理·人工智能·深度学习·yolo·目标检测·计算机视觉
生而为虫11 小时前
28.Python处理图像
人工智能·python·计算机视觉·pillow·pygame
Dev7z11 小时前
基于OpenCV和MATLAB的椭圆检测系统的设计与实现
人工智能·opencv·matlab
饭饭大王66616 小时前
深度学习在计算机视觉中的最新进展
人工智能·深度学习·计算机视觉
雍凉明月夜19 小时前
视觉opencv学习笔记Ⅲ
笔记·opencv·学习