问题描述:
ubuntu18.04安装的ros 默认的opencv版本和cv_bridge 版本为3.2.0 但是在使用其他程序包的时候有时候需要用到其他版本的opencv。再调用cv_bridge的时候会发生调用冲突;
解决:
1. 卸载原来的 cv-bridge
sudo apt-get remove ros-melodic-cv-bridge
2. 下载新版本cv_bridge
GitHub - ros-perception/vision_opencvhttps://github.com/ros-perception/vision_opencv选择melodic对应的cv_bridge
3.修改cv_bridge中的cmakelists.txt
find_package(OpenCV 3.4.10 REQUIRED) //改成你安装的opencv的版本
4.cmake单独编译cv_bridge
在cv_bridge文件夹下,
mkdir build
cd build
cmake ..
make
sudo make install
5.在开源代码需要的cmaklist.txt中添加cv_bridge的cmake路径
set(cv_bridge_DIR /usr/local/share/cv_bridge/cmake) //在find_package前面
有问题可以留言。