一枚の360度画像から「部屋のかたち」を読み解く――LGT-Netの面白さ

“`
360° PANORAMA × AI × 3D SPACE UNDERSTANDING

一枚の画像から、
「部屋のかたち」を読み解く。

LGT-Netは、360度パノラマ画像を見て、床、壁、天井の境界を推定し、 その空間を三次元の形として組み立て直す技術です。 写真を眺めるだけだったコンピュータが、 「ここはどんな部屋なのか」を考え始めます。

“`
“`
360度パノラマ画像をAIが解析し、部屋の三次元モデルへ変換するイメージ
360度パノラマ画像から、AIが床・壁・天井の構造を推定し、 三次元の部屋モデルへ変換するイメージ。

LGT-Netとは何か

私たちが部屋の写真を見るとき、意識しなくても壁の向き、 床の広がり、天井の高さ、部屋の奥行きを想像しています。 LGT-Netは、この人間にとって自然な空間認識を、 360度パノラマ画像から実行しようとするAIです。

正式名称は LGT-Net: Indoor Panoramic Room Layout Estimation with Geometry-Aware Transformer Network です。2022年のコンピュータビジョン分野の国際会議 CVPRで発表され、研究チームによる 公式PyTorch実装 も公開されています。

一般的な物体認識AIは、画像の中に 「ソファがある」「テレビがある」「人物がいる」といった 対象を見つけます。 一方、LGT-Netが主に見ているのは、家具そのものではありません。 家具の後ろに隠れている床、壁、天井のつながりを読み取り、 部屋の骨格を推定します。

出力されるのは、床と壁の境界、壁と天井の境界、 部屋の平面的な輪郭、壁面の配置、部屋の高さに関する情報です。 それらを組み合わせることで、 写真の中に隠れていた部屋の形を3Dモデルとして再構成できます。

LGT-Netの面白さは、写真の中に「何が写っているか」だけでなく、 その場所が「どのような空間として成り立っているか」を AIが考える点にあります。

なぜ360度パノラマ画像なのか

一般的なスマートフォン写真には、 カメラを向けた方向しか写りません。 正面の壁は見えても、カメラの後方にある壁や、 左右の壁がどのようにつながっているかまでは分かりません。

360度パノラマ画像には、カメラを中心とした前後左右、 天井、床を含む周辺空間が一枚の画像に記録されています。 横長の画像として表示されますが、 画像の左端と右端は、実際の空間では連続しています。

つまり、見た目は長方形でも、情報としては カメラの周囲を一周する輪になっています。 AIが一部分だけでなく部屋全体を観察できるため、 通常の写真よりも空間の形を推定しやすくなります。

一枚の画像なのに、前も後ろも、右も左も含まれている。 360度パノラマ画像は「空間を包み込んだ写真」です。

この形式では、画像の上下や端に独特の歪みが生じます。 現実の空間では直線である壁や天井が、 パノラマ画像上では曲線のように見えることもあります。 LGT-Netは、こうした360度画像特有の性質を考慮しながら、 部屋の構造を読み解きます。

見えない壁を推測する面白さ

室内には、壁を隠すものが大量にあります。 ソファ、棚、カーテン、机、観葉植物、人物、家電製品。 床と壁の境界が最初から最後まで完全に見える部屋は、 むしろ珍しいでしょう。

それでも人間は、ソファの後ろに壁が続いていることや、 棚の下にも床が存在することを自然に理解できます。 見えている線だけでなく、 部屋全体のつながりから隠れた部分を補っているためです。

LGT-Netも、画像に写っている境界線を 単純になぞるだけではありません。 ある方向で境界が家具に隠れていても、 その前後の形状や反対側の壁との関係から、 境界がどこへ続く可能性が高いかを推定します。

これは単純な輪郭抽出とは異なります。 輪郭抽出では、家具によって線が途切れれば、 そこで情報も途切れてしまいます。 部屋の形を推定するには、見えていない場所についても 空間的に矛盾しない仮説を作る必要があります。

この「見えないものを、全体の関係から補う」という処理は、 AIが単なる画像処理装置から、 現実世界を推論する仕組みへ進んでいることを感じさせます。

局所と全体を同時に見るSWG-Transformer

LGT-Netの中心には、 SWG-Transformerと呼ばれる構造があります。 これは、画像の近い範囲を詳しく見る処理と、 部屋全体の関係を見る処理を組み合わせたものです。

Window Block

近くにある境界、壁の折れ曲がり、床と壁の接続など、 局所的な形の変化を詳しく確認します。

Global Block

画像の離れた場所も含めて、 部屋全体の輪郭や奥行きに矛盾がないかを確認します。

近くだけを見れば細かな変化は分かりますが、 それが部屋全体として正しいかは判断できません。 反対に全体だけを見れば大まかな形は分かりますが、 壁の角や境界の細かな変化を捉えにくくなります。

LGT-Netは、この二つの視点を交互に使います。 人間が地図を見るとき、 交差点の細部と街全体の位置関係を 何度も見比べるのと似ています。

さらに、LGT-Netでは水平方向の深度だけでなく、 部屋の高さに関する情報も扱います。 これによって、平面的な床形状だけでなく、 床から天井までを含む立体的な空間構造を推定します。

画像から3Dモデルになるまで

1 360度画像を入力
2 傾きと消失点を解析
3 各方向の深度を推定
4 床形状を多角形化
5 3Dモデルを生成

1.画像の向きを整える

撮影されたカメラが完全に水平とは限らないため、 最初に画像の傾きや消失点を確認します。 壁の垂直方向や、床面の基準となる方向を見つけ、 空間を推定しやすい状態へ整えます。

2.周囲一周の壁までの距離を考える

パノラマ画像を横方向に細かく分け、 カメラから見たそれぞれの方向について、 壁までの深度や床・天井との境界を推定します。

カメラを中心として、周囲を少しずつ回転しながら 「この方向の壁はどのあたりにあるか」を 一周分調べるような処理です。

3.一周分の情報を平面形状にする

各方向の推定結果をつなぐと、 カメラを中心とした部屋の輪郭が現れます。 一般的な室内のように壁同士が直角に交わる場合は、 Manhattan Worldと呼ばれる考え方を使い、 壁の向きを整えることもできます。

4.床の形を立ち上げて3D化する

推定した床の輪郭に壁と天井を付ければ、 簡易的な三次元の部屋モデルになります。 公式実装では、JSONや画像だけでなく、 OBJ、GLTF、GLBなどの形式で 3Dメッシュを書き出す処理も用意されています。

つまりLGT-Netは、画像に境界線を描いて終わる技術ではありません。 推定結果を、Web、アプリ、VR、AR、 シミュレーションなどで再利用できる 空間データへ変換できます。

応用を考えると、想像が広がる

VR・デジタルツイン

360度画像から簡易的な部屋モデルを作り、 仮想空間やデジタルツインの土台として利用できます。

不動産・物件案内

写真だけでは分かりにくい部屋の広がりを、 平面形状や3D表示で補足できます。

リフォーム・家具配置

部屋形状の原型を作り、 家具の仮配置や内装変更の検討につなげられます。

ロボット・屋内移動

壁の位置や移動可能領域を把握するための 補助的な空間情報として活用できます。

文化財・施設記録

現地の360度画像から空間の概形を残し、 後から確認できる記録資料へ発展させられます。

防災・避難訓練

室内形状に非常口、危険箇所、避難方向を重ね、 防災教育や避難シミュレーションに応用できます。

安全用途での注意: LGT-Netの結果はAIによる推定です。 実際の避難経路、建築判断、施工、測量などに使う場合は、 現地確認、図面、LiDAR、レーザー測量、 専門家による確認が必要です。

アプリやサービスへ発展させるには

LGT-Netの公式実装はPythonとPyTorchを中心に構成されています。 そのため、現実的なサービス構成としては、 スマートフォンやWebブラウザから画像を送信し、 サーバー側でAI推論を実行する方式が考えられます。

1 360度画像を撮影
2 サーバーへ送信
3 LGT-Netで推論
4 JSON・GLBを生成
5 Web・ARで表示

Webで3D表示する

JavaScriptの3Dライブラリ Three.js を使えば、GLTFやGLB形式のモデルを Webブラウザ上で表示できます。

iPhone・iPadでAR表示する

Appleの ARKitRealityKit を使い、推定した部屋形状を現実空間へ重ねられます。

ゲームエンジンで利用する

Unity などへ3Dモデルを読み込み、 VR訓練、避難訓練、家具配置、 ウォークスルーへ発展させられます。

LiDARと組み合わせる

360度画像から推定した全体形状を、 LiDARやARKitの深度情報で補正すれば、 広い範囲の理解と近距離の計測を補い合えます。

LGT-Netだけで完成した製品になるわけではありません。 しかし、部屋形状をゼロから作る工程をAIが支援することで、 人は確認、修正、情報追加といった より重要な作業に集中できます。

できることと、できないこと

通常のスマートフォン写真にはそのまま使えない

LGT-Netが前提とするのは、 原則として周囲一周を記録した 正距円筒図法の360度パノラマ画像です。 一般的な横長写真や、 撮影範囲が途中で終わるパノラマ写真とは異なります。

家具を精密に3D化する技術ではない

推定対象は、主に床、壁、天井によって構成される 部屋の外形です。 ソファ、机、棚、家電、人物などを 個別の3Dモデルとして復元するものではありません。

実寸を自動的に保証するものではない

一枚の画像だけでは、現実の尺度を完全には決定できません。 カメラ高さなどの基準値を与えることで おおよその寸法へ変換できますが、 建築測量と同じ精度になるわけではありません。

特殊な部屋や強い遮蔽では誤差が生じる

曲面壁、吹き抜け、階段、鏡、ガラス、 大きな開口部、極端に家具が多い環境などでは、 推定が不安定になる場合があります。

LGT-Netは「正確な図面を自動作成する装置」というより、 写真から部屋形状の原案を素早く作る技術として捉えると、 その価値が分かりやすくなります。

写真が、空間データへ変わる

これまで部屋の3Dモデルを作るには、 寸法を測り、図面を確認し、 3DCGソフト上で床や壁を一つずつ作る必要がありました。

LGT-Netのような技術を使えば、 360度画像を入力するだけで、 AIが床形状、壁の位置、天井との境界を推定し、 3Dモデルの原型を作れます。

もちろん、AIが出した結果を人が確認し、 必要に応じて修正する工程は残ります。 しかし、何もない状態から作り始めるのと、 AIが作った原案を修正するのとでは、 作業量が大きく異なります。

これまで写真は、現場を人が見返すための記録でした。 これからは、その写真をAIが読み取り、 平面形状、3Dモデル、避難経路、 シミュレーションの入力データへ変換できるようになります。

一枚の360度画像が、写真から平面図へ、 平面図から3Dモデルへ、そして新しいサービスの土台へ変わる。 その変化こそ、LGT-Netの本当の面白さです。

出典・関連リンク

  1. Jiang, Z., Xiang, Z., Xu, J., Zhao, M., “LGT-Net: Indoor Panoramic Room Layout Estimation with Geometry-Aware Transformer Network,” CVPR 2022. CVPR Open Access
  2. LGT-Net公式ソースコード。 GitHub: zhigangjiang/LGT-Net
  3. LGT-Net論文のarXiv版。 arXiv:2203.01824
  4. Sun, C. et al., “HorizonNet: Learning Room Layout with 1D Representation and Pano Stretch Data Augmentation,” CVPR 2019. 公式GitHub
  5. Wang, F. et al., “LED²-Net: Monocular 360° Layout Estimation via Differentiable Depth Rendering,” CVPR 2021. 公式GitHub
  6. PSMNet: Position-aware Stereo Merging Network for Room Layout Estimation. 公式GitHub
  7. DMH-Net: 3D Room Layout Estimation from a Cubemap of Panorama Image via Deep Manhattan Hough Transform. 公式GitHub
  8. Bi-Layout: No More Ambiguity in 360° Room Layout via Bi-Layout Estimation. 公式GitHub
  9. Apple ARKit。 Apple Developer Documentation
  10. Apple RealityKit。 Apple Developer Documentation
  11. Three.js。 公式サイト

本記事は公開論文および公開リポジトリをもとに、 技術の概要と活用可能性を一般向けに整理したものです。 各プロジェクトの利用条件、ライセンス、 対応環境については、リンク先の最新情報をご確認ください。

360度画像とAIから、新しい空間サービスを考える

360度画像解析、3D空間生成、AR表示、LiDAR連携、 防災・教育・施設管理への応用など、 技術検証やシステム構築についてご相談いただけます。

技術活用について相談する
“`

No responses yet

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


Back to top