本文实例为大家分享了OpenCV实现帧间差分法的具体方法,供大家参考,具体内容如下
一.基本概念
基于视频的车辆检测算法种类很多:光流法检测,帧差法,背景消除法(其中包括:直方图法,平均值法,单分布和混合高斯分布背景模型,Kalman滤波等),边缘检测法,运动矢量检测法...下面分享的是运动目标检测算法中最基本的方法—帧间差分法。
相邻帧间图像差分思想:检测出了相邻两帧图像中发生变化的区域。该方法是用图像序列中的连续两帧图像进行差分,然后二值化该灰度差分图像来提取运动信息。由帧间变化区域检测分割得到的图像,区分出背景区域和运动车辆区域,进而提取要检测的车辆目标。
它是通过比较图像序列中前后两帧图像对应像素点灰度值的不同,通过两帧相减,如果灰度值很小,可以认为该点无运动物体经过;反之灰度变化很大,则认为有物体经过。第k帧和k+1帧图像fk(x,y),fk+l(x,y)之间的变化用一个二值差分图像D(x,y)表示,如式:
二值图中0对应前后未变化的地方,1对应变化的地方。流程图如下图所示: