[キッズプロジェクト] まねっこパンダ
コンテンツ
今回やること
スマートフォンやPCのカメラに映った笑顔や悲しい顔など、あなたの表情を真似するパンダを作ります。
用意するもの
- obniz Board
- モバイルバッテリーなど
- サーボモーター x2
- カメラ付きのスマートフォンまたはPC x1
- 装飾用の紙や針金・モール
組み立て方
筐体
まずは紙でパンダなど動物の顔を作ります。 そして、針金とサーボモーターを2つ使い、写真のように口を作ってみましょう。
口の両端に穴を開け、それぞれ後ろからサーボモーターをさして針金でモールに取り付けます。
配線
サーボモーターのライブラリを参考に、以下の表や図のように配線します。
obniz | 部品 |
---|---|
0 | サーボモーター1 signal |
1 | サーボモーター1 Vcc |
2 | サーボモーター1 GND |
9 | サーボモーター2 signal |
10 | サーボモーター2 Vcc |
11 | サーボモーター2 GND |
obnizに電源を繋いでプログラムを開き、スマホやパソコンのカメラに顔をうつして、笑ってみたり悲しんでみたりしましょう。
プログラム
JaveScriptの顔認識ライブラリclmtrackrを使って、顔から笑顔度や悲しみ度を調べて、口を動かしています。
drawLoop 関数内で以下のように顔のパーツの位置やパラメータ、そして感情推定値を取得しています。そして、喜びや悲しみの感情が推定されたとき、口の両端につけたサーボモーターが動くようになっています。
let positions = tracker.getCurrentPosition(); let parameters = tracker.getCurrentParameters(); let emotion = classifier.meanPredict(parameters);
完成したプログラム
実行前にサーボモーターの角度を揃えておきましょう。