在離散數(shù)據(jù)的基礎(chǔ)上補(bǔ)插連續(xù)函數(shù),使得這條連續(xù)曲線通過全部給定的離散數(shù)據(jù)點(diǎn)。1
插值是離散函數(shù)逼近的重要方法,利用它可通過函數(shù)在有限個點(diǎn)處的取值狀況,估算出函數(shù)在其他點(diǎn)處的近似值。
插值:用來填充圖像變換時像素之間的空隙。
發(fā)展歷史早在6世紀(jì),中國的劉焯已將等距二次插值用于天文計(jì)算。
17世紀(jì)之后,I.牛頓,J.-L.拉格朗日分別討論了等距和非等距的一般插值公式。在近代,插值法仍然是數(shù)據(jù)處理和編制函數(shù)表的常用工具,又是數(shù)值積分、數(shù)值微分、非線性方程求根和微分方程數(shù)值解法的重要基礎(chǔ),許多求解計(jì)算公式都是以插值為基礎(chǔ)導(dǎo)出的。
定義給定 n個離散數(shù)據(jù)點(diǎn)(稱為節(jié)點(diǎn)) ,k=1,2,...,n。對于
,求 x所對應(yīng)的 y的值稱為內(nèi)插。2
f(x)為定義在區(qū)間 [a,b]上的函數(shù)。為[a,b]上n個互不相同的點(diǎn), G為給定的某一函數(shù)類。若G上有函數(shù) g(x)滿足:
則稱g(x)為f(x)關(guān)于節(jié)點(diǎn)在 G上的插值函數(shù)。
主要內(nèi)涵插值問題的提法是:假定區(qū)間[a,b]上的實(shí)值函數(shù)f(x)在該區(qū)間上 n+1個互不相同點(diǎn)x0,x1,……,xn 處的值是f (x0),……f(xn),要求估算f(x)在[a,b]中某點(diǎn)x*的值?;舅悸肥?,找到一個函數(shù)P(x),在x0,x1,……,xn的節(jié)點(diǎn)上與f(x)函數(shù)值相同(有時,甚至一階導(dǎo)數(shù)值也相同),用P(x*)的值作為函數(shù)f(x*)的近似。
其通常的做法是:在事先選定的一個由簡單函數(shù)構(gòu)成的有n+1個參數(shù)C0,C1,……Cn的函數(shù)類Φ(C0,C1,……Cn)中求出滿足條件P(xi)=f(xi)(i=0,1,…… n)的函數(shù)P(x),并以P()作為f()的估值。此處f(x)稱為被插值函數(shù),x0,x1,……,xn稱為插值結(jié)(節(jié))點(diǎn),Φ(C0,C1,……Cn)稱為插值函數(shù)類,上面等式稱為插值條件,Φ(C0,C1,……Cn)中滿足上式的函數(shù)稱為插值函數(shù),R(x)= f(x)-P(x)稱為插值余項(xiàng)。當(dāng)估算點(diǎn)屬于包含x0,x1,……,xn的最小閉區(qū)間時,相應(yīng)的插值稱為內(nèi)插,否則稱為外插。
基本類型多項(xiàng)式這是最常見的一種函數(shù)插值。在一般插值問題中,若選取Φ為n次多項(xiàng)式類,由插值條件可以唯一確定一個n次插值多項(xiàng)式滿足上述條件。從幾何上看可以理解為:已知平面上n+1個不同點(diǎn),要尋找一條n次多項(xiàng)式曲線通過這些點(diǎn)。插值多項(xiàng)式一般有兩種常見的表達(dá)形式,一個是拉格朗日插值多項(xiàng)式,另一個是牛頓插值多項(xiàng)式。1
埃爾米特對于函數(shù)f(x),常常不僅知道它在一些點(diǎn)的函數(shù)值,而且還知道它在這些點(diǎn)的導(dǎo)數(shù)值。這時的插值函數(shù)P(x),自然不僅要求在這些點(diǎn)等于f(x)的函數(shù)值,而且要求P(x)的導(dǎo)數(shù)在這些點(diǎn)也等于f(x)的導(dǎo)數(shù)值。這就是埃爾米特插值問題,也稱帶導(dǎo)數(shù)的插值問題。從幾何上看,這種插值要尋求的多項(xiàng)式曲線不僅要通過平面上的已知點(diǎn)組,而且在這些點(diǎn)(或者其中一部分)與原曲線“密切”,即它們有相同的斜率。可見埃爾米特插值多項(xiàng)式比起一般多項(xiàng)式插值有較高的光滑逼近要求。
分段分段插值與樣條插值
為了避免高次插值可能出現(xiàn)的大幅度波動現(xiàn)象,在實(shí)際應(yīng)用中通常采用分段低次插值來提高近似程度,比如可用分段線性插值或分段三次埃爾米特插值來逼近已知函數(shù),但它們的總體光滑性較差。為了克服這一缺點(diǎn),一種全局化的分段插值方法——三次樣條插值成為比較理想的工具。見樣條函數(shù)。
三角函數(shù)當(dāng)被插函數(shù)是以2π為周期的函數(shù)時,通常用n階三角多項(xiàng)式作為插值函數(shù),并通過高斯三角插值表出。
辛克插值 在抽樣信號中我們以使用辛克插值,它可以由樣品值完美地重建原始信號。著名的抽樣定理表述,對于正確的抽樣信號s(t),原始信號可以由抽樣值sk進(jìn)行重建,其公式為:
s(t) = ∑ sksincπ(t-tk) (注:k為下標(biāo))
這里sk代表在時間tk=t0+k*T時的抽樣值,T是抽樣時間,它的倒數(shù)1/T叫做抽樣頻率。此公式表示,已知在規(guī)則分布的區(qū)間中的抽樣值sk,我們就可以根據(jù)辛克函數(shù)先測出抽樣值,然后將它們相加,這樣計(jì)算出任意時間t上的值。
編程使用matlab中使用插值函數(shù)
插值函數(shù)(the function of interpolation )
interp1
調(diào)用函數(shù)的格式(Syntax)
yi = interp1(x,Y,xi)
yi = interp1(Y,xi)
yi = interp1(x,Y,xi,method)
yi = interp1(x,Y,xi,method,'extrap')
yi = interp1(x,Y,xi,method,extrapval)
pp = interp1(x,Y,method,'pp')
調(diào)用格式說明(Description)
yi = interp1(x,Y,xi) 返回矢量X和Y決定的根據(jù)輸入的節(jié)點(diǎn)xi時對應(yīng)的y的值.矢量Y是矢量X的一個函數(shù)映射.
如果Y是一個矩陣,那么插值結(jié)果是一個對應(yīng)的矩陣.
[===================================================
yi = interp1(x,Y,xi) returns vector yi containing elements corresponding to the elements of xi and determined by interpolation within vectors x and Y. The vector x specifies the points at which the data Y is given. If Y is a matrix, then the interpolation is performed for each column of Y and yi is length(xi)-by-size(Y,2).
===================================================]
yi = interp1(x,Y,xi,method)插值中可以使用的方法:
|| ||
[====================================================
yi = interp1(x,Y,xi,method) interpolates using alternative methods:
methodDescription
nearestNearest neighbor interpolation
linearLinear interpolation (default)
splinesplineCubic spline interpolation
pchipPiecewise cubic Hermite interpolation
cubic(Same as 'pchip')
v5cubicCubic interpolation used in MATLAB 5
======================================================]
簡單程序示例
>>x=[0.0 0.1 0.195 0.3 0.401 0.5];
>>y=[0.39849 0.39695 0.39142 0.38138 0.36812 0.35206];
>>plot(x,y);
>>T=interp1(x,y,.25,'linear') %線性插值
(返回結(jié)果T=0.3862)
>> T=interp1(x,y,.25,'nearest') % 兩點(diǎn)插值
(返回結(jié)果T=0.3814)
>>T=interp1(x,y,.25,'spline') % 三次樣條插值
(返回結(jié)果T =0.3867)
>>T=interp1(x,y,.25,'cubic') %三次插值
(返回結(jié)果T =0.3867)
本詞條內(nèi)容貢獻(xiàn)者為:
尚軼倫 - 副教授 - 同濟(jì)大學(xué)數(shù)學(xué)科學(xué)學(xué)院