ros kineticのcv_bridgeはopencv 2に基づいて変更する.X
ros kineticテープのcv_bridgeはopencv 3に基づく.xの、いくつかの既存の工事プロジェクトでopencv 2を引き続き使用する必要がある.X.2つのバージョンopencvが共存する場合、/opt/ros/kinetic/share/cv_を変更してもbridge/cmakeのcv_bridgeConfig.cmake、コンパイルに成功し、プログラムでcv_まで実行できます.bridgeのいくつかの関数ではエラーが発生します.なぜならcv_bridge依存dライブラリはopencv 3である.xでコンパイルされた場合、rosに関連するすべてのopencvを統一する必要があります.方法は以下の通りである:1.古いcvをbridgeアンインストール:
2.次のcv_をやり直すbridge、kineticバージョンをダウンロードすることをお勧めします.https://github.com/ros-perception/vision_opencv/tree/kineticあるいは端末で実行する
3.cv_の変更bridgeのcmakelists.txtは、前の:
次のように変更します.
4.cv_の再コンパイルbridgeパッケージ:
コンパイル中にエラーが発生し、cv_をbridge/src/cv_bridge.cppの
置換
できます.
以前のcv_bridgeはアンインストールされましたcmakelists.txtに一言追加する必要があります.
5.python呼び出しcv_bridgeの場合、~/.bashrcで追加
sudo apt-get remove ros-kinetic-cv-bridge
2.次のcv_をやり直すbridge、kineticバージョンをダウンロードすることをお勧めします.https://github.com/ros-perception/vision_opencv/tree/kineticあるいは端末で実行する
git clone https://github.com/ros-perception/vision_opencv.git
3.cv_の変更bridgeのcmakelists.txtは、前の:
find_package(OpenCV 3 REQUIRED
COMPONENTS
opencv_core
opencv_imgproc
opencv_imgcodecs
CONFIG
)
次のように変更します.
set(OpenCV_DIR /usr/local/opencv2.4.13.1/share/OpenCV)# opencv share
find_package(OpenCV 2.4.13.1 EXACT REQUIRED)
4.cv_の再コンパイルbridgeパッケージ:
cd ~/catkin_ws/src/cv_bridge
mkdir build
cd build
cmake ..
make
sudo make install
コンパイル中にエラーが発生し、cv_をbridge/src/cv_bridge.cppの
#include
置換
#include
できます.
以前のcv_bridgeはアンインストールされましたcmakelists.txtに一言追加する必要があります.
set(cv_bridge_DIR /usr/local/share/cv_bridge/cmake)
//find_パッケージの前にcv_を検索bridge.config.cmakeのパス.5.python呼び出しcv_bridgeの場合、~/.bashrcで追加
export LD_LIBRARY_PATH=/usr/local/lib/