Snažím se pochopit, jak používat, co vyžaduje k výpočtu homogenní transformační matice.
Znám 2 body ze 2 různých rámců a 2 původ z jejich odpovídajících rámců.
Jak transformační matice vypadá, ale matoucí je, jak mám vypočítat vektor polohy (3×1), který matice potřebuje. Jak jsem pochopil, je tento vektor původem starého rámce ve srovnání s novým rámcem. Ale jak to vypočítat, zřejmou odpovědí (myslím) by bylo odečíst obojí ($ O_ {new} – O_ {old} $), ale necítí se dobře.
Vím, že je to jednoduchá otázka, ale moje hlava tento problém nemůže obejít a jak to mohu dokázat správným způsobem s informacemi, které znám?
Odpověď
Homogenní transformační matice $ H $ se často používá jako matice k provádění transformací z jednoho snímku do druhého, vyjádřeno v předchozím rámci . Překladový vektor tedy zahrnuje [x, y (, z)] souřadnice druhého rámce vyjádřeného v prvním. Možná, že toto již odpovídá na vaši otázku, ale níže je podrobnější vysvětlení.
Transformační matice obsahuje informace o rotaci i překladu a patří do speciální eucledovské skupiny $ SE (n) $ v $ n $ -D. Skládá se z rotační matice $ R $ a překladového vektoru $ r $. Pokud nepovolíme žádné smyky, rotační matice obsahuje pouze informace o rotaci a patří do ortonormální skupiny $ SO (n) $. Máme:
$$ H = \ begin {bmatrix} R & r \\ \ bar {0} & 1 \ end {bmatrix} $$
Pojďme definovat transformační matici $ H ^ a_b $, která vyjadřuje souřadnicový rámec $ \ Phi_b $ v $ \ Phi_a $, vyjádřený v $ \ Phi_a $. $ \ Phi_a $ může být vaším počátkem, ale může to být i jiný rámec.
Transformační matici můžete použít k vyjádření bodu $ p = [p_x \ p_y] ^ \ top $ (vektory) v jiném rámci: $$ P_a = H ^ a_b \, P_b $$ $$ P_b = H ^ b_c \, P_c $$ s $$ P = \ begin {bmatrix} p \\ 1 \ end {bmatrix} $$ The nejlepší na tom je, že je můžete skládat takto: $$ P_a = H ^ a_b H ^ b_c \, P_c = H ^ a_c \, P_c $$ Zde je malý příklad 2 D. Zvažte rámec $ \ Phi_b $ přeložený $ [ 3 \ 2] ^ \ top $ a otočil $ 90 ^ \ circ $ stupňů vzhledem k $ \ Phi_a $. $$ H ^ a_b = \ begin {bmatrix} \ cos (90 ^ \ circ) & – \ sin (90 ^ \ circ) & 3 \\ \ sin (90 ^ \ circ) & \ cos (90 ^ \ circ) & 2 \\ 0 & 0 & 1 \ end {bmatrix} = \ begin {bmatrix} 0 & -1 & 3 \\ 1 & 0 & 2 \\ 0 & 0 & 1 \ end {bmatrix} $$ Bod $ p_b = [3 \ 4] ^ \ top $ vyjádřený v rámci $ \ Phi_b $ je $$ \ begin {bmatrix} p_ {a, x} \\ p_ {a, y} \\ 1 \ end {bmatrix} = \ begin {bmatrix} 0 & -1 & 3 \\ 1 & 0 & 2 \\ 0 & 0 & 1 \ end {bmatrix} \ begin {bmatrix} 3 \\ 4 \\ 1 \ end {bmatrix} = \ begin {bmatrix} -1 \\ 5 \\ 1 \ end {bmatrix} \ do p_a = \ begin {bmatrix} -1 \\ 5 \ end {bmatrix} $$ Pokuste se nakreslit výkres, abyste lépe porozuměli.