※当サイトはPRを含みます

【3D点群処理】サンプリング手法まとめ

Heuristic Sampling

点間の距離などを用いてサンプリングする手法について紹介します(深層学習によるサンプリング手法以外)

FPS

距離が大きい点を順番に取得していく手法。計算コストが高いので大規模点群には不向きです。

IDIS (Inverse Density Importance Sampling)

ある点からk個の近傍点までの距離の総和を計算し、その後上位K点をサンプリングする手法。FPSよりは効率的ではあるが、外れ値に敏感です。

RS (Random Sampling)

乱数を元にランダムにサンプリングする手法。計算コストは小さいが均等にサンプリングできないことがあります。

ボクセルダウンサンプリング

立方体のグリッドを配置し、そのグリッド内の点の重心に置き換えた点をサンプリングする手法です。

Learning Based

深層学習を用いたサンプリング手法について紹介します。

Generator based Sampling (GS)

サンプリングする点を生成するネットワークを使用します。

S-NETは、PointNetの基本構造に従い、点群を単純化するように学習させ、推論時にはサンプリングされた点を利用します。

Continuous Relaxation based Sampling (CRS)

end-to-end かつタスクに依存しないサンプリング手法です。ガンベルマックストリックを使用しています。

※ガンベルマックストリックを使用すると、カテゴリ数m回のサンプリングだけで済むので効率的になる。

Policy Gradient based Sampling (PGS)

サンプリングをマルコフ決定過程として定式化する手法です。これはサンプリングするための確率分布を逐次的に学習します。

ただし点群が大きいと探索空間が非常に大きくなるため学習された確率分布は大きい分散を持ちます。

各手法の比較

各サンプリング手法の総時間とメモリ消費量を比較した結果が以下の図になります。

小規模な点群では、どのサンプリング手法もほぼ同等の時間とメモリを消費し、計算負荷が大きくなりにくい傾向が見られます。

大規模な点群の場合、FPS/IDIS/GS/CRS/PGSは非常に時間がかかるか、メモリコストがかかるかのどちらかになっています。これに対し、ランダムサンプリングは全体として時間・メモリ効率に優れています。

おすすめ参考書