初めに
Unitree Go1に搭載された頭部カメラ(顔、顎)について、UnitreecameraSDKのexample_getRawFrame, example_getRectFrameを実行する方法をご案内します。
環境
環境は、次のようなものを想定しています。
- 機種: R&D(Edu), R&D+(Edu+)(Proではないもの)
- UnitreecameraSDK:v1.1.0(https://github.com/unitreerobotics/UnitreecameraSDK)
今回は、最も簡易的な方法として、192.168.123.14のJetson NanoのGUI上からssh -Xを用いて、頭部カメラの確認を行います。
1.UnitreecameraSDKのコンパイル
UnitreecameraSDKをメーカーのgithubからダウンロードし、頭部Nano(192.168.123.13)に置きます。
(購入時、~/Unitree/sdk/UnitreeCameraSdkにカメラプログラムがありますので、こちらを用いて本記事の手順を行うこともできます。ただし、このプログラムは少しバージョンが古いため、githubのものを使うことをお勧めしています)
その後、コンパイルします:
$ mkdir build
$ cd build
$ cmake ..
$ make
2.Nano(14)を直接操作する
まず、背面ポートにディスプレイとキーボード・マウスを接続します:
※端のHDMI, USBポートが、Nano(192.168.123.14)のポートに当たります。
すると、以下のようなデスクトップ画面が表示されます:
3.UnitreecameraSDKの実行
Nano14のGUI上から、ssh -X接続します:
$ ssh unitree@192.168.123.13 -X
次に、自動起動しているcameraROSnodeのプロセスをkillします:
$ cd ~/Unitree/autostart/camerarosnode/cameraRosNode
$ ./kill.sh
その後、UnitreecameraSDKを実行します:
$ ./example_getRawFrame
$ ./example_getRawFrame 1
※ /dev/video0が顎カメラ、/dev/video1が正面カメラに割り振られています
また、長方形整形された画像の取得は以下のように行います:
$ ./bins/example_getRectFrame
※ ./bin/と1つ上の階層から行う必要があります
※ ~/Unitree/sdk/UnitreeCameraSdkにある古いバージョンのもので行う場合、結果が少し異なります
example_getRectFrameを用いて、正面顔カメラを取得する場合は以下のようにします。
まず、stereo_camera_configのdevice numberを変更します:
$ vi stereo_camera_config.yaml
次に、実行します:
$ ./bins/example_getRectFrame
※ ~/Unitree/sdk/UnitreeCameraSdkにある古いバージョンのもので行う場合、./example_getRectFrame 1で実行可能です
おわりに
頭部カメラにおけるUnitreecameraSDKのexample実行方法を見てきました。
この記事が少しでも役に立てたのなら幸いです。