双线性插值(Bilinear Interpolation)
2016-07-20 17:33
169 查看
最近用到插值算法,使用三次样条插值时仿真速度太慢,于是采用算法简单的线性插值。本篇主要介绍一下双线性插值的实现方法。
已知坐标 (x0, y0) 与 (x1, y1),要得到
[x0, x1] 区间内某一位置 x 在直线上的值。
由于 x 值已知,所以可以从公式得到 y 的值
已知 y 求 x 的过程与以上过程相同,只是 x 与 y 要进行交换。
在数学上,双线性插值是有两个变量的插值函数的线性插值扩展,其核心思想是在两个方向分别进行一次线性插值。
图中:红色的数据点与待插值得到的绿色点
假如我们想得到未知函数 f 在点 P = (x, y) 的值,假设我们已知函数 f 在 Q11 =
(x1, y1)、Q12 =
(x1, y2), Q21 =
(x2, y1) 以及 Q22 =
(x2, y2) 四个点的值。在三维视图中,更容易理解。
首先在 x 方向进行线性插值,推导公式如下:
然后在 y 方向进行线性插值,得到
这样就得到所要的结果 f(x, y),
双线性插值在三维空间的延伸是三线性插值。
参考:http://www.cnblogs.com/xpvincent/archive/2013/03/15/2961448.html
1. 线性插值
已知坐标 (x0, y0) 与 (x1, y1),要得到[x0, x1] 区间内某一位置 x 在直线上的值。
由于 x 值已知,所以可以从公式得到 y 的值
已知 y 求 x 的过程与以上过程相同,只是 x 与 y 要进行交换。
2. 双线性插值(Bilinear Interpolation)
在数学上,双线性插值是有两个变量的插值函数的线性插值扩展,其核心思想是在两个方向分别进行一次线性插值。图中:红色的数据点与待插值得到的绿色点
假如我们想得到未知函数 f 在点 P = (x, y) 的值,假设我们已知函数 f 在 Q11 =
(x1, y1)、Q12 =
(x1, y2), Q21 =
(x2, y1) 以及 Q22 =
(x2, y2) 四个点的值。在三维视图中,更容易理解。
首先在 x 方向进行线性插值,推导公式如下:
然后在 y 方向进行线性插值,得到
这样就得到所要的结果 f(x, y),
双线性插值在三维空间的延伸是三线性插值。
参考:http://www.cnblogs.com/xpvincent/archive/2013/03/15/2961448.html
相关文章推荐
- opencv初探(二)——直方图均衡化与双线性插值缩放
- 图像变换——向前映射和向后映射
- Bilinear双线性插值算法
- 双线性插值实现图像缩放
- 双线性插值算法
- 双线性插值
- 数字图像处理--图像缩放--双线性插值
- 双线性插值
- opencl:C++实现双线性插值图像缩放
- 双线性插值实现图像放大(Matlab实现)
- 图像基本处理算法的简单实现(一) 推荐
- MATLAB 几何运算之图像的放大
- 基于opencv的双线性插值的实现(一)
- 基于opencv的双线性插值的实现(二)
- 双线性插值及其在图像中的应用
- 图像缩放算法及速度优化——(二)双线性插值
- 图像旋转
- 插值之双线性插值
- 均值,白化,Siamese网络,双线性插值
- 双线性插值算法的详细总结