https://zhuanlan.zhihu.com/p/225666687
参照一些博客,对复杂的一些问题添加了自己的理解,欢迎讨论
1、如何对匹配好的点做进一步的处理,更好保证匹配效果:
答:
(1)设置汉明距离小于最小距离的两倍
(2) 使用类似于非极大值抑制的方法避免,特征点过于拥挤(参照vins)
(3)使用RANSAC(随机采样一致性)避免带有错误匹配数据的特征点
2、单目相机,F和H矩阵有何不同,E和F矩阵有何不同,只旋转不平移能不能求F,只旋转不平移能不能求H
答:
本质矩阵E=t^R
基本矩阵F=K-TEK-1
单因子矩阵 H=R-t*nT/d
只旋转不平移可以求H,不能求E、F
3、 描述BA
答:BA是Bundle Adjustment的简称,又称光束法平差、捆绑调整、集束调整,其本质是一个优化模型,其目的是最小化重投影/光度误差,用于优化相机位姿和路标点。其主要过程为:根据相机的投影模型构造代价函数,利用非线性优化(比如高斯牛顿或L-M(Levenberg-Marquardt)算法)来求最优解,利用Hessian矩阵的稀疏性解增量方程,得到最优的相机位姿和3D特征点。
4、 描述PnP
答:Perspective-n-Points(PnP)主要是通过已知的若干对相匹配的3D-2D点来估算相机的位姿。主要的应用有求解相机相对某个物体的位姿,求解相机的轨迹。在求解相机的位姿时,已知点的3d坐标是世界坐标系下的坐标,求解的是相机坐标系相对于世界坐标系下的位姿。求解相机的轨迹主要是通过上一帧相机坐标系中的3d点坐标和现在帧中该点的投影坐标求解相机坐标系的相对变换。本质上都是求解两个坐标系之间的空间关系。
5、 描述Gaussian-Newton法、LM法
答:待补充
6、如何处理关键帧
答:关键帧选取的指标主要有:
(1)跟踪质量(主要根据跟踪过程中搜索到的点数和搜索的点数比例)/共视特征点
(2)距离最近关键帧的距离是否足够远(空间)/运动
(3)距离上一关键帧的帧数是否足够多(时间)
7、为什么要引入李群李代数
答:目前的理解:对于一个最小二乘问题
Z为观测的像素坐标,T为Tcw,p为世界坐标系下的某一个点,求解该问题时,需要对变量T进行迭代更新,主要的方式是求得沿J的负梯度方向的dT对T进行更新,但由于变换矩阵对于加法不封闭(T1+T2不再具有变换的物理意义),需要通过李群和李代数之间的映射,借助李代数对于加法的封闭性,完成对变量的更新。
8、什么是极限约束
答:所谓极线约束就是说同一个点在两幅图像上的映射,已知左图映射点p1,那么右图映射点p2一定在相对于p1的极线上,这样可以减少待匹配的点数量。(需要教育部补充)
9、单目视觉slam中尺寸漂移是怎么产生的
答: