https://github.com/avisingh599/mono-vo
主要過程:
1. 通過FAST提取特征
FAST(img_1, keypoints_1, fast_threshold, nonmaxSuppression);
2. 利用稀疏光流,追蹤到相鄰幀的對(duì)應(yīng)特征點(diǎn)
calcOpticalFlowPyrLK(img_1, img_2, points1, points2, status, err, winSize, 3, termcrit, 0, 0.001);
3. 利用特征點(diǎn)對(duì)恢復(fù)本質(zhì)矩陣
E = findEssentialMat(currFeatures, prevFeatures, focal, pp, RANSAC, 0.999, 1.0, mask);
4. 利用本質(zhì)矩陣恢復(fù)R、t
recoverPose(E, currFeatures, prevFeatures, R, t, focal, pp, mask);
5. 結(jié)合scale,迭代計(jì)算相對(duì)起始幀的R_f、t_f,輸出最終軌跡t_f
t_f = t_f + scale*(R_f*t);
?R_f = R_f*R;?