![見出し画像](https://assets.st-note.com/production/uploads/images/78061186/rectangle_large_type_2_89aaf66df1917ee27668d70b3511ba5a.png?width=1200)
ループクローズするiPhone LiDAR スキャンのやり方
まえがき
この記事内では、iPhone 12 Pro 等に搭載されている ToFセンサーを使った3Dスキャンについて、iPhone LiDAR スキャンと呼称します。
この記事を読むと分かること
iPhone LiDAR スキャンを行う際に、スキャンの位置ズレによるモデルの破綻を抑える方法を知ることができます。ただし、完全なものではありません。
方法の項に、実際にやってみた動画を用意しています。この動画を見てもらえれば方法は分かると思いますので、この記事自体は補足的なものです。
なぜこのやり方が必要なのか
それは、実際に使ってみればイヤというほど分かります。ある程度の広さをスキャンする際、同じ場所を2度スキャンすると、2回目のスキャンでは1回目と位置がズレてしまうことが多いです。それを解消するためです。
![](https://assets.st-note.com/img/1651940770131-4z61utP0JV.png?width=1200)
私は画像処理や自己位置推定の専門家ではないので、理論などの解説ではなく、体験を共有することしかできません。
iPhone LiDAR スキャンで使われている技術に関心があれば、以下に示す記事をはじめ、他の方の解説を探してみてください。特にWWDCの動画では、この記事が扱う方法の仕組みについて解説されているようです。
iPhone(iPad) LiDARの裏で動いている技術|ソウ|note
ARKit のトラッキングと検出について - WWDC18 - 動画 - Apple 開発者
方法
Loop Closing for iPhone 3D Scan - YouTube
上記のとおり、動画で確認してください。
動画の内容を文字であらわすと以下の通りです。
床と壁が交差する角など、特徴的な形状がある場所からスキャン開始
床と壁を少しだけスキャンしたら一時停止する
(220509追記)少しだけスキャンするのは、一周して戻ってきた時にループが閉じたことを確認するためです。
そのままの状態で、ループさせたい場所を(地面や床に重点を置いて)スキャンしてるつもりで一周する
開始地点に戻ってきた際に、すでにスキャンしてある位置とズレていたら、ズレが調整されるまで少しずつ動く
一周してもズレていない場合や、ズレが調整されたのを確認したらスキャンを再開し、全体をスキャンする
もしズレが大きくて解消されない場合、最初からやり直す
補足としては以下があります。経験上、これを意識するとよりズレにくいと思います。
本番スキャン前のプレスキャンは、なるべく最短経路で素早くループを閉じる
移動時はなるべく端末のブレを抑える
対象との距離は2~4m程度に保つ
スキャン時に、なるべく地面や床を捉え続ける
壁や天井をスキャンする際は、定期的に地面や床に戻る
転回時は、壁のコーナー部分など、特徴的な箇所を捉え続ける
定期的に特徴的な箇所に戻り、位置がズレていないか確認する
ただし、この方法であっても、ズレを完全に無くすことは難しいです。
また、スキャン時間が長くなるにつれて、処理落ちのような挙動が出てきます。そうなると、トラッキングにも悪影響がありそうです。
他にも、ループの目印として使えるものの選定や、本番スキャンにおける適切なスキャン方法などは、更に検証の必要があるでしょう。
試したところ、道路の縁石などでもクローズしました。
平坦な場所であっても目印となるものを持ち込めば、スキャン精度の向上が期待できるかもしれませんね。
この方法に適したスキャンアプリ
この方法は、一時停止機能があるARkitを利用したスキャンアプリであれば、点群スキャンでもメッシュスキャンでも有効なはずです。
ただ、個人的には点群スキャンアプリをオススメします。
メッシュスキャン系では、同じ場所を2度スキャンすると、どうしてもテクスチャが混ざって綺麗に出ないからです。
SiteScapeやSakura3DScanなどが良いでしょう。
メッシュスキャン系の場合は一時停止機能を上手く使って、同じ場所をスキャンすることをなるべく避ければ、良好なテクスチャを得られるかもしれません。
謝辞
この動画と記事の公開にあたり、協力してくださった方々に感謝します。
Andy Putch(@AndyPutch)さん / Twitter
プレスキャンの有用性を教えていただきました。
桑山byワイクウーデザイン(@YkuwDesign)さん / Twitter
トラッキング時に地面を捉えることの重要性を教えていただきました。
その際に参加した考古学・文化財のためのデータサイエンス・サロンonline #19 | Peatixは、他にもためになる話が沢山あり、とても勉強になりました。
考古学・文化財のためのデータサイエンス・サロンonline #20 | Peatixが2022年5月9日時点でチケット販売中です。
気になる方は参加してみてはいかがでしょうか(ただし、#20ではiPhone LiDAR の話題はメインではないようです)。