サイトアイコン KOKENSHAの技術ブログ

Google AIY Vision Kit Raspberry Pi Zero WH簡単人工知能体験!(Python)

今日の記事はGoogle AIY Vision Raspberry Pi Zero WH簡単人工知能体験というタイトルでお届けしたいと思います!(写真が大量です。)

Google AIY Vision Kitを組み立てることから、簡単なサンプルコードを実行するまで、ご説明します!

前は、Google AIYプロジェクトの Vioce Kitをご紹介しましたが、今日はVisionの方です!

AIYのVision Kitに一番特徴のあるものは、何と言ってもVisoion Bonnetです。

Vision Bonnetは Intel® Movidius™ MA2450という低電力駆動VPU(vision processing unit)が搭載して、ニューラルネットワークが直接にそのチップの上で動作します。

Movidiusといえば、このサイトでもこんな記事がありました。

RaspberryPi 3B+とIntel Movidius Compute Stickで、サンプルコードを動かす

一緒に提供されているソフトウェアは

三つのニューラルネットワークを使うTensorFlowベースのVisionアプリケーションがあります。

 

他に、 Vision Kit用のモデルをコンパイルするツールも提供されています。

必要があれば、TensorFlowを利用して、モデルを学習と再学習をクラウドやワークステーションで実施することができます。

これは、一つ面白い、深層学習のエッジデバイスですね。

Google AIY Projects Voice kit (RaspberryPiでGoogleアシスタント)を組み立てて声をかけよう!簡単に成功!

結果から言うと、結構簡単で楽しいです!

目次

まずGoogle AIY Visionの中身拝見

アマゾンから購入したものです!

[amazonjs asin=”B07GBNDRQM” locale=”JP” title=”【国内代理店版】Google AIY Vision Kit V1.1″]

前のAIY Voice Kitの箱より少し薄い気がします!

蓋を開けると、中の部品が見えます!最初はRaspberryPiが入っていないと思っていましたが、Raspberry Pi Zero WHが付属しています!(そう言えば、値段が高かったから、そう言うことですね。笑)

一個ずつ見て行きましょう!

USBのケーブル、電源の方です!あとで、キーボードやマウスを接続するには、自分で用意する必要があります。

あと、HDMIに接続するためのケーブルも付属していませんので、モニターに接続したい人は、ご自身で用意してください。

このプロジェクト自体は、モニター、キーボード、マウスがなくても、すぐ体験できますが、色々いじりたい人はおそらく、すでに家に、キーボードとかあるでしょう!笑

まずは、ボタン、これはあとで、写真を撮る時のシャッターにもなります。LEDも入っていて、色が変化するボタンです!

書いている通り、Raspberry Pi Camera2です。あとで、顔認識の時に、びっくりしましたが、RaspberryPi Zero Wにも関わらず、解像度も高くて、とてもスムーズな映像です!

付属している、Raspberry Pi Zero WHです!

このブログでも何回か登場しています!

Raspberry Pi Zero WHはいろんなことができます!

raspberry pi zero w 秋葉原で購入!

Raspberry Pi Zero Wで作るPimoroniのPirate Radio インタネットラジオ

Raspberry Pi Zero Wで作るPimoroniのPirate Radio AirPlayレレシーバー

GoogleのVision Bonnetです、魔法はこの中に詰まっています!笑

ボタン、LED、接続ケーブルです(Raspberry Pi Zero WHとVision Bonnetと接続する短い方のケーブルです)。

ボタンのケーブル、とRaspberry Pi Cameraのケーブルです。

全部並べるとこんな感じです(ダンボールの箱の部品なしで)

AIY Voice Kitの時の冊子とかもないです。

少しクローズアップで見て行きましょう!AIY Vision Kitの重要な部品Vision Bonnetです!

Raspberry Pi Camera2です!

Raspberry Pi Zero WH本体です!

過去の実験でもいくつかやってみましたが、あんまり力不足を感じず、普通のコンピュータでした!いい時代に生まれて、よかったです!笑。少し晒しますと、私が子供の時に、8086のCPUを搭載する初代のパーソナルコンピューターは、全然今のRaspbery Pi Zero W以下で、(WiFiなんかも当然なかったですし)$1,565(15万円?当時はもうちょっと価値がありましたね)しましたね。これは、3000円超ぐらいでですよ!

Google AIY Vision Kit組み立てる

まず、本家のHPを開いて、組み立てる手順説明を探そう!

こちらです!

URL:https://aiyprojects.withgoogle.com/vision/#assembly-guide

部品の山です!笑。これを組み立てて、魔法の箱に化けるのです!

まず、Raspberry Pi Camera2をスタンバイさせます!

次は、この形のダンボールを準備します!AIY Vioce Kitのときより、少し優しい内容だと思います!笑

丸Aの所に折り込んで、貼り付けて行きます!

そのあと、スピーカー(Buzzer)をくっつけます。

そのあと Raspberry Pi Camera2をつけます。サイズがぴったりです。

ひっくり返して、カメラモジュールを挟み込みます。

両側のダンボールの羽も折って、固定させます。

こんな形になれば、大丈夫です。

Raspberry Pi Camera2のケーブルを少しひねりが入りますが、気をつけながらその穴に通しましょう!

精密部品なので、折れたら。電気信号が通れなくなり、故障の原因になりますので、気をつけましょう。

次は、Raspberry Pi Zero WHとVision Bonnetを繋げます!

ここが難関です!

まず、Raspberry Pi Zero WHの方につけようとしましたが、ケーブルを固定するための小さい部品が外れてしまいまして、焦りました!

幸いなことに、外れただけで、壊れたわけではなかったです。壊れたら、固定ができなくなる可能性がありますので、みなさんも気をつけてください。力を入れ過ぎないでください。

なんとか、ケーブルを差し込んで、固定できました。

Vision Bonnetの方も同様に固定して、Raspberry Pi Zero WHとVision Bonnetを合体させます。

ここも力を使わないと、カチッと言わないので、絶妙な力加減でお願いします。

私は、ドキドキしてやりました。Vision Bonnetの方の基盤が薄くて、すぐばきっと折れるんじゃないかと怖かったです!笑

その後、ケーブルを真ん中の隙間に押し込んで、整えます。

先ほど、Raspberry Pi Camera2を固定したダンボールの部品に合体したRaspberry Pi Zero WHとVision Bonnetも配置します。

こんな感じになりました。

少し、その雰囲気が出てきました!笑このHarnessのケーブルがやはり心配ですね。

カメラとBuzzer側はこんな感じです!

次は、ボタンと接続するケーブルをまずVision Bonnetに接続します。

最初は向きはどうするかと悩んでいましたが、それは特に関係なく、とっちでも接続すれば良いということでした。

もう一枚のダンボールの部品を折ったりして、用意します。いよいよ完成に近づいてきました。

説明の通り、ダンボールを折り込んで、金属のメスのボルトを配置します。これは完成後、完成品の下に来ます。カメラのように、こおは三脚とかに固定できるようになっています!なるほど!

箱っぽくなってきました!

ここで、気をつけることとしては、正面テープになっているところがあって、結構粘着力が強いので、貼り付ける前に、形や角度をしっかり確認して、一発勝負の気持ちでやってください。笑

次は、先の部品を丸ごと、はめます。正面のカメラのレンズがちゃんと穴にはめるように、調整しながら、押し込んでいきましょう!

カメラのレンズもちゃんと出てきました!バッチリですね。

それっぽくなってきました!

次は、LEDの枠をつけます。

裏から、LEDを押し込んで、カチッと音がしますので、気持ちよく、装着ができました!

正面からもLEDが正しく装着されたことを確認できます!

Niceな組み立てです!笑

次、いよいよボタンを装着します、箱の裏側に、ボタンを固定する白い丸い部品に全てのケーブルを通しておいてください。

それから、三本のケーブルをダンボールの大きい穴から外に出してください。

この状態で、ボダんと接続してください。

ボタンの裏に、小さい基盤の上に、LEDの文字が書いている方に、LEDのケーブルを接続してください。

日本、同じ形、色なので、確認した上、接続してください。

完成したら、こんな感じです。とても綺麗です。(繋いだだけですが、達成感があります。)

ちなみに、部品がとても小さくて、箱も思ったより小さいため、指の太い人は結構厳しいかもしれません!

中から、メスのネジを回して、しっかり固定します。

完成の瞬間です!

AIY Voice Kitと比べて、それの半分ぐらいですかね、正方形のキューブではないですね。

写真通りの出来上がりです!

これを使って色々実験したいと思いますが、まず起動したいと思います!

Google AIT Vision Kitの最初の起動

電源は、手軽の方がいいから、モバイルバッテリーで接続します。Raspberry Pi Zero WHですと、結構軽く数時間で行けちゃいます。

Ankerのモバイルバッテリーです!おすすめです!

[amazonjs asin=”B019GNUT0C” locale=”JP” title=”Anker PowerCore 10000 (10000mAh 最小最軽量 大容量 モバイルバッテリー) iPhone&Android対応 *2018年11月時点 (ブラック)”]

付属している、SDカードも挿入して、電源を接続すると、奥の方に怪しい緑が光ります!

これは、起動中のLEDです、最初の起動は多少時間がかかります、しばらく待ちましょう、とは言っても数分で終わります。

前も話しましたが、あとで、ディスプレーに接続したい人は、micro HDMIとHDMIのアダプターも用意した方が良いでしょう。

電源を入れて、bootも完了しました!

カメラ目線でまずスマイル!

なんと、反応してくれますよ!下の写真は大きく笑顔を作る時です、青から徐々にかた、ピンク、黄色に変化して行きます。

すごいちゃんと人間の顔とその表情を認識しますね。

しかも最初からです。特に面倒な設定とかも不要です!

少し、不機嫌な難しい顔をすると、青色になります!

上の笑顔の時ですと、Buzzerもなります!まるで、いいぞその調子です!

あ、実際にプログラムを修正して、喋らせるのも全然可能ですよね!

笑っているときに、ボタンを押せば、写真も取れます。AIデジタルカメラじゃん!(実は一つのサンプルコードがありまして、人の笑顔を検出したら、自動にシャッターを押すのもありました!)

ディズプレイなどの接続とその他サンプルコードの実行

このままでもしばらく遊べますが、もちろん、今回は色々いじり倒したいと思っていますから

Raspberry Pi Zero WHの「中」から色々探検したいです。

ディスプレーも接続して、マウス、キーボードも接続します。(USBの口は一つしかないから、マウスとキーボードで交代でさしてやりました!笑、その後、VNCでやるようにしたら、特にマウスとキーボードは気にしなくてよくなりました)

デフォルトのVNCを有効にすれば、できます。

UbuntuからVNCでRaspberryPiにうまく接続できない人はremmina!

来ました!

AIY Project の画面が現れました。

まず定番の顔認識

場所はここに移動して

/home/pi/AIY-projects-python/src/examples/vision

注意、今、demoが実行中なので、他のプログラムを実行する前に

まず、今のをストップしないとエラーになります。

sudo systemctl stop joy_detection_demo

止めてから、下のプログラムを実行します。pythonはいらないです。

./face_detection_camera.py

そうすると、私の顔が(後ろのモニター)ちゃんと追随して認識してくれます!

前も記事で書いていましたが、今回のは何もしなくて、できましたね、笑。

raspberry pi opencv ビデオで顔認識

RaspberryPiで顔認識OpenCVで(コンパイルの方法も!)

次は、もう一つサンプルコードを実行しました。

同じフォルダの配下

./image_classification_camera.py

カメラの前にマウスを置いたら、それを認識してくれています!

もちろん、ビデオも立ち上がって、表示されています!

まとめ

今回は、本当に、購入したGoogle AIY Vision Kitを組み立てて、サンプルコードを実行してみただけなんですが

それでも十分楽しかったですし、可能性も体感できました。

Raspberry Pi Zero WHという小さいコンピューターで、性能も決して優れているものとは言えないもので、GoogleのVision Bonnetと組み合わせると、こんなに簡単に、すぐに、AIの体験ができるなんて、正直結構意外でした。

これからも、サンプルコードをベースに、色々改修を加えて、実験してみたいと思います。

AIYプロジェクトで提供されているツールをうまく組み合わせて実装すれば

などの応用が考えられますね!楽しみが増します!笑

皆さんも何か面白いネタがあったら、Twiiterで教えてください!

では、また!

RaspberryPi 3B+とIntel Movidius Compute Stickで、サンプルコードを動かす

[amazonjs asin=”B07GYFCJNT” locale=”JP” title=”Raspberry Pi Zero WH スターターセット (本体・ケース・ヒートシンク・Mini-HDMIケーブル・OTGアダプター)”]

[amazonjs asin=”B07GBNDRQM” locale=”JP” title=”【国内代理店版】Google AIY Vision Kit V1.1″]

モバイルバージョンを終了