这有点远,但我希望有人可能有一些见解(不确定比这里更好的论坛,但愿意接受建议)。我已经实现了论文An Improvement Algorithm for TV-L1 Optical Flow中的光流算法。我试图坚持与文章解释的完全相同的参数(他们有非常详细的实现说明),但我无法重现他们的结果。
根据我的分析(稍后我会展示图像),该算法似乎适用于小图像,因此在从粗到细的金字塔中,您可以看到针对每个图像的小规模版本精确计算了流. 然后,当图像被放大超过某个点时,优化似乎会收敛到某个较差的局部最小值。为了证实这种怀疑,我在金字塔级别之间使用 0.9 的比例因子(而不是文章使用的 0.5)重新运行了算法,结果得到了很大改善 - 似乎使用足够小的上/下比例因子,我们避免了糟糕的局部最小值。以下是流量(Middlebury 后院场景,比例因子依次为 0.5、0.7、0.9):
这些是每个缩放因子的逐次迭代序列(在这里我们看到即使是 0.5 在小图像上也能很好地工作):
0.5:http: //youtu.be/EHTO7lJeMrA
0.7:http: //youtu.be/-PlTU3VioWg
0.9:http: //youtu.be/lK5EP865u0E
我已经摆弄了算法的所有其他参数,它们对这种现象没有任何重大影响。如果有人感兴趣,我可以上传我的 Matlab 代码。所以我的问题是:
有人对这种现象有其他解释吗?我无法重现他们的结果这一事实让我非常困扰。