Processing math: 100%
VolumeRendering

3D Texturinterpolation (Trilinear)

3D Texture Interpolation Nearest Neigbour | | DVR Principles

The data value at normalized texture coordinates (s,t,r)[0,1] is determined via Tri-linearer Interpolation of 8 corner values P000...P111:

P000=V(i,j,k)
P100=V(i+1,j,k)
P010=V(i,j+1,k)
P110=V(i+1,j+1,k)
P001=V(i,j,k+1)
P101=V(i+1,j,k+1)
P011=V(i,j+1,k+1)
P111=V(i+1,j+1,k+1)

at the index (of the left front bottom corner of the bounding voxel)

i=s(w1)
j=t(h1)
k=r(d1)

Then the three linear interpolation weights u,v,w[0,1] are:

u=s(w1)s(w1)
v=t(h1)t(h1)
w=r(d1)r(d1)

The tri-linear interpolation equals three subsequent linear interpolations along the x-axis (red), the y-axis (green) and the z-axis (blue). The resulting interpolated function value is depicted in yellow.

The function value is therefore:

f(u,v,w)=
(1w)((1v)((1u)P000+uP100)+
v((1u)P010+uP110))+
w((1v)((1u)P001+uP101)+
v((1u)P011+uP111))


3D Texture Interpolation Nearest Neigbour | | DVR Principles

Options: