ラズパイZero Wでお顔の表情認識


Raspberry Pi3 Model B+でやった表情認識の学習済みモデルface_classficationをRaspberry Pi Zero Wに入れてみました。

で、結果から言いますと認識可能ですが実用にはなりません。

Zeroのスペックでは重すぎます。

1.0GHz シングルコアCPU (1.0GHz Broadcom BCM2837 64bit CPU)
512MB RAMメモリー

発熱でクロック数が落ちてる….ってわけでもなかったです(CPU温度は60度くらい)。

 

でもやってみようというチャレンジャーな方むけに。

基本的な段取りはラズパイ3の場合と一緒です。

 

ZeroへのOpenCV(3.4.1)のインストールはこのページをご参照ください。

 

ライブラリーのインストール

 

 

TensorFlowはPi3と異なります。ZeroのCPUアーキテクチャーはarm6なので以下を実行してインストール。

 

Kerasのインストールでは何も指定しないと 2019/07/09現在2.2.4が入ります。

このバージョンだとsoftmax関数で以下のようなエラーが起きます。

2.2.4だとaxisは決め打ちになってるのかな?

TypeError: softmax() got an unexpected keyword argument ‘axis’

で、2.1.3だと大丈夫なので…..

 

face_classificationをGitHubからとってきてインストール

 

/home/pi/face_classification/src/utils/preprocessor.pyを修正

コメントアウト(or 削除)

#from scipy.misc import imread, imresize

変更

 


ラズパイ3でやったのと同じことを実行

こんな感じ

忘れた頃に起動して、途中でほぼフリーズ状態になります(tt;

でも停止しているわけじゃーない。

 


 

X この非実用性を解消するには、Movidius NCSのお力を借りねばならないかも。

ラズパイ Zero Wではncsdkのインストールがそもそもできませんでした(^^)。

arm6アーキテクチャー用のインストーラーはありません。

cp: ‘/opt/movidius/NCSDK/ncsdk-armv6l/tk’ を stat できません: そのようなファイルやディレクトリはありません
Installation failed. Error on line 554

ラズパイ3でncsdkの環境を作っておいて、NCS用graphバイナリーをここで作成して、推論実行のみZeroでやるように方針変更。

 


 

Be the first to comment

Leave a Reply

Your email address will not be published.


*