Skip to main content

Node-RedとRaspberry Piを使用したAIkitによるポーズベースのライト制御

note

この文書は AI によって翻訳されています。内容に不正確な点や改善すべき点がございましたら、文書下部のコメント欄または以下の Issue ページにてご報告ください。
https://github.com/Seeed-Studio/wiki-documents/issues

Node-RedとRaspberry Piを使用したAIkitによるポーズベースのライト制御

はじめに

このWikiでは、AIキットを使用してYOLOv8を実行し、ポーズを監視し、最終的にポーズに基づいてライトを制御する方法を説明します。このプロジェクトでは、USBカメラがポーズをキャプチャし、AIキットreComputer R1000上でYOLOv8nを実行してポーズを検出します。検出されたポーズを表示する処理済みのビデオは、gstreamerを使用してリアルタイムでreTerminal DMにストリーミングされます。一方、ジョイント座標はmqttを使用してNode-REDに送信され、reComputer R1000上でデプロイされます。最後に、Node-REDフローがジョイント座標に基づいてスマートライトを制御します。

pir

ハードウェアの準備

reComputer r1000reTerminal DMRaspberry Pi AI Kit

このプロジェクトを実行する

reComputer R1000 上で

ステップ 1: AIキットをインストールする

このWikiを参照し、reComputer R1000にAIキットをインストールしてください。

ステップ 2: プロジェクトをインストールする

以下のコマンドを使用してプロジェクトをダウンロードしてください:

git clone https://github.com/LJ-Hao/Pose-Based_Light_Control_with_Node-Red_and_Raspberry_Pi_with_AIkit.git && cd Pose-Based_Light_Control_with_Node-Red_and_Raspberry_Pi_with_AIkit

ステップ 3: ポーズ推定を実行する

pose_estimation.pyファイルを編集し、mqtt_serverをreTerminal DMのIPアドレスに変更してください。また、Gstreamer pipelineもreTerminal DMのIPアドレスに変更してください。その後、以下のコマンドを実行してポーズ推定を開始します。

bash run.sh

ステップ 4: Node-REDをインストールする

Node-REDをインストールします。以下のコマンドを使用してNode-REDをダウンロードできます:

bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered)

ステップ 5: flows.jsonをインポートする

プロジェクトファイルをインポートします。右上の設定 => インポートをクリックし、新しいポップアップウィンドウでファイルを選択をクリックしてflows.jsonを選択し、最後にインポートをクリックします。

pir

ステップ 6: 必要なコントロールをダウンロードする

プロジェクトファイルをインポートした後、Node-REDがいくつかのコントロールが不足していることを通知する場合があります。以下のコントロールをダウンロードする必要があります:

@bartbutenaers/node-red-rtsp-to-mjpeg
@chirpstack/node-red-contrib-chirpstack
@flowfuse/node-red-dashboard
node-bacnet-contrib-extended
node-red-contrib-buffer-parser
node-red-contrib-image-output
node-red-contrib-image-tools
node-red-contrib-modbus
node-red-contrib-msg-speed
node-red-contrib-multipart-stream-encoder
node-red-contrib-onvif
node-red-contrib-play-audio
node-red-dashboard
node-red-node-base64
node-red-node-mysql
node-red-node-pi-gpio
node-red-node-ping
node-red-node-serialport
node-red-node-smooth
node-red-sensecap-paas
node-red-node-random

例えばnode-red-node-randomの場合、右上の設定 => パレットを管理をクリックし、新しいウィンドウでインストールタブを選択し、node-red-node-randomを入力して最後にインストールボタンをクリックします。

pir

ステップ 7: プロジェクトをデプロイする

右上のデプロイボタンをクリックすると、システムが正常に動作します。

pir

reTerminal DM 上で

ステップ 1: reTerminal DMにgstreamerをインストールする

以下のコマンドを使用してgstreamerをダウンロードしてください:

sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-tools gstreamer1.0-x gstreamer1.0-alsa gstreamer1.0-gl gstreamer1.0-gtk3 gstreamer1.0-qt5 gstreamer1.0-pulseaudio

ステップ 2: リポジトリをインストールする

以下のコマンドを使用してリポジトリをダウンロードしてください:

git clone https://github.com/LJ-Hao/Pose-Based_Light_Control_with_Node-Red_and_Raspberry_Pi_with_AIkit.git && cd Pose-Based_Light_Control_with_Node-Red_and_Raspberry_Pi_with_AIkit

ステップ 3: ビデオ受信を実行する

python3 video_receiver.py

結果

このデモンストレーションは、YouTubeライブ放送で19:47に開始されました。ホストが手を叩くとライトが点灯し、ホストが手を振るとライトが消灯する様子をご覧いただけます。このデモをお楽しみください:

技術サポートと製品に関する議論

弊社製品をお選びいただきありがとうございます!製品の使用体験がスムーズになるよう、さまざまなサポートを提供しております。異なる好みやニーズに対応するため、いくつかのコミュニケーションチャネルをご用意しています。

Loading Comments...