Y=interp2(x,y,z,xi,yi,‘method’);
method
例:已知平板表面3*5的网格处的温度值为
82 79 84
81 63 84
80 61 82
82 65 85
84 81 86
做出平板表面温度分布曲面,在x,y方向上每隔0.2个单位进行插值,画出插值后的图形。
clc;clear;
x=1:3;
y=1:5;
temps=[82 79 84
81 63 84
80 61 82
82 65 85
84 81 86]
[x,y]=meshgrid(x,y);
figure(1);
mesh(x,y,temps);
xlabel('x');
ylabel('y');
figure(2);
xi=1:0.2:3;
yi=1:0.2:5;
[xi,yi]=meshgrid(xi,yi);
zi=interp2(x,y,temps,xi,yi,'cubic');
mesh(xi,yi,zi);
xlabel('x');
ylabel('y');
z=griddata(x,y,z,xi,yi,‘method’);
method如下:
1、2、3、4图像光滑性递增
代码如下:
A=imread('lena.jpg'); % 读取图像数据,并赋值给A
figure(1);
imshow(A);%显示原图
Rand=rand(256,256,3)>0.8 | rand(256,256,3)<0.2 ; %随机生成256*256*3的数组,并确定其值大于0.8,后者小于0.2的位置信息。
B=uint8(A).*uint8(Rand); %选取部分数据,并赋值给B
%imshow(B);%显示图像
T = B(:,:,1);%灰度图
[m,n]=size(T);
X1=1:m;
Y1=1:n;
X2 = 1:.1:m;
Y2 = 1:.1:n;
Y2 = Y2';
figure(2);
[X2,Y2] = meshgrid(X2,Y2);%生成网格矩阵
Z = interp2(X1,Y1,T,X2,Y2,'nearest');%插值
imshow(Z)%插值后的图
其他关于图像处理转载大佬文章如下:
https://blog.csdn.net/qq_42771692/article/details/99617861
最后
可以点一下左下角咩?有惊喜哦