LiDAR点群を編集して、地上および地上に存在するノイズ/外れ値を削除しますか?


10

最初と最後のリターンを含む「ダーティ」なLiDARデータがあり、表面レベルの上下で不可避的にエラーが発生します。(スクリーンショット)

ここに画像の説明を入力してください

私はSAGA、QGIS、ESRIおよびFMEを手元に持っていますが、実際の方法はありません。このデータを消去するための良いワークフローは何でしょうか?完全に自動化された方法はありますか、それとも手動で削除しますか?


点群データに低/高ノイズが分類されていますか(las specs 1.4 R6のクラス7および8)?
アーロン

それらのソフトウェア製品のどれを使って何を試しましたか、そしてそれでどこに行き詰まりましたか?焦点を当てた質問をするのではなく、オプションについて話し合いたいと思っているようです。GISチャットルームでオプションについて話し合うことは常に問題ありません。
PolyGeo

1
モデレーターがソフトウェアを要求する質問と何かを行う方法/方法を要求する質問を間違えるため、投票を再開するよう投票します。ソフトウェアのみをリストする回答は、このコンテキストでは実際の回答ではありません。私は私のPOVをgis.meta.stackexchange.com/questions/4380/…でよりよく説明しています。
Andre Silva

1
また、「広すぎる」一方的な閉鎖が過度に使用されているようです:gis.meta.stackexchange.com/questions/4816/…。ケースはここに当てはまると思います。問題を特異なものにするのは、点群にすべてのタイプの外れ値があることです。
Andre Silva

回答:


9

外れ値があるようです:

  • i)地表面の下;
  • ii)地表の上および地上の他の実際の特徴の中で垂直に;
  • iii)地上のポイント。たとえば、雲や鳥によって引き起こされたものなど、対象となるすべてのオブジェクトよりも高さが高い(これは写真には表示されていませんが、そうかもしれないと思います)。

「i」の場合、オプションは、「負の失敗」を考慮に入れてクリーンなLiDAR地上点群を取得できる地上フィルターアルゴリズムを使用することです。Evans and Hudak(2007)のMultiscale Curvature Classification(MCC)アルゴリズムを参照してください。それは4ページで言われています:

LiDARデータでは一般的に負の誤解が発生します。これは、返されたレーザーパルスでの光子の散乱が原因である可能性があります。散乱は、放出されたレーザーパルスが航空機センサーに戻るまでの時間を長くし、移動距離の計算を膨らませるので、表面の高さが誤って周囲の測定値よりも低いと記録される測定エラーが発生します。曲率分類アプローチは、ネガティブブロンダを取り巻く有効なリターンを潜在的に削除する可能性があることに注意する必要があります。負の誤解に対処するため、HaugerudとHardingは、曲率許容差パラメーターを補間されたセルサイズの4倍に設定し、この負の曲率しきい値を超えるリターンを選択することを提案しました。ただし、特定の状況下では、ネガティブな失敗であるように見える返品は、実際には有効な返品(シンクホールなど)になる場合があることに注意してください。したがって、潜在的なネガティブな失敗を取り除くための前述の提案は、必要に応じてユーザーの裁量で使用するオプションの最後のモデルループとして実装できます。

以下は、MCC-LIDARの使用例の投稿です。

正確なDEMを作成するための正確なLiDAR地上ポイントクラウドを取得したら、ポイントクラウドを正規化し、DEMサーフェスの下にあるポイント(負の値を持つポイント)を除外できます。同じアプローチを使用して、ある固定しきい値を超えるポイントを削除するポイント番号「iii」に対処することもできます。たとえば、次を参照してください。

次に、「ii」を残します。これは、LAStoolslasnoiseから推奨されているAlecZの回答で対処されています。また、「iii」、およびおそらく「i」の一部も処理します(ただし、LAStoolsにはライセンスが必要です)。外れ値のチェック/削除のために特別に作成された他のツールがここに引用されています:Charlie Parrの回答にあるPDALのfilters.outlierツール。

次に、自動化プロセスから残ったもの(外れ値がある場合)を手動で削除できます。例えば:


エヴァンス、ジェフリー・S。Hudak、Andrew T.2007 。森林環境で離散リターンLiDARを分類するためのマルチスケール曲率アルゴリズム。地球科学とリモートセンシングに関するIEEEトランザクション。45(4):1029-1038。


3

PDALにはポイントデータ抽象化ライブラリをお勧めします。PDALを使用して、同様のフィルタリングの問題を解決しました。PDALは、オープンソースであり、Pythonサポートを提供し、処理を簡単に再現し、フィルタリングパラメーターを追跡することができるため、気に入っています。また、いくつかのステップ(たとえば、切り取り、フィルター処理、エクスポート)を連鎖させて、それらを一度に実行できる「パイプライン」があるので、私も気に入っています。本当に大きな点群を持っている場合、PDALは他のソリューション(LASTools、QTMなど)ほど高速ではない可能性があることに注意してください。

次のようなPDALパイプラインを使用して、境界点の問題に対処できます。

{
"pipeline": [
    "input_utm.las",
    {
        "type":"filters.crop",
        "bounds":"([401900,415650],[7609100,7620200])"
    },
    {
        "type":"filters.outlier",
        "method":"statistical",
        "mean_k":12,
        "multiplier":2.0
    },
    {
        "type":"filters.range",
        "limits":"Classification![7:7]"
    },
    {
      "filename":"output.tif",
      "resolution":1.0,
      "output_type":"mean",
      "radius":3.0,
      "bounds":"([401900,415650],[7609100,7620200])",
      "type": "writers.gdal"
    }
    ]
}

このパイプラインはLASを読み取り、指定されたUTM範囲にトリミングし、すべての範囲外のポイントにフラグを付けるフィルターを実行し、次に範囲外のポイントのみを保持する2番目のフィルター(つまり、分類フラグ!= 7)を実行し、次にエクスポートします。 1 mの解像度のGeoTIFF。統計フィルターは、最近傍の平均距離計算を実行して、ポイントがその近傍から「離れすぎている」かどうか、つまり外れ値かどうかをテストしています。

ドキュメントから:

ここに画像の説明を入力してください


1
@AndreSilvaが編集しました!基本的に、それは、ポイントが(mean_k)の隣接点になるための「通常の」距離を尋ね、ポイントの距離が長すぎる((乗数)*平均距離を超えるシグマ)場合は、次のようにフラグが立てられます。外れ値
チャーリーパー

1

OPはソリューションをオープンソースに限定していなかったので、Quick Terrain Modeler(QT Modeler)をお勧めします。ライセンスが必要です。QTに点群をロードし、基本的にそれを傾けて目的のプロファイルビューを取得し、削除するクラスターにラバーバンドを適用して、削除を実行します。


1

私は、補間されたラスターに焦点変動を使用するだけで運が良かったです。次に、ポイントに分散値を割り当て、しきい値を使用して、ローカルカーネル推定からの大きな逸脱を表す、ローカルで高い分散を削除します。

補間されたサーフェスの解像度が、ポイントレベルでの局所的な変化をキャプチャするのに十分なほど小さい粒子であることを確認する必要があります。カーネルのサイズも影響しますが、単一の外れ値の場合は、3x3ウィンドウで十分です。いくつかの追加のポイントを失う可能性がありますが、LIDARを使用すると、十分なデータを確保できます。


1

Lastoolsはまさにあなたが必要とするものを提供します-これらすべてのポイントをあなたのために取り除く自動化されたスクリプト。ただし、それにはライセンス費用がかかりますが、これが通常のタスクとしてすばやく実行したいプロセスである場合は、ツールセットのlasnoiseスクリプトを使用するのが最適なオプションです。

@Andre Silvaが述べたように、ArcGISにはlasツールセットがあり、Create LAS Dataset geoprocessingツールを実行した後に使用できます。そこから、手動でこれらのノイズポイントを再分類または削除できます。欠点は、QTモデラー(@auslanderが推奨)ほど直感的または効果的なプロセスではなく、おそらくlasファイルを手動で視覚化/分析/操作するための最良のプログラムであり、ライセンス費用もかかるということです。ArcMapは、ポイントクラウドの編集時に表示されるポイントの数を制限します。つまり、ノイズのある領域にズームインし、それらを削除または再分類してから、手動のクリーンアッププロセスの一部として移動する必要があります。しかし、これは仕事を成し遂げるでしょう。


1

アンドレ・シルバが言った、MCC-LIDARは、接地点を抽出することができますが、非常に大きなpointcloud(5億ポイントまたはそれ以下)を持っている場合は、私の経験から、それは苦労しそうだ良いオプションです。つまり、設定(スケールパラメータと曲率パラメータ)を変更しても、エラーが返され、アルゴリズムは実行されません。また、私の経験から、データに「ネガティブな失敗」の一部が残っています。

そのための私の代替策は、ポイントクラウドを反転させることです(地下のポイントが上がり、地上が下がります)。これを取得するには、データをRにロードして高さを反転し、MCC-LIDARを実行してデータを再度反転します。おそらくQGISまたはArcGISでこれを実行できますが、データセットのサイズによっては、実行に時間がかかる場合があります。

PDALツールの地面は、より大きなデータセットでより適切に機能するため、優れたオプションでもありますが、地面の下のいくつかのポイントは引き続き保持されます。データセットを反転すると、この問題の解決に役立ちます。

地上のポイントについては、私の最善のアプローチは手動のクリーニングであり、私がそうすることがわかった最高のオープンソースツールはCloudCompare内にあります。Segmentトップバーのメニューから選択し、選択したポイントを削除するか、他のすべてのポイントを削除できます。私はこれまで(lasviewツール)にLAStoolsを使用しましたが、3Dインターフェースの動作はユーザーフレンドリーではありません。


ネガティブな失敗を取り除くために点群を反転させる興味深いアプローチ。Rで5億点のポイントクラウドをロードするのは簡単でしたか?
Andre Silva

数分かかる場合があります。通常は、data.table開発パッケージのfreadを使用してASCIIファイルからアップロードします。そこでは、使用するスレッドの数を試すことができます。
Andre

1

私はGreenValley Internationalのテクニカルサポートです。フラッグシップソフトウェアLiDAR360外れ値削除ツールを使用して、これらのエラーを可能な限り削除し、データ品質を向上させることができます。

このアルゴリズムは、最初にユーザー定義の近傍内の各ポイントの隣接ポイントを検索し、ポイントからその隣接ポイントまでの平均距離を計算します。次に、すべてのポイントのこれらの平均距離の平均と標準偏差が計算されます。ポイントからその隣接セルまでの平均距離が最大距離よりも大きい場合(最大距離=平均+ n *標準偏差、nはユーザー定義の複数の数値)、外れ値と見なされ、元の値から削除されます点群。

ここに画像の説明を入力してください


-1

オープンソースオプションとして、3Dフォレストには、自動的にフィルターをかける優れたツールと、点群をクリーンアップする手動ツールがあります。必要な結果を得るために、さまざまなフィルターパラメーターを試してみなければならない場合があります。点群をフォレスト化することを目的としていますが、多くのツールはあらゆる点群で役立ちます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.