長方形の 2 辺または 3 辺を構成する 3D のポイントがあります。立方体の角の座標を計算するにはどうすればよいですか? 出来ますか?
長方形の 2 辺または 3 辺を構成する 3D のポイントがあります。立方体の角の座標を計算するにはどうすればよいですか? 出来ますか?
私はこれについてあまり経験がありませんが、おそらく RANSAC を使用できますか? RANSAC を使用した点群からの平面検出に関する多くの論文があるようです
また、Point Clouds Library (PCL) も参照してください。これは、平面セグメンテーションを含む多くの便利な機能を備えた非常に印象的なプロジェクトです。
平面が検出されるとすぐに、はるかに簡単なエッジ/コーナーを見つけることが問題になるはずです。
これは単なるアイデアであり、実証済みの方法ではありません。
まず、飛行機を見つけます。ランダムに 3 点を選択し、それらを通る平面を見つけ、4 つのパラメーターを正規化します。1000回くらい繰り返します。1000 個の 4 タプルの数値になります。クラスタリング分析方法の 1 つを使用して、非常に接近している 4 タプルの 2 つまたは 3 つのグループを見つけます。各グループの平均。これらは、おおよそ、ボックスの側面の平面になります。
次に、それらをより正確にします。各平面について、それに近いが他の平面には近くないすべての点を見つけます (「近い」という値については、おそらくクラスタリング方法を使用して見つけることもできます)。このような点のグループごとに、最小二乗法を使用して最適な平面を見つけます。
飛行機が 3 つある場合は、すばらしいことです。それらが交差すると、頂点と 3 つのエッジができます。2 つの平面の場合、エッジは 1 つしかありません。いずれにせよ、他のエッジを見つけようとすることができます。簡単にするために、平面を XY 平面、既知のエッジを X 軸と考えてください。ここで、ほとんどのポイントが左側 (または右側) にあるように、左端 (右端) の垂直線を見つける必要があります。すべてのポイントを X 軸に投影します。これで、元の問題の 1 次元のケースが得られました。ある区間に多数のランダムな点があり、区間を見つけます。クラスタリング方法を再度使用します。