解决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博客

相关推荐
AndrewHZ1 天前
【图像处理基石】什么是光栅化?
图像处理·人工智能·算法·计算机视觉·3d·图形渲染·光栅化
白日做梦Q1 天前
预训练模型微调(Finetune)实战:策略、技巧及常见误区规避
人工智能·python·神经网络·机器学习·计算机视觉
颖风船1 天前
膨胀腐蚀及底层实践,拒绝opencv,matlab等方式
前端·opencv·matlab
Σίσυφος19001 天前
PnP和P3P详解与Matlab 实现
人工智能·计算机视觉
CP-DD1 天前
训练可以正常开始 一到 Validation 就直接炸 a PTX JIT compilation failed
python·深度学习·计算机视觉
好好学习啊天天向上1 天前
CFD,GPU加速效果,FUN3D GPU移植加速效果2
javascript·opencv·webpack
Jerryhut1 天前
Opencv总结3——直方图和傅里叶变化
人工智能·opencv·计算机视觉
week_泽1 天前
5、OpenCV SIFT特征描述子笔记
人工智能·笔记·opencv
week_泽1 天前
6、OpenCV SURF特征检测笔记
人工智能·笔记·opencv
AI即插即用1 天前
即插即用系列 | CVPR 2025 DICMP:基于深度信息辅助的图像去雾与深度估计双任务协同互促网络
图像处理·人工智能·深度学习·神经网络·计算机视觉·视觉检测