OpenCV-背景移除和对象检测

OpenCV-背景移除和对象检测,opencv,Opencv,我需要检测物体(主要是人)相对于墙壁的位置。我可以在天花板上安装一个固定位置的摄像头,所以我想拍摄一张没有任何东西的空间图像。然后使用它和当前相机图像的差异,得到一个只包含这些东西的图像。然后我可以做斑点检测,我想只需要x就可以得到位置。 这听起来好吗?我对OpenCV不是很在行,所以我在寻求一些建议。这可能是一种方法,但不太可靠,因为视频馈送不会产生一致的精确图像,因此背景永远不会被很好地减去,在场景中行走的人会遮挡光线,也可能与你的部分背景相匹配 这种从视频中去除背景的过程被简单地称为背景减

我需要检测物体(主要是人)相对于墙壁的位置。我可以在天花板上安装一个固定位置的摄像头,所以我想拍摄一张没有任何东西的空间图像。然后使用它和当前相机图像的差异,得到一个只包含这些东西的图像。然后我可以做斑点检测,我想只需要x就可以得到位置。
这听起来好吗?我对OpenCV不是很在行,所以我在寻求一些建议。

这可能是一种方法,但不太可靠,因为视频馈送不会产生一致的精确图像,因此背景永远不会被很好地减去,在场景中行走的人会遮挡光线,也可能与你的部分背景相匹配

这种从视频中去除背景的过程被简单地称为背景减法(backgroundsubtraction),并且有很多种方法


OpenCV在他们的网站上提供了一些教程,介绍了和的基本知识。

谢谢,我不确定。我真正需要的是背景减法。这似乎有点复杂,尤其是现场视频。我曾想过在Kinect上使用深度缓冲区。从直截了当的角度来看,人们似乎应该相当突出。不过,我会对bg减法做更多的阅读——它可能仍然是我最终使用的。高斯混合模型几乎是视频馈送中背景减法的标准。你可以看到那篇开创性的论文。如果你有办法得到深度图,那么当然,这也行。虽然代码有点长,但教程并没有那么复杂。OpenCV一如既往地为您完成所有艰巨的工作: