MATLAB-二维线性插值运算

news/2024/11/27 23:42:41/

二维插值在图像处理和数据可视化方面得到了大量的应用,二维插值的基本原理与一维插值一样,但二维插值是对两个变量进行函数的插值。在MATLAB中,主要使用interp2()函数进行二维插值的实现,其调用格式如下,

zi =interp2(z,xi,yi) %表示若 z=mxn,则x=1,y=1:m

zi = interp2(z, ntimes) % 在两点之间递归地插值ntimes次

zi=interp2(x,y,z,xi,yi) % 对原始数据x,y ,决定插值函数,返回值z为(x;,y)在函数f(x,y)上的值

zi= interp2(x,y ,z,xi,yi ,method) % 采用的不同的插值方法进行插值

zi= interp2( method,extrapval) % 若数据超过原始数据的范围时,则输入“extrapval”来指定种 %外推方法

在二维插值中,“mtethod”为选取插值的方法。插值的方法有以下4种:邻近插值、双线性插值、样条插值和立方插值。二维插值方法对比见表。

例:不同二维插值方法的结果图。

1)创建M文件,输人以下代码,实现原始数据图和二维插值4种

方法的结果图,所示。

[x.y] = meshgrid( -2:0.4:2); %原始数据

z= peaks(x,y);

[xi,yi] =meshgrid( -2:0.2:2); %设置插值点

zl = interp2(x,y,z,xi,yi, ' nearest '); %邻近插值

z2= interp2(x,y,z,xi,yi); %双线性插值

z3= interp2(x,y,z,xi,yi, 'spline'); %样条插值

z4= interp2(x,y,z,xi,yi, ' cubic '); %立方插值

hold on;

subplot(2,3,1);

surf(x,y,z);

title( '原始数据);

subplot(2,3,2);

surf(xi,yi,zl);

title( '邻近插值');

subplot(2,3,3);

surf(xi,yi,z2);

title( '双线性插值');

subplot(2,3,4);

surf(xi,yi,z3);

tile( '样条插值');

subplot(2,3,5);

surf(xi,yi,z4);

title('立方插值');

2)接着输人以下代码,实现插值结果等高线的绘制,如图6-11所示。

>>figure;

subplot(2,2,1); %绘制等高线

contour(xi,yi,z1);

tile( '邻近插值');

subplot(2,2,2);

contour( xi ,yi,z2);

title(’双线性插值');

subplot(2,2,3);

contour(xi,yi,z3);

title( '样条插值');

subplot(2,2,4) ;

contour( xi,yi,z4) ;

title('立方插值');


http://www.ppmy.cn/news/10938.html

相关文章

RobotFramework测试库

在RF 测试库里面,分为三种测试库标准测试库扩展测试库远程测试库标准测试库随 Robot Framework 版本一同发布的测试库, 不需要单独安装,但部分标准库仍然需要手动导入标准库有扩展测试库标准库以外的其他测试库都统称为扩展测试库&#xff0c…

算法与数据结构

位运算 打印一个整数型的32位 public void print(int num){ for(int i 31; i > 0;i--){ System.out.print((num & 1 << i) > 0 ? "1" : "0"); } } print(1); //0000000000000000000000000000001 &&#xff1a;与运算&#…

BGP基础实验(1.10)

目标: 1、首先为所有路由器配置接口ip和环回 r1&#xff1a; [r1]int lo0 [r1-LoopBack0]ip add 1.1.1.1 24 [r1-LoopBack0]int gi 0/0/0 [r1-GigabitEthernet0/0/0]ip add 12.1.1.1 24 r2&#xff1a; [r2]int lo0 [r2-LoopBack0]ip add 2.2.2.2 24 [r2-LoopBack0]int gi …

Java中常用API总结(5)—— Object类中的深克隆和浅克隆

对象克隆一、前言二、浅克隆1.概述2.实例1️⃣思路2️⃣继承cloneable接口底层原理3️⃣重写clone方法底层原理3.代码实现三、深克隆1.概述2.实例3.代码实现四、结语一、前言 本文将详细讲述Object类中的对象克隆方法&#xff0c;其中包含深克隆和浅克隆&#xff0c;两者有一定…

产线工控安全之现状分析及方案应对

产线安全现状 工业控制系统是支撑国民经济的重要设施&#xff0c;是工业领域的神经中枢。现在工业控制系统已经广泛应用于电力、通信、化工、交通、航天等工业领域&#xff0c;支撑起国计民生的关键基础设施。 随着传统的工业转型&#xff0c;数字化、网络化和智能化的工业控…

Apache与Nginx虚拟机的三种访问+非简单请求+跨域知识点整理

Apache 在D:\project\web\index.html中写入 <h1>welcome useing apache!</h1>基于ip访问 打开phpstudy_pro\Extensions\Apache2.4.39\conf\extra\httpd-vhosts.conf写入 <VirtualHost 192.168.1.4:80>ServerAdmin 88888888163.com #管理员邮箱DocumentRoo…

【Linux】进程信号万字详解(上)

&#x1f387;Linux&#xff1a; 博客主页&#xff1a;一起去看日落吗分享博主的在Linux中学习到的知识和遇到的问题博主的能力有限&#xff0c;出现错误希望大家不吝赐教分享给大家一句我很喜欢的话&#xff1a; 看似不起波澜的日复一日&#xff0c;一定会在某一天让你看见坚持…

若依分离版解决单个账号多设备登录问题

若依分离版解决单个账号多设备登录问题 1.application.yml添加相关配置&#xff0c;用于灵活控制单个账号多设备登录的情况 #token配置 token: # 这个是若依框架本身存在的配置 # 是否允许并多设备登录 true:允许 false:不允许 这个是新增的配置singleLogin: false2.Cach…