📷
【mac】PythonでRealSense D415のサンプルを動かす
RealSense D415とは
Intel社の提供するRealsenseは奥行き知覚機能を有するカメラデバイス.公式ではmacのサポートをしていないが,librealsenseという非公式のライブラリで動かすことができる.
環境
- macBookPro(13-inch, 2017, Twoo Thunderbolt 3ports)
- macOS Catalina 10.15.7
- zsh
- Homebrewインストール済
- PyenvでPythonの環境構築済
環境構築手順
必要なライブラリをインストール
ターミナルを開きホームディレクトリで以下のコマンドを一行ずつ実行する
ターミナル
$ brew install python
$ brew install libusb pkg-config
$ brew install homebrew/core/glfw3
$ brew install cmake
$ brew install boost
$ brew install flann
$ brew install vtk5 –with-qt
$ git clone https://github.com/PointCloudLibrary/pcl
$ cd pcl
$ mkdir build && cd build
$ cmake ..
$ make
$ sudo make install
librealsenseのソースコードをインストール&build
cd
コマンドでホームディレクトリに戻り,librealsenseの本体をインストールする
3行目の使用しているPythonの絶対パス
の部分はwhich python
で出力されたパスに置き換える
ターミナル
$ git clone https://github.com/IntelRealSense/librealsense.git
$ cd librealsense
$ mkdir build && cd build
$ cmake .. -DBUILD_EXAMPLES=true -DBUILD_WITH_OPENMP=false -DHWM_OVER_XU=false -DBUILD_PYTHON_BINDINGS=true -DPYTHON_EXECUTABLE:FILEPATH=使用しているPyhtonの絶対パス -G "Unix Makefiles"
$ make -j2
$ sudo make install
私の環境ではPythonのバージョンが3.8系では動かなかったため事前に3.6系へバージョンを変えておく(今回はpython3.6.7を使う)
/libresense
ディレクトリに戻り
ターミナル
$ pyenv install 3.6.7
$ pyenv local 3.6.7
pyenv versions
コマンドで/libresense
ディレクトリ以下がpython3.6.7になっていることを確認する
また,このままだと動かないと思うので以下の手順でsoファイルがおいてある場所(以下A)を確認する
- VSCode等で
librealsense/build/CMakeCache.txt
を開く -
command + F
で検索窓を開きPYTHON_INSTALL_DIR:PATH
を検索する -
PYTHON_INSTALL_DIR:PATH:PATH=xxx
とかいてある.xxxがsoファイルの置いてあるディレクトリ(A)
シンボリックを置く場所(以下B)を確認する
ターミナル
$ python3
>>>import site; site.getsitepackages()
その後確認した場所(B)へ移動し,シンボリックを作成する
ターミナル
$ cd Bへの絶対パス
$ ln -s 確認したsoファイルのパス(A)/pyrealsense2.cpython-36m-darwin.so pyrealsense2.so
$ ln -s 確認したsoファイルのパス(A)/pybackend2.cpython-36m-darwin.so pybackend2.so
pyrealsense2
のインポートが通るか確認
ターミナル
$ python
$ import pyrealsense2
$
このようにimport
が通ればOK
サンプルを動かす
サンプルファイルが置いてあるディレクトリに移動し実行する
ターミナル
$ cd ~/librealsense/wrappers/python/examples
$ python 動かしたいファイル名
参考
(参考Qiita1)[https://qiita.com/mizumasa/items/c6ca2c73fa86c9a5a39c]
(参考Qiita2)[https://qiita.com/comachi/items/14b358568365bc5ee474]
Discussion