LRTKレフィクシア株式会社

点群OBJアップロード後に影が不自然になる原因5選

点群OBJで影が不自然に見える仕組み

点群OBJをアップロードしたあと、地面に落ちる影がモデル本体から離れて見える、表面に黒い斑点が現れる、平らな壁が波打って見える、面の境界だけが極端に暗くなるといった問題が起こることがあります。作成時の画面では正常に見えていたデータほど、アップロード後の変化に戸惑いやすいものです。

ここで最初に分けて考えたいのが、モデル表面の明暗である陰影と、モデルが地面などへ落とす投影影です。法線やスムージングは主に表面の陰影へ影響します。一方、投影影の輪郭は、基本的には光源から見た形状や、影を計算する範囲、解像度、位置補正などの影設定に左右されます。ただし、表示環境によっては法線を影の位置補正に利用することもあるため、法線の乱れが自己影の斑点を悪化させる場合があります。

影が不自然だからといって、OBJファイルそのものが破損しているとは限りません。影や陰影の見え方には、頂点座標、面の構成、法線、スムージング、座標値の大きさ、モデルの単位、表示側の照明条件など、複数の要素が関係します。元の形状が同じでも、作成環境とアップロード先で法線の扱い、裏面の表示、影の計算方法が異なれば、見え方は変わります。

OBJは、頂点座標、テクスチャ座標、頂点法線、面などを記録できる形式です。一方、作成画面で使っていた光源の位置、影の濃さ、影を計算する範囲、影の解像度などが、OBJだけで同じ状態のまま引き継がれるとは限りません。アップロード先が独自の照明や影設定を適用すれば、作成時とは違う明暗になります。

また、実務で点群OBJと呼ばれているデータには、頂点だけを記録したOBJと、点群から面を生成したメッシュOBJが混在しています。頂点だけのOBJには連続した面がないため、一般的なメッシュと同じ方法で陰影や投影影を計算できないことがあります。表示側が点を小さな円、四角、板、立体として描画する場合は、点の大きさや描画方法によって粒状の黒い模様が見えることもあります。

点群から面を生成したメッシュOBJでは、点同士を結んだ三角形や多角形が光を遮ります。そのため、点群の状態では目立たなかった測定ノイズ、重複した面、反転した面、空中に残った孤立面などが、陰影や投影影として目立つことがあります。モデル表面の色は自然でも、地面に落ちた影だけが異常な形になる場合は、見えにくい不要面や大きく張られた三角形が残っていないか確認する必要があります。

問題を正確に解決するには、見た目だけで原因を決めつけないことが大切です。最初に陰影と投影影のどちらが不自然なのかを分け、そのうえで法線、スムージング、重複面、三角形化、座標とスケールの順に切り分けると、修正すべき場所を特定しやすくなります。

原因1 法線の向きや参照関係が崩れている

点群OBJアップロード後にモデル表面の一部が黒くなる場合、最初に確認したいのが法線です。法線とは、面や頂点がどちらを向いているかを示す方向情報です。表示側は、法線と光の方向の関係を使って、表面をどの程度明るく見せるかを計算します。

平らな壁の一部だけが黒くなる、隣り合う三角形が交互に明暗を繰り返す、モデルを回転させても同じ面だけ暗く見えるといった現象は、法線の向きや参照関係に問題があるときに起こりやすくなります。面が外側ではなく内側を向いていると、裏面を表示する環境では形状自体は見えても、表面の陰影が周囲と合わないことがあります。

OBJでは、頂点座標と頂点法線が別々に記録され、面の記述からそれぞれの番号を参照できます。頂点数と法線数が一致していなくても、仕様上ただちに異常とは限りません。重要なのは、各面の各頂点に対して、意図した法線が正しく参照されていることです。

データ変換や面の削除を行ったあと、頂点番号や法線番号の対応が崩れると、本来は上を向く面へ横向きの法線が割り当てられ、平らな場所に筋状の陰影が現れることがあります。編集画面が内部で法線を再計算して表示している場合は、書き出したOBJを別の環境へ読み込むまで問題が分からないこともあります。

法線情報を含まないOBJでは、アップロード先が形状から法線を計算する場合があります。再計算自体は一般的ですが、面の接続状態、頂点の共有状態、スムージングの解釈によって結果が変わります。作成元では滑らかだった曲面が、アップロード後に三角形の集合のように見える場合は、頂点法線が保存されなかったか、読み込み側で別の法線が使われた可能性があります。

反対に、法線を含めて書き出した場合でも、保存された法線が正しいとは限りません。点群から生成した細かな面では、微小な凹凸ごとに法線が異なる方向を向くことがあります。平面として扱いたい地面や壁に細かなノイズが残っていると、光の方向に応じて小さな明暗が連続し、表面がざらついて見えます。

なお、法線の乱れは主に表面の陰影へ影響し、投影影の外形を直接変えるとは限りません。地面に落ちる影の輪郭だけが異常で、モデル表面の陰影は正常な場合は、法線よりも不要面、スケール、影の計算範囲を優先して確認します。

法線を確認するときは、編集環境で法線方向を線として表示し、想定する表側へ向いているかを見ます。平らな面で線の向きがばらついていないか、穴の周辺だけ反転していないか、複数のスキャン範囲を統合した境界で方向が変わっていないかを確認します。

閉じた立体であれば、外側を基準に法線を再計算する方法が有効です。ただし、地形のように底面がない形状や、一枚の壁のような開いた形状では、内側と外側を自動判定しにくい場合があります。自動計算だけで完了とせず、上面、下面、側面の方向を目視で確認する必要があります。

法線を修正したあとには、書き出したOBJを新しい画面へ読み戻します。作業中のモデルが正しく見えるだけでは、OBJへ保存された法線まで正しいとは判断できません。読み戻した状態で陰影が自然かを確認し、アップロード先で再計算される場合は、その仕様も含めて比較することが重要です。

原因2 スムージング設定が形状に合っていない

法線の向きが正しくても、スムージング設定が形状に合っていなければ、陰影が不自然に見えることがあります。スムージングは、隣り合う面の法線を連続的に扱い、多数の面を滑らかな曲面のように見せる処理です。

点群から作成したメッシュは、多数の小さな三角形で構成されることが一般的です。すべての三角形を独立した面として表示すると、地面や曲面に三角形の境界が見えやすくなります。そこで頂点法線を適切に補間すると、連続した滑らかな表面に見せられます。

ただし、モデル全体に一律のスムージングを適用すると、壁と床の境界、柱の角、縁石の段差など、本来は鋭く折れている部分まで滑らかにつながることがあります。直角部分の法線が平均化されると、角の周辺に黒い帯や丸みのある陰影が現れる場合があります。

たとえば、床面と壁面が直角につながっている場合、床の法線は上方向、壁の法線は横方向を向きます。この二つを滑らかに補間すると、境界付近の法線は斜め方向になります。実際には平らな床と垂直な壁であっても、照明計算上は丸みのある面のように見えるため、角がへこんだような陰影が出ることがあります。

反対に、スムージングをすべて無効にすると、曲面や傾斜面に三角形ごとの明暗差が現れます。地面が細かな多面体の集合のように見えたり、モデルを回転させたときに明暗の切り替わりが目立ったりします。自然に見せるには、すべてを滑らかにするのでも、すべてを分離するのでもなく、形状上の意味に合わせて境界を設定することが重要です。

壁と床、建物の角、段差、切断面、外周線などは、法線を分離したほうが自然です。一方、地形の緩やかな起伏、円柱状の部材、曲面として取得した対象は、適切な範囲で法線を連続させると滑らかに見えます。

角度を基準にスムージング境界を設定できる環境では、一定角度以上の折れを鋭い境界として扱えます。ただし、最適な角度はモデルによって異なります。自然地形と構造物が同じOBJに含まれている場合、地形に適した設定を建物へ適用すると角が丸くなり、建物に適した設定を地形へ適用すると三角形の境界が目立つことがあります。

そのため、地形、建物、設備、植生などを領域ごとに分け、異なる条件で処理する方法が有効です。アップロード先でグループ情報がそのまま利用されない場合でも、作成段階で領域ごとに法線を調整してから書き出せば、陰影を安定させやすくなります。

頂点の共有状態もスムージングに影響します。同じ座標にあるように見えても、面ごとに別の頂点として記録されている場合、読み込み側は面が接続していないと判断することがあります。スムージングを設定していても法線が連続せず、境界に線が残る原因になります。

一方で、重複頂点を無条件に統合すると、材質の境界、UVの継ぎ目、意図的な鋭角まで一つに扱われる可能性があります。近接頂点を統合するときは、形状だけでなく、法線境界や属性の分かれ方も確認する必要があります。

原因を切り分けるには、同じ形状から、面ごとの法線で表示した検証データと、曲面部分だけを滑らかにした検証データを作って比較します。スムージングを無効にすると角の黒い帯が消える場合は、角をまたいだ法線補間が原因と考えられます。曲面部分の法線を連続させると三角形模様が減る場合は、その領域の法線が分離されすぎていた可能性があります。

原因3 重複面や裏返り面が残っている

点群OBJアップロード後に表面がちらつく、局所的な自己影が出る、モデルから離れた場所に細い影が現れる場合は、重複面、裏返り面、内部面、孤立面を確認します。

重複面とは、同じ位置またはほぼ同じ位置に複数の面が存在する状態です。画面上では一枚の面に見えても、内部では二枚以上の面が重なっています。複数の点群を統合した場所、地表面を別々に生成して結合した場所、モデルを複製して位置合わせした場所などで発生しやすくなります。

重複面があると、どちらの面を手前に表示するかが安定せず、視点の移動に伴ってちらつくことがあります。影の計算方法によっては、ほぼ同じ位置にある面が自己影の判定を不安定にし、細かな黒い線や斑点が出ることもあります。ただし、不透明な面が単純に二枚重なっただけで、必ず影が二倍の濃さになるわけではありません。暗さの増加よりも、ちらつき、自己影、境界の乱れとして現れることが一般的です。

完全に同じ座標の面だけでなく、わずかにずれた二重面にも注意が必要です。点群の位置合わせ誤差によって、地面の表面が数ミリメートルから数センチメートルの間隔で二重に生成されることがあります。上から見ると一枚に見えても、斜めから光が当たると上側または下側の面が別の遮蔽物として働き、黒い筋や不自然な影の境界が現れる場合があります。

裏返り面は、周囲の面と逆向きに頂点が並び、法線が反対方向を向いている状態です。裏面を表示しない環境では穴のように見えますが、両面を表示する環境では面そのものは見えるため、表面の陰影だけが周囲と合わないことがあります。

投影影については、裏返り面を影の遮蔽物として扱うかどうかが表示環境によって異なります。裏面も影を落とす設定では、見た目では消えている面が影だけを作る場合があります。反対に、片面だけを遮蔽物として扱う設定では、面の向きによって影が欠けることがあります。

点群からメッシュを生成すると、外から見えない内部面が残ることもあります。複数方向から取得した点群を一つの面へ変換すると、構造物の内側や床の下に膜状の面が生成される場合があります。通常の視点では外側の面に隠れますが、影を計算する際には遮蔽物として扱われる可能性があります。

また、空中に浮いた孤立面も影の原因になります。反射しやすい対象、移動物、植生、点群の飛びなどがメッシュ化されると、モデル本体から離れた場所に小さな三角形が残ることがあります。画面上では小さすぎて見えなくても、低い角度から光が当たると長い影を落とす場合があります。

確認するときは、モデルを半透明にし、上からだけでなく、下や横からも観察します。床の下に別の面がないか、壁の内部に膜状の面が残っていないか、モデル周辺の空間に孤立した三角形がないかを確認します。

断面表示が使える場合は、モデルを少しずつ切りながら内部構造を見ると、不要面を発見しやすくなります。面の数が非常に多い場合は、面積が極端に小さい面、細長い面、他の面とほぼ同じ位置にある面を抽出する処理も有効です。

ただし、近接している面を一括で削除すると、薄い板、屋根、手すり、配管、縁石など、本来必要な形状まで消える可能性があります。自動処理を行う場合は、原本を残し、処理前後の面数、外形、断面を比較します。

重複面や内部面を整理したあとには、法線を再確認します。面を削除したことで境界や接続状態が変わり、残った面の法線を再計算する必要が生じることがあるためです。不要面の削除と法線修正を別々の工程として記録しておくと、問題が再発したときに原因を追いやすくなります。

原因4 三角形化とメッシュ密度が適切でない

OBJは、三角形だけでなく、四角形や多数の頂点を持つ多角形も面として記録できます。しかし、多くの表示処理では最終的に三角形として扱われます。作成元とアップロード先で三角形への分割方法が異なると、形状、陰影、投影影の輪郭が変わる場合があります。

完全に平らな四角形であれば、どちらの対角線で分割しても形状差はほとんどありません。しかし、点群から作成した面は、四つの頂点が厳密には同一平面上にないことがあります。一方の対角線で分割した場合と、反対の対角線で分割した場合では、できあがる二枚の三角形の傾きが変わります。

作成画面では一方向の対角線で表示されていても、アップロード先で別方向に三角形化されると、四角形の中に折れ目が現れることがあります。平らに見えていた床面へ斜めの陰影が出る場合は、非平面の四角形が異なる方法で分割された可能性があります。

多数の頂点を持つ多角形では、さらに注意が必要です。凹んだ輪郭、自己交差した輪郭、ほぼ同一直線上に並ぶ頂点を含む面などは、三角形化の結果が不安定になりやすくなります。極端に細い三角形や、面積がほとんどない三角形が生成されると、法線計算や影判定に不安定さが生じ、細い黒線や鋭い陰影として現れる場合があります。

アップロード前に作成側で三角形化しておけば、どの対角線で分割するかを固定できます。ただし、三角形化しただけで問題が解消するとは限りません。三角形化後の形状を確認せずに書き出すと、細長い面、裏返り面、交差面をそのままアップロードすることになります。

メッシュ密度も陰影と投影影の見え方に影響します。点群の細かなノイズをそのまま面に変換すると、本来は平らな床や壁にも微小な凹凸ができます。影を使わない表示では色に紛れて見えにくくても、斜めから光が当たると、一つ一つの凹凸が明暗差や小さな自己影を作ります。

その結果、表面全体に黒い粒やまだら模様が現れます。この場合、法線だけを滑らかにして見た目を改善できることはありますが、形状そのものに凹凸が残っていれば、光の方向や影設定を変えたときに再び不自然さが現れる可能性があります。

平面として扱うべき領域では、必要な精度を保ちながら凹凸を平滑化することが重要です。床、壁、道路面などは用途に応じてノイズを抑え、縁石、配管、段差、構造物の角などは必要な形状を残すと、見た目と実用性を両立しやすくなります。

反対に、メッシュを減らしすぎても影は不自然になります。曲面や地形を少数の大きな三角形で表現すると、面ごとの傾きが目立ち、投影影の外周も角張りやすくなります。小さな段差が一枚の斜面に置き換われば、モデルの外形と影の形が実物から離れることもあります。

適切なメッシュ密度は、対象物の大きさ、必要な精度、閲覧距離、アップロード先の処理条件によって異なります。現場全体を遠景で確認する用途では、細かな凹凸を削減しても影響が少ない場合があります。一方、構造物の細部確認や断面作成に使うデータでは、必要な形状を残しながらノイズだけを除去しなければなりません。

モデル全体へ同じ削減率を適用するのではなく、平面、曲面、細部、植生などを分けて調整すると、自然な陰影と影を保ちやすくなります。三角形化とメッシュ整理が完了した状態を最終形として確認し、その状態からOBJを書き出すことが大切です。

原因5 座標やスケールと影設定が合っていない

形状、法線、面構成に明らかな異常がなくても、座標値やスケールと表示側の影設定が合っていないと、不自然な影が発生します。測量や土木で扱う点群OBJは、大きな現地座標を保持していることが多いため、特に注意が必要です。

現実の座標系をそのまま使用すると、頂点座標が原点から大きく離れた値になることがあります。座標としては正しくても、表示処理で使用する数値形式や変換方法によっては、原点から遠い位置で小さな形状差を十分な精度で扱いにくくなる場合があります。

モデル本体の表示と影の計算で異なる座標変換や精度が使われる環境では、誤差の出方も同じとは限りません。その結果、モデルの表面と影の判定位置がわずかにずれ、表面に自己影の斑点が現れることがあります。地面全体に細かな黒点が出るのに、法線やメッシュへ明らかな異常が見つからないときは、大きな座標値の影響も確認します。

モデルが極端に小さい場合にも問題が起こります。OBJ自体は座標値の単位を一律に定める形式ではないため、作成側ではメートルとして扱っていた数値が、アップロード先では別の単位を前提に扱われる可能性があります。

モデルが想定より非常に小さく読み込まれると、影の位置ずれを防ぐための補正量が、モデル寸法に対して相対的に大きくなることがあります。その結果、影が地面から浮いて見える、接触部分に隙間があるように見える、細い部材の影が欠けるといった現象が起こる場合があります。

反対に、モデルが想定より大きく読み込まれると、影を計算する範囲や解像度に対してモデルが大きすぎ、遠い場所の影が粗くなる、途中で欠ける、輪郭がぼやけることがあります。モデル本体は表示されているのに、カメラから離れた部分だけ影が不安定な場合は、スケールと影計算範囲の関係を疑います。

大きな現地座標を使用している場合は、元の座標を別途保存したうえで、表示用OBJの原点をモデル付近へ移動する方法があります。モデル中心や既知の基準点を一時的な原点にすることで、頂点座標の桁を小さくし、表示時の数値精度を確保しやすくなります。

ただし、原点移動を行うと、他の図面や点群との位置合わせに影響します。移動量を記録せずに処理すると、正しい現地位置へ戻せなくなる可能性があります。測量座標を保持した原本と、原点移動した表示用OBJを分け、移動量と軸方向を管理することが重要です。

表示側の光源方向も影の印象を大きく変えます。低い位置から強い光を当てると、点群由来の微細な凹凸が長い影を作り、表面が過度に荒れて見えます。上方から照らすと問題が目立ちにくくなる場合は、データ破損ではなく、形状の細かさと照明条件の組み合わせが原因の可能性があります。

影の濃さ、影を計算する解像度、影の位置補正、影を計算する距離や範囲も関係します。調整できる場合は、一度投影影を無効にし、モデル表面の陰影だけを確認します。

投影影を無効にしても黒い斑点が残る場合は、法線、スムージング、形状、材質を優先して確認します。投影影を有効にしたときだけ異常が現れる場合は、座標、スケール、不要面、照明、影設定を中心に切り分けると効率的です。

点群だけのOBJとメッシュOBJの違い

点群OBJの影を確認するときは、そのOBJが頂点だけで構成されているのか、点群から面を生成したメッシュなのかを最初に把握する必要があります。この二つは同じOBJという拡張子でも、表示方法と影の計算が大きく異なります。

頂点だけのOBJでは、頂点座標は存在しても、面を示す記述が含まれていない場合があります。点そのものには一般的なポリゴン面のような表裏や面積がないため、メッシュと同じ方法で法線や投影影を扱うことはできません。

表示側は、点を画面上の小さな丸や四角として描くことがあります。この点の大きさが大きすぎると、点同士が重なって表面が黒く見えることがあります。また、点を小さな板や立体として描画する環境では、それぞれの点が影を落とし、地面に粒状の影が現れる場合があります。

点の大きさが閲覧距離に応じて変わる場合は、カメラを近づけたときと離したときで見かけの密度や影の印象が変わることもあります。頂点だけのOBJをアップロードしている場合は、法線や面の修正よりも、点の描画サイズ、点の密度、点を影の遮蔽物として扱うかどうかを確認する必要があります。

メッシュOBJでは、頂点同士を結ぶ面が存在します。面には向きがあり、法線やスムージングが表面の陰影へ影響します。点群の密度が高くても、適切に面が整理されていれば、連続した表面と投影影を表示できます。

一方で、点群から自動生成したメッシュには、実在しない面が作られることがあります。離れた点同士が結ばれて大きな三角形になったり、開口部が自動的に塞がれたりすると、光が通るはずの場所に影が発生します。

頂点だけのOBJとメッシュOBJを同じ確認方法で扱うと、原因を誤りやすくなります。頂点だけのOBJで影が粒状になる場合、法線を再計算しても改善しないことがあります。反対に、メッシュOBJで黒い斑点が出る場合、点の描画サイズを変更しても根本的な解決にはなりません。

OBJ内部を確認し、面を示す記述が含まれているかを見ることで、頂点だけかメッシュかを判断できます。作成環境で情報を確認できる場合は、頂点数だけでなく、面数、法線数、グループ数、座標範囲も記録しておくと、アップロード後の変換状態を判断しやすくなります。

アップロード前に原因を切り分ける確認手順

影の問題を効率よく解決するには、法線の再計算、面の削除、三角形化、原点移動などを一度に行わないことが大切です。複数の処理を同時に行うと、どの変更が有効だったのか分からなくなります。

まず、元のOBJを複製し、原本を編集しない状態にします。検証用データには、どの処理を行ったか分かる名称を付けます。法線だけを修正したデータ、三角形化だけを行ったデータ、原点だけを移動したデータというように分けると、比較しやすくなります。

最初の確認では、投影影を無効にしてモデル本体を表示します。投影影がなくても黒い面や三角形模様が見える場合は、法線、面方向、スムージング、材質、メッシュ形状に原因がある可能性が高くなります。投影影を無効にすると正常になる場合は、不要面、座標、スケール、照明、影設定の影響を重点的に確認します。

次に、テクスチャや頂点色を一時的に外し、明るい単色で表示します。暗い模様が照明による陰影なのか、元の色や透明度なのかを切り分けるためです。単色表示で黒い部分が消える場合は、テクスチャ、頂点色、材質の明暗が影に見えていた可能性があります。

単色表示でも黒い部分が残る場合は、法線を可視化します。問題がモデル全体に広がっているのか、特定の領域だけに集中しているのかを確認します。複数の点群を統合した境界、穴埋めした場所、面を削減した場所だけで異常が出ている場合は、その工程を重点的に見直します。

続いて、半透明表示や断面表示で内部面と重複面を確認します。モデルから離れた場所に影が出ている場合は、影の方向を逆にたどり、空中に孤立面や大きな三角形がないか探します。

多角形を含むモデルでは、作成側で三角形化した検証データを用意します。三角形化したデータだけ陰影や影が安定する場合は、アップロード先の自動分割方法が作成元と異なっていた可能性があります。

最後に、問題が起きている範囲だけを切り出し、原点付近へ移動した小さなOBJを作ります。原点付近へ移動したデータでは影が正常になる場合、大きな現地座標や数値精度が原因である可能性が高くなります。

一つの変更につき一つの検証ファイルを作り、同じ視点、同じ照明、同じ表示倍率で比較することが重要です。比較条件をそろえることで、わずかな改善や新しい問題を見つけやすくなります。

影を自然にするためのOBJ書き出し方法

点群OBJをアップロードする前には、編集画面での見え方だけでなく、OBJへ保存される情報を確認します。作業中の画面には表示されていても、書き出し対象に含まれない情報や、反対に非表示でも書き出される形状が存在する場合があります。

最初に、不要なオブジェクト、作業用の複製、基準面、非表示レイヤー、確認用の形状を整理します。画面上で見えないだけの面がOBJへ含まれると、アップロード後に影だけを落とす可能性があります。

法線を含めて書き出す場合は、書き出し前に方向とスムージング境界を確認します。作成側で調整した法線を読み込み側が利用できれば、再計算による見え方の差を抑えやすくなります。

一方、法線が乱れている場合は、不正確な法線をそのまま保存するより、面の接続状態を整理してから再計算するほうが安定することがあります。法線を含めるか省略するかは、作成側の法線品質とアップロード先の読み込み方法を踏まえて決めます。

多角形は、必要に応じて事前に三角形化します。三角形化後には、面積がほとんどない面、極端に細長い面、裏返り面、交差面が発生していないか確認します。書き出し直前に自動三角形化するだけでは、変換後の形状を目視できないため注意が必要です。

座標の小数桁を減らす場合は、必要な精度を失わない範囲で行います。桁数を過度に減らすと、近接した頂点が同じ位置に丸められ、面がつぶれたり、隙間や段差が生じたりすることがあります。

大きな現地座標を原点付近へ移動する場合は、移動前の基準点、移動量、軸方向を記録します。表示用OBJだけを移動し、測量座標を保持した原本は別に保存します。

材質を併用する場合は、透明度や両面表示に関係する設定も確認します。意図せず半透明として扱われる面があると、影が薄くなったり、一部だけ欠けたりする場合があります。ただし、OBJと材質ファイルの解釈は読み込み側によって差があるため、作成環境で見えた状態がそのまま再現されるとは限りません。

書き出しが完了したら、そのOBJを新しい画面へ読み戻します。読み戻したモデルで、頂点数、面数、法線、グループ、材質、座標範囲、原点位置を確認します。作業中のデータではなく、実際に書き出されたファイルを検査することが重要です。

再アップロード後に確認したいポイント

修正版を再アップロードしたあとは、最初に異常が見えた視点だけで判断しないようにします。影や陰影の問題は、視点、照明方向、閲覧距離によって見え方が変わるためです。

最初に遠くからモデル全体を見て、投影影の外周が形状とおおむね一致しているか確認します。モデル本体から離れた位置に影だけが残る場合は、孤立面、内部面、不要な大面積の三角形が残っている可能性があります。

次に、床、壁、曲面、段差、細い部材など、形状の種類ごとに近づきます。床や壁に細かな黒い斑点が残る場合は、微細な凹凸、重複面、大きな座標値、影の位置補正を見直します。

曲面に三角形の境界が見える場合は、スムージングや頂点法線を確認します。直角の角に黒い帯が出る場合は、異なる面をまたいで法線が平均化されていないかを調べます。

光源方向を変更できる場合は、上方、斜め、横方向から照らして比較します。特定の方向だけで問題が強く出る場合は、微細な凹凸、細長い面、影の解像度の影響が考えられます。どの方向でも同じ面が暗い場合は、法線反転、材質、重複面の可能性を確認します。

投影影を無効にした状態との比較も行います。投影影を無効にしても黒い部分が残るなら、形状、法線、スムージング、材質の問題です。投影影を有効にしたときだけ異常が出るなら、不要面、座標、スケール、影の計算条件を確認します。

修正によって影が改善していても、必要な形状が失われていないかを確認します。メッシュ削減や重複面の削除によって、細い手すり、縁石、配管、薄い壁などが消えることがあります。

モデルの見た目だけでなく、断面、寸法、位置関係にも問題がないことを確認してから完成データとします。表示をきれいにするための処理で、実務に必要な情報を失わないようにすることが大切です。

影の問題を繰り返さないデータ管理

同じような影の問題を繰り返さないためには、修正方法だけでなく、データの管理方法も整える必要があります。どの工程で法線が変わったのか、どの処理で重複面が発生したのかを追跡できなければ、次のデータでも同じ確認を最初から行うことになります。

点群の原本、ノイズ除去後の点群、メッシュ生成後のデータ、法線修正版、表示用OBJを分けて保存します。最終OBJだけを残すのではなく、主要な処理段階を残すことで、問題が見つかったときに前の状態へ戻れます。

ファイル名には、処理内容と版を識別できる情報を含めます。単に最終版という名称を繰り返すと、どのファイルが最新なのか分からなくなります。法線修正、三角形化、原点移動、軽量化などの処理内容を記録しておくと比較しやすくなります。

処理前後の頂点数、面数、ファイル容量、座標範囲も記録すると有効です。面数が急激に増減した場合や、座標範囲が想定外に変わった場合に、処理ミスを発見しやすくなります。

アップロード前の確認条件も統一します。単色表示、投影影なし表示、法線表示、半透明表示、原点位置確認などを毎回同じ順序で行えば、担当者が変わっても品質をそろえやすくなります。

計測精度を保持する原本と、閲覧や共有を目的とした表示用データは役割が異なります。原本では取得した形状を可能な限り保持し、表示用OBJでは孤立面、内部面、細かなノイズを用途に応じて整理する運用が現実的です。

一つのOBJですべての用途を満たそうとすると、精度、容量、表示速度、影の自然さの間で無理が生じます。用途ごとにデータを分けることで、必要な情報を守りながら、アップロード後の見え方も改善できます。

まとめ

点群OBJアップロード後に影が不自然になる場合は、まずモデル表面の陰影と、地面などへ落ちる投影影を分けて確認することが重要です。そのうえで、法線、スムージング、重複面、三角形化、座標とスケールの五つに分けて原因を切り分けます。

法線の向きや参照関係が崩れていると、面の一部が黒くなり、三角形ごとに明暗が分かれることがあります。これは主に表面の陰影に関する問題であり、投影影の外形だけが異常な場合は、不要面や影設定も確認する必要があります。

スムージング設定が形状に合っていない場合は、直角の角に黒い帯が現れたり、曲面が角張って見えたりします。形状上の意味がある境界では法線を分離し、滑らかな曲面では適切に連続させることが大切です。

重複面、裏返り面、内部面、孤立面が残っていると、ちらつき、自己影、モデルから離れた位置の影などが発生することがあります。重複面が必ず影を二重に濃くするとは限らないため、暗さだけで判断せず、半透明表示や断面表示で形状を確認します。

多角形の三角形化方法が作成元とアップロード先で異なると、平らに見えていた面に折れ目が現れることがあります。アップロード前に三角形化し、変換後の細長い面、裏返り面、交差面を確認することで、表示環境による差を減らせます。

大きな現地座標、単位の解釈違い、影の計算範囲や位置補正も、影のずれや斑点の原因になります。原点付近へ移動した検証用データを作り、投影影の有無を切り替えて比較すると、形状側と表示側の問題を切り分けやすくなります。

修正するときは、複数の処理を一度に行わず、一つの変更につき一つの検証データを作ります。法線だけを変えたデータ、三角形化だけを行ったデータ、原点だけを移動したデータを同じ条件で比較すれば、原因を特定しやすくなります。

点群から作成したOBJには、微細な凹凸、浮遊面、重複面、長い三角形などが含まれることがあります。計測結果を保持する原本と、閲覧や共有に使う表示用OBJを分け、用途に合わせて面、法線、座標を整理することが重要です。

現場で取得した点群を効率よく整理し、OBJの作成からアップロード後の共有までを円滑に進めるには、取得段階からデータの用途を意識する必要があります。LRTK Phoneを活用して取得した点群を扱う場合も、原本と表示用データを分け、書き出し後のOBJを別環境で読み戻して確認する運用が有効です。

現場を3Dで残して、あとから測る。
実際の画面と動画で使い方を確認できます。

LRTK Phoneの使い方・実例を見る
資料請求導入相談
現場をスマホで3DスキャンLRTK Phone実例を見る