标签: 机器视觉 |
分类: 机器视觉/OpenCV |
回顾本质矩阵的定义
本质矩阵的基本性质:
结合成像的几何关系
Longuet-Higgins equation
注意大小写的区别哦,大小表示物点矢量,小与表示像点矢量。
像平面上的一点可以看作:
? (u,v) 2D film point(局限于像平面上来考虑)
? (u,v,f) 3D point on film plane(相机坐标系中来考虑)
? k(u,v,f) viewing ray into the scene(透过像点和原点射线上点的像,相机坐标系中来考虑)
? k(X, Y, Z) ray through point P in the scene(在世界坐标系中来考虑)
设 l 为像平面上的一直线: au+bv+c=0
由点线结合关系可得:
因此有
这样就可以用几何的观点来解释上述方程:左像平面上的一点 pl 乘以本质矩阵 E ,结果为一条直线,该直线就是 pl 的极线,且过 pl 在右像平面上的对应点 pr 。这个结论十分喜人。
同理有
? Remember: epipoles belong to the epipolar lines
? And they belong to all the epipolar lines
关于本质矩阵的关系总结如下:
本质矩阵采用的是相机的外部参数,也就是说采用相机坐标(The essential matrix uses CAMERA coordinates),如果要分析数字图像,则要考虑坐标(u,v),此时需要用到内部参数(To use image coordinates we must consider the INTRINSIC camera parameters)
从像素级来考虑,有如下关系
short version: The same equation works in pixel coordinates too!
矩阵 F 称为基本矩阵: F=M?TrRSM?1l
? has rank 2
? depends on the INTRINSIC and EXTRINSIC Parameters (f, etc ; R & T)
Analogous to essential matrix. The fundamental matrix also tells how pixels (points) in each image are related to epipolar lines in the other image.
例子:
由 F?el=0 ,并根据下图,where is the epipole? vector in the right nullspace of matrix F ,即 F 的右零空间。当然 el 是非零向量,也就是说 F?el=0 有非零解,说明矩阵 F 不是满秩的,或者说它是奇异的,However, due to noise,F may not be singular.So instead, next best thing is eigenvector associated with smallest eigenvalue of F。
>> [u,d] = eigs(F’ * F)
u =
-0.0013 0.2586 -0.9660
0.0029 -0.9660 -0.2586
1.0000 0.0032 -0.0005
d = 1.0e8*
-1.0000 0 0
0 -0.0000 0
0 0 -0.0000
eigenvector associated with smallest eigenvalue
>> uu = u(:,3)
uu = ( -0.9660 -0.2586 -0.0005)
>> uu / uu(3) : to get pixel coords
(1861.02 498.21 1.0)
where is the epipole?