LRTKレフィクシア株式会社

点群OBJアップロードで陰影が不自然になる5つの平滑化設定

点群OBJをアップロードしたあと、形状は正しく表示されているのに、陰影だけが波打つ、面がへこんで見える、角が丸まりすぎる、部分的に黒く沈む、といった違和感が出ることがあります。これはモデルの寸法や座標が必ずしも壊れているという意味ではなく、OBJ内の法線、面の分割、頂点共有、平滑化の扱い、アップロード先の表示設定が合っていないことで起きる場合があります。本記事では、点群から生成したOBJを実務で扱う担当者に向けて、アップロード後の陰影を自然に見せるために確認したい5つの平滑化設定を解説します。

点群OBJで陰影が不自然になる原因を整理する

点群OBJアップロードで陰影が不自然になるとき、最初に切り分けたいのは、形状そのものの問題なのか、表示上の陰影計算の問題なのかという点です。点群からOBJを作る場合、元データは多数の点で構成されていますが、OBJとして扱う段階では三角形や多角形の面に変換されます。この面に対して光の当たり方を計算することで、画面上の明るさや影の見え方が決まります。そのため、座標が正しくても、法線や平滑化の扱いが合っていないと、実際には平らな壁がうねって見えたり、角の立った構造物が粘土のように丸く見えたりします。

特に、点群からメッシュ化したOBJは、写真測量、レーザー計測、スマートフォン型測位端末、地上計測機器など、元データの作られ方によって面の性質が変わります。点の密度が均一でない場合、メッシュ化したときに粗い面と細かい面が混在します。植生、フェンス、配管、階段、法面、舗装面のように形状の変化が複雑な場所では、面の向きが細かく揺れやすくなります。その結果、アップロード先のビューアで光源が当たったときに、局所的な明暗差が強調され、不自然な陰影として見えることがあります。

OBJでは、頂点座標、テクスチャ座標、法線、面情報などを扱えます。陰影に大きく関係するのは法線です。法線は、面や頂点がどちらを向いているかを示す情報で、光の計算に使われます。法線が入っていないOBJでは、アップロード先のシステムが面の形状から自動的に法線を生成することがあります。この自動生成の方法が元の意図と違うと、手元では自然に見えていたOBJが、アップロード後には別物のように見える場合があります。

また、平滑化は、面と面の境界をなめらかにつなげて見せる処理です。曲面のような形状では有効ですが、建物の角、縁石、鋼材の端部、構造物の稜線、舗装と側溝の取り合いなど、本来は角として見えるべき場所にまで平滑化がかかると、陰影が丸まりすぎて寸法感がつかみにくくなります。逆に、法面や曲面タンクのように連続的に変化する形状で平滑化が足りないと、三角形の面が1枚ずつ見え、ザラザラした印象になります。

このように、点群OBJの陰影不良は、単に画質が悪いという問題ではありません。実務では、出来形確認、地形確認、構造物の把握、施工前後比較、数量算出の補助などに使われるため、陰影が不自然だと判断の邪魔になります。形状が正しくても、見た目の影によって段差やへこみがあるように誤解されると、確認作業の効率が落ちます。したがって、OBJをアップロードする前には、法線、平滑化、面構成、角の保持、表示条件を順番に確認することが大切です。

設定1 法線データの有無と向きを確認する

最初に確認したい平滑化設定は、OBJに法線データが含まれているかどうかです。OBJファイルでは、頂点座標とは別に法線情報を持たせられます。法線が適切に書き出されていれば、アップロード先でも意図に近い陰影になりやすくなります。一方で、法線が存在しない、または一部だけ欠けている場合、表示側が自動的に法線を再計算することがあります。この再計算が、点群由来の細かな凹凸やノイズを拾いすぎると、面全体にまだらな陰影が発生します。

点群OBJでは、メッシュ化の過程で面の向きが反転していたり、局所的に裏表が混在していたりすることがあります。これが起きると、同じ面の連続部分なのに一部だけ暗く見える、見る角度によって面が消えたように感じる、隣り合う面の明るさが極端に変わるといった現象が出ます。特に薄い構造物、フェンス状の部材、鋼板、看板、仮設材などは、表裏の判断が難しく、法線の乱れが目立ちやすい箇所です。

法線確認では、まずOBJを書き出す前の編集環境で、面法線または頂点法線の表示を有効にし、向きが外側にそろっているかを見ます。屋外計測の地形モデルであれば、地表面の法線は概ね上向きの成分を持つことが自然です。建物外壁であれば、外側に向いている必要があります。マンホール内部や躯体の内側を扱う場合は、内側から見る用途なのか、外側から見る用途なのかによって適切な向きが変わります。単に全法線を外向きにすればよいとは限らないため、モデルの利用目的を基準に判断します。

次に、頂点法線を使うか、面法線を使うかを検討します。面法線は三角形や多角形ごとに陰影が計算されるため、面の境界がはっきり見えます。これは角のある構造物には向いていますが、曲面や地形では粗く見えることがあります。頂点法線は隣接面の向きを平均してなめらかに見せるため、曲面には適していますが、角まで平均されると形状が丸く見えます。点群OBJでは、この使い分けをせずに全体へ一律の法線処理をかけると、部分によって不自然さが出やすくなります。

法線を再計算する場合は、元の点群ノイズをそのまま拾わないように注意します。点群には、反射、移動体、植生の揺れ、低照度、測位条件、視差不足などによる小さなばらつきが含まれることがあります。メッシュ化後にその微細な揺れへ忠実に法線を合わせると、実際の形状以上に凹凸が強調されることがあります。平滑化の目的は、形を変えることではなく、不要な陰影の乱れを抑えることです。したがって、法線の再計算では、面の角度差や隣接範囲を適切に制限し、構造上必要なエッジまで消さないようにします。

アップロード後に陰影が急に変わる場合は、書き出したOBJ内の法線がアップロード先で無視されている可能性もあります。ビューアや変換処理によっては、アップロード時にメッシュを最適化し、法線を再生成することがあります。この場合、手元で見た結果とクラウド上の表示が一致しません。実務では、アップロード先の仕様に合わせて、法線を含めたOBJを使うのか、あえて法線を削除してアップロード先で再計算させるのかを決め、案件ごとに同じ方法で運用すると安定します。

設定2 スムースシェーディングの適用範囲を分ける

次に重要なのは、スムースシェーディングをモデル全体へ一律に適用しないことです。スムースシェーディングは、隣り合う面の明るさをなめらかにつなげるための表示処理です。点群から作ったOBJでは、三角形の面が多数並ぶため、スムースシェーディングを使うと、面の境界が目立ちにくくなり、見た目が整うことがあります。しかし、どの場所にも同じように適用すると、本来は角として残すべき部分まで丸まって見えます。

たとえば、コンクリート構造物の角、縁石の上端、階段の踏面と蹴上げの境界、鋼材のフランジ端部、壁と床の取り合いは、面の切り替わりが重要です。ここに強い平滑化がかかると、角の陰影がぼやけ、部材の境界が曖昧になります。出来形の確認や干渉確認では、角が正しく見えることが重要であり、見た目をきれいにするための平滑化が、確認の妨げになる場合があります。

一方で、地形の法面、盛土の斜面、切土面、曲面状の構造、配管外周、タンクの外面などは、ある程度なめらかに表示した方が自然です。点群密度にばらつきがある状態でフラットな陰影にすると、三角形のつなぎ目が細かく見え、実際には連続している面が不自然に分割されているように見えます。このような場所では、スムースシェーディングを有効にすることで、形状の全体像を把握しやすくなります。

実務で扱うOBJは、地形、構造物、仮設物、設備、植生などが同じファイルに含まれることがあります。このとき、全体を一つのメッシュとして平滑化すると、異なる性質の対象が同じルールで処理されます。結果として、地形は自然に見えるが建物が丸くなる、建物はよいが法面がザラつく、といった偏りが出ます。可能であれば、モデルを書き出す前に、地形、舗装面、構造物、設備、植生のように領域を分け、それぞれに合った平滑化を適用します。

スムースシェーディングの適用範囲を分ける際は、見た目だけで判断しないことも大切です。見た目がなめらかでも、過度な平滑化によって凹凸の手がかりが消えている場合があります。点群OBJをアップロードする目的が、景観確認や共有説明であれば、自然な見た目を優先してもよい場面があります。しかし、施工管理、出来形確認、数量確認、干渉確認に使う場合は、形状の読み取りやすさを優先する必要があります。陰影を整えることと、形状を正しく伝えることのバランスを取ることが重要です。

また、平滑化の単位にも注意が必要です。頂点が共有されている面同士は、法線が平均されやすくなります。逆に、見た目には隣接していても頂点が分かれている場合は、境界で陰影が切れます。点群から自動生成したOBJでは、メッシュの連結状態が必ずしも人間の感覚どおりではありません。連続した法面なのに分断されていたり、別部材であるはずの面が連結されていたりすることがあります。陰影の違和感が特定の境界で出る場合は、スムースシェーディングの設定だけでなく、頂点共有やメッシュのグループ分けも確認します。

設定3 面の分割密度と細長い三角形を見直す

平滑化設定を調整しても陰影が改善しない場合、メッシュの面構成そのものに原因があることがあります。点群OBJは、点の集まりから面を生成するため、元の点密度や欠測範囲の影響を強く受けます。点が密な場所では細かい三角形が多くなり、点が少ない場所では大きな三角形ができます。さらに、斜め方向に引き伸ばされた細長い三角形が多いと、法線の向きが不安定になり、光の当たり方が局所的に乱れます。

細長い三角形は、陰影の不自然さを生みやすい代表的な要因です。三角形の一辺だけが極端に長く、他の辺が短い場合、わずかな頂点のずれでも面の向きが大きく変わります。これが連続すると、実際にはなめらかな面なのに、筋状の影やギザギザした明暗が出ます。法面、舗装、壁面、床面のように広い面では、この影の筋が目立ちます。点群OBJをアップロードしたあとに、一定方向へ線状の陰影が出る場合は、面の分割方向と三角形の形状を疑うべきです。

面の分割密度が粗すぎる場合も問題になります。地形や曲面を少ない面で表現すると、平滑化をかけても形状の近似が粗く、光の変化が不自然になります。逆に、面を細かくしすぎると、点群ノイズまで面として再現され、法線が細かく揺れます。すると、平滑化しても表面がざらついた印象になり、アップロード先で光源や影の設定が強い場合には、まだら模様のように見えます。面数は多ければよいというものではなく、利用目的に対して適切な密度にする必要があります。

実務では、OBJを書き出す前に、対象ごとの適切な簡略化を検討します。平らな舗装面や壁面は、過剰な三角形を減らしても形状を保ちやすい領域です。反対に、段差、縁、設備周り、取り合い部、曲率が大きく変わる箇所では、面を減らしすぎると形状の情報が失われます。陰影を安定させるには、平面部ではノイズ由来の細かい面を抑え、形状変化が重要な部分では必要な面密度を残すという考え方が有効です。

メッシュの再構成時には、穴埋め処理にも注意します。点群に欠測がある部分を自動で穴埋めすると、実際には計測されていない面が生成されます。この面が周囲の形状と合っていないと、アップロード後に大きな暗部や不自然なハイライトとして見えることがあります。特に、建物の裏側、車両や資材で隠れていた箇所、水面や反射面、細い部材の周辺では、穴埋め面の法線が周囲と合わないことがあります。陰影の違和感が穴埋め箇所に集中する場合は、平滑化で隠すのではなく、穴埋めの範囲を限定する方が安全です。

細長い三角形を減らすには、メッシュ生成条件、簡略化条件、再分割条件を確認します。点群から直接作ったメッシュをそのままOBJ化するのではなく、必要に応じて面の品質を整える工程を入れると、アップロード後の見え方が安定します。ただし、再分割や平滑化で形状が変わると、測量・施工確認の用途では問題になります。見た目を整えるための処理をかけた場合は、元点群や処理前モデルと比較し、寸法や位置が許容範囲内に収まっているかを確認します。陰影の改善だけを優先し、形状精度を犠牲にしないことが実務上の重要なポイントです。

設定4 エッジ保持と角度しきい値を調整する

平滑化設定の中でも、エッジ保持と角度しきい値は、陰影の自然さを大きく左右します。角度しきい値とは、隣り合う面の角度差が一定以下であればなめらかにつなぎ、一定以上であれば角として分けるための基準です。この設定が緩すぎると、直角に近い角までなめらかにつながり、構造物が丸く見えます。逆に厳しすぎると、ほぼ同じ方向を向いた面まで分断され、三角形の境界が目立ちます。

点群OBJで特に多い失敗は、地形向けの平滑化設定を構造物にも適用してしまうことです。地形は連続的な面として扱うことが多いため、多少の角度差をなめらかにつなげても違和感が少ない場合があります。しかし、建築物や土木構造物では、角の存在が重要です。擁壁の天端、側溝の縁、階段、基礎の角、開口部、鋼材端部などは、エッジが立って見えることで形状を理解できます。ここを平均化すると、陰影はなめらかでも、実務上は読みにくいモデルになります。

角度しきい値を調整するときは、まずモデル内で最も重要なエッジを基準にします。たとえば、段差確認が目的なら段差の角が消えない設定を優先します。法面の全体形状確認が目的なら、斜面の面割れが目立たない設定を優先します。1つのOBJで両方を扱う場合は、領域を分けて設定するか、角を保持したまま法線だけを部分的に整える方法を検討します。全体に1つのしきい値を当てるより、用途ごとに設定を変える方が、自然で実用的な見え方になりやすいです。

エッジ保持では、形状上のエッジと、ノイズによって生じた見かけのエッジを区別することが大切です。点群から生成したメッシュには、実際の角ではないのに、点のばらつきによって急な面角度が生まれることがあります。これをすべてエッジとして保持すると、表面がザラザラしたままになります。一方で、すべてをなめらかにすると、本物の角まで消えます。適切な設定は、対象物の種類、点群密度、計測距離、利用目的によって変わります。

設定後は、複数の視点で確認することが重要です。ある方向から見ると自然でも、逆方向や斜め方向から見ると不自然な影が出ることがあります。これは、法線と光源方向の関係によって見え方が変わるためです。点群OBJを実務で共有する場合、閲覧者は必ずしも作成者と同じ角度から見るとは限りません。上空視点、斜め視点、水平視点、対象物に近づいた視点で確認し、どの視点でも重大な誤解が生じないかを見ます。

また、テクスチャ付きOBJでは、陰影とテクスチャの関係にも注意します。写真由来の明暗がテクスチャに入っている状態で、さらに強いシェーディングがかかると、影が二重に見えることがあります。現場写真に元々影が写っている場合、モデル上の光源による陰影と重なり、暗部が強調されます。この場合、平滑化設定だけを変えても完全には改善しません。テクスチャ表示と陰影表示のバランスを確認し、形状確認を優先する場面では、陰影を弱める、またはテクスチャなし表示で形状を確認するなどの運用も有効です。

設定5 アップロード前後の表示条件をそろえる

5つ目の設定は、アップロード前後の表示条件をそろえることです。OBJを書き出す前の編集環境では自然に見えていたのに、アップロード後だけ陰影が不自然になる場合、データそのものではなく、表示環境の違いが原因になっていることがあります。光源の位置、環境光の強さ、片面表示か両面表示か、ガンマ補正、材質設定、法線再計算の有無、テクスチャの扱いなどが変わると、同じOBJでも見え方は大きく変わります。

特に注意したいのは、アップロード先で自動的にモデルが変換される場合です。軽量化のために面数が減らされたり、頂点が統合されたり、法線が再計算されたりすると、手元で調整した平滑化結果が維持されないことがあります。アップロード後に角が丸くなる場合は、頂点統合や法線平均が強くかかっている可能性があります。逆に、三角形の境界が急に目立つ場合は、頂点法線が失われ、面法線に近い表示になっている可能性があります。

材質設定も陰影に影響します。OBJには形状情報のほかに、材質情報を関連付けることがあります。反射が強すぎる、粗さが低すぎる、色が暗すぎる、または光沢が不適切に設定されていると、平滑化が適切でも不自然に見えます。点群OBJでは、実物の表面材質を厳密に再現することより、形状確認や現場共有を優先することが多いため、過度な光沢や強い反射は避けた方が見やすくなります。陰影が不自然に感じるときは、法線だけでなく材質の基本値も確認します。

アップロード前後の比較では、同じ視点、同じ縮尺、同じ背景色、同じ表示モードで確認することが大切です。手元では明るい背景で見ていたものを、アップロード先では暗い背景で見ると、陰影の印象が変わります。遠景では自然でも、近づくと面の荒れが目立つこともあります。比較条件が違うまま判断すると、設定の良し悪しを誤ります。実務では、確認用の標準視点を決め、アップロード前後で同じ場所を見比べると、原因を特定しやすくなります。

また、座標スケールの扱いも間接的に見え方へ影響します。OBJの単位やスケールがアップロード先で想定と違う場合、光源やカメラの近接範囲、面の表示精度に影響が出ることがあります。モデルが極端に大きい、または極端に小さい状態で読み込まれると、表示のちらつきや面の重なりが起き、陰影の乱れに見えることがあります。点群OBJをアップロードする前には、単位、原点位置、座標値の大きさも確認し、必要に応じてローカル座標化や基準点管理を行います。

アップロード後の見え方を安定させるには、確認用の小さなサンプルOBJを作っておくと便利です。平面、直角の角、緩い曲面、段差、テクスチャ付き面を含む小規模なモデルを使い、アップロード先でどのように表示されるかを事前に確認します。このサンプルで法線や平滑化の挙動を把握しておけば、本番モデルで問題が出たときに、データ側の問題なのか、表示側の仕様なのかを切り分けやすくなります。

点群OBJを安定して運用するための確認手順

点群OBJの陰影を安定させるには、問題が出てから感覚的に設定を変えるのではなく、毎回同じ流れで確認することが重要です。まず、元点群の状態を確認します。点密度が極端に薄い部分、ノイズが多い部分、欠測している部分、動く物体が写り込んでいる部分を把握します。元点群に大きな乱れがある場合、メッシュ化や平滑化だけで完全に自然な陰影にすることは難しくなります。不要点の除去や領域分けを先に行うことで、後工程の調整が安定します。

次に、メッシュ化後の面構成を確認します。広い平面に不要な細かい凹凸がないか、細長い三角形が集中していないか、穴埋め面が過剰に作られていないかを見ます。陰影の違和感は、アップロード後に初めて気づくこともありますが、原因はこの段階で生じていることが多いです。表示をワイヤーに近い状態で確認すると、面の流れや分割の偏りが見えやすくなります。見た目の色やテクスチャに惑わされず、面そのものを確認する工程を入れることが大切です。

その後、法線を確認します。法線が外側または意図した方向を向いているか、部分的に反転していないか、頂点法線が過度に平均されていないかを見ます。法線の向きが乱れている状態で平滑化を調整しても、根本的な改善にはなりません。暗く沈む面、光り方が逆に見える面、角度によって消える面がある場合は、法線の再計算や反転修正を行います。OBJを書き出すときには、法線を含める設定になっているかも確認します。

次に、平滑化の範囲を分けます。地形や曲面はなめらかに、構造物の角や段差は保持するという基本方針を置き、全体に同じ設定をかけないようにします。モデルを領域ごとに分けられる場合は、地形、構造物、設備、不要物のように分類して処理します。分類が難しい場合でも、角度しきい値を使って、本来のエッジを残す設定にします。陰影の自然さだけでなく、現場確認に必要な境界が読めるかどうかを基準に調整します。

最後に、アップロード後の表示を確認します。アップロード先で法線が維持されているか、面数の削減で形が変わっていないか、材質の光沢が強すぎないか、テクスチャと陰影が重なって見づらくなっていないかを見ます。可能であれば、処理前の点群、ローカルで表示したOBJ、アップロード後のOBJを並べて確認します。違和感がある場合は、どの段階で変化したかを特定します。点群の時点で問題があるのか、メッシュ化で問題が出たのか、OBJ書き出しで法線が変わったのか、アップロード先で再計算されたのかを分けて考えることで、無駄な修正を減らせます。

運用面では、設定値や処理条件を記録しておくことも重要です。担当者ごとに書き出し条件が違うと、同じ現場のOBJでも見え方が変わります。プロジェクト内で共有する場合は、ファイル名、座標系、単位、メッシュ化条件、法線出力の有無、平滑化方針、アップロード後の確認結果を残しておくと、後から原因を追いやすくなります。特に、施工段階ごとにOBJを更新する場合、毎回見え方が変わると比較が難しくなります。陰影を安定させることは、見た目の品質だけでなく、継続的な現場管理のしやすさにもつながります。

まとめ

点群OBJアップロードで陰影が不自然になる原因は、1つの設定だけに限定されません。法線データの有無と向き、スムースシェーディングの適用範囲、面の分割密度、細長い三角形、エッジ保持、角度しきい値、アップロード先の表示条件が重なって、最終的な見え方が決まります。形状データが壊れていなくても、陰影計算が合っていなければ、実物とは違う凹凸や丸まりがあるように見えてしまいます。

実務で重要なのは、見た目をきれいにすることだけではありません。点群OBJは、現場の状態を確認し、関係者に共有し、施工や維持管理の判断を補助するために使われます。そのため、平滑化によって不要なざらつきを抑えながらも、段差、角、取り合い、境界といった重要な形状情報を残す必要があります。地形には地形に合ったなめらかさがあり、構造物には構造物に合った硬いエッジがあります。この違いを意識して設定することで、アップロード後の陰影は大きく改善しやすくなります。

また、アップロード前の見え方とアップロード後の見え方を分けて確認することも欠かせません。手元の編集環境で自然に見えていても、アップロード先で法線が再計算されたり、面が軽量化されたり、材質の扱いが変わったりすれば、陰影は変わります。問題が起きたときは、元点群、メッシュ、OBJ書き出し、アップロード後表示のどこで変化したのかを順番に確認します。この流れを標準化すれば、担当者が変わっても安定した品質でOBJを扱いやすくなります。

点群OBJを施工管理や現場共有で使う場合、陰影の自然さは作業効率に直結します。面が波打って見える、角が丸く見える、黒い影が残るといった違和感を放置せず、法線と平滑化の設定を見直すことで、モデルの読み取りやすさは向上します。現場で取得した点群を、より扱いやすいOBJとしてアップロードし、AR表示や測位情報とあわせて確認したい場合は、LRTK Phoneを活用した計測からデータ確認までの流れも検討すると、取得後の整理と共有を進めやすくなります。

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

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

技術記事一覧へ戻る →