文档帮助中心文档
网格格式的二维网格数据插值
Vq = interp2 (X, Y, V, Xq Yq)
Vq = interp2 (V, Xq Yq)
Vq = interp2 (V)
VQ = Interp2(v,k)
Vq = interp2 (___,方法)
Vq = interp2 (___、方法、extrapval)
例子
矢量量化= interp2 (X, Y,V,Xq, Yq)使用线性插值返回在特定查询点处的两个变量函数的内插值。结果始终通过该功能的原始采样。X和Y包含样本点的坐标。V包含每个采样点上对应的函数值。Xq和Yq包含查询点的坐标。
矢量量化= interp2 (X, Y,V,Xq, Yq)
矢量量化
X, Y
V
Xq, Yq
X
Y
Xq
Yq
矢量量化= interp2 (V,Xq, Yq)假设采样点的默认网格。默认网格点覆盖矩形区域,x = 1:n和Y = 1: m,在那里[m, n] =大小(V).当您希望节省内存并且不关心点之间的绝对距离时,请使用此语法。
矢量量化= interp2 (V,Xq, Yq)
x = 1:n
Y = 1: m
[m, n] =大小(V)
矢量量化= interp2 (V)通过在每个维度中分割一次样本值之间的间隔,返回在精细网格上的插值值。
矢量量化= interp2 (V)
矢量量化= interp2 (V,k)返回由重复减半间隔形成的精细网格上的插值值k每个维度的时间。这导致了这一点2 ^ k - 1在样本值之间插入点。
矢量量化= interp2 (V,k)
k
2 ^ k - 1
矢量量化= interp2 (___,方法)指定另一种插值方法:'线性',“最近的”,“立方”,“makima”, 或者样条的.默认方法是'线性'.
矢量量化= interp2 (___,方法)
方法
'线性'
“最近的”
“立方”
“makima”
样条的
矢量量化= interp2 (___,方法,extrapval)还指定了extrapval,标量值分配给位于采样点的域外的所有查询。
矢量量化= interp2 (___,方法,extrapval)
extrapval
如果省略extrapval参数用于示例点域外的查询,然后基于方法论点interp2返回以下其中一项:
interp2
的外推值样条的和“makima”方法
南其他插值方法的值
南
全部折叠
粗样品的山峰函数。
山峰
[x,y] = meshgrid(-3:3);v =峰(x,y);
绘制粗采样图。
图Surf(x,y,v)标题('原始抽样');
创建间隔为0.25的查询网格。
[Xq, Yq] = meshgrid (3:0.25:3);
在查询点上插入。
Vq = Interp2(x,y,v,xq,yq);
绘制结果。
图冲浪(XQ,YQ,VQ);标题('使用更精细的网格'线性插值');
粗略地样本峰值功能。
[x,y] = meshgrid(-3:3);v =峰值(7);
在查询点上进行插值,并指定三次插值。
Vq = interp2 (X, Y, V, Xq, Yq“立方”);
图冲浪(XQ,YQ,VQ);标题('立方插值超过更精细的网格');
将一些图像数据加载到工作区中。
负载flujet.matCOLOROMAP.灰色的
分离图像的一个小区域,并将其转换为单精度。
V =单(X (200:300 1:25));
显示图像区域。
显示亮度图像(V);轴离开标题(原始图像的)
在每个维度中,通过重复划分精细网格点之间的间隔五次来插入插值值。
Vq = interp2 (V, 5);
显示结果。
显示亮度图像(Vq);轴离开标题('线性插值')
在这个范围内对函数进行粗略采样,(2, 2)在这两个维度。
(2, 2)
(X, Y) = meshgrid (2:0.75:2);R =√X。^2 + y ^2)+ eps;V =罪(R)。/ (R);
图surf(X,Y,V) xlim([-4 4]) ylim([-4 4]) title('原始抽样')
创建扩展到域中的查询网格X和Y.
[Xq, Yq] = meshgrid (3:0.2:3);
的范围内进行三次插值X和Y,并分配外面归零的所有查询。
Vq = interp2 (X, Y, V, Xq, Yq“立方”,0);
图冲浪(Xq, Yq Vq)标题(X和Y外域Vq=0的三次插值);
采样网格点,指定为实矩阵或实向量。样本网格点必须是唯一的。
如果X和Y是矩阵,然后它们包含一个坐标完整网格(以网格格格格式).使用meshgrid.函数创建X和Y矩阵在一起。两个矩阵的大小必须相同。
meshgrid.
如果X和Y是向量,那么它们被视为网格向量.两个向量中的值必须是严格单调,增加或减少。
例子:[x,y] = meshgrid(1:30,-10:10)
[x,y] = meshgrid(1:30,-10:10)
数据类型:单身的|双
单身的
双
示例值,指定为真实或复杂的矩阵。尺寸要求V取决于大小X和Y:
如果X和Y矩阵是否代表一个完整的网格(在meshgrid.格式),然后V必须与之相同X和Y.
如果X和Y然后是网格向量V必须是包含的矩阵冗长)行和长度(x)列。
冗长)
长度(x)
如果V包含复数,然后interp2分别插值实部和虚部。
例子:兰特(10,10)
兰特(10,10)
数据类型:单身的|双复数的支持:金宝app是的
查询点,指定为真正的标量,向量,矩阵或数组。
如果Xq和Yq是标量,则它们是单个查询点的坐标。
如果Xq和Yq是不同方向的向量吗Xq和Yq被视为网格载体。
如果Xq和Yq那么向量的大小和方向是相同的吗Xq和Yq被视为分散点在二维空间中。
如果Xq和Yq是矩阵,那么它们要么表示一个完整的查询点网格(在meshgrid.格式)或分散点。
如果Xq和Yq是N-D数组,则它们表示二维空间中的散点。
例子:[Xq, Yq] = meshgrid ((1:0.1:10), (5:0.1:0))
[Xq, Yq] = meshgrid ((1:0.1:10), (5:0.1:0))
1
细化因子,指定为实的、非负的整数标量。该值指定在每个维度中重复划分精细网格的间隔的次数。这导致了这一点2 ^ k - 1在样本值之间插入点。
如果k是0,然后矢量量化是一样的V.
0
interp2 (V, 1)是一样的Interp2(v).
interp2 (V, 1)
Interp2(v)
下图显示了插值值(红色)在9个样本值(黑色)中的位置k = 2.
k = 2
例子:interp2 (V, 2)
interp2 (V, 2)
插值方法,指定为该表中的选项之一。
每个维度至少需要两个网格点
需要比“最近的”
每个维度需要两个网格点。
最快的计算与适度的内存需求
电网必须在每个尺寸中具有均匀的间距,但间距对于所有尺寸不一定是相同的
每个维度至少需要四个点
需要更多的内存和计算时间'线性'
每个维度至少需要2个点
产生的起伏少于样条的
计算时间通常小于样条的,但内存要求是相似的
每个维度需要四个点
需要更多的内存和计算时间“立方”
功能值外部域X和Y,指定为实标量或复标量。interp2为域之外的所有点返回此常量值X和Y.
例子:5
5
例子:5 + 1我
5 + 1我
内容值,作为真实或复杂的标量,向量或矩阵返回。尺寸和形状矢量量化取决于您使用的语法,并且在某些情况下,输入参数的大小和值。
Interp2(x,y,v,xq,yq)
interp2 (V, Xq, Yq)
尺寸(Vq)= [1 1]
大小(Xq) = [100 1]
尺寸(yq)= [100 1]
尺寸(Vq) = [100 1]
长度(Yq)
长度(XQ)
尺寸(xq)= [1 100]
尺寸(yq)= [50 1]
大小(Vq)= [50 100]
尺寸(xq)= [50 25]
size(Yq) = [50 25]
尺寸(Vq) = [50 25]
interp2 (V, k)
其中行数为:2 ^ k *(大小(V, 1) 1) + 1,列数是:2 ^ k *(尺寸(v,2)-1)+1
2 ^ k *(大小(V, 1) 1) + 1
2 ^ k *(尺寸(v,2)-1)+1
尺寸(V) = [10 20]
尺寸(Vq) = [37 77]
一组总是递增或递减,没有反转的值。例如,序列,A = [2 4 6 8]是严格的单调和增加。序列,B = [2 4 4 6 8]不是严格的单调,因为之间没有变化b (2)和b (3).序列,C = [2 4 6 8 6]包含一个反转C(4)和C(5),所以它一点也不单调。
A = [2 4 6 8]
B = [2 4 4 6 8]
b (2)
b (3)
C = [2 4 6 8 6]
C(4)
C(5)
为interp2,完整网格是一对矩阵,其元素表示矩形区域上的点网格。一个矩阵包含x-坐标,另一个矩阵包含y坐标。的值x矩阵是严格单调并沿行递增。其列的值是常数。的值y-矩阵是严格单调的,并沿列递增。其行的值是常数。使用meshgrid.创建一个可以传递的完整网格的函数interp2.
例如,以下代码为区域(-1≤)创建一个完整的网格x≤3和1≤y≤4:
[x,y] = meshgrid(-1:3,(1:4))
X = -1 0 1 2 3 -1 0 1 2 3 -1 0 11 2 3 -1 0 1 2 3 Y = 1 11 11 11 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4 4
网格向量是一种更紧凑的格式,可以表示网格而不是完整网格。两种格式与样本值矩阵之间的关系V是
为interp2,网格向量由一对向量组成,定义x- 和y- 在网格中的控制。行矢量定义x-CoordInates,列向量定义y坐标。
例如,下面的代码创建指定区域(-1≤)的网格向量x≤3和1≤y≤4:
x = 1:3;y = (1:4) ';
为interp2,分散点由一对数组组成,数组定义了二维空间中分散点的集合。一个数组包含x-坐标,另一个包含y坐标。
例如,下面的代码指定了点(2,7)、(5,3)、(4,1)和(10,9):
X = [2 5;4 10];Y = [7 3;1 9];
使用注意事项及限制:
Xq和Yq必须是相同的大小。用meshgrid.在网格上计算。
为了获得最好的结果,提供X和Y向量。这些向量中的值必须是严格单调且递增的。
代码生成不支持金宝app“makima”插值方法。
为“立方”插值方法中,如果网格不具有均匀的间距,则会产生误差。在本例中,使用the样条的插值方法。
使用时最好的结果样条的插值方法:
用meshgrid.创建输入Xq和Yq.
使用相对于尺寸的少量插值点V.对大量分散的点进行插值是低效的。
V必须是双或单二维数组。V可以是真实的或复杂的。V不能是矢量。
X和Y必须:
具有相同的类型(双或单)。
是有限向量或二维数组,其相应维数为递增的非重复元素。
与笛卡尔坐标轴对齐X和Y非矢量二维数组(就好像它们是由meshgrid.).
尺寸与V.
Xq和Yq必须是相同类型的矢量或阵列(双或单)。如果Xq和Yq是阵列,然后它们必须具有相同的大小。如果它们是具有不同长度的载体,那么它们必须具有不同的方向。
方法必须是'线性',“最近的”, 或者“立方”.
不支持用于外边界输入的外推。金宝app
有关更多信息,请参见在GPU上运行MATLAB函数(并行计算工具箱).
griddata|griddedInterpolant|interp1|interp3|interpn|meshgrid.|scatteredInterpolant
griddata
griddedInterpolant
interp1
interp3
interpn
scatteredInterpolant
您有这个示例的修改版本。您想打开这个示例与您的编辑吗?
你点击一个链接对应于这个MATLAB命令:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站,以便在可用的地方进行翻译的内容,并查看本地活动和优惠。根据您的位置,我们建议您选择:.
您还可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。
与当地办事处联系