图像的空间复合变换
圖像的復合變換指的是給給定圖像進行兩次或者多次以上的平移‘鏡像’比例‘旋轉等基本變換,稱為級聯變換,
由于引入齊次坐標后的圖像變換采用了同意的巨響表示形式,其變換矩陣是3*3,復合變換指的是基本變換矩陣按照順序依次相乘,
? 若對圖像依次進行n次平移、鏡像’比例旋轉等基本變換,變換矩陣是T=T1*T2*T3...............Tn;
1、復合平移
包含多次平移為例,原圖像變換后的位置(x1,y1),
將像素平移到(x2,y2),復合平移矩陣為:
2‘復合比例變換、
包含兩次以上的比例變換
3‘復合旋轉
對圖像進行多次的旋轉,最后合成的旋轉矩陣等于各自旋轉角度之和,包含多次的旋轉矩陣:
圖像的投影變換:
投影變換指的是將圖像像素點的坐標變換成另一種圖像像素點的坐標過程,
寫成公式形式:
x'=(a11x+a12y+a13)/(a31x+a32y+a33)
y'=(a21x+a22y+a23)/(a31x+a32y+a33)
仿射變換分析:
仿射變換分析可以理解為:
1、對坐標進行縮放、旋轉‘平移后取得坐標
2、經過坐標軸的縮放旋轉,平移后得到新坐標的值
仿射變換形式:
f(x)=Ax+b;
A是變換矩陣,b表示平移向量
變換后的形式:
變換函數的介紹:
maketform函數創建空間變換結構:
例子代碼:
<span style="font-size:18px;">clc; clear all; close all;I=imread('lena.jpg');tform=maketform('affine',[1 0 0;5 1 0;0 0 1]); J=imtransform(I,tform); figure;imshow(J); %% udata=[0 1]; vdata=[0 1]; tform=maketform('projective',[0 0;1 0;1 1;0 1],[-4 2;-8 -3;-3 -5;6 3]); [B xdata ydata]=imtransform(I,tform,'bicubic','udata',udata,'vdata',vdata,'size',size(I),...'fill',128); figure; imshow(B)</span>
總結