相似、仿射、射影变换区别 | 您所在的位置:网站首页 › 相似变换与仿射变换的区别和联系 › 相似、仿射、射影变换区别 |
刚性变换:只有物体的位置(平移变换)和朝向(旋转变换)发生改变,而形状不变,得到的变换称为刚性变换。 下面分别从等距变换,相似变换,仿射变换,射影变换几个部分分别介绍: 1、等距变换(欧式变换) 它相当于是平移变换(t)和旋转变换(R)的复合,等距变换前后长度,面积,线线之间的角度都不变。 自由度 6 (3+3) 等距变换和均匀缩放(S)的一个复合,类似相似三角形,体积比不变。 自由度 7 (6+1) 一个平移变换(t)和一个非均匀变换(A)的复合,A是可逆矩阵,并不要求是正交矩阵。 仿射变换的不变量是:平行线,平行线的长度的比例,面积的比例 自由度12 (9+3) 4、射影变换(透视变换) 当图像中的点的齐次坐标的一般非奇异线性变换 射影变换的不变量是:重合关系、长度的交比 自由度 15 (整个矩阵除以v右下角为1) 总结:仿射变换位于射影变换和相似变换之间,仿射变换推广相似变换使得夹角不再保持不变,造成物体形状在变换后产生歪斜,他在变换中,直线只与方向有关,与位置无关,不会像射影变换那样,越远越小。。。。。。 仿真代码: clear;close all;clc I=imread('1.png'); figure(1),subplot(1,5,1);imshow(I);title("原图"); [w,h]=size(I); theta=pi/4; t=[100,100]; s=0.2; % 等距变换 H_e=projective2d([cos(theta) -sin(theta) t(1); sin(theta) cos(theta) t(2); 0 0 1]'); newimg=imwarp(I,H_e); subplot(1,5,2);imshow(newimg);title("等距变换"); % 相似变换 H_s=projective2d([s*cos(theta) -s*sin(theta) t(1); s*sin(theta) s*cos(theta) t(2); 0 0 1]'); newimg=imwarp(I,H_s); subplot(1,5,3);imshow(newimg);title("相似变换"); % 仿射变换 H_a=projective2d([1 0.5 t(1); 0 0.5 t(2); 0 0 1]'); newimg=imwarp(I,H_a); subplot(1,5,4);imshow(newimg);title("仿射变换"); % 射影变换 H_P=projective2d([0.765,-0.122,-0.0002; -0.174,0.916,9.050e-05; 105.018,123.780,1]); newimg=imwarp(I,H_P); subplot(1,5,5);imshow(newimg);title("射影变换"); |
CopyRight 2018-2019 实验室设备网 版权所有 |