Ukemochi(ウケモチ)
VR空間で食事を行うための支援ソフトウェアです HMD+SteamVRを使用したアプリケーション(VRChat)などで動作します 現在,「無印VIVE」もしくは「VIVE Pro」で動作します. 「PC用HMD + Webカメラ」でも動作しますが部分的な動作です 分割ファイルなので,Ukemochi.part1.rar,Ukemochi.part2.rar,Ukemochi.part3.rarをダウンロードし,同じフォルダ内でUkemochi.part1.rarを解凍してください 動作の様子 v1.00 : https://youtu.be/Teo_Gv3lFI4 v1.10 : https://youtu.be/yiVUAb10CAA
操作説明
操作説明 VIVEコントローラの 右 コントローラ,もしくはディスプレイに表示されたサブメニューで操作可能です ・コントローラ 誤動作を防ぐため,グリップボタンをクリックしながらトラックパッドをクリックすることで動作するようにしていますが, 良い操作方法があれば教えて下さい 1.グリップ + トラックパッド 上 初期化ボタンです.食べ物がうまくトラッキングされていない場合や違う物体をトラッキングしてる場合に押してください また,赤いメッセージが表示された場合も押してください 2.グリップ + トラックパッド 左 右 食べ物変換ボタンです.リンゴやパンなどに食べ物を変換できます.また,器に入った食べ物(ラーメンとか)の器を変化させることができます. デバック用ですが,グリップ+トリガーボタンでも動作します 3.グリップ + トラックパッド 下 背景切り替えボタンです.現実の背景映像をONOFFすることができます. 4.グリップ + メニューボタン 表示ONOFFボタンです.ソフトウェアの表示をONOFFすることができます. 5.グリップ + トリガー + トラックパッド(Webカメラモードのみ) Webカメラモードで表示する画面の位置を調整できます.右手のコントローラの位置に画面が移動するので,Webカメラの位置に合わせてボタンを離してください. ・サブメニュー キーボードの”M”キーで表示されます. 1.Reset チェックボックス 初期化ボタンです.食べ物がうまくトラッキングされていない場合や違う物体をトラッキングしてる場合に押してください また,赤いメッセージが表示された場合も押してください 2.Food 番号 食べ物変換機能です.リンゴやパンなどに食べ物を変換できます.また,器に入った食べ物(ラーメンとか)の器を変化させることができます. 0-6までの番号をキーボードで入力し,Enterキーを入力することで動作します 3.Overlay チェックボックス 背景切り替えボタンです.現実の背景映像をONOFFすることができます.
環境構築・実行
食事検出を行いたい場合 1.libjpeg-turboの環境構築ファイルをDLし,インストールし実行 (https://sourceforge.net/projects/libjpeg-turbo/files/2.0.4/のlibjpeg-turbo-2.0.4-vc64.exe) 2. Ukemochi\Server\python_console.batをダブルクリックで起動 3. consoleが開かれてpythonのプログラムが走るので、Ready...とログが2つ出るまで待機 4.UKEMOCHI\App\ukemochi.exeを起動する 5.Ukemochi.exeが起動したら,使用しているPCのIPアドレスを入力する 6.リンゴのマークのStartボタンをマウスクリックorVIVEコントローラで押すことで起動します Webカメラの映像だけ欲しい場合 1.libjpeg-turboの環境構築ファイルをDLし,インストールし実行 (https://sourceforge.net/projects/libjpeg-turbo/files/2.0.4/のlibjpeg-turbo-2.0.4-vc64.exe) 2. Ukemochi\Server\python_console_camera_only.batをダブルクリックで起動 3. consoleが開かれてpythonのプログラムが走るので、Ready...とログが2つ出るまで待機 4.UKEMOCHI\App\ukemochi.exeを起動する 5.Ukemochi.exeが起動したら,使用しているPCのIPアドレスを入力する 6.リンゴのマークのStartボタンをマウスクリックorVIVEコントローラで押すことで起動します ※IPアドレスはコンソールにipconfigと入力して表示されるIPv4 アドレスを指しています
動作環境
Windows 10 CPU: 3.7GHz CPU i7-8700k Memory: 16GB Graphics: Geforce GTX 1080ti で動作確認 Webカメラモードなんかはもうちょっと低スペックでも動作するかもしれません
機能説明
Ukemochi.exeで表示される各チェックボックスをマウスでクリックすることでオプション機能が使用できます. ・localhost(High Latency) ONにすると,IPアドレスを入力しなくても動作するようになります.ただ,遅延が大きくなります. ・Hide IP Address 表示されるIPを隠すことができます.配信用を想定しています. ・Save IP Address ONにしたまま実行すると,入力したIPアドレス,カメラ番号,WebカメラOnOff(Use Web Camera)をjsonで保存でき,次に起動した際の入力の手間を省くことができます. ・Use Web Camera ONにするとWebカメラモードに設定されます.VIVEのフロントカメラではなく,PCに接続したWebカメラの映像を使用します ・・Web Camera Number Webカメラモードの時に使用するカメラを選択できます.使用したいWebカメラの番号(0~253)を何らかの方法で調査して,入力してください. ・VIVE Pro Mode ONにするとVIVE Proモードに設定されます.旧式VIVEではなく,VIVE Proの左目の映像を使用します
その他の拡張機能
・CPU使用率抑制機能 CPUの使用率が100%を超え,正常に動作しない場合はCPU使用率を抑制することが可能です Ukemochi\Server\src\tracking\server_tracking.py の task_wait_time = 0.0 の値を増加させると遅延の増加と引き換えにCPU使用率を下げることが可能です ・HMDに表示されるスクリーンの大きさ変更機能 スクリーンの大きさ(奥行き方向の距離)を変更することが可能です Ukemochi\App\Ukemochi_Data\StreamingAssets\IPAddress.json の "AR_z":"0.8" の値を変化させてください また,スクリーンが全く表示されない場合,この値を変化させることで表示される可能性があります(おそらく環境によって,SteamVRの位置情報同期が失敗していることが原因) "AR_z":"0.8" の値を"-28"や"-29"に変更すると表示される可能性があります. 再現性が取れないバグですが,修正予定です. ・サブメニューの初期表示設定 サブメニューを最初から表示させたくない場合, Ukemochi\App\Ukemochi_Data\StreamingAssets\IPAddress.json の "Sub_UI_bool_json":"True" を "Sub_UI_bool_json":"False" に変更してください
動かない場合
・jpeg = TurboJPEG(lib_path)と表示される libjpeg-turboの環境構築が完了していません 手順1から環境構築ファイルをDLし,インストールしてください ・CUDA out of memory GPUのメモリが足りていません GTX1080(8GB)以上で動作確認を行っています ・Ready...とログが2つ出たが,アプリ画面が青色 サーバ側は動作しています SteamVRの設定から、カメラの項目を確認し, 1.カメラがONになっているか 2.カメラのテストボタンを押して、カメラが正常に動いているか を確認してください ・食べ物候補を発見したときに急激に重くなる 現在の既知のバグです 一部の環境だと発生するようです SteamVRが落ちた場合は,SteamVR を再起動し, Ukemochi\App\Ukemochi.exeを再度実行してください ・常に動作が重い,カクつく CPUの性能が足りていないかもしれません 正常に動作するスペックを現在調査中 ・コントローラの入力が反映されない グリップボタンを押しながら各ボタンを押してください トラックパッドの場合は触るだけではなく,クリックが必要です もしくは,アプリ側がコントローラを見失ってる可能性があります その場合は,再起動してください もしくはサブメニューを使用してください
※注意事項
ソフトウェアの遅延を最小限にする都合上,CPUを全力で使用します 具体的には,スペックが足りない場合,CPU使用率が100%を超えます 実行する際には,作業の保存,CPUの温度等に注意してください 不具合が起きた場合,こちらでは補完することができません その他の拡張機能のCPU使用率抑制機能を利用してください
アップデート履歴
[2020-02-15: v1.00] 公開 [2020-09-26: v1.10] Webカメラモード追加 [2020-09-26: v1.11] Bug fix [2020-09-28: v1.12] Webカメラの番号確認用プログラム追加 [2020-09-28: v1.13] Webカメラだけ使う機能(食事検出を行わない)を追加 [2020-12-18: v1.14] modelのpathを修正 [2021-10-21: v1.15] サブメニュー機能を追加,いくつかのバグ修正 [2021-10-21: v1.16] ARTimeWarpingを追加,VIVE関連のバグ修正 [2022-06-01: v1.18] VIVE Pro対応,サーバの起動速度の更新と遅延削減
連絡先
Twitter : @signs0302
メディア等
・公式サイト https://signs0302.github.io/ukemochi/ ・バーチャル内で“本当の食事”を体験できるか? 奈良先端大と東大が検証(ITmedia NEWS) https://www.itmedia.co.jp/news/articles/2205/09/news020.html ・Ukemochi: A Video See-through Food Overlay System for Eating Experience in the Metaverse(CHI 2022) https://dl.acm.org/doi/10.1145/3491101.3519779