发明名称 一种抗光照变化的运动目标的检测方法
摘要 本发明涉及一种抗光照变化的运动目标检测方法。现有的检测方法往往对光照变化都比较敏感,在检测环境中发生光照变化的情况下,很难准确的检测出运动目标。本发明融合了帧间差分中的非对称帧间差分法和自适应混高斯背景差分法,对于输入的运动图像经过预处理之后,分别进行非对称帧间差分运动目标检测和自适应混合高斯背景差分运动目标检测,最后把两种方法单独检测出来的运动目标结果进行与运算,提取综合的运动目标,然后经过数学形态学处理填补目标内部的空洞和滤除一些小的干扰。本发明不仅在正常情况下准确检测出运动目标,而且在检测环境光照发生变化的情况下仍然可以达到90%以上的准确率,能够满足监控系统的需求。
申请公布号 CN103258332B 申请公布日期 2016.06.29
申请号 CN201310200372.4 申请日期 2013.05.24
申请人 浙江工商大学 发明人 王效灵;余长宏;张涛;刘昆鹏;安文六;祝祥龙
分类号 G06T7/20(2006.01)I 主分类号 G06T7/20(2006.01)I
代理机构 杭州求是专利事务所有限公司 33200 代理人 杜军
主权项 一种抗光照变化的运动目标检测的方法,其特征在于该方法包括以下步骤:步骤(1).对视频图像进行预处理;步骤(2).对预处理之后的视频图像使用非对称帧间差分法检测运动目标;步骤(3).对预处理之后的视频图像使用自适应混合高斯背景差分法检测运动目标;步骤(4).对步骤(2)和步骤(3)单独检测到的结果进行与运算,进而提取出综合的运动目标;步骤(5).对步骤(4)得到的综合运动目标进行数学形态学处理,进一步优化检测的结果;步骤(2)中用非对称帧间差分法单独检测运动目标区域,其具体方法为:设f(x,y,i)表示当前第i帧(x,y)处的像素值,对应的前一帧为f(x,y,i‑1),后一帧为f(x,y,i+1),当前帧与前一帧的二值差分图像为bidf(x,y,i‑1,i),前一帧与后一帧的二值差分图像为bidf(x,y,i‑1,i+1),T<sub>0</sub>是设定的阈值,则对第i帧图像的非对称差分运算表示如下:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><mi>b</mi><mi>i</mi><mi>d</mi><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow><mo>=</mo><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow><mo>-</mo><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mn>0</mn><mo>,</mo><mi>o</mi><mi>t</mi><mi>h</mi><mi>e</mi><mi>r</mi><mi>w</mi><mi>i</mi><mi>s</mi><mi>e</mi></mrow></mtd></mtr><mtr><mtd><mrow><mn>1</mn><mo>,</mo><mo>|</mo><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow><mo>-</mo><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>|</mo><mo>&gt;</mo><msub><mi>T</mi><mn>0</mn></msub></mrow></mtd></mtr></mtable></mfenced></mrow></mtd></mtr><mtr><mtd><mrow><mi>b</mi><mi>i</mi><mi>d</mi><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>i</mi><mo>+</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>=</mo><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi><mo>+</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>-</mo><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mrow><mn>0</mn><mo>,</mo><mi>o</mi><mi>t</mi><mi>h</mi><mi>e</mi><mi>r</mi><mi>w</mi><mi>i</mi><mi>s</mi><mi>e</mi></mrow></mtd></mtr><mtr><mtd><mrow><mn>1</mn><mo>,</mo><mo>|</mo><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi><mo>+</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>-</mo><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi><mo>-</mo><mn>1</mn></mrow><mo>)</mo></mrow><mo>|</mo><mo>&gt;</mo><msub><mi>T</mi><mn>0</mn></msub></mrow></mtd></mtr></mtable></mfenced></mrow></mtd></mtr><mtr><mtd><mrow><mi>s</mi><mi>b</mi><mi>i</mi><mi>d</mi><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow><mo>=</mo><mi>b</mi><mi>i</mi><mi>d</mi><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow><mo>&cap;</mo><mi>b</mi><mi>i</mi><mi>d</mi><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>i</mi><mo>+</mo><mn>1</mn></mrow><mo>)</mo></mrow></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000931145960000011.GIF" wi="1526" he="279" /></maths>式(1)表明只有bidf(x,y,i‑1,i)=1和bidf(x,y,i‑1,i+1)=1同时成立时,sbidf(x,y,i)=1才成立,这样可以消除二值图像中的显露背景,获得第i帧图像中的运动目标区域;步骤(3)中用自适应混合高斯背景差分法单独检测运动目标,其具体方法如下:1).建立背景模型:对每一个像素点,同时用K个互不相关的高斯模型共同描述它的状态,K的取值范围为3~7,每个高斯模型都有各自的均值,方差和权重;在检测的过程中只要像素符合K个表示背景的高斯分布中的任何一个,那么就认为该像素点具有背景特征的像素点,也就是背景像素点;反之,该像素点则被判定为目标;在第i帧像素(x,y)的概率表示为:<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>f</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi><mo>)</mo></mrow><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>K</mi></munderover><msub><mi>&omega;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub><mi>&eta;</mi><mrow><mo>(</mo><mi>f</mi><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mo>)</mo><mo>|</mo><msub><mi>&mu;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub><mo>,</mo><msub><mi>&Sigma;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>2</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000931145960000021.GIF" wi="1477" he="135" /></maths>式中η(f(x,y,i)|μ<sub>i,k,xy</sub>,∑<sub>i,k,xy</sub>)表示的是在(x,y)点处,第i帧的第k个高斯分布,其定义如所示:<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mi>&eta;</mi><mrow><mo>(</mo><mrow><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow><mo>|</mo><msub><mi>&mu;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub><mo>,</mo><msub><mi>&Sigma;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub></mrow><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mrow><msup><mrow><mo>(</mo><mrow><mn>2</mn><mi>&pi;</mi></mrow><mo>)</mo></mrow><mfrac><mi>n</mi><mn>2</mn></mfrac></msup><msup><mrow><mo>|</mo><msub><mi>&Sigma;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub><mo>|</mo></mrow><mfrac><mn>1</mn><mn>2</mn></mfrac></msup></mrow></mfrac><msup><mi>e</mi><mrow><mo>-</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><msup><mrow><mo>(</mo><mrow><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow><mo>-</mo><msub><mi>&mu;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub></mrow><mo>)</mo></mrow><mi>T</mi></msup><msub><mi>&Sigma;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub><mrow><mo>(</mo><mrow><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow><mo>-</mo><msub><mi>&mu;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub></mrow><mo>)</mo></mrow></mrow></msup><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000931145960000022.GIF" wi="1734" he="189" /></maths>式中n表示向量f(x,y,i)的维数,μ<sub>i,k,xy</sub>、∑<sub>i,k,xy</sub>、ω<sub>i,k,xy</sub>分别是在点(x,y)处第i帧第k个高斯分布的均值、协方差矩阵和权重,且<img file="FDA0000931145960000023.GIF" wi="271" he="135" />2).模型更新:根据已经建立的背景模型,对该帧中每一个像素点,将其像素值与混合高斯模型中K个高斯分布分别进行匹配,如果其中一个满足公式(4),则认为f(x,y,i)与该背景模型匹配,其中D是根据经验为确定相似度而设定的值;|f(x,y,i)‑μ<sub>i‑1,k,xy</sub>|≤D*σ<sub>i‑1,k</sub>   (4)σ<sub>i‑1,k,xy</sub>表示在(x,y)处第(i‑1)帧第k个高斯分布的标准差;①.如果该点像素值与任何一个高斯分布都满足公式(4),则认为该点像素值对单个模型的分布没有任何影响,不更新模型中各个高斯分布参数;②.如果该点像素值与模型中的一个高斯分布满足公式(4),则按照公式对模型中的高斯分布的均值、方差和权重进行更新;<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><mtable><mtr><mtd><mrow><msub><mi>&mu;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub><mo>=</mo><mrow><mo>(</mo><mrow><mn>1</mn><mo>-</mo><mi>&rho;</mi></mrow><mo>)</mo></mrow><msub><mi>&mu;</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub><mo>+</mo><mi>&rho;</mi><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow></mrow></mtd></mtr><mtr><mtd><mrow><msubsup><mi>&sigma;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow><mn>2</mn></msubsup><mo>=</mo><mrow><mo>(</mo><mrow><mn>1</mn><mo>-</mo><mi>&rho;</mi></mrow><mo>)</mo></mrow><msubsup><mi>&sigma;</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow><mn>2</mn></msubsup><mo>+</mo><mi>&rho;</mi><msup><mrow><mo>(</mo><mrow><mi>f</mi><mrow><mo>(</mo><mrow><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>i</mi></mrow><mo>)</mo></mrow><mo>-</mo><msub><mi>&mu;</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub></mrow><mo>)</mo></mrow><mn>2</mn></msup></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>&omega;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub><mo>=</mo><mrow><mo>(</mo><mrow><mn>1</mn><mo>-</mo><mi>&alpha;</mi></mrow><mo>)</mo></mrow><msub><mi>&omega;</mi><mrow><mi>i</mi><mo>-</mo><mn>1</mn><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub></mrow></mtd></mtr></mtable><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>5</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000931145960000024.GIF" wi="1429" he="270" /></maths>③.如果新视频帧中的像素值与模型中的任何一个高斯分布都不满足公式(4),可以认为出现了新的分布形式,需要在原有的模型中加入新的分布;如果加入新的分布后,高斯分布的个数大于K,则对该模型中的K个高斯分布按照<img file="FDA0000931145960000031.GIF" wi="158" he="140" />的大小进行排序,用当前像素的分布取代<img file="FDA0000931145960000032.GIF" wi="154" he="142" />值最小的分布,将该点的像素值作为均值,同时赋予一个较大的方差和较小的权重ω<sub>init</sub>;3).权重归一化:模型更新之后,各像素点高斯分布的权重不一定是1,所以对新的模型的各个高斯分布的权重按照公式(6)做归一化处理:<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><msubsup><mi>&omega;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow><mo>&prime;</mo></msubsup><mo>=</mo><mfrac><msub><mi>&omega;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub><mrow><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>K</mi></munderover><msub><mi>&omega;</mi><mrow><mi>i</mi><mo>,</mo><mi>k</mi><mo>,</mo><mi>x</mi><mi>y</mi></mrow></msub></mrow></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>6</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000931145960000033.GIF" wi="1277" he="190" /></maths>4).前景目标的分割:在对每个像素点模型中的高斯分布进行排序之后,如果前b个状态的累积概率大于T且b最小时,则认为它们是背景状态,其余的状态判定为前景,这样就分离出运动目标;如果目标像素的数目与像素总数目之比大于0.85,则认为周围光照强度发生变化,对所有像素点高斯模型中优先级最大的高斯分布的参数进行更新,用当前帧像素点的像素值代替均值,方差赋予一个较大值,权重取模型中权重最大的值,以便新的分布成为未定的背景,对下一帧图像的准确检测;<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><mi>B</mi><mo>=</mo><msub><mi>arg</mi><mi>b</mi></msub><mi>m</mi><mi>i</mi><mi>n</mi><mrow><mo>(</mo><munderover><mi>&Sigma;</mi><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>b</mi></munderover><msub><mi>&omega;</mi><mi>k</mi></msub><mo>&gt;</mo><mi>T</mi><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>7</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000931145960000034.GIF" wi="1219" he="141" /></maths>B表示每个像素点判断为前景还是背景的结果;步骤(4)具体是:对于第i帧图像设步骤(2)的结果为sbifd(x,y,i),步骤(3)的结果为G(x,y,i),则由第i帧检测的综合运动目标obj(x,y,i)为:<img file="FDA0000931145960000035.GIF" wi="1605" he="93" />式(8)表明只有sbifd(x,y,i)和G(x,y,i)同时为0的时候obj(x,y,i)才为0;这样就结合步骤(2)的结果和步骤(3)的结果得到了综合的运动目标区域,并且互补了步骤(2)和步骤(3)单独检测的缺点。
地址 310018 浙江省杭州市下沙高教园区学正街18号