7.2 二維基本變換
-
平移變換
-
-
-
-
- 下圖來自 部落格
- 代碼實作在 部落格
-
-
旋轉變換
- 繞坐标原點旋轉角度 (逆時針為正,順時針為負)
-
-
-
- 推導過程:部落格 (内容有錯誤,修複如下) 或者 書籍129頁(待補)
理論
設原始圖像的任意點 經順時針旋轉 角度後到新的位置 ,為表示友善,采用極坐标形式表示,原始點的角度為 。根據極坐标與直角坐标的關系,原始圖像的點 的極坐标為 旋轉到新位置以後 的極坐标為 由于旋轉後的點 需要用 表示,對上式進行簡化,得 用矩陣表示 記上式變換矩陣為 為旋轉矩陣。
上述變換是針對原點的,如果指定了旋轉中心,可以先按上述方式進行旋轉,再把旋轉後的中心平移到旋轉前的中心。具體地,設旋轉前的中心坐标為
,則旋轉後的坐标為 ,根據上面的關系,兩個點的坐标關系即由上面矩陣變換确定。則旋轉中心平移量為 ,代入 ,可得 平移對應的平移矩陣為 也可以了解為,将中心坐标 移到原點, ,再進行旋轉R,再将 移回原位 -
放縮變換
-
-
-
- 以坐标原點為放縮參照點
- 不僅改變了物體的大小和形狀,也改變了它離原點的距離
- 下圖來自:部落格,關于原點(0,0)的縮放。想想關于某個點p(x,y)的縮放如何實作?
-
- 關于任意參照點P(x,y)的放縮變換
1、平移使P落于坐标原點
2、放縮(sx,sy),
3、平移使落于原點的P傳回原先的位置
齊次坐标與二維變換的矩陣表示