rotation (cosθ−sinθsinθcosθ)(xy)=(xcosθ−ysinθxsinθ+ycosθ) θ回転
scaling (a00b)(xy)=(axby) 横にa倍,縦にb倍拡大縮小
shearing (1ts1)(xy)=(x+tysx+y) 横にyのt倍移動,縦にxのs倍移動するせん断(長方形が平行四辺形になります)
translation (xy)+(pq)=(x+py+q) x軸方向にp,y軸方向にq平行移動
以上のように,2×2行列を掛ける一次変換では(0,0)が(0,0)に移るのでtranslationを表すことはできないし、平行を保つのでprojective transformationを表すことはできません.しかし,座標(x, y)を(x, y, 1)と表すことでこれらをすべてまとめて表すことができます.そのため,変換行列を3×3にして(3, 3)成分を1とします。
rotation (cosθ−sinθ0sinθcosθ0001)(xy1)=(xcosθ−ysinθxsinθ+ycosθ1)
scaling (a000b0001)(xy1)=(axby1)
shearing (1t0s10001)(xy1)=(x+tysx+y1)
translation (10p01q001)(xy1)=(x+py+q1)
因みに,映画"Transformers"(変形ロボット),映画"The Transporter"(運び屋)はありましたが,映画"Translator"はまだないですね(笑).
<Reference>
Function Translations
http://www.purplemath.com/modules/fcntrans.htm
Quick Reviews on Local Descriptors, SIFT and Single Object Recognition by Fei-Fei Li.
https://sensblogs.wordpress.com/2011/08/23/quick-reviews-on-local-descriptors-sift-and-single-object-recognition-by-fei-fei-li/