- 使用场景
- 基础矩阵表示的是两视图的对极约束,和三维场景的结构无关,只依赖于相机的内参数以及外参数,需要两个相机的位置有旋转和平移
- 单应矩阵对场景的三维结构有了更多的要求,需要场景中的点在同一个平面上; 或者是,对相机的位姿有了要求,两个相机之间只有旋转而无平移
- 约束关系
- 基础矩阵表示的像点和另一幅图像上的对极线的映射关系,使用基础矩阵无法得到像点对应点在另一幅图像上的确切位置。
- 单应矩阵则是点和点的映射,使用单应矩阵可以找到像点在另一幅图像上对应点的确切位置。
- 使用单应矩阵而不是基础矩阵
- 相机只有旋转而无平移的时候,两视图的对极约束不成立,基础矩阵F为零矩阵,这时候需要使用单应矩阵H
- 场景中的点都在同一个平面上,可以使用单应矩阵计算像点的匹配点。
- 相机的平移距离相对于场景的深度较小的时候,也可以使用单应矩阵HH。