「ふしぎの国のアリスに出てくる“しゃべるお花”の世界をつくりたい」――誕生日に届いた赤い1本のバラを眺め、このプロジェクトは始まった。ITの力を駆使すれば、お花たちがしゃべり、歌い、ささやきかけてくれる――そんな世界をつくれるはずだ。
ところが、これを自力で実現するのは難しいことに気付いた筆者は、毎月末の金曜日にソフマップに並ぶ秋葉原のおじちゃんと、同じく秋葉原に生息するローアングラーのおじちゃんのもとに通い詰め、協力を仰ぐ。「お花さんたちが歌う花園を作りたいんです! どうしたらいいでしょうか」(筆者)。
「超音波合成と画像識別技術を使えばいい!」――そう力強く答える秋葉原のおじちゃんたちの答えには、致命的な問題があった。それは、編集部の予算。しゃべるお花畑を作るために10万円の予算があるはずもなく、せいぜい使えても3000円ほど。この壁を乗り越えるべく、筆者がプライベートで購入したマイクロマウス(自立型ロボット)「Pi:Co Classic2」(販売:アールティ)を使うことに。
Pi:Co Classic2を用いて音を鳴らす装置を作るため、秋月電子通商で部品を購入。はんだ付けして作ったアンプをスピーカーとステレオジャックにつなぎ、マイクロマウスと連携するプログラムを組む。PCにProcessingをインストールし、先生たちに手取り足とり教えてもらい、なんとかコードが完成した。
import ddf.minim.*; //音関係のライブラリを読み込む import processing.serial.*; //シリアルポートのライブラリを読み込む Minim minim; //たぶん呪文 AudioPlayer player; //たぶん呪文 Serial port; //たぶん呪文 void setup(){ minim = new Minim(this); player = minim.loadFile("http://ccmixter.org/contests/freestylemix/Cornelius%20-%20Wataridori%202.mp3", 2048); println(Serial.list()); String PICOPort = Serial.list()[0]; // printlnで表示された番号を入れる port = new Serial(this, PICOPort, 38400); // PICOとの通信速度の設定 size(800,800);//画面サイズ } void draw(){ background(0,0,0); //文字を消すためにbackgroundを入れる delay(50); //0.05s int data = port.read(); // String data = port.readString(); //※文字列受信 を変えて1文字受信に fill(255,255,255); //文字色 textSize(50); //文字サイズ println(data); //黒いところにインフォメーションを出す if ( data == 121) { //yesの「y」アスキーコードだったら音鳴る text("play\n\r",100,100); //playの文字を表示する位置 player.play(); //再生 } else if( data == 110){ //noの「n」のアスキーコードだったら text("stop\n\r",100,200); //stopの文字を表示する位置 player.pause(); //一時停止 // player.rewind(); //巻き戻し } } //PCの中にあるメモリの開放 void stop(){ player.close(); minim.stop(); super.stop(); }
しゃべるお花の仕組みはこうだ。赤外線を花に放出し、反射した赤外線をPi:Co Classic2のセンサーで受光する。通常ならば赤外線は反射せずPi:Co Classic2は光が戻ってこないが、花が揺れてその赤外線が花に当たるとPi:Co Classic2が「光を受けた」と反応しPCに信号を送る。この仕組みを使って、「光を受けた」と反応したら音を出し、反射する光を受けていなければ再びPCに信号を送り音を止める。つまり、お花が揺れているときだけ歌ってくれるというわけだ。
あとは歌うお花にプロジェクターで「顔」を投影すれば、「ふしぎの国のアリス」の世界は完ぺきだ。
緑色の全身タイツに身を包んで動画を撮影。クロマキー処理で顔の部分のみを切り出し、その動画をプロジェクターでお花に映す。これで準備は万全! と思ったそのとき事件は起きた。お花に動画が映らない……!
映し出す色が悪いのか、プロジェクターの性能が悪いのか……といろいろ考えてみたが、おそらく原因はこう。花に映像をくっきりと映すには、花の大きさに合わせて短焦点で映像を当てなければならないためだ。失敗だ。
しかし、もう一度考えたい。果たしてお花に「顔」はいるだろうか。お花はお花。あの、美しい色彩、模様こそがまさに「顔」である。花よ、うたえ……! 筆者は公園に足を運んだ……電源はなかった。
社内へ戻り、会社の隅から隅まで、花という花を探した……花もなかった。しかし、お誕生日にもらった1本のバラと、草はあった。そしてついに花は……歌った!!(?)
――やはり技術というのは、そう簡単に誰もが習得できるものではない。だからこそ、おもしろい。これからも技術者たちに憧れながら、記事を書いていこうと思う。……あれ? なんか壊れた???
歌うお花の舞台裏。
小学3年生より国立音楽大学附属小学校に編入。小・中・高とピアノを専攻し、大学では音楽学と音楽教育(教員免許取得)を専攻し卒業。その後、慶應義塾大学大学院メディアデザイン研究科に入学。人と人とのコミュニケーションで発生するイベントに対して偶然性の音楽を生成するアルゴリズム「おところりん」を生み出し修了した。
大学院を修了後、2011年にアイティメディアに入社。営業配属を経て、2012年より@IT統括部に所属し、技術者コミュニティ支援やイベント運営・記事執筆などに携わり、2014年4月から2016年3月までねとらぼ編集部に所属。2016年4月よりITmedia ニュースに配属。プライベートでは約1年半、ロボット「Pepper」と生活を共にし、ロボットパートナーとして活動している。2016年4月21日にヒトとロボットの音楽ユニット「mirai capsule」を結成。
(太田智美)
Copyright © ITmedia, Inc. All Rights Reserved.
Special
PR