光流法的运用在运动结构中

4
假设我有一个来自行车记录仪的视频。我想使用运动结构技术构建记录场景的点云。首先,我需要跟踪一些点。
哪种算法可以产生更好的结果?使用稀疏光流(Kanade-Lucas-Tomasi跟踪器)还是密集光流(Farneback)?我进行了一些实验,但无法确定。每个算法都有其优缺点。
最终目标是获取场景中汽车的点云。通过使用稀疏光流,我可以跟踪汽车的有趣点。但这会相当不可预测。一种解决方案是在图像中制作某种网格,并强制跟踪器在每个网格中跟踪一个有趣的点。但我认为这会很难。
通过使用密集光流,我可以获得每个像素的运动,但问题是,它不能真正检测只有微小运动的汽车运动。此外,我怀疑由算法产生的每个像素的流是否准确。而且,我相信只能获得两个帧之间像素的运动(与使用稀疏光流不同,在其中我可以获得沿时间t的同一有趣点的多个坐标)。

你尝试过使用SIFT特征进行SfM的常规方法吗? - Sunreef
使用两者怎么样? - Micka
@Sunreef 我刚刚尝试了good features to track (gftt)。SIFT相比于gftt有什么更加有帮助的地方吗? - Hafiz Hilman Mohammad Sofian
@Micka 已经考虑过了。但是这不会在计算上很重吗? - Hafiz Hilman Mohammad Sofian
1个回答

3
您的标题表明SFM,其中包括姿态估计,跟踪仅是第一步(匹配),如果您想从视频中获取点云(非常困难的任务),我会首先考虑束调整,这也适用于MVE。
不过,对于视频,我们可以做得更多,因为帧之间距离太近,我们可以使用更快的算法,如光流(比匹配SIFT更快)并从中提取F矩阵,然后:
E = 1/K * F * K
回到您最初的问题,哪个更好:
1) 稠密光流;还是
2) 稀疏光流。
显然,您是在离线工作,所以速度无关紧要,但我建议选择稀疏型。
更新:
对于3D重建,密集型可能看起来更有吸引力,但正如您所说,它很少具有鲁棒性,因此您可以使用稀疏型,但添加尽可能多的点来使其半密集。
我不能列举出太多能够完成此任务的方法,像单目SLAMORB-SLAM
最终更新:
按照我之前写的使用半密集型,但是SFM始终假设静态对象(没有移动),否则将永远不起作用。
实际上,对于3D重建,从未使用过图像中的所有像素(非直接方法),并且一直赞扬SIFT以用于特征检测和匹配。最近在不同类型的校准中使用了所有像素,例如:直接稀疏里程计LSD称为直接法

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接