error:cv_bridge---opencv和ros連接起來的橋


有多個warning出現。。。版本沖突

解決辦法:

cv_bridge[opencv和ros連接起來的橋],默認依賴的opencv版本是2.4.8,如果安裝了新的opencv版本,比如3.1.0,那么在編譯cv_bridge時候會提示無法找到opencv 2.4.8.so的庫。

1.必須要先把舊版本的cv_bridge卸載掉:

sudo apt-get remove ros-indigo-cv-bridge

2.然后下載新版本的cv_bridge:

git clone https://github.com/ros-perception/vision_opencv.git

3.修改cv_bridge中的cmakelists.txt

find_package(OpenCV 3.1 REQUIRED)  //將opencv的版本指定為3.1

4.將里面的cv_bridge包拿出來,放到工作空間中,重新編譯:

catkin_make --pkg cv_bridge  //catkin_make --pkg[package包],單獨編譯工作空間catkin_ws中的包;catkin_make編譯所有的

也可以通過cmake編譯

cd ~/catkin_ws/src/cv_bridge
mkdir build
cd build
cmake ..
make
sudo make install

結束之后你就可以更改你的其他代碼了,由於以前的cv_bridge不見了,所以要在其他代碼的cmakelists.txt添加一句話,后面的路徑是自己的路徑,查找cv_bridge.config.cmake所在的路徑即可

set(cv_bridge_DIR /usr/local/share/cv_bridge/cmake)  //在find_package前面
5.python調用cv_bridge相關的工作
在~/.bashrc中添加
export LD_LIBRARY_PATH=/usr/local/lib/

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM