楽天株式会社のインターンにて作成したサービスです. Webカメラの映像をシンプルな「えもたま」というアバターのアニメーションに置き換え, ビデオ通話で使用することができます.えもたまの色や動きはユーザの感情を反映しているので, 顔を見せずに通話相手にリアクションすることができます.

ネイティブアプリのGUIデザイン / ネイティブアプリのフロントエンド(顔認識apiや各機能の統合など)

 ビデオ通話ツールを使った多人数のオンライン会議や講義では,映像が小さい, ビデオをoffにしている人が多いなどの理由により,話者が聴衆の反応を読み取りづらいという問題があります. また,聴衆の側からすれば,大人数になるほど自分の顔を晒すことに抵抗があり,少人数でも 寝癖直しやメイクができていないなどの理由からビデオをoffにしたいという希望があります.
 このような背景から,聴衆が大人数でも,ビデオをoffにしていても,話者が聴衆の反応を 簡単に読み取れるようなサービスを作ろうと考えました.

 私たちのサービスでは,聴衆の映像を「えもたま」というシンプルなアバターのアニメーションに置き換え, このアニメーションに聴衆の感情を反映させることによって上記の問題を解決しています.
 動作手順は次のとおりです.まず,Webカメラに映る聴衆の表情から,現在の感情を推定します.次に, 推定された感情をえもたまの色や動きに対応付け,アニメーションに置き換えます. また,聴衆がWebカメラの前で手を挙げると,挙手を意味したハンドサインのアニメーションに置き換えます.

例:Happy
例:Sad

 聴衆はWebカメラの映像の代わりに,これらのアニメーションをビデオ通話の映像として利用することができます. 利用する方法は簡単で,ビデオ通話ツールのカメラ選択で,Webカメラの代わりに仮想カメラを選択するだけです.
 えもたまの種類は5種類あり,GUIからユーザの好みに応じて選ぶことができます.また,使用するWebカメラの変更も同様にGUIから可能です.

 本サービスは,Electronを用いて構築したネイティブアプリケーションと, OBS studioというライブ配信用ソフトウェアを連携させることで動作しています.
 ネイティブアプリの内部では,Face-apiによってWebカメラの映像から顔領域を抽出し,7パターンの感情を推定しています. また,挙手の検出はMediaPipeのHandposeパッケージを用いて行っています. このようにして検出した感情や挙手の情報をOBS studioに 送信し,OBS側で特定のgifアニメーションが仮想カメラのソース映像として設定されます. アバターの変更についても,同様に選択されたアバターの情報をOBS studioに送信し, gifアニメーションを設定することで行っています.

インターンにて第3位(全7チーム)

楽天インターン イベントページ

ネイティブアプリ ソースコード

インターン体験記