2

我正在做一个项目,我必须能够跟踪进入和离开某个区域的汽车的运动。我正在使用带有 C++ 的 OpenCV 库。在搜索完所有功能后,我不确定要使用哪种方法。我正在考虑使用opticalFlow进行移动并为进入/退出设置两个感兴趣区域,但我不确定如何检测实际车辆。任何对 OpenCV 更有经验的人能给我一些见解吗?

任何帮助是极大的赞赏。

4

2 回答 2

3

您应该首先检测进入图像的对象。我猜你有一个固定的相机,不会移动。如果是这样,您可以从背景减除技术开始:使用固定相机,并且没有任何物体移入/移出图像,您可以估计图像中每个像素的颜色(或其他一些属性)的高斯模型。之后,您可能需要重新估计模型以使其适应例如照明的变化。估计模型后,您可以检测进入图像和从图像中移动的对象,因为那里的像素将具有与预期不同的值。然后,重新使用光流以在图像中跟踪它们。

于 2012-11-07T11:02:49.740 回答
1

Genis 的答案无疑是一个很好的答案。如果照明条件不会发生大的变化并且相机处于汽车物体不会重叠的角度,则背景减法然后进行斑点检测可能是最好的方法。

就我个人而言,我会选择直接的光流和向量分段。如果处理时间很关键,您可以在 Sobel 边缘图像上运行光流。

有很多方法可以给这只猫剥皮。也许如果您发布一些场景的屏幕截图,您会得到更具体的解决方案。

于 2012-11-07T11:20:54.733 回答