**:
插值就是已知一組離散的資料點集,在集合內部某兩個點之間**函式值的方法。
一、一維插值
插值運算是根據資料的分布規律,找到乙個函式表示式可以連線已知的各點,並用此函式表示式**兩點之間任意位置上的函式值。
插值運算在訊號處理和影象處理領域應用十分廣泛。
1.一維插值函式的使用
若已知的資料集是平面上的一組離散點集(x,y),則其相應的插值就是一維插值。matlab中一維插值函式是interp1。
y=interp([x,]y,xi,[method],['extrap'],[extrapval]),代表可選。
此m檔案執行結果:
放大π/2處:
2.內插運算與外插運算
(1)只對已知資料點集內部的點進行的插值運算稱為內插,可比較準確的估測插值點上的函式值。
(2)當插值點落在已知資料集的外部時的插值稱為外插,要估計外插函式值很難。
matlab對已知資料集外部點上函式值的**都返回nan,但可通過為interp1函式新增'extrap'引數指明也用於外插。
matlab的外插結果偏差較大。
二、二維插值
已知點集在三維空間中的點的插值就二維插值問題,在影象處理中有廣泛的應用。
二維插值函式是interp2,用法與一維插值函式interp1類似。
zi=interp2(x,y,z,xi,yi, method, extrapval):在已知的(x,y,z)三維柵格點資料上,在(xi,yi)這些點上用method指定的方法估計函式值,外插使用'extrapval'。
二維插值中已知資料點集(x,y)必須是柵格格式,一般用meshgrid函式產生。interp2要求(x,y)必須是嚴格單調的並且是等間距的,如果(x,y)不是等間距的,會將且變換為等間距形式,如果已知是等間距的,可在method引數前加星號,如果:'*cubic'。
執行結果:
三、多維插值
1.interp3
三維插值,vi=interp3(x,y,z,v,xi,yi,zi, method),用法同二維插值interp2。
2.n維插值
vi=interpn(x1,x2,x3…,v,y1,y2,y3,…, method),用法同二維插值interp2。
3.ndgrid
產生n維空間上的柵格。
[x1,x2,x3, …]=ndgrid(x1,x2,x3, …)
本文出處
[1] 王正林,劉明.精通matlab 7[m].北京:電子工業出版社,2006,p205~p214
MATLAB一維插值和二維插值
插值問題描述 已知 乙個函式上的若干點,但函式具體表示式未知,現在要利用已知的若干點求在其他點處的函式值,這個過程就是插值的過程.1.一維插值 一維插值就是給出y f x 上的點 x1,y1 x2,y2 xn,yn 由此求出y f x 在點xa處的值ya的值.實現一維插值使用interp1命令,使用...
Matlab二維插值
y interp2 x,y,z,xi,yi,method method nearest 最鄰近插值 linear 預設 雙線性插值 cubic 雙三次插值 示例如下 例 已知平板表面3 5的網格處的溫度值為 82 79 84 81 63 84 80 61 82 82 65 85 84 81 86做出...
MATLAB二維插值和三維插值
插值問題描述 已知 乙個函式上的若干點,但函式具體表示式未知,現在要利用已知的若干點求在其他點處的函式值,這個過程就是插值的過程.1.一維插值 一維插值就是給出y f x 上的點 x1,y1 x2,y2 xn,yn 由此求出y f x 在點xa處的值ya的值.實現一維插值使用interp1命令,使用...