🐮

【サンプル動作確認】MediaPipeによるAndroidスマホでのハンドトラッキング【Unity】

2022/12/12に公開

この記事のゴール

  • サンプルプロジェクトをビルドしたアプリを起動して、カメラ映像からハンドトラッキングを実行する

環境および環境構築

  • Windows 10 Pro
    • 用意してもらっているAndroid用Pluginを使用するだけならHomeでもいいと思います(未確認)
  • Unity 2021.3.3f1
    • リポジトリのREADMEに記載されているUnityバージョンを使用しました。
  • Xperia 1iii(AndroidOSが搭載されたスマートフォン実機)

手順

環境構築から実機での動作確認までの手順を記載します。

Unity インストール

  1. 下記のUnity公式ページよりUnity2021.3.3f1の必要なファイルをDLする

  2. DLしたインストーラを使用してUnityをインストールする

  3. UnityHubを起動し、インストールのタブをクリックし「リストに追加」からインストールしたUnityのバージョンを追加(Unity Hubに登録)する。

プロジェクトファイル ダウンロード

  1. リポジトリのリリースページより必要なファイルをDLする
  2. DLした各ファイルを解凍する

プロジェクトファイル 準備

  1. 解凍したSource Code(フォルダ名:MediaPipeUnityPlugin-0.10.1)のPackages/com.github/homuler.mediapipe以下に、もう一方の解凍したcom.github.homuler.mediapipe-0.10.1.tgz(フォルダ名:package)のpackage以下のファイルをコピーする
  2. UnityHubにMediaPipeUnityPlugin-0.10.1を追加する
  3. プロジェクトを起動し、Assets/StreamingAssets以下にPackages/MediaPipe Unity Plugin/Runtime/Resources以下の28つのファイル(.bytes、.txt)をコピーする

実機確認

  1. PCと実機を接続しビルドする
  2. アプリが起動したら、実機画面右上のメニューをタップしHandTrackingを選択する
  3. カメラに手を写し、ハンドトラッキングの挙動を確認する

MediaPipeについて

おわりに

最近、SONYからmocopiが発表されたこともあり、自分の中でスマホVRが熱く、スマホ+mocopi+スマホゴーグルでボディトラッキング&ハンドトラッキングを行い、トラッキングしたデータををスマホVR上のいろいろに反映できたら面白いかなと思っています。
Androidスマホで使用できる軽量なハンドトラッキングソリューションを探した結果、MediaPipe(MediaPipeUnityPlugin)に行き着きました。
VR界隈では、スマホVRはオワコンみたいな空気...というかそもそもVRやるならスタンドアロンVR(Quest2などの6DoFVRHMD)からスタートが一般的かと思いますが、そもそも「世間一般」では、スマホVRすら一度も経験していない人がメジャーで、VRを流行らせるならスマホVRからかと思っています。自分の中のモチベとしてそういうこともあって、この記事の内容を調べ投稿しました。


わかりにくいところは加筆修正+画像追加等していきます。

Discussion