LoginSignup
12
8

More than 3 years have passed since last update.

ラズパイ4でEdge TPU Python APIをインストールする

Posted at

概要

ラズパイ4にEdge TPU(USB Accelerator)を接続し、Edge TPU Python APIを使用できるようにする手順を解説しています。
公式で配布されているインストーラーですとラズパイ4には未対応(2019年9月現在)、コマンドを叩いてセットアップする必要があります。

使用機材

注意事項

ラズパイ4は国内の技適が取得できていません。実機で試す場合は無線LAN機能やBluetooh機能をオフにしてから実施するようにしてください。

手順

資材のダウンロードと展開

wgetで資材をダウロードし展開します。ここはラズパイ3の時と変わりません。

$ wget https://dl.google.com/coral/edgetpu_api/edgetpu_api_latest.tar.gz -O edgetpu_api.tar.gz --trust-server-names
$ tar xzf edgetpu_api.tar.gz
$ cd edgetpu_api/

必要なライブラリのインストール

aptを使って必要なライブラリをインストールします。

$ sudo apt-get install -y \
  libusb-1.0-0 \
  python3-pip \
  python3-pil \
  python3-numpy \
  libc++1 \
  libc++abi1 \
  libunwind8 \
  libgcc1

デバイス管理ルールの入替

udev用のルールを入れ替えます。

$ sudo cp -p ./99-edgetpu-accelerator.rules /etc/udev/rules.d/99-edgetpu-accelerator.rules
$ sudo su
# udevadm control --reload-rules && udevadm trigger
# exit

ライブラリのコピー

必要なライブラリのコピーをします。最大動作周波数を有効にするかどうかでコピーするファイルが違います。

最大動作周波数を有効にする場合

$ sudo cp -p ./libedgetpu/libedgetpu_arm32.so /usr/lib/arm-linux-gnueabihf/libedgetpu.so.1.0
$ sudo ldconfig

最大動作周波数を有効にしない場合

$ sudo cp -p ./libedgetpu/libedgetpu_arm32_throttled.so /usr/lib/arm-linux-gnueabihf/libedgetpu.so.1.0
$ sudo ldconfig

Python APIのインストール

whlファイルからPython APIのインストールを行います。

$ sudo python3 -m pip install --no-deps ./edgetpu-2.11.1-py3-none-any.whl

ライブラリの名称変更

ライブラリの名称変更を行います。Python3.7の場合必要な変更で、Rasbian BusterからはPython3.7が標準で使われるようになっているので必要になります。

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

最後に

これでEdge TPU Python APIが出来るようになります。公式の鳥を識別するデモプログラムが動かせるようになりますので試してみてください。

余談

2019/9/22(日)の技術書典7にて、ラズパイとEdgeTPUを使うための本を頒布いたします。AutoML Visionとの連携も解説しておりますので、是非見に来てください。サークルページ

12
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
8