几何运算
几何运算又称为几何变换,是将一幅图像中的坐标映射到另外一幅图像中的新坐标位置,它不改变图像的像素值,只是改变像素所在的几何位置,使原始图像按照需要产生位置、形状和大小的变化。
图像几何运算的一般定义为:
g(x,y)=f(u,v)=f(p(x,y),q(x,y))
u=p(x,y),v=q(x,y)唯一地描述了空问变换,即将输入图像f(u,v)从u-v坐标系变换为x-y坐标系的输出图像g(x,y)。
本节主要介绍图像的一些基本几何变换,包括图像的平移、镜像变换、转置和放缩等。
图像平移
图像平移就是将图像中所有的点按照指定的平移量水平或者垂直移动。平移后的图像与原图像大小相同。
设(𝑥0x_0,𝑦0y_0)为原图像上的一点,图像水平平移量为Δx,垂直平移量为Δy,则平移后点(𝑥0x_0,𝑦0y_0)坐标将变为(𝑥1x_1,𝑦1y_1) ,它们之间的坐标平移原理数学关系式如下所示:
𝑥1x_1=𝑥0x_0+Δx
𝑦1y_1=𝑦0y_0+Δx
平移运算程序
I = imread('pout.tif');
[M,N] = size(I); G = zeros(M,N); %构建一个与图像I空间
大小一致的0矩阵
A = 20; b = 20; %a为水平右移,b为垂直下移
for I = 1:M;for j = 1:N;if((i-a>0) & (i-a<M) & (j-b>0) & (j-b<N)) %从坐标点到新坐标点的映射g(i,j) = I(i-a,j-b);elseg(i,j) = 0; %新图像外的坐标点置0endend
end
J = uint8(g); %生成平移后新图像
subplot(1,2,1),imshow(I),title('原始图像');
subplot(1,2,2),imshow(J),title('平移后的图像’);
效果图片