指揮する動きは簡単そうなので、早速やってみよう。
まず、位置合わせをする。Webカメラの前に立ち、表示された人型のガイドラインに合わせて両腕を伸ばす。AIが瞬時に身体の姿勢を認識して、実際にとったポーズを画面上の棒人間にリアルタイムで反映する様子が分かる。
位置合わせが済むと、目の前にオーケストラが登場する。さぁ、モーツァルトの名曲「アイネ・クライネ・ナハトムジーク」の演奏だ。なお、便宜上オーケストラと書いているが、厳密には違っていて、バイオリン、ビオラ、チェロ、コントラバスによる弦楽合奏を指揮する。
腕を動かすと、振る速度に応じて中央のメーターが動く。どうやら、針が垂直になると演奏のテンポがちょうど良いらしい。
ただ、指揮の仕方が悪いのか、なかなかテンポをキープできない。演奏が速くなったり遅くなったりして、止まってしまうこともあった。指揮者の指示に忠実なのは良いのだが、この際もう指揮は無視してきちんと演奏してほしい。
主旋律を目立たせたいフレーズでは、左側の高音パートに向かって指揮した。すると、演奏はもちろん、画面のアニメーションも反応し、バイオリンだけ動き、左側のビオラとチェロ、コントラバスは演奏を止めた。演奏者が思うように反応するのは、とても気持ちが良い。
テンポは安定しないものの、とにかく演奏を止めないように最後まで指揮者を演じきった。腕を激しく振り続けたせいか、脈拍が130以上まで上がり、汗をかき、意図せず良い有酸素運動になったようだ。
振り返ってみると演奏内容はひどいもので、指揮の難しさを思い知らされた。ところが、筆者の努力は認められたらしい。最後に大きな拍手と「ブラボー」の評価をもらえた上に、ばらの花がステージに投げ込まれた。
なお、サンプルビデオ(YouTubeに移動)では、もう少しスムーズに演奏できている。処理能力が高いPCを使えば、もう少し上手な演奏を披露できたかもしれない。
今回使ったSemi-Conductorで演奏できる曲は、アイネ・クライネ・ナハトムジークしかない。ただしGitHubでソースコードを入手できる、Webアプリの改造が可能だ。
鳴らす楽器の音声データ、演奏する曲のMIDIデータを差し替えれば、好きな曲を好きな楽器で演奏させ、それを指揮して楽しめる。
Semi-Conductorは、Googleの機械学習モデル「PoseNet」を利用して、Webカメラで捉えた人の姿勢を認識している。つまり、Semi-ConductorはPoseNetの使用方法や、MIDIデータと音声データの処理方法をデモンストレーションするためのコンテンツといえる。
Experiments with Googleには、PoseNetを使ったコンテンツが他にもいくつかある。例えば「Touch Type」は、手を動かすと画面に表示された文字が乱れ、面白い映像になるWebアプリだ。
さらに、PoseNetを使っていないが、体の動きを絵や音に変えるWebアプリ「Sound Canvas」や「Clarion Lite」も公開されている。
PCでWebアプリを操作するというと、ついマウスやキーボードを最初に考えてしまう。しかし、PCに触れずに手や身体の動きでも操作できると思い出させてくれるコンテンツだ。WebカメラやAIを手軽に使えるようになったため、Semi-ConductorやTouch Typeのように手の動きで操作するコンテンツやUI(ユーザーインタフェース)を、処理の負荷を抑えて採用できる。新しいサービスやUIに取り入れるのも面白いかもしれないし、これまでより適した操作性を実現できるかもしれない。
Copyright © ITmedia, Inc. All Rights Reserved.
Special
PR