2016-06-28 14 views
4

私は理論上はすべて同じ線で交差する必要があるいくつかの平面を3D空間に持っています。複数の平面の平均交差線を見つける

各平面は、3つの測定点を取ることによって計算されます。しかし、これらの点の測定には多少の誤差があります。

実際には、プレーンはすべて同じラインで交差するわけではありません。

これらすべてのプレーンの「平均」交差線を得るにはどうすればよいですか?

私はちょうど各平面をお互いの平面と交差させ、その線を平均することができます。しかし、2つの平面の向きがほぼ同じ場合、測定値の誤差が小さいため、計算された交差点に大きな誤差が生じます。このように平均交差点を計算すると、測定誤差が拡大することになります。

一般的な交差線を計算する公平な方法はありますか?

+0

重心は、*同じ方向の平面*と*直交平面の*の小さい値の交差線を重み付けします。または、*平行平面の近くの*の交差を削除します。 –

+0

はい、それぞれの行に重みを付けると効果があります。ありがとう!正確な体重の数学的正当性がある場合は、私は好奇心が強いです。つまり、各線を[angle-between-the-plane-in-rad]²で重み付けすると、最良の適合結果が得られるか、重量のために。 – HugoRune

+0

私はそれについて考えましたが、これについては良い答えがありません。エラーモデルと平面間の角度の両方を管理する必要があります。私はあなたが線形関数を使用してはならないと思う、いくつかの急成長関数、指数関数のようなものを使用する必要がありますか?本当は直交性を好む。これはすべて飛行機の数などに依存します。 –

答えて

0

あなたが必要とするのは、平均化ではなく、異常値(異常交差線など)を検出して破棄するアルゴリズムだと思います。

これを行う1つの標準アルゴリズムは、ランダムサンプルコンセンサスRANSAC)です。しかし、それを使用できるようにするには、線の間に何らかの種類の距離を定義する必要があります。意味のあるやり方で行うことができるはずです。

inlier(つまり、良好な交差線)を見つける別の可能性はHough transformです。このアルゴリズムでは、線の全パラメータ空間がセルに細分される。計算された交線は、この交線のパラメータを含むセルに対して「投票」する。最も投票数の多いパラメータセルが勝ちます。勝利したセルに投票したすべてのラインから平均ラインを計算することによって、結果を精緻化することができる。

関連する問題