入侵监控领域中,在固定场景下,需要检测和监控的入侵物体种类繁多,无法具体穷尽。传统的CV算法提取的特征应用场景有限,无法完成大量物体的监控;深度学习目标检测方法没法收集到无穷无尽的物体种类,因此监督效果仅限于标注物体,且适应性因场景变化而变化;异常检测方案,因为场景随着天气、光照的变化,无法行之有效的判断出异常物体的位置,并有时甚至出现误判断。
背景减除算法,通过学习固定场景下不变的背景,利用当前帧的的数据与背景的差分,可以很容易得到前景,在无需分类的场景下得到广泛应用。
这里推荐一个宝藏github主的分享,对于学习背景建模相关的东西很有帮助。https://github.com/murari023/awesome-background-subtraction/blob/master/README.md#projects
一、bgslibrary库的下载
使用背景建模基本都会使用到两个库,一个是opencv里面关于background subtraction相关的库,另一个就是bgslibrary,其链接地址如下:
https://github.com/andrewssobral/bgslibrary
该库是由Andrews Sobral 于2012年开始编写的,主要使用C++语言,结合opencv进行编写完成,当前还适配python、java、matlab等语言。最新release的算法版本总计实现了43个算法,针对不同版本的opencv,所能适配的和使用的背景建模算法均不一致,下图为部分示例。