結構使い勝手がいいことに定評のあるOrange Pi PC 2、今回はIntelのrealsense D435用の非公式ライブラリlibrealsenseを使えるようにします。

Depthが取れるアレです。

公式のUbuntuが許されるのは小学生までだった

Orange PiのOSイメージは公式サイトからダウンロードすることが出来ます。僕は公式イメージのUbuntu 16.04を使っていました。

しかしあるときUbuntuのLinux kernelバージョンは3.10.65だと知ってしまいました。遅いよ!11月に冷やし中華はじめましたくらい遅いよ!しかも他のOrange Piでもカーネルのバージョンアップが提供されることはほぼ無かったようです。

そしてlibrealsenseはlinux kernel 4.12以上が推奨で、これはUbuntu 16.04の最低カーネルバージョンである4.4よりも高くアグレッシブです。Orange Pi公式には頼れんわけです。

そこに颯爽登場したのがArmbianでした。

armコンピュータ向けのDebianベースなディストリビューションです。公式のサイトを見ると、かなりたくさんのシングルボードコンピュータがサポートされています。

ここからOrange Pi PC2用のDesktop OSをダウンロードして使います。

動作環境

  • Armbian Xenial desktop mainline kernel 4.14.y (Armbian_5.40_Orangepipc2_Ubuntu_xenial_next_4.14.15_desktop)
  • librealsense 2.13.0

事前準備

必要に応じてOpenCV3をインストールしておきます。(たぶん必須)

librealsenseのビルドには新しいlibstdc++.so.6が必要なのでアップデートします。これをしなかった場合、”libstdc++.so.6: version `GLIBCXX_3.4.22′ not found”というエラーが起きます。

sudo apt install apt-file
sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt update
sudo apt upgrade

strings /usr/lib/aarch64-linux-gnu/libstdc++.so.6 | grep GLIBCXX の結果にGLIBCXX_3.4.22が含まれていればおkです。

あと、僕の環境ではビルド時にpygraphvizがなんかへんなエラー(ライブラリを見つけられない的な)を起こしたので再インストールしました:

sudo pip3 install --force-reinstall pygraphviz --install-option="--include-path=/usr/include/graphviz" --install-option="--library-path=/usr/lib/graphviz/"

librealsenseのビルド

いままでの苦労に比べれば屁ぐらいです。

cd
wget https://github.com/IntelRealSense/librealsense/archive/v2.13.0.tar.gz
tar zxvf v2.13.0.tar.gz
mkdir librealsense-2.13.0/build
cd librealsense-2.13.0/build
cmake .. -DBUILD_EXAMPLES=true -DCMAKE_BUILD_TYPE=Release
make -j1
sudo make install

OpenCV用のラッパーもビルドします。

mkdir ~/librealsense-2.13.0/wrappers/opencv/build
cd ~/librealsense-2.13.0/wrappers/opencv/build
cmake ..
vi ../latency-tool/CMakeLists.txt
# 下記を追記
target_link_libraries(rs-latency-tool ${DEPENDENCIES} pthread)

make -j $(($(nproc) + 1))
sudo make install

次はPythonです。

cd ~/librealsense-2.13.0/build
cmake .. -DBUILD_PYTHON_BINDINGS=bool:true -DPYTHON_EXECUTABLE=$(which python3)
make -j1
sudo make install

最後にPathを追記しておきましょう。追記後は source ~/.bashrcで読み込んでください。

vi ~/.bashrc
# 下記を追記
export PYTHONPATH=$PYTHONPATH:/usr/local/lib

これでインストールは終了です。ね、簡単でしょう?

Exampleを実行

~/librealsense-2.13.0/build/examples 以下にビルドされたexamplesのバイナリがあります。capture example(rs-capture) を実行してみましょう。

Depthのヒートマップがリアルタイムに出ます。わあいDepth

関連記事

自作PCにubuntuでdeep learning用の環境とかを整える

1755 MHz OCのRTX 2080 TiタワーPC(32GBメモリ)を28万円で作った話

Razer Bladeのバッテリーをaliexpressで買って交換した

blenderでオブジェクトのキーフレームを途中からごっそり入れ替える

MiSTEL BAROCCO MD650Lの持ち運びにはあのケースがぴったり

高層を拒否し、「ニュー オールドタウン」を選択したフランクフルトの市民参加型都市計画

コメント

コメントを返信する

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です