Upgrade to Pro — share decks privately, control downloads, hide ads and more …

nekoIoTLT_ToyAndVoiceAnalysis

NearMugi
February 22, 2022

 nekoIoTLT_ToyAndVoiceAnalysis

NearMugi

February 22, 2022
Tweet

More Decks by NearMugi

Other Decks in Programming

Transcript

  1. ねこのおもちゃ作りに挑戦してみた
    2022.2.22
    猫の日開催! ねこIoTLT vol.6

    View full-size slide

  2. 自己紹介
    NearMugi(ニアムギ)
    ねこ2匹飼っています。
    茶色の子 ニア 13歳
    黒色の子 ムギ 9歳

    View full-size slide

  3. イントロ
    今回はねこのおもちゃ作りに
    挑戦してみたお話です

    View full-size slide

  4. イントロ
    前回のオープニングトークで津川さんが
    お話しされていたことに触発されました

    View full-size slide

  5. イントロ
    でもクラッカーのように飛び出す
    おもちゃは難しそう・・・
    どうやって引っ張る? バネ? どれくらいの力がいる?

    View full-size slide

  6. イントロ
    カタパルトなら作れるかも!
    引用 [[工作のヒント]カタパルト投石
    機](https://www.tamiya.com/japan/newstopics/2020/05/20robot/005.ht

    View full-size slide

  7. 試作品
    作ってみたのがこちらです

    View full-size slide

  8. 試作品
    ソレノイドで
    カタパルトを動かす
    ・M5AtomでON/OFFで制御
    ・12v電源からM5Atomと
     ソレノイドに電源供給
    M5Atom
    12v電源
    ソレノイドへ

    View full-size slide

  9. 試作品
    いい感じに動きました!

    View full-size slide

  10. 試作品
    ただ、猫たちは興味を示さず・・・
    こどもたちには大うけでした

    View full-size slide

  11. 問題点
    そして薄々気が付いていた問題点
    どうやって供給する?
    →球同士くっつく
    →1回1回セットするなら手で
     投げるのと変わらない
    ・・・おもちゃ作り挫折

    View full-size slide

  12. まとめ?
    おもちゃ作りに失敗しました・・・
    では終われないので

    View full-size slide

  13. まとめ?
    おもちゃを動かす入力信号を
    考えてみました!

    View full-size slide

  14. ねこの鳴き声に反応する仕組み作りに
    挑戦してみた
    2022.2.22
    猫の日開催! ねこIoTLT vol.6

    View full-size slide

  15. 再イントロ
    ネコが「にゃー」と鳴いたのを
    認識してくれる仕組みがあったら
    いろいろと楽しめそうと思いませんか?

    View full-size slide

  16. 再イントロ
    声を認識 = 機械学習
    ということで、
    Tensorflow lite で初めての
    Tiny ML に挑戦しました

    View full-size slide

  17. 学習の流れ
    参考URL
    [Micro Speech Training]
    https://github.com/tensorflow/tflite-micro/tree/main/tensorflow/lite/micro/examples/micro_speech/train
    [Train a Simple Audio Recognition Model]
    https://github.com/tensorflow/tflite-micro/blob/main/tensorflow/lite/micro/examples/micro_speech/train/train_micro_
    speech_model.ipynb
    学習用のJupyterNotebookを使います
    1. ねこの声を集める
    2. 1秒の長さに切り取る
    3. データを水増しする
    4. Docker上で動くTensorflowのコンテナで学習
    5. 学習モデルを小さくしてマイコンボードに入れる

    View full-size slide

  18. 学習の流れ
    1. ねこの声を集める

    View full-size slide

  19. 学習の流れ
    4. 学習用のJupyterNotebookをDocker上で動かす

    View full-size slide

  20. 学習の流れ
    4. 学習用のJupyterNotebookをDocker上で動かす
    97%の精度!!!

    View full-size slide

  21. 学習の流れ
    4. 学習用のJupyterNotebookをDocker上で動かす
    学習モデルを小さくしたものも97%の精度!!!

    View full-size slide

  22. 学習の流れ
    4. 学習用のJupyterNotebookをDocker上で動かす
    この配列をマイコンボードのプログラムにつっこむ

    View full-size slide

  23. 結果
    ムギ ニア

    View full-size slide

  24. まとめ
    ・おもちゃ作りの難しさを体験できました。
     作りたいだけになってしまったのでネコ目線で作らなければと
     思いました。
    ・声認識は(かなり紆余曲折ありましたが)結果がでて良かったです。
     ムギのように色んな発声をする子の場合は学習用データを絞らないと
     上手く認識しないのだと知りました。
    以上となります。
    ご清聴ありがとうございました。

    View full-size slide