图像的空间变换

本文通过MATLAB代码演示了图像的空间变换过程,包括双线性变换、最近邻内插、指定填充后的变换和平移变换,详细解释了不同变换方法对图像的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

f=checkerboard(50);
subplot(3,2,1),imshow(f),title('原始测试板')

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);%用maketform来创建tform结构,变量类型为affine,参数为T
g1=imtransform(f,tform);%使用imtransform产生空间变换,类型为默认的双线性
subplot(3,2,2),imshow(g1),title('双线性变换测试板')

g2=imtransform(f,tform,'nearest');%使用imtransform产生空间变换,类型为最近邻内插
subplot(3,2,3),imshow(g2),title('最近邻内插法测试板')

g3=imtransform(f,tform,'FillValue',0.5);%参数FillValue用于输入图像区域之外的像素颜色,这里中等的灰度取代了黑色
subplot(3,2,4),imshow(g3),title('指定填充后测试板')

T2=[1 0 0;0 1 0;50 50 1];
tform2=maketform('affine',T2);%利用参数T2完成一个纯平移,解决利用imtransform平移图像时引发的一些混乱
g4=imtransform(f,tform2,'XData',[1 400],'YData',[1 400],'FillValue',0.5);
%XData指定了输出图像的最左列和最右列的位置,YData指定了输出图像的最顶部和最底部的位置
subplot(3,2,5),imshow(g4),title('控制输出法测试板')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值