Zed Stereo Camera 事始め1
ということで,足回りの目処が立ったので Zed Stereo Camera の環境構築にとりかかります.
Stereo Camera に付属している SDK に視差マップを生成してくれるソフトが付いているのですが,どうやらこれが NVIDIA の GPU がないと動かないみたいで...
ロボットにつけている Intel NUC には GPU がついてないので,どうしようかな....と思ってます.ひとまず, NVIDIA の GPU が付いているノートパソコンに環境を作って動かすことにしました.
1.ZED SDK のダウンロード
まず, ZED の SDK を下記リンクからダウンロードします.
ZED SDK 1.2 - Developer Center
3.Cuda8.0 のダウンロード
4.Cuda8.0 のインストール
下記ドキュメントの必要なとこだけ拾っていけば,割とすんなりとインストールできました.
docs.nvidia.com
5.OpenCV3.1 のビルド・インストール
最後, OpenCV3.1 のダウンロードとインストールです.ROSとの兼ね合いもあるので,個別の OpenCV のシステムディスクへのインストールは避けたく,ローカルに適当なインストールフォルダを作ってそこに共有ライブラリのパスを設定します.
OpenCV のダウンロード,3.1.0へのブランチ切り替え,opencv_contribのダウンロード
$ git clone https://github.com/opencv/opencv.git opencv-3.1.0 $ git checkout 3.1.0 $ git clone https://github.com/opencv/opencv_contrib.git opencv_contrib
なお,Cuda8.0との兼ね合いで一部ソースコードを変更しないとビルドが通りませんでした.
"/modules/cudalegacy/src/graphcuts.cpp"のL46の記述を下記のように変更します.
Before :
#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)
After :
// GraphCut has been removed in NPP 8.0 +#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) || (CUDART_VERSION >= 8000)
cmake のコンフィグレーション設定
cmake -DCMAKE_INSTALL_PREFIX=/installpath/reps/opencv-3.1.0/install -DBUILD_EXAMPLES=ON -DINSTALL_C_EXAMPLES=ON -DWITH_OPENGL=ON -DWITH_V4L=ON -DWITH_QT=ON -DOPENCV_EXTRA_MODULES_PATH=/installpath/reps/opencv-3.1.0/opencv_contrib/modules ..
ビルド実行 & インストール
make -j8 make install