逆双线性插值及其推导
逆双线性插值原理及推导
逆双线性插值实现的是对于不规则凸四边形的插值,如下图所示:
![截屏2022-06-02 15.56.55](https://lipoicyclic.oss-cn-beijing.aliyuncs.com/img/%E6%88%AA%E5%B1%8F2022-06-02%2015.56.55.png)
设P是A,B按照系数u进行插值得到的点:\(P=A+u(B-A),u\in [0, 1]\)
同理,设Q是D,C按照系数u进行插值得到的点:\(Q=D+u(C-D),u\in [0, 1]\)
则X可以表示为P和Q的线性插值:\(X=P+(Q-P)v\)
将之前得到的P与Q的表示带入,得:
\(X=A+u(B-A)+v(D+u(C-D)-A-u(B-A))=A+u(B-A)+v(D-A)+uv(A-B+C-D)\)
因为是在二维空间下,因此可以根据每个维度列出的等式联合求解两个未知数u和v。
不妨设:
\[E=B-A\\
F=D-A\\
G=A-B+C-D\\
H=X-A\\
\]
则简化后的等式可以写为:\(H=uE+vF+uvG\),取第一个维度进行计算,得:
\(u=\frac{H_x-F_xv}{E_x+G_xv}\),回代,可得:
\(k_0v^2+k_1v+k_2=0\),其中\(k_2=G_xF_y-G_yF_x, k_1=E_xF_y-E_yF_x+H_xG_y-H_yG_x, k_0=H_xE_y-H_yE_x\)
因为\(u,v\in[0, 1]\),计算得到解后根据范围进行取舍即可。