![realsense01.jpg](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.amazonaws.com%2F0%2F316451%2F620ef512-506c-4887-9957-383e8681fe9d.jpeg?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=e7627d81091f8e92cd1bcb07ddad883d)
Intel® RealSense™ D400シリーズは、SDK2.0にてサポートされています。
D415およびD435をOpenBlocks IoT VX2シリーズで利用するにあたり、SDKであるlibsenseおよびOpenCV 3.4.3をbuildするとともに、dockerコンテナのイメージとして、dockerhubにてpublic公開しました。
今回は、dockerコンテナイメージをOpenBlocks IoT VX2で利用する方法と合わせて、SDKおよびOpenCV3.4.3のソースコードからのビルドする方法についてのTipsを書いておきます。
Dockerコンテナイメージの使い方
dockerコンテナイメージは以下の場所で公開しています。
OpenBlocks IoT VX2に拡張機能として、docker (WebUI付き)をインストールし、WebUIより検索しダウンロードするか、コンソールから、以下の様にpullしてください。
docker pull goto2048/obsvx2_realsense_sdk20
上記ページのDescriptionにも記述していますが、初期起動のオプションは、
-ti --name realsense --privileged --net=host -v /dev:/dev --restart always
となります。
サンプルのアプリケーションを利用するにあたり、Linux版のOpenCVの場合は、X11の環境が必要となりますが、OpenBlocks IoTシリーズには基本ディスプレイはつきませんので、別にXサーバを用意する必要があります。Linuxデスクトップ環境をお持ちであれば、それを、Windows環境の場合は、VcXsrvなどをインストールして下さい。
コンテナへ入るには、以下のコマンドおよびオプションを使います
docker exec -ti --privileged realsense /bin/bash
XサーバのIPアドレス(もしくはサーバ名)を指定してください。
export DISPLAY=xxx.xxx.xxx.xxx:0
librealsenseをビルドした時のソースツリーを~/の下へ置きました。
サンプルプログラムは、~/librealsense/build/examples/ の下にあります。
![rs-capture.jpg](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.amazonaws.com%2F0%2F316451%2F892f51d2-e258-1738-6a7d-5401bea4290c.jpeg?ixlib=rb-1.2.2&auto=format&gif-q=60&q=75&s=e7d78b2535226c5b9b78ba5c1d9699af)
capture/rs-captureを実行してみました
なお、本コンテナイメージは3GBを超えており、OpenBlocks IoT VX1シリーズで使用する場合は、eMMCサイズが非常に厳しい状況となります。VX2でのご利用をお勧めします。
ソースコードからのビルドに関してのTips
上記コンテナを構築するにあたり、OpenCV 3.4.3をOpenBlocks IoT VX2のCPUに対応したビルドおよび、RealSense™ SDK2.0であるlibsenseのビルドを行いました。
すべての手順はここでは書きませんが、構築にともなうTipsについてそれぞれ書いておきます。
opencv 3.4.3
先にビルドに必要な各種パッケージをインストールします。
sudo apt-get install --assume-yes build-essential cmake git sudo apt-get install --assume-yes pkg-config unzip ffmpeg qtbase5-dev python-dev python3-dev python-numpy python3-numpy sudo apt-get install --assume-yes libopencv-dev libgtk-3-dev libdc1394-22 libdc1394-22-dev libjpeg-dev libtiff5-dev sudo apt-get install --assume-yes libavcodec-dev libavformat-dev libswscale-dev libxine2-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev sudo apt-get install --assume-yes libv4l-dev libtbb-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev sudo apt-get install --assume-yes libvorbis-dev libxvidcore-dev v4l-utils vtk6 sudo apt-get install --assume-yes liblapacke-dev libopenblas-dev libgdal-dev checkinstall<br> libfaac-devは、non-freeですので、/etc/apt/sources.listにnon-freeを追加して、apt-get updateする必要があります。
ソースコードは以下より入手します。
wget https://github.com/opencv/opencv/archive/3.4.3.tar.gz
ビルドの手順は、以下の通り
tar xzf 3.4.3.tar.gz cd opencv-3.4.3 mkdir build cd build cmake -G "Unix Makefiles" --build . -D BUILD_CUDA_STUBS=OFF -D BUILD_DOCS=OFF \ -D BUILD_EXAMPLES=OFF -D BUILD_JASPER=OFF -D BUILD_JPEG=OFF -D BUILD_OPENEXR=OFF \ -D BUILD_PACKAGE=ON -D BUILD_PERF_TESTS=OFF -D BUILD_PNG=OFF -D BUILD_SHARED_LIBS=ON \ -D BUILD_TBB=OFF -D BUILD_TESTS=OFF -D BUILD_TIFF=OFF -D BUILD_WITH_DEBUG_INFO=ON \ -D BUILD_ZLIB=OFF -D BUILD_WEBP=OFF -D BUILD_opencv_apps=ON -D BUILD_opencv_calib3d=ON \ -D BUILD_opencv_core=ON -D BUILD_opencv_cudaarithm=OFF -D BUILD_opencv_cudabgsegm=OFF \ -D BUILD_opencv_cudacodec=OFF -D BUILD_opencv_cudafeatures2d=OFF -D BUILD_opencv_cudafilters=OFF \ -D BUILD_opencv_cudaimgproc=OFF -D BUILD_opencv_cudalegacy=OFF -D BUILD_opencv_cudaobjdetect=OFF \ -D BUILD_opencv_cudaoptflow=OFF -D BUILD_opencv_cudastereo=OFF -D BUILD_opencv_cudawarping=OFF \ -D BUILD_opencv_cudev=OFF -D BUILD_opencv_features2d=ON -D BUILD_opencv_flann=ON \ -D BUILD_opencv_highgui=ON -D BUILD_opencv_imgcodecs=ON -D BUILD_opencv_imgproc=ON \ -D BUILD_opencv_java=OFF -D BUILD_opencv_ml=ON -D BUILD_opencv_objdetect=ON \ -D BUILD_opencv_photo=ON -D BUILD_opencv_python2=OFF -D BUILD_opencv_python3=ON \ -D BUILD_opencv_shape=ON -D BUILD_opencv_stitching=ON -D BUILD_opencv_superres=ON \ -D BUILD_opencv_ts=ON -D BUILD_opencv_video=ON -D BUILD_opencv_videoio=ON \ -D BUILD_opencv_videostab=ON -D BUILD_opencv_viz=OFF -D BUILD_opencv_world=OFF \ -D CMAKE_BUILD_TYPE=RELEASE -D WITH_1394=ON -D WITH_CUBLAS=OFF -D WITH_CUDA=OFF \ -D WITH_CUFFT=OFF -D WITH_EIGEN=ON -D WITH_FFMPEG=ON -D WITH_GDAL=OFF -D WITH_GPHOTO2=OFF \ -D WITH_GIGEAPI=ON -D WITH_GSTREAMER=OFF -D WITH_GTK=ON -D WITH_INTELPERC=OFF -D WITH_IPP=ON \ -D WITH_IPP_A=OFF -D WITH_JASPER=ON -D WITH_JPEG=ON -D WITH_LIBV4L=ON -D WITH_OPENCL=ON \ -D WITH_OPENCLAMDBLAS=OFF -D WITH_OPENCLAMDFFT=OFF -D WITH_OPENCL_SVM=OFF -D WITH_OPENEXR=ON \ -D WITH_OPENGL=ON -D WITH_OPENMP=OFF -D WITH_OPENNI=OFF -D WITH_PNG=ON -D WITH_PTHREADS_PF=OFF \ -D WITH_PVAPI=OFF -D WITH_QT=ON -D WITH_TBB=ON -D WITH_TIFF=ON -D WITH_UNICAP=OFF \ -D WITH_V4L=ON -D WITH_VTK=OFF -D WITH_WEBP=ON -D WITH_XIMEA=OFF -D WITH_XINE=OFF \ -D WITH_LAPACKE=ON -D WITH_MATLAB=OFF .. make -j $(($(nproc) + 1)) sudo make install sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf' sudo ldconfig
librealsense
opencvのビルド後であれば、以下のパッケージを追加する必要がありました。
apt-get install libglfw3-dev apt-get install libusb-1.0-0-dev
ソースコードは以下より入手します。
git clone https://github.com/IntelRealSense/librealsense.git
Tipなどは特にありません。
librealsenseのビルド手順は以下の通りです。
cd librealsense mkdir build cd build cmake .. -DBUILD_EXAMPLES=true -DCMAKE_BUILD_TYPE=Release make -j1 make install
続けて、OpenCV用wrapperやpythonモジュールもビルドします。
最後に
今回は、主としてdockerhubにpushしたdockerコンテナイメージの使い方について説明しました。
同じアカウントで、Myriad™に対応したIntel® OpenVINO™ Toolkit環境を提供するdockerコンテナイメージも公開しました。次回の記事にてコンテナイメージの使い方などを紹介します。
お問い合わせはこちらから
![](https://www.plathome.co.jp/wp-content/uploads/plathome_logo.jpg)
![](https://www.plathome.co.jp/wp-content/uploads/vx2-eyecatch-fw5.png)
※本記事は弊社後藤がQiitaにも投稿しています。よろしければこちらもご覧ください。
![](https://qiita-user-contents.imgix.net/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fpublic%2Farticle-ogp-background-412672c5f0600ab9a64263b751f1bc81.png?ixlib=rb-4.0.0&w=1200&mark64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTk3MiZoPTM3OCZ0eHQ9SW50ZWwlQzIlQUUlMjBSZWFsU2Vuc2UlRTIlODQlQTIlMjBENDAwJUUzJTgyJUI3JUUzJTgzJUFBJUUzJTgzJUJDJUUzJTgyJUJBJUUzJTgyJTkyT3BlbkJsb2NrcyUyMElvVCUyMFZYMiVFMyU4MSVBNyVFNSU4OCVBOSVFNyU5NCVBOCVFMyU4MSU5OSVFMyU4MiU4QiVFMyU4MSU5RiVFMyU4MiU4MSVFMyU4MSVBRWRvY2tlciVFMyU4MiVCMyVFMyU4MyVCMyVFMyU4MyU4NiVFMyU4MyU4QSVFMyU4MiVBNCVFMyU4MyVBMSVFMyU4MyVCQyVFMyU4MiVCOCVFMyU4MSVBRSVFNCVCRCVCRiVFMyU4MSU4NCVFNiU5NiVCOSVFMyU4MSVBOCVFMiU4MCVBNiZ0eHQtYWxpZ249bGVmdCUyQ3RvcCZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnM9OTlmZTgyYjkwZThhMjE5ODNjZjU0ZWM4YmE4YzI0MmI&mark-x=142&mark-y=57&blend64=aHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZoPTc2Jnc9NzcwJnR4dD0lNDBnb3RvMjA0OCZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9M2NjNmY4ZmMwODExZmIyMDBkY2Y1YjkxZjM4MDhiY2E&blend-x=142&blend-y=486&blend-mode=normal&s=ca097b700c833a083d5c2cd3745ac409)
コメント