是否有OpenCV 2.4.2函数或类实现了图像背景减法算法?
我将处理的图像将是人像,例如来自网络摄像头的图像。我想只保留身体的上半部分(从胸部向上)并移除背景中的其他所有内容。
如果可能的话,我想避免自己实现这些算法。但是,如果OpenCV中目前不存在,那么请建议我一些。
我试图寻找答案,但到目前为止,我发现的所有内容只涉及视频或图片序列中的背景减法,而这不是我想要的。我只想处理单个,静态和独立的图像。
答案 0 :(得分:3)
您可以使用OpenCV(或任何其他库)中的cvRunningAvg函数为此尝试运行平均值方法。
在此,你将很多帧的平均值作为背景。如果相机是静态的,它会提供一个好的结果,特别是如果你有一些只有背景的帧。
查看示例结果:
最好还应用一些形态学操作,如侵蚀,扩张等,以便在抓取帧时消除小噪音。
您可以在此处阅读代码和说明:BackGround Extraction using Running Average