iPhoneのTrueDepthカメラを使ったリアルタイムLooking Glass表示

LKGPトップページに戻る

iPhoneのTrueDepthカメラ(iPhoneX,11,12等の前面カメラ)は、かなり正確なデプスマップが作成できると思われる。「Record3D」というiPhoneアプリを使用することで、USB経由で、TrueDepthカメラで撮影したRGB映像と、デプスマップ映像をリアルタイムにPCに転送できる(転送できるようにするには、610円の課金が必要です)。 公式サイトのリンクにある、Pythonプログラムを使用することで、これを表示できる。
このRGB映像+デプスマップ映像を使って、リアルタイムにLooking Glass映像をレンダリング表示する方法を紹介する。
なお、Lookig Glass Portraitが正式に発送されるまでには、Looking Glass社から、同様のツールが、正式に公開される可能性が大きいが、どのようなツールになるかは全く分かりません。

1. PCに「Record3D」からのストリーミング映像表示プログラム(Python)をインストールする
このページの説明に従って「demo-main.py」が動作するようにする。
Windows版Pythonのインストールはこちらを参照下さい。
opencv-pythonもインストールが必要です。インストール方法は、こちらをご参照下さい。

2. 「Record3D」をTrueDepthカメラ付きのiPhoneにインストールし、ライトニングケーブルでPCと接続する。
Record3D」アプリのSettingで、「USB Streaming Mode enabled」をONにする(要課金)


3. 「Record3D」アプリの「USB Streaming Mode」画面の下の赤いボタンを押し配信Startします。
PC側で、「demo-main.py」をダブルクリックして起動すると、下のように、RGBとデプスマップが別々のウィンドウに表示されます。


4. 「demo-main.py」を改良したPythonプログラム(2021/1/18に更新して仮想カメラに直接出力できるようにしました)をダウンロードし、ZIPファイルを解凍したpythonプログラムを、上記公式ツールをインストールしたフォルダ(\record3d)にコピーする。
「demo-main_modbysuto.py」をダブルクリックして起動すると、下のように、RGBとデプスマップがSBS映像としてひとつのウィンドウに表示されます。
改良ポイントは、SBSの一つの映像にした他、対象物の周りの黒を白に変更、さらに、「Q」キーで終了するようにした他、iPhoneの縦/横配置、仮想WEBカメラへの直接出力等に対応しました。詳しくは、添付のReadme_jpn.txtをお読み下さい


5. 最新版では、OBS Studioを使用しなくても、直接仮想WEBカメラ映像として出力できるようにしました

a) 上記の右画像/デプスマップのSBS表示をOBS StudioでWEBカメラ映像として出力する。
b) PCとLooking Glassを接続し、Google Chromeブラウザで「https://suto.bex.jp/lkg/depthwc/depth.html」を開く
カメラ選択ボックスで、OBS-Cameraを確認し、iPhone縦置きの時は、「Portrait(960x640)」、横置きの時は、「Landscape(1280x480)」ボタンを押す
d) 下のように、Looking Glass用のレンダリングされた映像が表示されるので、このウィンドウをLooking Glassに移動し、Full Screen Modeボタン
を押すと、Looking Glassに全画面表示される。