非標準の.LAS、.LAZ点群データの前処理でGeoTIFFタグを無視するためのpreprocessor.exeの使用方法は?

症状

非標準の列レイアウトや非標準のジオ タグを持つ LAS ファイルなど、一部の異常な点群入力ファイルは、自動的に正しく前処理されません。 これらには、座標にすでに適用されているジオタグ変換が含まれています。 .las を処理することで、 ファイルを使用しても、変換は 2 回目に適用され、座標に誤りが生じます。

原因

  • これらのファイルの生データはメートル単位ですが、ファイルにはGeoTIFFタグも含まれています。 したがって、読者は座標がメートルではなく緯度/経度であると考え、想定される緯度/経度をメートルに変換します。 BricsCAD V21では、GeoTIFFタグとWKT文字列は完全に無視され、点群は正常に前処理されましたが、BricsCAD V22はジオタグを自動的に読み取り、破損したジオタグは無視されなくなりました。
  • この新しい動作 (geo タグを無視しないようにするため) は意図されたものです。 GeoTIFFタグが無視されると、他の標準点群ファイルの読み込みに失敗します。 GeoTIFF タグ/WKT 文字列は、LAS/LAZ ファイルごとに固有です。

ソリューション

  • 開発チームは、ユーザーが前処理中にWKT文字列/ GeoTIFFタグを無視できるようにする新しいプリプロセッサ実行可能ファイルを実装しました。 これにより、V21 で読み込まれたが V22 で読み込まれなかったファイルが再び機能します。

    実行可能なプリプロセッサのリファクタリングされたオプションの完全なセットは、OSシェルで引数なしでプリプロセッサ実行可能ファイルを実行すると見つかります。

    オプション:
    
    ドライラン:
      -h [ --help ] 許可されたオプションを表示する
      -p [ --parse ] 解析された引数を出力する (ファイルアクセスなし)
      -H [ --header ] las/laz/e57 ヘッダを出力する (読み込みなし)
                                   ポイント)
    グローバル:
      -o [ --output ] arg 出力ファイル名 (文字列)
      -f [ --folder ] arg 出力フォルダ (文字列)
      -d [ --discretization ] arg 座標の離散化 (メートル単位) (double;
                                   既定値は 0.000100)
      -u [ --unstructured ] 入力ファイルを非構造化ファイルとして扱う
      -t [ --threads ] arg スレッド数 (uint32_t; デフォルトは 12)
    
    後続の (!) 入力ファイルの修飾子:
      -s [ --scale ] 引数 scale factor to meter (double; default 1.000000)
      -c [ --columns ] arg PTS columns (文字列、デフォルトは "auto"):
                                       '-c "auto"' は 'XYZ[I][RGB]' を仮定します。
                                       '-c "XYZ..BGR"' など
                                       'XYZRGBI' を許可します。 '.' 列スキップあり
      -w [ --wkt ] arg well-known text (WKT) (文字列、デフォルトは "file"):
                                       '-w "skip"' は入力ファイルの WKT をスキップします
                                       '-w "file"' は入力ファイルの WKT を使用します。
                                       '-w "GEOGCS[\"WGS 84\",...]"' など
      -r [ --rgb ] arg は入力 RGB ビットを上書きします (uint32_t; デフォルトは 0):
                                       '-r 0' は自動ビット決定を行う
                                       0、8、16 を許可
    
    入力ファイル:
      -i [ --input ] arg 入力ファイル (スペース区切り、ワイルドカード *):
                                       /path/to/stem.ext
                                       /path/to/scan*.*
新しい実行可能ファイルで前処理を完了するために使用する手順:
  1. C:\Program Files\Bricsys\BricsCAD V24 en_USフォルダーを開きます。
  2. 何も選択されていないフォルダーで、Shift+右クリックを実行して、[ここでPowerShellウィンドウを開くを選択します。
  3. 開いた Windows PowerShell ダイアログで、プリプロセッサ オプションを使用して次のコマンドを実行します。

    .\preprocessor.exe -w skip -i 'E:\FILE\filename.las' -o myCloud -f "E:\test"

    Note: 引数で使用される最初のパスは実際の点群ファイルへのパスであり、最後のパスは *.las のキャッシュがある空のフォルダーです ファイルが作成されます。
  4. 前処理を待ちます。 終了すると、「前処理 正常に終了しました」というメッセージが表示されます。 が表示されます。
    PS C:\Program Files\Bricsys\BricsCAD V24 en_US> .\preprocessor.exe -w skip -i 'E:\FILE\filename.las' -o myCloud -f "E:\test"
    *解析されたプログラムオプション*
    出力= myCloud.vrm
      フォルダ= E:/test
      離散化 = 0.0001
      非構造化 = スキャン位置が存在する場合は使用
      スレッド = 12
    ファイル1:
        パス = E:\FILE\filename.las
        スケール = 1
        wkt = スキップ
        RGB = 自動決定
    前処理の実行: E:/test\myCloud.log で進行状況を追跡します
      前処理が正常に終了しました。
    
  5. 作成した新しいキャッシュフォルダ(上記の例ではフォルダE:\から)をBricsCADのPointCloudCacheにコピーします。

    C:\ Users \%ユーザー名%\ AppData \ Roaming \ Bricsys \ BricsCAD \ V24x64 \ en_US \ PointCloudCache

  6. BricsCADを開き、新しい図面を作成して保存します。
  7. _POINTCLOUDREFERENCEコマンド-> Insert myCloud.vrm ->を実行し、レンダリングされた表示スタイルを設定し、[全範囲にズーム]を行うと、点群が図面に正しくロードされます。