查看“︁三线性插值”︁的源代码
←
三线性插值
跳转到导航
跳转到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
'''三线性插值'''是在三维离散采样数据的[[张量积]]网格上进行[[线性插值]]的方法。这个张量积网格可能在每一[[维度]]上都有任意不重叠的网格点,但并不是三角化的[[有限元分析]]网格。这种方法通过网格上数据点在局部的矩形[[棱柱]]上线性地近似计算点 <math>(x, y, z)</math> 的值。 三线性插值经常用于[[数值分析]]、[[数据分析]]以及[[计算机图形学]]等领域。 == 特性以及与[[线性插值]]和[[双线性插值]]的关系 == *三线性插值在一次 <math>n = 1</math> 三维 <math>D = 3</math>(双线性插值的维数为:<math>D = 2</math>,线性插值:<math>D = 1</math>)的参数空间中进行运算,这样就需要 <math>(1 + n)^D = 8</math> 个与所需插值点相邻的数据点。 * 三线性插值等同于三维张量的一阶[[B样条]]插值。 * 三线性插值运算是三个线性插值运算的张量积。 == 例子 == 在一个步距为 1 的周期性立方网格上,取 :<math>x_d, y_d, z_d</math> 为待计算点距离小于 :<math>x, y, z</math>, 的最大整数的差值,即, :<math>x_d = x - \lfloor x \rfloor</math> :<math>y_d = y - \lfloor y \rfloor</math> :<math>z_d = z - \lfloor z \rfloor</math> :<math>x_d</math>,:<math>y_d</math>,:<math>z_d</math>是单位化后的值,所以其范围是[0,1]。 本句话参考http://paulbourke.net/miscellaneous/interpolation/{{Wayback|url=http://paulbourke.net/miscellaneous/interpolation/ |date=20120826052441 }} 首先沿着 <math>z</math> 轴插值,得到: :<math>i_1 = v[\lfloor x \rfloor,\lfloor y \rfloor, \lfloor z \rfloor] \times (1 - z_d) + v[\lfloor x \rfloor, \lfloor y \rfloor, \lceil z \rceil] \times z_d</math> :<math>i_2 = v[\lfloor x \rfloor,\lceil y \rceil, \lfloor z \rfloor] \times (1 - z_d) + v[\lfloor x \rfloor, \lceil y \rceil, \lceil z \rceil] \times z_d</math> :<math>j_1 = v[\lceil x \rceil,\lfloor y \rfloor, \lfloor z \rfloor] \times (1 - z_d) + v[\lceil x \rceil, \lfloor y \rfloor, \lceil z \rceil] \times z_d</math> :<math>j_2 = v[\lceil x \rceil,\lceil y \rceil, \lfloor z \rfloor] \times (1 - z_d) + v[\lceil x \rceil, \lceil y \rceil, \lceil z \rceil] \times z_d.</math> 然后,沿着 <math>y</math> 轴插值,得到: :<math>w_1 = i_1(1 - y_d) + i_2y_d</math> :<math>w_2 = j_1(1 - y_d) + j_2y_d</math> 最后,沿着 <math>x</math> 轴插值,得到: :<math>IV = w_1(1 - x_d) + w_2x_d .</math> 这样就得到该点的预测值。 三线性插值的结果与插值计算的顺序没有关系,也就是说,按照另外一种维数顺序进行插值,例如沿着 <math>x</math>、 <math>y</math>、<math>z</math> 顺序插值将会得到同样的结果。这也与张量积的[[交换律]]完全一致。 == 参见 == * [[插值]] * [[线性插值]] * [[双立方插值]] == 外部链接 == *[http://www.grc.nasa.gov/WWW/winddocs/utilities/b4wind_guide/trilinear.html 伪代码]{{Wayback|url=http://www.grc.nasa.gov/WWW/winddocs/utilities/b4wind_guide/trilinear.html |date=20061010183404 }} *[https://web.archive.org/web/20060914022959/http://local.wasp.uwa.edu.au/~pbourke/other/trilinear/ 形象化的例子] [[Category:插值论]]
该页面使用的模板:
Template:Wayback
(
查看源代码
)
返回
三线性插值
。
导航菜单
个人工具
登录
命名空间
页面
讨论
不转换
查看
阅读
查看源代码
查看历史
更多
搜索
导航
首页
最近更改
随机页面
MediaWiki帮助
特殊页面
工具
链入页面
相关更改
页面信息