KDL BLOG
KDL.make部です。先日、詠唱するとAIが反応して魔法陣が生成される「AI魔法陣」を制作して、横浜ガジェットまつりに出展してきました。制作過程や当日の出来事などをレポートします。
カスタマーサクセス(←これ部署名)の松丸です。
前回の展示ではみんなそれぞれ作りたいものを制作しましたが、今回はみんなでディスカッションして決めました。「新元号発表体験ができる」とか「かめはめ波出せる」とかいろいろな意見が出た中、「魔法陣を繰り出してみたいんですが」という川東さんの一言から、「出したい」「俺も」みたく決まったAI魔法陣の開発でした。
全体構成
まず、材料を調達するのに全体の構成を決めなくてはいけません。詠唱したら魔法陣が光り出す、というのを、マイクによる音声認識で魔法陣出現音が鳴りだし、LEDテープライトで実装した魔法陣が光る、という内容で検討しました。最初は、ざっくり、何がいるかなーという感じで進めます。
魔法陣デザイン
さて材料調達、となったところで、魔法陣のメインになるLEDテープが何メートルいるかを割り出すのに、先にデザインを決めることになりました。サイズ感などを確認するのに広い場所が必要、ということで、昼休みに会社近くの広場へ。ちょっと注目浴びてました・・。(ちゃんと地面は直して帰りました!)
直径をざっくり決めたら、デザインしながら、テープの長さを計算します。直径とか円周求めたり久しぶり。社会人になって初めて円周率計算した気がする。円周率めっちゃ重要やん。小学校で習う円周率が「3」になった、って以前話題になってたけど、3で計算してしまったら誤差でかい。ちなみに、イラストレーターで線分の長さを確認できること初めて知りました。
デザインしたものの、長さ買おうと思ったら予算オーバーで、できるだけ線分を少ないデザインで、とか、切らなくていいように5mの倍数の線分で、とか。Webとかチラシのデザインに比べると、材料費とか材料の特性なんかで、形のあるもののデザインってすごい制約が多いのね。。「曲げるの難しいから円のない魔法陣を・・」って言われたときは何を言っているのだと思ったけど、モノを作る方のすごさがちょっと分かった気がしました。
魔法陣のロジック開発
セキュリティ事業部の久野です。
主に魔法陣に詠唱すると効果音とともにLEDが光るところを開発しました。材料は、Google AIY Voice Kit V2に同梱されている「Raspberry Pi Zero WH」、「Voice Bonnet」、「スピーカー」、「ボタン」を使っています。
AIY KitsのOSイメージには、これらの機器を動作させるためのサンプルコードが含まれています。今回はサンプルコードを改変することで、「ボタンを押した後、音声を拾う」「音声の中からどの呪文を唱えたか判断し、LED魔法陣を光らせるRaspberry PiにHTTPリクエストを送信する」という処理を実装しています。
魔法陣が発動したときの効果音は、魔王魂さんの音源を利用させていただきました。
<魔法陣開発中>
全体の流れは以下のとおり。
- ボタンを押すと、使い魔の猫が喋り、一定時間マイクで音声を拾う
- 拾った音声をGoogle Cloud PlatformのCloud Speech-to-Text APIに送信する
- 唱えられた呪文を判定し、LEDを操作するRaspberry PiのWebAPIにHTTPリクエストを送信する
- LEDを操作するRaspberry Piが、唱えた呪文に合わせてLEDを光らせる&効果音を鳴らす
- 1に戻る
<会議フロアで動作確認中>
自宅で会場を想定した環境音を鳴らした状態でも動作したことから、「Cloud Speech-to-Text API すごい!」と感激していたのですが、実際にイベント会場で動かしてみると、会場の騒音の中では厳しい部分がありました・・・。詳しくは「展示当日&まとめ」に譲ります。
魔法陣の装飾とマイクの筐体
デジタルビジネス本部の川東です。
魔法陣に必要な道具として、魔法陣本体(LEDテープがそのまま見えている状態だと格好悪いので被せの布)、魔法使いの使い魔である黒猫(お腹にラズパイを入れて音声を聞き取る役割を果たす)と、魔法の杖(作ってみたかった)などを作成しました。
菜箸の回りは黒のグルーガンを塗っています。
<魔法の杖制作中>
<魔法の杖は菜箸改造>
映える写真を撮ってもらいたいという思いから、できる限りガジェットっぽいものを隠すようにしています。
<音声入力用のラズパイが入った黒猫(試作品)>
多くの来場者に抱っこされている黒猫を見て、作ってよかったなと思いました!
展示当日&まとめ
IoT特攻野郎の中西です。トラブル続きだった当日の様子をレポートします。
<KDL.make部ブース>
毎回展示の時には、事前に様々な事を想定して対策していたりしています。例えば…
- Wi-Fiは輻輳により繋がらなくなるので、現場に応じて複数手段を準備
- 電源タップは多めに、長めに準備
- 外で雨が降っていると会場の床がぬれたりする事も考慮した対策しておく
- 体験型の展示は参加者の安全に配慮する
- 音を出す場合には隣のブースへの配慮や周りの騒音が無いかなどを事前検討しておく
- 会場の机、床に傷がつかないように養生したり、剥がした時に糊が残りにくい養生テープを用意する
など。毎回少しずつではありますが経験値を高めて準備ノウハウを生かした事前準備ができていたつもりだったのですが…
今回もご多分に漏れず反省点がありました。
今回はVUIで呪文を詠唱し、呪文が成功すると魔法陣が発動するというシステムだったため、騒音内でも正常に動くように、対策はある程度したつもりでした。しかし、隣がプレゼンテーション会場だったこともあり、想定以上に展示場所付近は物音が大きく、VUIの弱点がモロに露見してしまいました。また、用意していた効果音を流すスピーカーや返答を音声で返してくれる仕組みも、周りの音が大きく全く聞こえませんでした。
<会場で改善を試みた>
せっかく来場していただいた方には、なかなかうまく体験をしていただけず、申し訳ありませんでした。。ただ、詠唱することで魔法陣を発動するという憧れは一定数あるようで、「こういう事をやってみたかった!」と嬉しいコメントを多くいただきました。また魔法陣が光る事に興味を持っていただいたり、「魔法陣と一緒に写真をとりたい」と言ってくださる方も多く、魔法陣のニーズ(?)も意外とあるんだな、と感じた次第です。
メンバー一同、このような想定外も良い経験となったことを実感している様子で、現場で展示しながらも改善案のディスカッションに花を咲かせ、次回創作への意欲を感じています。
更なるアップデートを遂げたAI魔法陣をどこかでお披露目できると思いますので、その時にはまたブログでレポートしたいと思います。
最後まで読んでいただきありがとうございました。