ラズパイ4B(4GB)とOAK-D-Liteの組み合わせはエッジAIカメラを使ってface_recognition(顔識別)をやってみるでやりましたが、この場合はOSイメージはUbuntu 20.04 LTS でした。
ここではRaspberry Pi OS (64-bit) Bullseye(Debian)を使ってみます。
Raspberry Pi Imagerバージョン1.7.1でMicroSDに焼いておきます。
こんな感じでやってみます。
環境セットアップ
OpenCV をインストールしておきます
1 |
sudo pip3 install opencv-python |
SWAP領域を4GBほど確保しておきます
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
sudo swapoff -a sudo fallocate -l 4G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile 確認 free -h 恒久化する場合 sudo cp -p /etc/fstab{,.bak} echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab /swapfile none swap sw 0 0 |
依存パッケージインストール
1 |
sudo curl -fL http://docs.luxonis.com/_static/install_dependencies.sh | bash |
DepthAI APIインストール
1 |
python3 -m pip install depthai |
デモ用プログラムをクローンしてディレクトリ移動
1 2 3 4 |
cd ~ git clone https://github.com/luxonis/depthai.git cd depthai |
既存のPython環境に変更が加えられる可能性があるので、作業は仮想環境で実行します
(別に気にしないのであれば仮想環境は不要です)
仮想環境からカメラが見れるように、udev rules をセットしておきます
1 2 3 |
echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="03e7", MODE="0666"' | sudo tee /etc/udev/rules.d/80-movidius.rules sudo udevadm control --reload-rules && sudo udevadm trigger |
カメラを接続していたら一度抜いて再接続します
~/.bashrcに書き込んでおきます
1 2 3 |
sudo nano ~/.bashrc 書き込み source ~/.bashrc |
仮想環境セットアップ
1 |
sudo pip install virtualenv |
depthaiディレクトリにvenvという名前で仮想環境を設定し、有効化
1 |
virtualenv venv && source venv/bin/activate |
仮想環境に入っているのを確認
必要なパッケージを確認し、インストール
1 |
python3 install_requirements.py |
以上で5GB程が消費されます。
deactivateで一旦仮想環境を抜けて、カメラも再接続します。
デモアプリ実行
仮想環境を再度立ち上げます
1 2 |
cd ~/depthai source venv/bin/activate |
物体検出です
1 |
python3 depthai_demo.py |
手を検出してpersonと認識しています
qキーで終了
お約束の顔認識です
udev rulesを~/.bashrcに書き込んでおいたとします。
ターミナルを開いてライブラリを追加して、仮想環境に入ります。
1 2 3 4 |
pip3 install imutils cd ~/depthai source venv/bin/activate |
depthai-experimentsをクローン
1 |
git clone https://github.com/luxonis/depthai-experiments.git |
depthai-experiments/gen2-face-recognition へ移動
1 |
cd depthai-experiments/gen2-face-recognition |
自分の名前で以下を起動
1 |
python3 main.py --name my_name |
以下のムービーの50秒以降にあるような感じで、カメラで自分の顔をトラックしてデータを作成します。
適当なところでqキーで停止
以下のコマンド実行、自分の顔を認識させてみてください。
1 |
python3 main.py |
depthai-experiments/gen2-face-recognitionにdatabasesという名前のフォルダーが作成され、my_name.npz というファイルが作成されています。だいたい100KB前後のサイズです。これがデータファイルです。
face_recognitionで2GB程が消費されます。
Leave a Reply