这两天从零开始学习视频流中运动目标检测的方法,有点心得体会,写点东西跟大家共享,同时提出我的几个疑问,期望能够共同讨论进步。
本文主要面向和我一样的图像处理初学者,先从原理上把整个检测过程走通,然后再逐步提高性能。
1、关于运动目标检测的方法总结
查阅了相关的文献,目前能够实现运动物体检测的方法主要有以下几种:
1)背景差分法:能完整快速地分割出运动图像。其不足之处是易受光线变化影响,背景的更新是关键。不适用于摄像头运动的情况;
2)光流法:能检测独立运动的图像,可用于摄像头运动的情况,但是计算复杂耗时,较难实现实时监测;
3)帧差法:受光线变化影响较小,简单快速,但不能分割出完整的运动对象,需进一步运用目标分割算法。还有一些改进的算法,主要致力于减少光照影响和检测慢速物体变化。
以上是大多数文献中对这三种方法的评价,由于是初次接触,而且项目的需求是静止相机,因此采用最简单的方法:背景差分法。
2、背景差分法实现步骤
通过这几天的摸索,可将背景差分法的实现步骤总结如下:
1)进行图像的预处理:主要包括对图像进行灰度化以及滤波。
灰度化的方法及其C语言实现可参考《