您的位置:首页 > 编程语言 > MATLAB

【图像处理】MATLAB:几何变换与图像配准

2017-10-13 21:55 309 查看

仿射变换

  几何变换会对图像的像素之间的空间关系加以修改,被称为“橡皮布变换”,常常用来实现图像配准。图像配准指的是取两张相同场景的图像并加以对准,从而可以将它们合并,以便目测或者定量比较。





tform 结构和 makeform 函数

tformfwd计算正变换,tforminv计算逆变换





代码示例

% 该代码用到了vistformfwd函数
% 定义为function vistformfwd(tform,wdata,zdata,N),N默认值为10。

T1 = [3 0 0;0 2 0;0 0 1];                   % 水平缩放因子为3,垂直缩放因子为2
tform1 = maketform('affine',T1);
figure;
vistformfwd(tform1,[0 100],[0 100]);        % 建立点的栅格结构,使用tformfwd进行变换,显示变换前后图像

T2 = [1 0 0;.2 1 0;0 0 1];
tform2 = maketform('affine',T2);            % 水平剪切
figure;
vistformfwd(tform2,[0 100],[0 100]);

Tscale = [1.5 0 0;0 2 0;0 0 1];             % 缩放
Trotation = [cos(pi/4) sin(pi/4) 0;-sin(pi/4) cos(pi/4) 0;0 0 1];   % 旋转
Tshear = [1 0 0;.2 1 0;0 0 1];              % 剪切
T3 = Tscale * Trotation * Tshear;
tform3 = maketform('affine',T3);
figure;
vistformfwd(tform3,[0 100],[0 100]);


运行结果







图像空间变换









代码示例

% 线性等角变换

f = checkerboard(50);                       % 产生一个一面为8个正方形的测试板,每个的边长均为50
s = 0.8;                                    % 缩放
theta = pi/6;                               % 旋转角度
T = [s*cos(theta) s*sin(theta) 0;-s*sin(theta) s*cos(theta) 0;0 0 1];
tform = maketform('affine',T);
g1 = imtransform(f,tform);                  % 双线性插值
g2 = imtransform(f,tform,'nearest');        % 最近邻内插,比双线性速度快但效果差
g3 = imtransform(f,tform,'FillValue',0.5);  % 用于输入图像区域外的像素颜色

T2 = [1 0 0;0 1 0;50 50 1];
tform2 = maketform('affine',T2);            % 纯平移
% g4 = imtransform(f,tform2);
g5 = imtransform(f,tform2,'XData',[1 400],'YData',[1 400],'FillValue',0.5);

subplot(2,3,1);imshow(f);title('原图像');
subplot(2,3,2);imshow(g1);title('默认双线性插值');
subplot(2,3,3);imshow(g2);title('最近邻内插');
subplot(2,3,4);imshow(g3);title('填充图像区域外的像素颜色');
subplot(2,3,6);imshow(g5);title('平移,指定输出空间位置');


运行结果



图像配准





代码示例

g = imread('aaa.tif');      % 图像b
basepoints = [83 81;450 56;43 293;249 392;436 442];
inputpoints = [68 66;375 47;42 286;275 434;523 532];
gp = imtransform(g,tform,'XData',[1 502],'YData',[1 502]);
imshow(gp);                 % 图像c


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: