「脳波でうごくVTuber」の作り方


紹介

富士通インキュベーションセンターの「シュウゾウ」さんが、
「脳波で動くVTuber」を作成したので紹介します。

本記事について

  • Youtubeに投稿した動画「脳波でうごくVTuber」の作り方の記事
    • 上記リンクのVTuber動画作成の解説
  • ユニティちゃんの頭についているリボンを脳波でうごかす

環境

  • MacBook Pro 2017, macOS High Sierra 10.13.4
    • MindWave自体はWindowsでも利用可能
  • MindWave Mobile
    • NeuroSky社の脳波計

背景

脳波でうごくVTuberとは?

  • 脳波計を頭に装着し脳波を計測。脳波でVTuberをうごかす

脳波をVTuberに適用することで

  • VTuberの表現の幅が広がる
    • 手が離せない状況でも使える(ゲームプレイ中など)
    • 自動的に感情表現してくれる
  • 自分の今の感情を大まかに伝えることができる
    • 脳波は正直?

使用したもの

構成と解説

①脳波計MindWaveから脳波を取得

1. PC上の環境構築

  • NeuroSkyのデベロッパーサイトのBrainwave Starter Kit Product Support

    使用したのはMindWave Mobileだが、MindWave Mobile Plusのほうが抜けなく書いてあると思われる。

    Brainwave Starter Kit Product Supportの下の方にあるようにOSバージョンによる可能性がある。

    筆者は環境構築中に試行錯誤した。上記手順でうまくいかない場合は以下のようなQ&Aを使う。 MindWave won't work on Mac or Windows

  • うまくいかない場合のチェック項目

    • MindWave Managerはインストールされ、起動しているか(ステータスバーにアイコン)
    • ThinkGear Connectorはインストールされ、起動しているか(ステータスバーにアイコン)
      • 上記ソフトウェアはソースがいくつかある
      • うまくいかない場合は別のソースでインストールし直す
    • サポートサイトのQ&A MindWave won't work on Mac or Windows

2. Unityプロジェクトの作成

  • GitHub上のmindwave-unityプロジェクトをClone

    MindWaveの公式にもUnityでうごかすチュートリアルがある。

    しかし今回はうまく動かなかったためGitHub上のプロジェクトを利用させていただいた。

②Bluetooth通信

③ユニティちゃん(のリボン)をうごかす

  • 脳波を受け取る方法
    • 以下のようにセンサデータを受け取りたいスクリプトにイベントを登録
  • 今回は脳波のデータとしてMindWave独自のアルゴリズムに基づき出力されるattention値を利用
    • attention値は集中度を示すとされている

void Start () {
    MindwaveManager.Instance.Controller.OnUpdateMindwaveData += OnUpdateMindwaveData;
}

public void OnUpdateMindwaveData(MindwaveDataModel _Data)
{
    sensorData = _Data.eSense.attention;
    Debug.Log("nouha meditation : " + _Data.eSense.meditation);
    Debug.Log("nouha attention : " + _Data.eSense.attention);
}

    public void mulObject(float a, float x, float y, float z) {
        mulObject(Quaternion.AngleAxis(a, new Vector3(x,y,z)));
    }
    public void mulObject(Quaternion q) {
        Transform tr = gameObject.transform;
        tr.localRotation = q * tr.localRotation;
    }

④REC(撮影)

  • 録画はMacに標準で入っているQuick Time Playerを使用
    • ファイル->新規画面収録 で画面内を撮影
  • 編集はMacに標準で入っているiMovieを使用

まとめと所感

  • 脳波に気持ちが(一部)反映されることを確認
    • attention値は楽しんでいるときや、笑顔で会話しているときによく反応していた(主観)
    • 大まかには気持ちに沿って反応しているように感じるが、反応しない場合もあるため今後の課題と感じた
      • 考えすぎて自分の本当の気持ちがわからなくなる
      • 脳波はいまだ未知の部分が多い
    • 脳波は人によっては制御可能
      • 部署の先輩に自分の意志で脳波の値の上げ下げが可能なニュータイプな人がいる
  • 環境構築に手間取った
    • ソフトウェアのバージョンが古い記事が散見されるので注意
  • 脳波計が頭に食い込んで少し痛む
    • クリップで耳を挟む
    • 装着がシビア
      • 脳波取得のためピンポイントで装着する必要あり
      • もう少し手軽に装着できるといいと思った
  • 猫耳や尻尾を動かしたい
    • きっとかわいいに違いない