Google Coral USB Accelerator を試す その2
RPI4でのセットアップメモ
冷却ファンは必須だと思います。
opencv コンパイル
ありがたく従う。
Install OpenCV 4.1.2 for Raspberry Pi 3 or 4 (Raspbian Buster) · GitHub
TensorFlow 2.0 インストール
配布しているので、ありがたく従う。
$ uname -m
armv7l
なので、armv7l を使います。
$ sudo apt-get install -y libhdf5-dev libc-ares-dev libeigen3-dev $ sudo pip3 install keras_applications==1.0.8 --no-deps $ sudo pip3 install keras_preprocessing==1.1.0 --no-deps $ sudo pip3 install h5py==2.9.0 $ sudo apt-get install -y openmpi-bin libopenmpi-dev $ sudo apt-get install -y libatlas-base-dev $ pip3 install -U --user six wheel mock $ wget https://github.com/PINTO0309/Tensorflow-bin/raw/master/tensorflow-2.0.0-cp37-cp37m-linux_armv7l.whl $ sudo pip3 uninstall tensorflow $ sudo -H pip3 install tensorflow-2.0.0-cp37-cp37m-linux_armv7l.whl # wrapt のエラー対処 $ sudo pip3 install --upgrade --ignore-installed wrapt $ sudo -H pip3 install tensorflow-2.0.0-cp37-cp37m-linux_armv7l.whl $ python3 -c "import tensorflow as tf; print(tf.__version__)" 2.0.0
Coral サンプルを動かして遊ぶ
サンプルのインストール
$ echo "deb https://packages.cloud.google.com/apt coral-edgetpu-stable main" | sudo tee /etc/apt/sources.list.d/coral-edgetpu.list $ curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - $ sudo apt-get update $ sudo apt-get install edgetpu-examples
object detect
Object detection example | Coral
$ cd /usr/share/edgetpu/examples/ $ python3 object_detection.py \ --model models/mobilenet_ssd_v2_coco_quant_postprocess_edgetpu.tflite \ --label models/coco_labels.txt \ --input images/grace_hopper.bmp \ --output ${HOME}/object_detection_results.jpg ----------------------------------------- person score = 0.87890625 box = [0.36061957478523254, 16.603958666324615, 513.4191654920578, 596.4085128307343] ----------------------------------------- tie score = 0.7890625 box = [219.4967241883278, 421.0741320848465, 290.2605925798416, 542.6791430711746] ----------------------------------------- remote score = 0.12109375 box = [88.86422845721245, 484.78841257095337, 170.81563928723335, 519.9595828056335] ----------------------------------------- tie score = 0.12109375 box = [204.06080427765846, 398.90483021736145, 309.7189499735832, 469.27534461021423] ----------------------------------------- tie score = 0.12109375 box = [222.6611628830433, 411.52891516685486, 294.7753555178642, 459.50881791114807] ----------------------------------------- tie score = 0.12109375 box = [235.06781673431396, 442.72691202163696, 285.1113055944443, 532.0171551704407] ----------------------------------------- person score = 0.12109375 box = [12.144120335578918, 35.299975633621216, 143.63851302862167, 424.1663646697998] ----------------------------------------- person score = 0.08984375 box = [16.875516951084137, 184.32269310951233, 187.88965493440628, 447.9674062728882] ----------------------------------------- tie score = 0.08984375 box = [195.26302713155746, 344.7151780128479, 329.2432219386101, 449.8947193622589] ----------------------------------------- person score = 0.08984375 box = [3.0382719188928604, 22.73980575799942, 170.4458058476448, 538.9089303016663] Please check /home/kiyo/object_detection_results.jpg
face detect
$ python3 object_detection.py \ --model models/mobilenet_ssd_v2_face_quant_postprocess_edgetpu.tflite \ --input images/grace_hopper.bmp \ --output ${HOME}/face_detection_results.jpg ----------------------------------------- score = 0.99609375 box = [143.88912090659142, 40.834905445575714, 381.8060402870178, 365.49142384529114] Please check /home/kiyo/face_detection_results.jpg