LRTKレフィクシア株式会社

点群OBJアップロード時の圧縮方式非対応を防ぐ4チェック

点群OBJのアップロードで圧縮方式の確認が必要な理由

点群データをOBJ形式で書き出し、クラウドや業務システムへアップロードするときは、OBJ本体をそのまま送る方法と、圧縮ファイルにまとめて送る方法があります。OBJは本来、頂点、線、面、法線、テクスチャ座標などの三次元形状を記述するテキスト形式です。頂点列を点データとして扱う運用もありますが、頂点だけのOBJや点要素を点群として表示できるかは、書き出し側と読み込み側の実装によって異なります。点群OBJの利用では、圧縮方式だけでなく、アップロード先がそのOBJの記述方法を受け付けるかも確認が必要です。

点群から作成したOBJは頂点数が多くなりやすく、座標値がテキストとして大量に記録されるため、ファイル容量が大きくなる傾向があります。そのため、通信時間の短縮や複数ファイルの一括送信を目的として、圧縮してからアップロードする運用が選ばれることがあります。ただし、画像など圧縮済みの関連ファイルが多い場合は、再圧縮しても容量が大きく減らないことがあります。

圧縮ファイルを作成できたからといって、アップロード先がその方式を読み取れるとは限りません。端末上で圧縮や展開ができることと、クラウド側やサーバー側の処理が同じ方式や暗号化条件に対応していることは別の問題です。アップロード先が対応していない圧縮方式を使うと、送信開始前に拒否されたり、アップロード完了後の展開処理でエラーになったりします。

また、対応している圧縮方式を使っていても、内部のフォルダー構成や関連ファイルの配置が想定と異なる場合、OBJを検出できないことがあります。このとき、画面には圧縮方式の非対応に近いエラーが表示されることがありますが、実際には展開後のファイル探索やOBJ解析に失敗している可能性があります。

OBJは、頂点座標や面情報を記録した本体ファイルだけで利用できる場合もありますが、材質やテクスチャ画像を伴うポリゴンモデルでは、MTLなどの別ファイルを参照することがあります。圧縮時にOBJだけを格納し、参照先のファイルを入れ忘れると、形状は読み込めても材質や画像が表示されない場合があります。さらに、参照ファイル名が展開時に文字化けしたり、フォルダーの階層が変わったりすると、アップロード先で正しく関連付けられないことがあります。

一方、頂点ごとのRGB値をOBJの頂点行へ追加する書き出し方法は、広く使われている実装拡張ではあるものの、元来のOBJ仕様に含まれる標準的な記述とはいえません。読み込み側がその拡張に対応していなければ、点は表示されても頂点色が無視されたり、解析自体に失敗したりする可能性があります。色付き点群OBJを扱う場合は、圧縮前の表示だけでなく、アップロード先が同じ頂点色表現に対応しているかを確認します。

点群OBJのアップロードでは、圧縮率の高さだけで方式を選ぶのではなく、受け入れ側の仕様、展開後の構成、関連ファイルの参照関係、OBJの記述方法、データ容量を含めて確認することが重要です。圧縮は容量を減らしたり複数ファイルをまとめたりするための補助手段であり、OBJの内容や参照関係を修復する処理ではありません。圧縮前に正常だったデータが、圧縮と展開を経ても同じ状態を保っているかを確かめる必要があります。

特に、点群の取得担当者、データ編集担当者、アップロード担当者が異なる現場では、圧縮方法が統一されていないとトラブルが起こりやすくなります。ある担当者の端末では開けるのに、別の担当者の環境では開けないという状況も発生します。案件ごとに対応形式とOBJの出力条件を確認し、手順を標準化することが、圧縮方式非対応を防ぐ基本となります。

圧縮方式非対応で起こりやすい症状

圧縮方式に関係するエラーは、発生する段階によって症状が異なります。ファイルを選択した直後に拒否される場合は、アップロード欄で許可されていない拡張子を選んでいる可能性があります。送信ボタンを押せない、ファイル一覧に表示されない、不明な形式と判定されるといった症状が代表的です。

ただし、アップロード先によっては、拡張子だけでなく、ブラウザが送信するメディアタイプやファイル先頭の識別情報などを確認している場合があります。そのため、表示上の拡張子が許可されていても、内部形式が異なれば拒否されることがあります。反対に、同じ圧縮方式でも、アップロード画面の許可設定によって選択できないことがあります。

アップロード自体は開始されるものの、完了後にエラーになる場合は、サーバー側が圧縮ファイルを展開できていない可能性があります。この場合、端末側では正常に作成されたように見えても、受け入れ側の展開機能が方式や圧縮アルゴリズムに対応していない、暗号化された圧縮ファイルを自動処理できない、ファイルが破損しているといった原因が考えられます。

展開には成功しているものの、「OBJが見つかりません」「対象データがありません」などと表示される場合は、圧縮ファイル内の階層が問題になっている可能性があります。圧縮ファイルを開いた直後の階層にOBJがなく、複数のフォルダーをたどらなければ到達できない構成では、アップロード先の探索条件によってOBJを検出できないことがあります。

OBJは認識されても、解析中に止まる場合があります。この場合は、圧縮方式だけでなく、OBJ本体の記述、頂点数、面数、参照番号、座標値、文字コード、頂点色などの独自拡張への対応も確認する必要があります。受け入れ側が複数の解析エラーを同じメッセージで表示していると、利用者には圧縮方式の問題に見えることがあります。

形状や点は表示されるものの、色や材質が反映されない場合は、関連ファイルの不足、参照先の不一致、または頂点色表現の非対応が疑われます。OBJ本体だけを圧縮した、MTLや画像を別の場所に置いた、画像ファイル名が変更された、展開時に文字化けした、読み込み側が頂点行のRGB拡張を解釈しないといった状態です。形状が表示されたことでアップロード成功と判断せず、必要な属性まで再現されているかを確認しなければなりません。

アップロード中に処理が止まる、進行表示が長時間変わらない、途中で通信エラーになる場合は、圧縮方式ではなく、容量や通信環境が原因の可能性があります。圧縮ファイルが上限以内でも、展開後の容量、ファイル数、解析時のメモリ使用量などに別の制限が設けられている場合があります。圧縮後の容量だけで判断せず、元のOBJの容量や頂点数、関連画像の容量も確認することが大切です。

このように、エラー表示だけで圧縮方式が原因だと決めつけると、不要な再圧縮を繰り返すことになります。ファイル選択時、送信中、展開時、解析時、表示時のどの段階で問題が起きているかを整理し、条件を一つずつ確認することが効率的です。

チェック1 アップロード先が受け付ける形式を確認する

最初に確認するのは、アップロード先がどの形式を受け付けるかです。圧縮方式を決めてから確認するのではなく、受け入れ条件を確認した後に圧縮方法を選びます。端末の標準機能や利用中の圧縮ツールで作成できる形式であっても、アップロード先が対応していなければ利用できません。

アップロード画面に許可される拡張子が記載されている場合は、その表示を確認します。ただし、拡張子が許可されていることと、内部のOBJを自動的に解析できることは同じではありません。圧縮ファイルを保管用として受け付けるだけなのか、受信後に展開してOBJを読み込むのかを区別する必要があります。

たとえば、ファイル共有を目的とする仕組みでは、圧縮ファイルをそのまま保存できれば処理が完了します。一方、点群や三次元モデルをブラウザ上で表示する仕組みでは、受信後に圧縮ファイルを展開し、OBJの頂点や面などを解析しなければなりません。前者でアップロードできた形式が、後者でも使えるとは限りません。

確認する項目には、圧縮方式だけでなく、利用可能な圧縮アルゴリズム、1ファイルあたりの容量、複数ファイルの合計容量、展開後の容量、ファイル数、フォルダー階層、暗号化の可否も含まれます。圧縮ファイルにパスワードを設定している場合、利用者の端末では入力して展開できますが、サーバー上の自動処理では入力できないことがあります。対応形式であっても、暗号化が理由で拒否される可能性があります。

アップロード先によっては、圧縮ファイルの直下にOBJを配置するよう求められる場合があります。反対に、一つの親フォルダーにまとめる構成を前提とする場合もあります。どちらが一般的かを決めるのではなく、利用する仕組みの条件に合わせることが重要です。

OBJの受け入れ条件も確認します。面を含むポリゴンモデルだけを対象としているのか、頂点だけのOBJや点要素を点群として扱えるのか、頂点色の独自拡張に対応するのか、MTLや画像を読み込むのかによって、同じOBJでも結果が変わります。圧縮方式が正しくても、OBJのデータ表現が非対応なら表示できません。

過去に成功した方式が、現在も利用できるとは限りません。システム更新、管理設定の変更、セキュリティ方針の変更などにより、許可される形式が変わることがあります。同じ組織内でも、部署や案件ごとに利用するアップロード先が異なれば、条件も異なる可能性があります。

外部の関係者へデータを渡す場合は、送信側だけで判断せず、受信側が利用できる形式を事前に確認します。圧縮率の高い方式を一方的に選ぶよりも、双方が確実に展開でき、OBJを同じ状態で読み込める方式を選ぶほうが、再送や変換の手間を減らせます。

対応条件を確認したら、案件の手順書や共有メモに記録します。使用する圧縮方式、圧縮アルゴリズム、最大容量、内部構成、暗号化の可否、OBJの出力条件、アップロード後に確認する画面を明記しておけば、担当者が変わっても同じ条件で作業できます。個人の経験に頼らず、受け入れ条件を作業ルールにすることが重要です。

チェック2 圧縮ファイルの拡張子と実体を一致させる

二つ目のチェックは、圧縮ファイルの拡張子と実際のアーカイブ形式を一致させることです。ファイル名の末尾に付く拡張子は、受け入れ側が形式を判定する手掛かりの一つです。ただし、システムによっては拡張子に加えて、メディアタイプやファイル内部の識別情報も確認します。拡張子だけを変更しても、内部の形式や圧縮方法は変わりません。

たとえば、ある方式で作成した圧縮ファイルの末尾だけを別の拡張子に書き換えると、アップロード先が書き換え後の形式として扱おうとしても、内部情報が一致しないため、破損または非対応と判定される可能性があります。圧縮方式を変更したい場合は、元のOBJと関連ファイルから、目的の方式で新しい圧縮ファイルを作成し直します。

端末の設定によって拡張子が表示されていない場合にも注意が必要です。利用者が拡張子を付けたつもりでも、実際には二重の拡張子になっていることがあります。画面上の表示名だけで判断せず、ファイル情報を開いて完全な名称を確認します。

OBJ本体についても、拡張子と中身の一致を確認します。別形式のデータを単にOBJへ名前変更しても、OBJとして利用できるようにはなりません。正しい書き出し機能を使い、頂点や面などがOBJの記述として保存されている必要があります。

圧縮前には、OBJを一度開いて正常に読み込めるか確認します。テキストとして確認できる場合は、頂点を表す行が存在すること、ファイルが途中で切れていないこと、容量が想定から大きく外れていないことを確認します。点群の規模に対して頂点行が極端に少ない場合は、書き出しが完了していない可能性があります。

ただし、テキストを目視しただけでは、すべての記述が正しいことを保証できません。頂点だけのOBJを点群として扱う場合は、利用予定の読み込み環境で表示できるかを確認します。頂点色を含む場合は、その色の記述方法がアップロード先でも解釈されるかを別途確認します。

圧縮後には、作成したファイルを一度展開します。展開できるかだけでなく、展開されたOBJと関連ファイルが圧縮前と同じ内容かを確認します。ファイル名、容量、ファイル数を比較することで、明らかな欠落を見つけられます。更新時刻は圧縮や展開の方法によって変わることがあるため、内容一致の決定的な根拠にはしません。

より厳密に確認する場合は、圧縮前と展開後のファイルからSHA-256などのハッシュ値を計算して比較します。同一のバイト列からは同じハッシュ値が得られるため、大容量ファイルを目視で比較できない場合でも、内容が変わっていないかを確認しやすくなります。ハッシュ値を比較するときは、圧縮ファイル同士ではなく、圧縮前の元ファイルと展開後の対応ファイルを比較します。

圧縮ファイルを同期領域や共有フォルダーへ直接作成する場合は、同期が完了しているかも確認します。圧縮処理が終わっていても、アップロード元の領域への同期が途中であれば、不完全なファイルを送信する可能性があります。同期状態を確認し、別の場所へコピーして展開できる状態になってからアップロードします。

ファイル名は、案件名、取得範囲、作成日、版番号などを統一した規則で付けます。圧縮ファイル名が最新版を示しているのに、内部のOBJが旧版のままでは、アップロードが成功しても誤ったデータを共有することになります。圧縮前に内部ファイルの名称と版を確認し、不要な旧版を含めないようにします。

外部環境との互換性を重視する場合は、ファイル名を英数字、ハイフン、アンダースコアなどの単純な文字で構成すると、文字コードやパス解釈に起因する問題を切り分けやすくなります。日本語の使用が必ず失敗につながるわけではありませんが、異なる環境間で受け渡す場合は、名称を単純化することで確認項目を減らせます。

チェック3 OBJと関連ファイルの格納構成を確認する

三つ目のチェックは、圧縮ファイルの中に必要なファイルがすべて入り、参照関係を保った構成になっているかを確認することです。点群OBJは、座標だけを扱う場合にはOBJ本体のみで成立することがあります。一方、ポリゴンモデルとして材質やテクスチャ画像を利用する場合は、OBJ以外のファイルが必要になることがあります。

OBJ内には、MTLファイルへの参照が記録されることがあります。MTLには、さらにテクスチャ画像のファイル名やパスが記録される場合があります。このため、OBJだけを圧縮すると、形状は表示されても材質や画像が反映されないことがあります。

ただし、MTLやテクスチャは一般に面を持つモデルの材質表現に使われます。頂点だけの点群OBJでは、読み込み側がMTLを点の色として適用しない場合があります。頂点行にRGB値を付加する方式もありますが、標準OBJの必須仕様ではなく、対応状況はソフトウェアごとに異なります。色付き点群を共有する場合は、どの方式で色を保持しているかを確認します。

関連ファイルを一式で圧縮するときは、圧縮前と展開後で相対的な位置関係を変えないようにします。OBJとMTLが同じフォルダーにある状態で正常に表示されていたなら、圧縮ファイル内でも同じ位置関係を保ちます。画像が下位フォルダーに格納されていたなら、そのフォルダー名と階層を維持します。

整理のために圧縮時だけフォルダーを追加すると、参照先が変わることがあります。OBJやMTL内に記録された参照は、自動的に新しい階層へ書き換えられるわけではありません。圧縮は複数ファイルをまとめる処理であり、OBJやMTL内の参照経路を修正する処理ではないためです。

アップロード対象専用の作業フォルダーを作り、その中に必要なファイルだけを集める方法が有効です。元データの保存場所をそのまま圧縮すると、旧版、一時ファイル、不要な画像、別範囲のデータなどが混入する可能性があります。専用フォルダーへ必要な一式を複製し、そのフォルダー内でOBJを開けることを確認してから圧縮します。

ただし、OBJやMTLが元の端末内の絶対パスを参照している場合、ファイルを複製しただけでは関連データが見つからないことがあります。外部共有を前提にする場合は、同じフォルダーまたは下位フォルダー内で参照が完結する構成に整えます。別の端末に存在しない保存場所を前提とした参照は避けます。

圧縮ファイル内の階層が深すぎないかも確認します。フォルダーを選択して圧縮した結果、同じ名前のフォルダーが二重になり、そのさらに下にOBJが入ることがあります。アップロード先の探索範囲が限定されている場合、OBJを見つけられません。

圧縮後には、ファイルを開いた最初の階層を確認します。OBJがどこにあるか、関連ファイルがどこにあるか、不要な親フォルダーが増えていないかを確認します。圧縮ファイルの名称と内部の最上位フォルダー名が同じである必要はありませんが、アップロード先の仕様に合い、担当者が迷わない構成に統一することが大切です。

同名のOBJを複数含めることも避けたほうが安全です。アップロード先がどのOBJを優先するか不明な場合、旧版を読み込んだり、複数ファイルの存在をエラーと判定したりする可能性があります。一つの圧縮ファイルに一つの成果をまとめ、解析対象を明確にします。

文字コードやファイル名の表記も参照関係に影響します。OBJ内に記載されたMTL名、MTL内に記載された画像名と、実際のファイル名が一致しているか確認します。大文字と小文字を区別する環境では、文字が一つ異なるだけでも別のファイルとして扱われます。

ファイル名に空白や特殊な記号を含む場合、読み込み側の実装によっては正しく解釈できないことがあります。元の環境で正常に表示されていても、アップロード先が同じ処理を行うとは限りません。外部共有用のデータでは、ファイル名やフォルダー名を単純化し、参照記述も一致させると原因を切り分けやすくなります。

圧縮前後のファイル一覧を比較することも重要です。OBJ、MTL、画像の数が一致しているか、容量が大きく変わっていないかを確認します。圧縮ファイルの作成時に対象を選択し忘れると、作成処理は正常に完了しても必要なファイルが不足します。

点群OBJが座標だけで構成され、別の画像や材質を利用していない場合は、関連ファイルが不要なこともあります。頂点色を含む場合は、別ファイルが不要であっても、その頂点色記述をアップロード先が解釈できるとは限りません。必要ファイルと対応機能を分けて確認し、元の書き出し結果と利用目的から判断することが大切です。

チェック4 展開テストと小規模アップロードを実施する

四つ目のチェックは、本番データを送る前に、圧縮ファイルの展開テストと小規模なアップロードテストを実施することです。点群OBJは容量が大きくなりやすいため、失敗後の再圧縮や再送には時間がかかります。最初から本番データだけで試すと、圧縮方式、OBJの表現、容量制限、通信環境、解析負荷のどれが原因か分かりにくくなります。

まず、圧縮した本番データを端末上で一度展開します。展開時に警告が出ないこと、途中で停止しないこと、必要なファイルがすべて復元されることを確認します。展開後のOBJを利用予定の閲覧環境で開き、圧縮前と同じ位置、形状、点の範囲、色で表示されるかを確認します。

展開できたことだけで正常と判断しないことが重要です。圧縮ファイルが開けても、関連ファイルが不足していれば、材質や画像が欠落します。OBJが存在しても、内容が途中で切れていれば、頂点の一部しか表示されない可能性があります。頂点色が独自拡張で保存されている場合は、展開後のファイルが同一でも、アップロード先で色が再現されないことがあります。

次に、本番と同じ条件で小規模なテストデータを作成します。テストデータは単に空のOBJにするのではなく、本番と同じ種類の頂点記述、面の有無、座標桁数、色情報、関連ファイル構成を含めます。点数や面数だけを減らし、本番の特徴を保った状態にすることが理想です。

このテストデータを同じ方式で圧縮し、実際のアップロード先へ送ります。アップロード受付、展開、解析、表示まで完了するかを確認します。受付完了の表示と、点群やモデルの解析完了は別の段階である場合があります。アップロードが100パーセントになっただけで成功とせず、表示画面でデータを確認します。

小規模データが成功し、本番データだけが失敗する場合は、圧縮方式自体よりも容量、ファイル数、頂点数、面数、解析時のメモリ使用量などを疑います。元のOBJの容量、圧縮後の容量、頂点数、面数、画像容量、関連ファイル数を比較します。アップロード先には、圧縮後の容量だけでなく、展開後の容量や処理時間に上限が設定されていることがあります。

本番データを一時的に分割し、どの規模から失敗するかを調べる方法もあります。ただし、成果物を分割して利用する場合は、各OBJの座標系、原点、位置関係を維持する必要があります。アップロード確認のための分割と、正式な成果としての分割は分けて考えます。

小規模データでも失敗する場合は、圧縮方式、拡張子、暗号化、内部階層、ファイル名、OBJの記述方法を優先して確認します。一度に複数の条件を変更すると、何が原因だったか分からなくなります。最初は圧縮方式だけ、次は階層だけというように、一回の試行で一つの条件を変更します。

テスト結果は記録しておくと再利用できます。圧縮前の容量、圧縮後の容量、展開後の容量、ファイル数、方式、内部構成、OBJの種類、アップロード時刻、解析結果、表示結果を残します。成功した条件を案件の標準にすれば、別の担当者が同じ作業を行うときにも迷いません。

小規模テストは、本番アップロード直前ではなく、データ作成の早い段階で行うことが望ましいです。受け入れ条件が確定していないまま大容量のOBJを作り込むと、納品直前に形式変更が必要になることがあります。早めに流れを確認すれば、書き出し方法やファイル構成を本番データへ反映できます。

圧縮方式以外の原因を切り分ける確認手順

圧縮ファイルをアップロードしたときにエラーが表示されても、原因が圧縮方式であるとは限りません。受け入れ側が詳細なエラーを表示せず、複数の問題を一つのメッセージで案内している場合があるためです。原因を切り分けるには、どの段階で処理が止まったかを確認します。

ファイルを選択した時点で拒否される場合は、拡張子、メディアタイプ、ファイル内部の識別情報、ファイル名、容量、アップロード欄の許可条件を確認します。送信途中で停止する場合は、通信状態、端末の空き容量、ブラウザの動作、アップロード時間の上限などが関係している可能性があります。

送信が完了した後に失敗する場合は、展開または解析の問題が考えられます。圧縮ファイルを端末上で展開できるか、展開後のOBJを開けるかを確認します。端末上でも展開できない場合は、圧縮ファイルの破損や作成未完了が疑われます。

圧縮せずにOBJを直接アップロードできる場合は、同じOBJで比較します。直接アップロードが成功し、圧縮した場合だけ失敗するなら、圧縮方式、暗号化、内部構成、ファイル名などに原因を絞りやすくなります。直接アップロードでも失敗する場合は、OBJ本体の記述、対応機能、容量上限を確認します。

別の小規模OBJを同じ方式で圧縮して送る方法も有効です。小規模データが成功する場合は、本番データの容量、頂点数、面数、行数、関連画像の大きさなどが影響している可能性があります。小規模データも失敗する場合は、方式、構成、OBJの表現方法の問題が考えられます。

OBJ本体には、座標として解釈できない文字、途中で切れた行、存在しない要素を参照する番号などが含まれることがあります。圧縮前の環境では一部を無視して表示できても、アップロード先ではより厳密に解析され、エラーになる場合があります。

面情報を含むOBJでは、面が参照する頂点番号が存在する範囲を超えていないか確認します。法線やテクスチャ座標を参照する場合も、番号の対応が崩れていないか確認します。頂点だけを点群として利用するOBJでは、読み込み側が頂点のみの表示に対応しているか、独自の頂点色情報を解釈できるかを確認します。

座標値が非常に大きい場合は、読み込み側の数値精度、カメラ表示、原点処理などの実装によって、位置ずれや表示不良が起きることがあります。小数桁が長い場合は、OBJがテキスト形式であるためファイル容量が増えます。ただし、圧縮エラーが出たからといって、すぐに座標値や小数桁を変更すべきではありません。元の精度や位置情報に影響するため、圧縮方式の確認と座標調整やデータ軽量化は別の作業として切り分けます。

原因調査では、試行ごとの条件を残します。元OBJ、圧縮方式、圧縮アルゴリズム、暗号化の有無、内部階層、圧縮後容量、展開後容量、アップロード結果、解析結果を記録します。条件を記録せずに再圧縮を繰り返すと、成功しても何が有効だったか分かりません。

点群OBJの容量が大きい場合に見直す項目

アップロード先が対応している方式で圧縮しても、容量上限を超える場合があります。このときは、圧縮方式を変更するだけでなく、OBJに含まれるデータ量を見直します。ただし、必要な精度や成果内容を損なわないことが前提です。

最初に確認するのは、対象範囲外の点が含まれていないかです。現場周辺を広く取得した結果、納品や共有に不要な範囲までOBJへ書き出されている場合があります。必要範囲を明確にし、用途に不要な点だけを除くことで容量を削減できます。

次に、重複した頂点や孤立した点が大量に含まれていないかを確認します。同じ位置に近い点が過剰に重なっている場合や、対象から離れたノイズ点が残っている場合は、見た目や計測結果への影響を確認しながら整理できます。

点群を面へ変換したOBJでは、面数が非常に多くなることがあります。形状を保持するために必要な面と、細かな凹凸やノイズを表現する面を分け、用途に応じて整理します。ただし、出来形確認や変状記録など、微細な形状が重要な用途では、安易な削減を避けます。

座標値の小数桁も容量に影響します。OBJはテキスト形式であるため、各頂点の座標桁数が長いほどファイル容量が増えます。ただし、小数桁を減らすと位置精度や形状再現が変わる可能性があります。必要な精度を確認し、元データを保管したうえで、用途に影響しない範囲を検討します。

画像を参照するOBJでは、画像の容量が圧縮ファイル全体を大きくしている場合があります。JPEGやPNGなどは既に圧縮されているため、アーカイブ化しても容量が大きく減らないことがあります。表示に必要な解像度を確認し、過剰に大きい画像を利用していないか見直します。画像の削減は色や細部の見え方に影響するため、利用する画面の拡大率や確認目的を基準に判断します。

材質数が多い場合は、関連ファイルや画像の数が増え、アップロード後の解析負荷が高くなる可能性があります。同じ用途の材質を整理できる場合は、表示結果を確認しながら統合を検討します。ただし、頂点だけの点群OBJでは材質が適用されない場合があるため、まず色の保持方法を確認します。

軽量化したOBJは、元のOBJと並べて確認します。点群の範囲、基準位置、主要な形状、必要な色、計測対象の細部が保たれているかを確認します。容量が減ったことだけを成功条件にすると、利用時に必要な情報が失われる可能性があります。

元データは上書きせず、軽量化前と軽量化後を分けて保存します。圧縮方式の変更、点数の削減、小数桁の整理、画像の調整を同時に行うと、問題が起きたときに原因を追いにくくなります。作業ごとに版を分け、変更内容を記録します。

複数人で扱う場合のアップロードルール

点群OBJを複数の担当者で扱う場合、圧縮方式を個人判断にすると互換性の問題が起きやすくなります。取得担当者、編集担当者、確認担当者、アップロード担当者の間で、データの完成条件を共有する必要があります。

まず、案件ごとに標準の圧縮方式を決めます。利用するアップロード先が複数ある場合は、送信先ごとに方式を記録します。最も圧縮率が高い方式ではなく、関係者全員が確実に扱え、アップロード先が自動展開できる方式を選びます。

次に、フォルダー構成を統一します。OBJ本体、MTL、画像ファイルをどこに配置するか決めます。頂点色を利用する場合は、その記述方法と対応確認済みの閲覧環境も記録します。案件ごとに構成や色の保持方法が変わると、参照漏れや圧縮対象の選択ミスが起きやすくなります。

ファイル名には、案件名、範囲、作成日、版番号などを含めます。「最新」「最終」「修正版」といった名称だけでは、複数のファイルが並んだときに順序を判断できません。版番号を更新し、旧版と区別できるようにします。

圧縮を担当した人は、作成後に展開テストを行います。アップロード担当者へ渡す前に、圧縮ファイルが開けること、OBJが利用予定の環境で表示できること、必要な関連ファイルが入っていることを確認します。アップロード担当者は、受け入れ条件と容量を確認し、送信後に解析と表示まで確認します。

役割を分ける場合でも、確認結果を共有します。作成者が正常と判断していても、アップロード先での表示確認が終わるまでは作業完了ではありません。受付完了、展開完了、解析完了、表示確認の状態を区別して記録します。

外部へ渡す場合は、相手がどの環境で展開し、どのソフトウェアやシステムでOBJを読むかを想定します。自社内の端末だけで開ける方式や独自の頂点色表現を選ぶと、相手側で再圧縮や再変換が必要になることがあります。送信前に受け入れ形式を確認し、必要に応じて小規模なテストデータで確認します。

圧縮ファイルへ暗号化を施す場合は、アップロード先が対応しているかを確認します。安全性を高める目的で設定しても、自動解析ができなければ点群表示には利用できません。共有範囲、アクセス権、公開期限など、アップロード先の管理機能を利用できる場合は、ファイル暗号化と役割を分けて考えます。

手順書には、圧縮方式、圧縮アルゴリズム、格納構成、命名規則、容量上限、OBJの表現方法、暗号化の可否、展開テスト、アップロード後の確認方法を記載します。エラーが発生した場合の連絡先や、元データの保存場所も決めておくと、再作成が必要になったときに対応しやすくなります。

点群OBJアップロード前の最終確認

アップロード直前には、圧縮方式だけでなく、データ全体を一連の流れとして確認します。最初に、元のOBJが正常に開けるかを確認します。点群の位置、範囲、密度、色、必要な形状が想定どおりであることを確かめます。頂点だけのOBJを利用する場合は、アップロード先がそのデータを点群として扱えるかも確認します。

次に、アップロード対象専用のフォルダーへ必要なファイルを集めます。OBJだけでよいのか、MTLや画像が必要なのか、頂点色がOBJ内の独自拡張として保存されているのかを確認します。旧版、一時ファイル、別案件のデータを含めないようにします。

ファイル名と参照記述を確認します。OBJ内に記載されたMTL名、MTL内に記載された画像名と実際の名前が一致しているか、大文字と小文字、拡張子、空白、記号を含めて確認します。フォルダーを移動した後でも、関連ファイルを読み込めるか試します。

アップロード先の許可形式、圧縮アルゴリズム、容量、ファイル数、暗号化の可否、OBJの対応範囲を確認し、条件に合う方式で圧縮します。既存の圧縮ファイルの拡張子だけを変更せず、必要な方式で新しく作成します。

圧縮後は一度展開し、必要なファイルがすべて復元されることを確認します。展開後のOBJを開き、圧縮前と表示結果が変わっていないかを確認します。圧縮ファイル内の階層が、アップロード先の想定に合っているかも確認します。厳密な同一性が必要な場合は、元ファイルと展開後ファイルのハッシュ値を比較します。

大容量データを初めて送る場合は、本番と同じ構成と記述方法の小規模データでアップロードテストを行います。受付だけでなく、展開、解析完了、表示まで確認します。テストが成功してから本番データを送ることで、圧縮方式やOBJの互換性に起因する再送を減らせます。

本番アップロード後も、処理完了の表示だけで終了しません。点群全体が表示されるか、位置がずれていないか、色や材質が反映されるか、必要な範囲が欠けていないかを確認します。共有用URLを発行する場合は、閲覧者側の権限でも表示できるかを確認します。

エラーが出た場合は、元OBJ、圧縮ファイル、展開後のOBJを保管したまま原因を調べます。すぐに元データを上書きすると、どの段階で問題が起きたか追跡できません。条件を一つずつ変え、成功した組み合わせを記録します。

まとめ

点群OBJアップロード時の圧縮方式非対応を防ぐには、圧縮ファイルを作成できるかどうかではなく、アップロード先が展開し、内部のOBJを想定どおり解析できるかどうかを確認する必要があります。送信側と受信側の対応条件が一致していなければ、端末上では正常な圧縮ファイルでもアップロード後にエラーになります。

一つ目のチェックは、アップロード先が受け付ける圧縮方式、圧縮アルゴリズム、容量、内部構成、暗号化、OBJの記述方法を確認することです。二つ目は、圧縮ファイルの拡張子と実体を一致させ、末尾の名前だけを変更しないことです。三つ目は、OBJとMTL、画像などの関連ファイルを正しい階層で格納し、頂点色を使う場合は読み込み側の対応を確認することです。四つ目は、本番前に展開テストと小規模アップロードを行い、受付から表示までの流れを確認することです。

圧縮方式に関するエラーに見えても、実際には容量上限、OBJ本体の記述、頂点だけのOBJへの非対応、頂点色拡張への非対応、関連ファイルの不足、文字化け、フォルダー階層、通信状態などが原因の場合があります。エラーが起きた段階を整理し、圧縮しないOBJや小規模データとの比較によって原因を切り分けることが重要です。

点群OBJは容量が大きくなりやすいため、一度の失敗でも再圧縮や再送に時間がかかります。受け入れ条件、命名規則、フォルダー構成、OBJの表現方法、展開確認、アップロード後の表示確認を標準化すれば、担当者が変わっても安定した運用を続けやすくなります。

LRTK Phoneで取得した点群をOBJとして共有する場合も、出力されたOBJの記述方法と関連ファイルの構成を確認し、アップロード先の対応条件に合わせて圧縮することが大切です。利用する環境によって頂点だけのOBJや頂点色の扱いが異なる可能性があるため、本番前に小規模データで表示まで確認してください。

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

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