🤖

D-Robotics RDK X3を試してみました

2024/12/31に公開

AIフェスティバル2024への登壇後に、技研ベースでD-Roboticsの方から提供いただいたRDK X3、ようやく少しだけ試せたので、簡単に紹介します。

最初に結論から書くと、RDK X3を最大限に活かすのであれば、5 TOPSの推論チップやTogetheROS.BotというD-Robotics社のチップで使えるROSベースのミドルウェアを使いこなす必要がありそうです。

逆にいえば、それらを使わない限りは、ラズパイ5などに比べて大きなメリットはないと思います。

RDK X3セットアップ

セットアップ含め、npaka先生がすでに以下から始まる連載記事をすでにアップしてくださっています。

https://note.com/npaka/n/nc5d3c1a3b223

なので、基本的にはnpaka先生の記事を見ていただいた方がよいと思います。

この記事は上記記事の一部の補足と「普通にLinuxが動くボードとして、AIとか動かしたときの性能はラズパイと比べてどうなの?」といった観点の比較をしています。

ハードウェア

いただいたのは、本体とケースとカメラ(MIPI-CSIインターフェース)です。ただ、今回はこのカメラは使わず、USBカメラを使用しました。

OSのインストール

以下記事を参考にしました。
https://note.com/npaka/n/nc5d3c1a3b223

オフィシャルの解説は以下です。
https://d-robotics.github.io/rdk_doc/en/Quick_start/

オフィシャルの解説にあったOS Imageリンクから、ファイルをダウンロードしたあと、Raspberry Pi ImagerでマイクロSDカードにイメージを焼きました。

Raspberry Pi Imagerに関しては以下の記事を参考にしてください。他のソフトでも特に問題はありません。
https://qiita.com/karaage0703/items/79e09db0ef3ebcf94882

基本的なセットアップ

焼き上げたマイクロSDカードをカードスロットに差し込んで、USB-Cで電源供給したら、起動します。

ネットワークは、最初有線だと繋がらなかったので、WiFiでセットアップしました。

どうも、公式サイトみると /etc/networkの変更が必要そうな感じでした。

また、パスワードが分からなかったのですが、勘でユーザー名と同じsunriseにしたらビンゴでした。多分ドキュメントのどこかに書いてあると思います。

SSH設定は、npaka先生の以下記事を参考にしました。
https://note.com/npaka/n/n94545afd81ef#cb7e536e-3082-4fe5-8c06-d43dd792660a

AI画像認識

AIを使った画像認識を試してみました。

やり方は、ラズパイ5のときに実施した以下と同じ要領です。
https://zenn.dev/karaage0703/articles/f1eb992f426d0f

カメラはUSBカメラを使ったのですが、ここには少し注意が必要です。また、npaka先生の記事を参考にします。

https://note.com/npaka/n/n92accdf1cf58#eb32123f-4163-4385-8952-43122ffe3187

USBカメラは、通常の/dev/video0でなく/dev/video8に割り付けられる点に注意しましょう。

接続した後、以下でカメラを認識しているか確認します。

$ sudo v4l2-ctl -d /dev/video8 --all

画像認識のソフトウェア、OpenCVの場合は以下のようにします。

cap = cv2.VideoCapture(8)

セットアップに必要なコマンドは以下くらいでした。

$ sudo apt-get update
$ sudo pip3 --default-timeout=1000 install opencv-python==4.10.0.84
$ sudo pip3 install onnxruntime

ジャンケンの手の形の認識をしてみます。

ラズパイで0.022秒くらいだったのでちょっと遅いくらいですね。

当たり前ですが、普通のONNXモデルを使った推論なので、5 TOPSの推論能力は活かすことができないようです。

AI画像認識、より詳細が気になる、もっと試してみたい人は以下の本を参考にしてみてください。

https://karaage0703.booth.pm/items/4800446

ラズパイ5とRDK X3の比較表

比較表をChatGPTに作成してもらいました。スペックはそこまで大きく違いはないかなという印象です。価格も、メモリ4GBだと現時点(2024年12月)時点だと似た価格(少しRDK X3が高い)です。

項目 Raspberry Pi 5 D-Robotics RDK X3
プロセッサ Broadcom BCM2712、クアッドコア Arm Cortex-A76(2.4GHz) クアッドコア Cortex-A53
GPU VideoCore VII、800MHz 情報なし
メモリ 2GB、4GB、8GBのLPDDR4X-4267 最大4GB
ストレージ microSDカードスロット、PCIe 2.0 x1スロット(NVMe SSD対応) microSDカードスロット
映像出力 デュアルMicro HDMI(4Kp60対応) HDMI(4K@60fps対応)
USBポート USB 3.0 Type-A ×2、USB 2.0 Type-A ×2 USB 3.0 Type-A ×1、USB 2.0 Type-A ×2、Micro USB 2.0 ×1
ネットワーク ギガビットイーサネット、Wi-Fi 5(802.11ac 2.4/5GHz) ギガビットイーサネット
カメラインターフェース 2つのMIPI CSI-2コネクタ(デュアルカメラサポート) MIPI CSIカメラインターフェース ×1
GPIO 40ピンGPIOヘッダー 40ピンGPIOヘッダー
AI推論性能 情報なし 5 TOPS(毎秒5兆回の演算)
電源供給 USB Type-C(5V/5A推奨)、PoE+対応 USB Type-C(5V/3A)
その他 PCIe 2.0 x1スロット、RTC用バッテリーコネクタ、電源ボタン、ファンコネクタ デバッグ用シリアルポート、Wi-Fiアンテナインターフェース、ステータスLEDインジケーター

まとめ

D-Robotics RDK X3を試してみたので簡単にまとめてみました。ラズパイと比較するために、一般的なAIの画像認識ソフトとUSBカメラを使った比較をしました。単純にラズパイの上位互換を期待して買うようなボードではなさそうです。

RDK X3は、5 TOPSの推論チップや、TogetheROS.Botを活用することで、初めてメリットが出るボードになりそうです。私はそのあたりは興味がないので試しませんが、興味ある方はnpakaさんの記事や自分でD-Robotics RDK X3を買って自分で試してみてください。

https://www.switch-science.com/products/9836

Discussion