2016-04-06 10 views
2

私は主題の点群を持っており、次に特定の面内にあるすべての点から点群を作成します。この点群は次のようになります。 enter image description herePCL - 高密度領域に見つからない点をフィルタリングする

この四角形以外の余分な点をすべて除外したいと思います。私が飛行機のすべての点を取得したとき、同じ平面上にあることが起こっている非関連点があります。私はそれらをフィルタリングしたいので、私は矩形内の点で排他的に働くことができます。

私はポイントクラウドとオブジェクトモデリングの作業に非常に新しいので、私が探しているものを知ることは難しいです。私はStatisticalOutlierRemovalを使ってみましたが、驚くことではありませんが、余分なものが少し高密度になっても、必ずしもすべての余分なポイントを得るわけではありません。フィルタをより積極的にするようにパラメータを変更すると、興味のある矩形からポイントが削除され始めます。

filtersが利用可能ですが、実際にはどうなっているのでしょうか?この問題を解決するのに最適な方法はどれですか?私は試行錯誤してそれぞれを通過することができますが、私は誰かが正しい方向に私を向けることを望んでいます。私が探しているこの最終結果を得る方法はありますか?

答えて

1

あなたは試みることができる:

  • は、寸法やクラウドの密度に基づいて、 'R​​'(setRadiusSearch)の値と 'K'(setMinNeighborsInRadius)とRadious Outlier Removalを使用してください。ダムのルールとして、それらの値が高いほど、フィルタリングに興味のあるポイントをフィルタリングする可能性が高くなります。

  • 実際に興味のあるポイントの座標を知っている場合は、これらの座標を使用してsetFilterLimitsの「バウンディングボックス」を作成します。ボックスの外に出ると、フィルタリングされます。

あなたはSORフィルタのパラメータを変更しようとしたとき、それはあなたが削除されたくなかったポイントを削除するために始めた、おそらくフィルターを通過するが、あなたの最善の策であると言ったように。

ご希望の場合はこちらをご覧ください。

1

デビッドのように私はRadiusOutlierRemovalを試してみよう。あなたのデータが大体2次元であると仮定 - あなたの矩形内のあなたの雲の密度を決定します(D in points /r²)。あなたの矩形の最も弱い点は、D/4近傍のみを持つコーナーです(最大半径は短い側より大きくありません)。 Xの安全係数を使用すると、近傍のD /(X * 4)未満の密度ですべての点をフィルタリングできるようになりました。あなたは長方形の短辺と等しい半径rで始まり、(D *r²)/(4 * X)以下の点を除去して、より大きな、外れ値クラスターを得る。半径を小さくしてこのプロセスを繰り返し、長方形に近い小さなクラスタも捕捉します。

+0

リージョン拡張セグメント化(http://pointclouds.org/documentation/tutorials/region_growing_segmentation.php)を使用して終了し、次に最も重要なクラスターを使用します。これは私の必要性のためにうまくいくようです。これが悪い考えである理由はありますか? – dnc253

関連する問題