2010-12-12 11 views
6

現在、次の擬似コードを使用してC#でICPアルゴリズムを実装しています。私は、更新アライメントが実装されるべきか全くわからないしかしICP Powerpoint反復最短ポイントの実装

function ICP(Scene,Model) 
begin 
    E` = + ∞; 
    (Rot,Trans) = In Initialize-Alignment(Scene,Model); 
    repeat 
E = E`; 
Aligned-Scene = Apply-Alignment(Scene,Rot,Trans); 
Pairs = Return-Closest-Pairs(Aligned-Scene,Model); 
(Rot,Trans,E`) = Update-Alignment(Scene,Model,Pairs,Rot,Trans); 
    Until |E`- E| < Threshold 
    return (Rot,Trans); 
end  

から入手?誰かがこれを説明するのが大変なパワーポイントよりもはっきりと分かっていれば:)私は、対応エラーとアライメントエラーを計算する方法を書いていますが、新しいアップデートアライメントを得るためにこれらをどのように適用するかはわかりません。

+2

こんにちはリック、あなたはICP C#の実装を完了できましたか?答えとして私たちと分かち合うことができますか? – Pedro77

答えて

0

スライド10の数式(実際には同じ数式を書くのに2つの同等の方法です)は、整列の平均二乗誤差を示します。平均二乗誤差を最小にするために、回転と平行移動を選択したい(qベクトルはこれらの組み合わせです)。 MSEはqベクトルの素敵で微分可能な関数なので、(少なくとも局所的に)MSEを最小にする新しいアライメントを見つけるために、現在のアライメントから始まるコンジュゲートグラジエントメソッドのようなものを使用するのは簡単です。