在图像拼接中,得到了两张图像的特征匹配,两个点集分别记作
X
和
c⎛⎝⎜uv1⎞⎠⎟=H⎛⎝⎜xy1⎞⎠⎟(1)
其中 (uv1)T 是 X′ 中特征点的坐标, (xy1)T 是 X 中特征点的坐标,
H
是个3×3的矩阵,有8个自由度,所以待求未知参数有8个,
DLT算法推导过程如下:将(1)式展开,前2行分别被第3行相除,得到
−h1x−h2y−h3+(h7x+h8y+h9)u=0(2)
−h4x−h5y−h6+(h7x+h8y+h9)v=0(3)
式(2)、式(3)可以整理为
Aih=0(4)
其中,
Ai=(−x0−y0−100−x0−y0−1uxvxuyvyuv)
h=(h1h2h3h4h5h6h7h8h9)
由未知变量的个数可知,求解出 H 至少需要4对匹配点。通常情况下为了得到更稳定的结果,会用到多于4对的特征匹配。所以,这个方程会变成超定的,可以将最小二乘解作为最后的解。
方程的最小二乘解有一个既定的结论,即对A进行SVD分解,A的最小的奇异值对应的右奇异向量即是