消除计算光流中的噪声

时间:2014-04-01 11:07:27

标签: c++ opencv computer-vision

我在灰度视频上计算光流,除了有用的信息外,还包含真白和嘈杂的黑色补丁。我想删除那些补丁,因为相应的光流是愚蠢的。 这些补丁位于图像的边缘,它们的大小因视频而异。我的目标是通过光流提取描述视频中有用信息的边界框。

如何计算此边界框?或者至少,我如何在这些区域中移除计算出的光流?

编辑:我看到了你的答案。我会尝试下周结束然后回来讨论这个问题。坦克你!

3 个答案:

答案 0 :(得分:1)

从光流中去除噪声可能是一项复杂的任务。一种简单而虚拟的方法可能是在光流向量强度上使用阈值。

但是如果你只需要找到边界框,为什么不使用简单的背景/运动物体分割?像MOG,GMG一样,opencv具有很好的实现,并且运行良好且速度非常快。请参阅this教程。

答案 1 :(得分:1)

要理解问题是什么有点难以理解,如果你说的灰度图像中的噪声是真白色和嘈杂的黑色斑点,那么我建议你看一下侵蚀和扩张。可以在此处找到更多信息:Eroding and Dilating

如果这不是您所要求的,请发布一些带有补丁和评论的示例图像,以便我可以更清楚地了解问题所在。欢呼声。

答案 2 :(得分:0)

如果我理解正确的话,你会得到灰色/白色或基本均匀的贴片中的嘈杂光流。一种简单的方法是将图像分成小块并计算每个块上的熵。现在,可以通过选择适当的阈值来丢弃具有非常低熵的补丁,因为它们不包含太多信息。