双线性插值
2014-03-28 16:08
232 查看
双线性插值,这个名字咋一听很高大上的样纸,再在维基百科上一查(见文末,我去,一堆的公式吓死人),像俺这种半文盲,看到公式脑子就懵的类型,真心给跪。虽然看着好复杂,但仔细一看道理再简单不过了,所以还是自己梳理一下好。 双线性插值,顾名思义就是两个方向的线性插值加起来(这解释过于简单粗暴,哈哈)。所以只要了解什么是线性插值,分别在x轴和y轴都做一遍,就是双线性插值了。 线性插值的概念也非常简单粗暴,就是两个点A,B,要在AB中间插入一个点C(点C坐标在AB连线上),就直接让C的值落在AB的值的连线上就可以了。 如A点坐标(0,0),值为3,B点坐标(0,2),值为5,那要对坐标为(0,1)的点C进行插值,就让C落在AB线上,值为4就可以了。 但是如果C不在AB的线上肿么办捏,所以就有了双线性插值。如图,已知Q12,Q22,Q11,Q21,但是要插值的点为P点,这就要用双线性插值了,首先在x轴方向上,对R1和R2两个点进行插值,这个很简单,然后根据R1和R2对P点进行插值,这就是所谓的双线性插值。
![](http://images.cnitblog.com/blog/362399/201403/281607508919268.png)
附:维基百科--双线性插值: 双线性插值,又称为双线性内插。在数学上,双线性插值是有两个变量的插值函数的线性插值扩展,其核心思想是在两个方向分别进行一次线性插值。 假如我们想得到未知函数
![](http://upload.wikimedia.org/math/8/f/a/8fa14cdd754f91cc6554c9e71929cce7.png)
在点
![](http://upload.wikimedia.org/math/0/5/0/0506a08cb42636e5b8d212adf5c434db.png)
的值,假设我们已知函数
![](http://upload.wikimedia.org/math/8/f/a/8fa14cdd754f91cc6554c9e71929cce7.png)
在
![](http://upload.wikimedia.org/math/b/c/8/bc8f0dc01985190cd254a183461bd65e.png)
,
![](http://upload.wikimedia.org/math/b/8/e/b8ec98846a7d0e35f30c147de66f1a34.png)
,
![](http://upload.wikimedia.org/math/d/b/8/db8a8cb1b575e228dfdea51cbc1bb75c.png)
, 及
![](http://upload.wikimedia.org/math/f/f/8/ff8e7258cb51b54837c6e1aaf4b7e25f.png)
四个点的值。 首先在 x 方向进行线性插值,得到
![](http://upload.wikimedia.org/math/0/0/1/0014695061f06ae99b2a88885448f7fb.png)
![](http://upload.wikimedia.org/math/6/c/c/6ccb0faa10648961b7bc26f2656c3cf6.png)
然后在 y 方向进行线性插值,得到
![](http://upload.wikimedia.org/math/4/8/e/48efbc5513d6b06bf0a02780cacf35a3.png)
这样就得到所要的结果
![](http://upload.wikimedia.org/math/d/1/d/d1d5f9036a25bed99ceaae9d63a20750.png)
,
![](http://upload.wikimedia.org/math/3/e/7/3e71fff610681c8e4932669a2076009c.png)
![](http://upload.wikimedia.org/math/6/7/e/67e587b52822e9ac2714395548ce7024.png)
如果选择一个坐标系统使得
![](http://upload.wikimedia.org/math/8/f/a/8fa14cdd754f91cc6554c9e71929cce7.png)
的四个已知点坐标分别为 (0, 0)、(0, 1)、(1, 0) 和 (1, 1),那么插值公式就可以化简为
![](http://upload.wikimedia.org/math/1/8/3/1831a0c3c97e1a3deaa44f68cc752f6d.png)
或者用矩阵运算表示为
![](http://upload.wikimedia.org/math/f/c/2/fc2e1aee4d7434cc6c90fd34e0b2cbd4.png)
与这种插值方法名称不同的是,这种插值方法的结果通常不是线性的,它的形式是
![](http://upload.wikimedia.org/math/3/5/4/354506ed47c0513268e319bddb12a7c3.png)
常数的数目都对应于给定的 f 的数据点数目
![](http://upload.wikimedia.org/math/b/b/5/bb57247ee546847ac73941455c43aee4.png)
![](http://upload.wikimedia.org/math/1/8/9/189328b02b979a42a045eee9afdfe9bf.png)
![](http://upload.wikimedia.org/math/3/5/c/35cc19c91f5378cf0df431f4b7823bec.png)
![](http://upload.wikimedia.org/math/3/f/9/3f923d2632e09c9b9470122bf179a9ba.png)
线性插值的结果与插值的顺序无关。首先进行 y 方向的插值,然后进行 x 方向的插值,所得到的结果是一样的。
![](http://images.cnitblog.com/blog/362399/201403/281607508919268.png)
附:维基百科--双线性插值: 双线性插值,又称为双线性内插。在数学上,双线性插值是有两个变量的插值函数的线性插值扩展,其核心思想是在两个方向分别进行一次线性插值。 假如我们想得到未知函数
![](http://upload.wikimedia.org/math/8/f/a/8fa14cdd754f91cc6554c9e71929cce7.png)
在点
![](http://upload.wikimedia.org/math/0/5/0/0506a08cb42636e5b8d212adf5c434db.png)
的值,假设我们已知函数
![](http://upload.wikimedia.org/math/8/f/a/8fa14cdd754f91cc6554c9e71929cce7.png)
在
![](http://upload.wikimedia.org/math/b/c/8/bc8f0dc01985190cd254a183461bd65e.png)
,
![](http://upload.wikimedia.org/math/b/8/e/b8ec98846a7d0e35f30c147de66f1a34.png)
,
![](http://upload.wikimedia.org/math/d/b/8/db8a8cb1b575e228dfdea51cbc1bb75c.png)
, 及
![](http://upload.wikimedia.org/math/f/f/8/ff8e7258cb51b54837c6e1aaf4b7e25f.png)
四个点的值。 首先在 x 方向进行线性插值,得到
![](http://upload.wikimedia.org/math/0/0/1/0014695061f06ae99b2a88885448f7fb.png)
![](http://upload.wikimedia.org/math/6/c/c/6ccb0faa10648961b7bc26f2656c3cf6.png)
然后在 y 方向进行线性插值,得到
![](http://upload.wikimedia.org/math/4/8/e/48efbc5513d6b06bf0a02780cacf35a3.png)
这样就得到所要的结果
![](http://upload.wikimedia.org/math/d/1/d/d1d5f9036a25bed99ceaae9d63a20750.png)
,
![](http://upload.wikimedia.org/math/3/e/7/3e71fff610681c8e4932669a2076009c.png)
![](http://upload.wikimedia.org/math/6/7/e/67e587b52822e9ac2714395548ce7024.png)
如果选择一个坐标系统使得
![](http://upload.wikimedia.org/math/8/f/a/8fa14cdd754f91cc6554c9e71929cce7.png)
的四个已知点坐标分别为 (0, 0)、(0, 1)、(1, 0) 和 (1, 1),那么插值公式就可以化简为
![](http://upload.wikimedia.org/math/1/8/3/1831a0c3c97e1a3deaa44f68cc752f6d.png)
或者用矩阵运算表示为
![](http://upload.wikimedia.org/math/f/c/2/fc2e1aee4d7434cc6c90fd34e0b2cbd4.png)
与这种插值方法名称不同的是,这种插值方法的结果通常不是线性的,它的形式是
![](http://upload.wikimedia.org/math/3/5/4/354506ed47c0513268e319bddb12a7c3.png)
常数的数目都对应于给定的 f 的数据点数目
![](http://upload.wikimedia.org/math/b/b/5/bb57247ee546847ac73941455c43aee4.png)
![](http://upload.wikimedia.org/math/1/8/9/189328b02b979a42a045eee9afdfe9bf.png)
![](http://upload.wikimedia.org/math/3/5/c/35cc19c91f5378cf0df431f4b7823bec.png)
![](http://upload.wikimedia.org/math/3/f/9/3f923d2632e09c9b9470122bf179a9ba.png)
线性插值的结果与插值的顺序无关。首先进行 y 方向的插值,然后进行 x 方向的插值,所得到的结果是一样的。
相关文章推荐
- C# 参考之方法参数关键字:params、ref及out
- Hadoop JAVA 开发说明
- 对选择法和冒泡法的一些见解
- 【小白笔记】PHP学习之路 (18) --数组遍历、统计、计算
- 电子银行业务分析系统—项目总结
- Linux 下安装 wowza 服务器
- 成功安装Oracle 11g后的7个服务
- 二分匹配啊
- phpstudy环境建立站点
- Linux 下安装 wowza 服务器
- JVM调优总结(五)-分代垃圾回收详述1
- JS不同文件间函数调用
- java.lang.classnotfounderror:com/sun/tools/javac/main
- 零线和地线的区别,示波器如何测量市电?
- Eclipse下jQuery文件报错解决方案
- 在Excel中判断单元格是否包含日期
- 敏捷宣言:四种核心价值观和十二条原则
- [list] myfirstlist
- mysql处理字符串的两个绝招:substring_index,concat
- 特殊符号、符号