1701006930
1701006931
只要给定了两个函数f1和f2,就决定了一个几何变换φ,它将坐标为(x,y)的点变到坐标为的点。
1701006932
1701006933
设平面曲线的参数方程为:
1701006934
1701006935
1701006936
1701006937
1701006938
1701006939
其中,T是函数的定义域,则曲线C在变换φ下的像φ(C)的参数方程为:
1701006940
1701006941
1701006942
1701006943
1701006944
(1)图像的平移
1701006945
1701006946
对于图像的平移,只需要对坐标进行加减运算,即可实现平移操作,具体的MATLAB程序如下:
1701006947
1701006948
clc,clear,close all %清屏和清除变量 warning off %消除警告 %图像的平移 t = 0
:0.02*pi
:4*pi; x = t.*cos(t); y = t.*sin(t); z = t/4; A = [x;y;z]; %x,y,z合并于一个矩阵 v = [3;5;2]; n =size(A); for i=1
:n(1,2) V(
:,i)=v; end A1 = A +V; %图形的平移 figure(‘color’,[1,1,1]) %设置图形背景为白色 plot3(A(1,
:),A(2,:),A(3,:),‘linewidth’,2) %绘制原始图像 hold on %图像保持句柄 plot3(A1(1,
:),A1(2,:),A1(3,:),‘k:’,‘linewidth’,2) %绘制三维曲线图 grid on %网格化 legend(‘原始图像’,‘平移后的图像’)
1701006949
1701006950
运行程序输出图形如图5-47所示。
1701006951
1701006952
1701006953
1701006954
1701006955
图5-47 图像的平移
1701006956
1701006957
(2)图像的伸缩
1701006958
1701006959
图像的伸缩是将图像沿着x、y、z分别进行拉伸和压缩,从而改变图像的形状。图像伸缩矩阵如下:
1701006960
1701006961
1701006962
1701006963
1701006964
一个三维图像中的点表示成矩阵A,进而可得到伸缩后的图像A‘:
1701006965
1701006966
1701006967
1701006968
1701006969
具体的MATLAB程序如下:
1701006970
1701006971
clc,clear,close all %清屏和清除变量 warning off %消除警告 %图像的拉伸 t = 0
:0.02*pi
:4*pi; x = t.*cos(t); y = t.*sin(t); z = t/4; A = [x;y;z]; K=[1.5,0,0;0,6,0;0,0,2]; %拉伸矩阵 A1 = K*A; figure(‘color’,[1,1,1]) %设置图形背景为白色 plot3(A(1,
:),A(2,:),A(3,:),‘linewidth’,2) %绘制三维曲线图 hold on %图像保持句柄 plot3(A1(1,
:),A1(2,:),A1(3,:),‘r:’,‘linewidth’,3) %绘制三维曲线图 grid on %网格化 legend(‘原始图像’,‘拉伸后的图像’)
1701006972
1701006973
运行程序输出图形如图5-48所示。
1701006974
1701006975
1701006976
1701006977
1701006978
图5-48 图像的拉伸
1701006979
[
上一页 ]
[ :1.70100693e+09 ]
[
下一页 ]