Google Coral Edge TPU Hardware & AIY Kits

store: https://store.gravitylink.com/global

Coral USBアクセラレータを使ったRaspberry Pi 4での物体検出

Coral USBアクセラレータを使用したSSDオブジェクト検出はRaspberry Pi 3で実行されていましたが、パフォーマンスは期待外れでした。RaspberryPi 4で何が起こるのか興味がありました。

微信截图_20190717164646.png

これがテスト用rt-aiデザインです。 UVCCamとMediaView SPEはUbuntuデスクトップ上で、CoralSSD SPEはRaspberry Pi 4上で実行されています。1280 x 720フレームで12fpsというかなりの性能を発揮しています。 いくつかの愚かな画像の読み込みコードに)。 1つのCPUコアの使用率は約93%で、これはPython SPEには十分に公平です。 私はこのSPEのC ++版がまたかなり速いだろうと確信しています。
pi4coral.jpg

 Google Coral USB accelerator代理店,開発者はここで購入できます: https://store.gravitylink.com

Pi 4はRaspbian Busterを必要とし、それは現時点ではedgetpu_apiツールキットでサポートされていないPython 3.7に付属しているので、これを実行するのは面白かったです。

元のブログ記事を書いた後、実際にedgetpu_apiインストールをPython 3.7で動作するように変換することは簡単であることを発見しました。 virtualenvやPython 3.5のことを何もせずに、install.sh(Pi 4を認識しsudoのバグを修正するために下記のように修正されたもの)を実行して以下のコマンドを入力するだけです。

cd /usr/local/lib/python3.7/dist-packages/edgetpu/swig
sudo cp _edgetpu_cpp_wrapper.cpython-35m-arm-linux-gnueabihf.so _edgetpu_cpp_wrapper.cpython-37m-arm-linux-gnueabihf.so

必要なのは、Pythonのバージョンと一致するように正しく名前が付けられた.soファイルだけであることがわかりました。 とにかく、あなたがPython 3.5のルートに行きたいのなら…

ARMライブラリのPythonライブラリはPython 3.5用にのみコンパイルされています。 そのため、Python 3.5はPython 3.7と同時にインストールする必要があります。 これを行うには、GZippedのソースをここからダウンロードし、次のように展開してビルドします。

tar xzf Python-3.5.7.tgz
cd Python-3.5.7
sudo apt-get install libssl-dev
./configure --enable-optimizations
sudo make -j4 altinstall
virtualenv --python=python3.5 venv
source venv/bin/activate

これらすべての結果、Python 3.5が仮想環境で利用可能になるはずです。 インストールが必要な特定のパッケージは、必要に応じてpip3.5を使用してインストールする必要があります。 厄介なことに、私はインストールが何らかの理由でうまくいかなかったことを知り(インポート時に依存関係が欠けていた)、私はこのコマンドを使わなければなりませんでした:

pip3.5 install numpy --upgrade --no-binary :all:

これでedgetpu_apiをインストールする時が来ました。これは基本的にここの指示に従った場合です。 ただし、install.shには小さなバグがあり、Pi 4も認識されません。

59行目の後にこれを追加して、install 4を修正してPi 4を認識させます。

elif  "${MODEL}" == "Raspberry Pi 4 Model B Rev"* ; then
    info "Recognized as Raspberry Pi 4 B."
    LIBEDGETPU_SUFFIX=arm32
    HOST_GNU_TYPE=arm-linux-gnueabihf

それが追加されたら、128行目に行き、それを次のように置き換えます。

sudo udevadm control --reload-rules && sudo udevadm trigger

オリジナルは2番目のsudoがありません。 それが完了したら、コーラルUSBアクセラレータは鳥分類器の例を実行することができるはずです。