您好,欢迎访问三七文档
插值算法讲座人:邓书莉时间:2010年12月9日编写排版:邓书莉插值算法插值的定义一维插值算法最邻近插值线性插值拉格朗日插值牛顿插值埃尔米特插值三次样条插值二维插值算法最邻近插值双线性插值三次卷积插值插值的定义设函数y=f(x)在区间[a,b]上有定义,且已知在点a≤x0x1…xn≤b上的值为y0,y1,…,yn,若存在简单函数P(x)使得P(xi)=yi(i=0,1,…,n)成立,就称P(x)为f(x)的插值函数,x0,x1,…,xn称为插值节点,包含插值节点的区间[a,b]称为插值区间,求插值函数P(x)的方法就是插值法。最邻近插值最邻近插值是最简单的插值方法,位置x上的值被赋为离它最近的值,因此它也被称为一点插值函数。若x在区间[xi,xi+1]内,则最邻近插值结果线性插值线性插值即分段线性插值,是通过插值点用折线段连接起来逼近f(x),若x在区间[xi,xi+1]内,则线性插值结果拉格朗日插值若通过n+1个节点x0x1…xn的n次插值多项式Ln(x)满足条件:可以构造出满足此条件的插值多项式Ln(x)其中,lk(x)为n次插值基函数拉格朗日插值结果牛顿插值利用插值基函数容易求出拉格朗日插值多项式,但当插值节点增减时,计算要全部重新进行,牛顿插值就是一种能够逐次生成插值多项式的插值法。已知f在插值点xi(i=0,1,…,n)上的值为f(xi),若n次插值多项式Pn(x)满足条件:则插值多项式表示为:其中,为f(x)的k阶均差埃尔米特插值(Hermite)埃尔米特插值多项式不仅满足在插值节点上函数值相等,还满足在节点上的导数值相等。通过三点(x0,f(x0)),(x1,f(x1)),(x2,f(x2))的三次埃尔米特插值多项式为:两点三次埃尔米特插值多项式为:其中,埃尔米特插值结果三次样条插值三次样条插值结果二维图像插值算法最邻近插值双线性插值三次卷积插值二维最邻近插值对于通过反向变换得到的一个浮点坐标,对其进行简单的取整,得到一个整数型坐标,这个整数型坐标对应的像素值就是目标像素的像素值。对于从上到下,从左到右扫描的图像来说,取浮点坐标最邻近的左上角点对应的像素值。特点:简单直观,但图像质量不高,容易出现锯齿边缘。最邻近插值结果演示放大6倍图像源图像双线性内插值对于一个目的像素,设置坐标通过反向变换得到的浮点坐标为(i+u,j+v),其中i,j为非负整数,u,v为[0,1]区间的浮点数,则这个像素的值f(i+u,j+v)可由原图像中的坐标为(i,j),(i+1,j),(i,j+1),(i+1,j+1)所对应的周围四个像素的值决定,即其中,f(i,j)表示源图像(i,j)处的像素值。双线性内插值特点:计算量大,缩放图像质量高,不会出现像素值不连续的情况,由于它具有低通滤波器的性质,使高频分量受损,可能会使图像轮廓在一定程度上变得模糊。双线性内插值结果演示源图像放大6倍图像三次卷积插值考虑一个浮点坐标(i+u,j+v),周围的16个邻点,目的像素值f(i+u,j+v)由下式得到:其中,s(x)是对s(πx)/x的逼近。特点:能够克服最邻近插值锯齿形状和双线性线性插值边缘模糊的缺点。三次卷积插值结果演示源图像放大6倍图像谢谢!
本文标题:c语言插值算法
链接地址:https://www.777doc.com/doc-7028801 .html