Upgrade to Pro — share decks privately, control downloads, hide ads and more …

3次元点群からメッシュモデルを作成する ポアソン法について

3次元点群からメッシュモデルを作成する ポアソン法について

本スライドは2026年6月10日に開催されたオンライン勉強会(AIMTG)にて利用されました。
イベントページやYoutube動画は以下の通りです。

イベントページ
https://osaka-driven-dev.connpass.com/event/393851/
動画
https://www.youtube.com/live/9tse5-X2OSE?si=IfoWUzonSXxajOOh&t=1010

Avatar for Kenta Itakura

Kenta Itakura

June 16, 2026

More Decks by Kenta Itakura

Other Decks in Technology

Transcript

  1. 災害シミュレーション技術の開発の例  3次元点群から地形や建屋などの実環境の形状を3Dモデル化し、災害シミュレーショ ンに利用した例(岩切ら, 2024) 岩切水樹, 杉山貞人, 髙島怜子, 森田友加, &

    池末俊一. (2024). 3 次元点群 データを活用した災害シミュレーション技術の開発. 三菱重工技報, 61(3), 52-56.  3Dサーフェスモデルをもとに解析格子を作成することで、建屋等の影響を考慮した詳 細な風況・災害リスク評価が可能となる
  2. メッシュモデルとは  メッシュモデルは、3D空間上の形状を三角形や四角形のポリゴンで構成したモデル カリフォルニアのオフィスチェア (出典 Artec 3D) https://www.artec3d.com/ja/3d-models/california-office-chair 入力の点群 メッシュモデル

    ボールピボット法で メッシュ化  点群からメッシュモデルを生成する方法として以下のアルゴリズムが有名 • Ball pivoting法 (Bernardini, 1999) • Poisson surface reconstruction法 (Kazhdan, 2006)
  3. ポアソン法とは バックパック型スキャナー  本スライドは以下の論文(Poisson Surface Reconstruction)の概要を紹介 Kazhdan, M., Bolitho, M.,

    & Hoppe, H. (2006, June). Poisson surface reconstruction. In Proceedings of the fourth Eurographics symposium on Geometry processing (Vol. 7, No. 4).
  4. ポアソン法によるメッシュ生成の流れ バックパック型スキャナー ポアソン法では、以下の手順でメッシュを生成する 1.入力点群の法線を代表するベクトル場 V x を構成する 2. V x

    と整合する占有関数𝜒 x を求める 3.ポアソン方程式を解いて,空間中の𝜒を推定する 4. 𝜒 𝐱 = ො 𝛾の等値面を抽出する 5.抽出した等値面を表面メッシュとする 点群+法線 → ベクトル場V → 占有関数𝜒 → 等値面 → メッシュ 本スライド以降では,各ステップを順に説明する。
  5. 点群の法線ベクトルを代表するベクトル場をつくる バックパック型スキャナー iPhone12 LiDAR [動画]  影響関数𝜓 x の値は一般に点 x𝑖

    からの距離が大きいほど小さくなる  つまり、𝜓 x − x𝑖 は、ある点xが、x𝑖 から遠いほど小さくなる。
  6. 物体の内外を決定する占有関数を作る iPhone12 LiDAR [動画]  点群から表面を再構成するにあたり,まず空間中の各点が物体の内部に 属するか外部に属するかを表す理想的な関数を考える。 𝜒 x =

    ቊ 1 if x is inside the surface 0 if x is outside the surface  このような関数を占有関数𝜒 x とすると,概念的には以下のように 定義できる。  しかし、点群は離散的なデータであり、ノイズなども含むため、点が有る空間が 物体の内部であるとは限らず、点が無い空間が物体の外部とは限らない。
  7. 物体の内外を決定する占有関数を作る バックパック型スキャナー iPhone12 LiDAR  占有関数𝜒 x は表面付近で表面に垂直な内外方向に値が急激に変化する ため,以下の式で表される勾配∇𝜒 x

    は表面の法線方向を表す。 ∇𝜒 = 𝜕𝜒 𝜕𝑥 , 𝜕𝜒 𝜕𝑦 , 𝜕𝜒 𝜕𝑧  したがって,入力点群の法線から構成したベクトル場V x と∇𝜒 x が整合する ように𝜒を求めることで,法線情報に基づいた表面を復元できる。 ※𝜒の定義により ∇χ の向きは内向きまたは外向きになる。ここでは入力点群 の法線方向が一貫していることが重要である。
  8. 物体の内外を決定する占有関数を作る バックパック型スキャナー iPhone12 LiDAR [動画]  そこで、𝜒 x の勾配∇𝜒が法線ベクトルV x

    と近しくなるようにしたい。  つまり、以下の式で表される、𝜒 x とV x の誤差を表すエネルギー関数Ε 𝜒 の値が最小値を取るような𝜒を求めたい。  ここで、点群を包む十分広い三次元空間をΩとし、その外殻を𝜕Ωとすると、 以下の式となる。 𝐸 𝜒 = න ∇𝜒 𝐱 − 𝐕 𝐱 2 𝑑𝐱 𝐸 𝜒 = න Ω ∇𝜒 𝐱 − 𝐕 𝐱 2 𝑑𝐱 ・・・式2
  9. 物体の内外を決定する占有関数を作る バックパック型スキャナー iPhone12 LiDAR [動画]  先ほど定義した𝜀と𝜙 x を用いて、以下の様に𝜒 x

    を変化させる。  この時、微分演算子の線形性により、以下のようになる。 𝜒 𝐱 → 𝜒 𝐱 + 𝜀𝜙 𝐱 ∇ 𝜒 𝐱 + 𝜀𝜙 𝐱 = ∇𝜒 𝐱 + 𝜀∇𝜙 𝐱
  10. 物体の内外を決定する占有関数を作る バックパック型スキャナー iPhone12 LiDAR [動画]  これをΕ 𝜒 の定義の式に代入すると以下のようになる。 

    これを展開すると以下のようになる。 𝐸 𝜒 + 𝜀𝜙 = න Ω ∇𝜒 + 𝜀∇𝜙 𝐱 − 𝐕 2 𝑑𝐱 𝐸 𝜒 + 𝜀𝜙 = න Ω ∇𝜒 − 𝐕 2 + 2𝜀 ∇𝜒 − 𝐕 ⋅ ∇𝜙 𝐱 + 𝜀2 ∇𝜙 𝐱 2 𝑑𝐱
  11. 物体の内外を決定する占有関数を作る バックパック型スキャナー iPhone12 LiDAR [動画]  これを𝜀で微分することで、以下のようになる。  ここで、 Ε

    𝜒 は𝜒に対して下に凸なので、最小値を取るような𝜒に対して 𝜒の値を微小変化させたときにΕ 𝜒 が変わらないような𝜒の値において 𝜒は最小値を取り、この時のΕ 𝜒 の傾きは0である。 𝑑 𝑑𝜀 𝐸 𝜒 + 𝜀𝜙 = න Ω 2 ∇𝜒 − 𝐕 ⋅ ∇𝜙 𝐱 + 2𝜀 ∇𝜙 𝐱 2 𝑑𝐱 ・・・式3
  12. 物体の内外を決定する占有関数を作る iPhone12 LiDAR [動画]  ここで、Ε 𝜒 が最小値を取るとき、 Ε 𝜒

    + 𝜀𝜙 の値は𝜖 = 0の時に最小値をと り、この時の傾きは、0であるから、以下の式を満たす。  これと、𝜖 = 0を式3に代入すれば以下のようになる。 ቤ 𝑑 𝑑𝜀 𝐸 𝜒 + 𝜀𝜙 𝜀=0 = 0 න Ω 2 ∇𝜒 − 𝐕 ⋅ ∇𝜙 𝐱 𝑑𝐱 = 0 ・・・式4
  13. 物体の内外を決定する占有関数を作る バックパック型スキャナー iPhone12 LiDAR [動画]  移項すると以下のようになる。 න Ω 𝐀

    ⋅ ∇𝜙 𝐱 𝑑𝐱 = න Ω ∇ ⋅ 𝜙 𝐱 𝐀 𝑑𝐱 − න Ω 𝜙 𝐱 ∇ ⋅ 𝐀 𝑑𝐱 バックパック型スキャナー  これをΩで積分することで以下のようになる。 න Ω ∇ ⋅ 𝜙 𝐱 𝐀 𝑑𝐱 = න Ω ∇𝜙 𝐱 ⋅ 𝐀 𝑑𝐱 + න Ω 𝜙 𝐱 ∇ ⋅ 𝐀 𝑑𝐱 ・・・式5
  14. 物体の内外を決定する占有関数を作る バックパック型スキャナー iPhone12 LiDAR  ここで、式4の両辺を2で割ると次の式が成り立つ。  よって、Α = ∇𝜒

    − Vとすると以下のようになる。 න Ω ∇𝜒 − 𝐕 ⋅ ∇𝜙 𝑑𝐱 = − න Ω ∇ ⋅ ∇𝜒 − 𝐕 𝜙 𝑑𝐱 ・・・式7 න Ω ∇𝜒 − 𝐕 ⋅ ∇𝜙 𝐱 𝑑𝐱 = 0
  15. 物体の内外を決定する占有関数を作る バックパック型スキャナー iPhone12 LiDAR  この式が任意の𝜙に対して成り立つためには、𝜙に掛かる項が 0 である必要 があることから、次の式が成り立つ。 

    つまり、∇ ∙ ∇𝜒 = ∆𝜒の値が∇ ∙ Vと等しくなればいいことが分かる。 ∇ ⋅ ∇𝜒 − 𝐕 = 0  これを式7に代入して、以下の式が成り立つ。 න Ω ∇ ⋅ ∇𝜒 − 𝐕 𝜙 𝑑𝐱 = 0
  16. ポアソン方程式を解いて𝜒の値を推定する バックパック型スキャナー iPhone12 LiDAR [動画]  ここで、V(x)の発散∇ ∙ Vは以下の式で表される。 

    さらに、∆𝜒は以下の式で表される。 ∇ ⋅ 𝐕 = 𝜕𝑉 𝑥 𝜕𝑥 + 𝜕𝑉 𝑦 𝜕𝑦 + 𝜕𝑉 𝑧 𝜕𝑧 Δ𝜒 = ∇ ⋅ ∇𝜒 = 𝜕2𝜒 𝜕𝑥2 + 𝜕2𝜒 𝜕𝑦2 + 𝜕2𝜒 𝜕𝑧2
  17. バックパック型スキャナー iPhone12 LiDAR [動画]  ここで、式1より V(x)は既知なのでその発散∇ ∙ Vは求めることができ、 ポアソン方程式として以下の式を解くことで𝜒を求める。

    𝜕2𝜒 𝜕𝑥2 + 𝜕2𝜒 𝜕𝑦2 + 𝜕2𝜒 𝜕𝑧2 = 𝜕𝑉 𝑥 𝜕𝑥 + 𝜕𝑉 𝑦 𝜕𝑦 + 𝜕𝑉 𝑧 𝜕𝑧 ポアソン方程式を解いて𝜒の値を推定する
  18. 占有関数𝜒の等値面を決定する バックパック型スキャナー iPhone12 LiDAR [動画]  しかし、以下の式で表されるように、𝜒 x に任意の定数を加えてもΔ𝜒は 変化しないため、ポアソン方程式だけでは𝜒

    x の絶対値は一意に定まらない。  ただ、𝜒 x の絶対値自体は定数加算によって変化しうるが、どの位置で値が 高く、どの位置で低いかという空間的な構造は変わらない。  したがって、表面抽出において重要なのは𝜒 x の絶対値ではなく、 その等値面の位置関係である。 Δ 𝜒 + 𝐶 = Δ𝜒
  19. バックパック型スキャナー iPhone12 LiDAR [動画]  ここで、点群の密度が大きい点では小さくなり、点群の密度が小さい点では 大きくなるように設定された、点xi に対応する密度wi を用いて、入力点群の𝜒 の値の重み付き平均を以下のො

    𝛾で定義する。 ො 𝛾 = σ𝑖=1 𝑁 𝑤𝑖 𝜒 𝐱𝐢 σ 𝑖=1 𝑁 𝑤𝑖  入力点群は物体表面上に存在すると仮定できるため、点群上での𝜒の代表 値ො 𝛾を等値面の基準値とできる。 占有関数𝜒の等値面を決定する
  20. ポアソン法を用いた時のメッシュ構築例 バックパック型スキャナー iPhone12 LiDAR [動画]  空間分割が粗い場合(depth=3) • 計算速度は速くなる •

    表面メッシュは粗くなり、元の形状を把握できない スライド内のメッシュは東京都デジタルツイン実現プロジェクトにより公開されている 区部点群データを用いて生成しています
  21. ポアソン法を用いた時のメッシュ構築例 バックパック型スキャナー iPhone12 LiDAR [動画]  空間分割が細かい場合(depth=9) • 計算速度は遅くなる •

    表面メッシュは点群の細かな形状まで再現できる スライド内のメッシュは東京都デジタルツイン実現プロジェクトにより公開されている 区部点群データを用いて生成しています
  22. ポアソン法を用いた時のメッシュ構築例 バックパック型スキャナー iPhone12 LiDAR [動画]  ポアソン法では、点群を囲む計算領域Ωの中で関数𝜒を求め, 表面を復元する。  このとき、点群を囲む計算領域Ωをどれくらいの

    大きさにするのかを決めるパラメータがscaleで ある。  引き続き右に示す点群を用いて、scaleを 変化させたときのメッシュの違いを比較する。 スライド内のメッシュは東京都デジタルツイン実現プロジェクトにより公開されている 区部点群データを用いて生成しています
  23. ポアソン法を用いた時のメッシュ構築例 バックパック型スキャナー iPhone12 LiDAR [動画]  計算領域が小さすぎる場合(scale=0.5) • 点群の一部分が計算領域からはみ出るため、 メッシュ化されない

    • 計算領域内では適切にメッシュ化できる スライド内のメッシュは東京都デジタルツイン実現プロジェクトにより公開されている 区部点群データを用いて生成しています
  24. ポアソン法を用いた時のメッシュ構築例 バックパック型スキャナー iPhone12 LiDAR [動画]  計算領域が適切な場合(scale=1.1) • 点群全体よりも少しだけ計算領域が大きい •

    細部まで適切にメッシュ化できる スライド内のメッシュは東京都デジタルツイン実現プロジェクトにより公開されている 区部点群データを用いて生成しています
  25. ポアソン法を用いた時のメッシュ構築例 バックパック型スキャナー iPhone12 LiDAR [動画]  計算領域が大きすぎる場合(scale=1.5) • 不要な空間まで計算対象となるため、 計算効率が低下する

    • 範囲が広くなるため、同じdepthでは実質的な 分割が粗くなり、細部形状が再現されにくくなる スライド内のメッシュは東京都デジタルツイン実現プロジェクトにより公開されている 区部点群データを用いて生成しています