发明名称 一种基于计算机视觉的快速行人检测方法
摘要 本发明公开了一种基于计算机视觉的快速行人检测方法,此方法包括:首先,采集行人视频图像,然后采用ViBe算法为视频图像帧建立背景模型,通过融合帧差法的ViBe算法分割出前景区域;然后,计算各目标块轮廓的最高点坐标,完成头部候选区域的定位;最后,使用目标检测窗口对头部候选区进行遍历获取待检测样本,将待测样本输入经过Adaboost算法训练好的复合头部检测器,判断是否为人头样本,以此得到行人检测结果。本方发明通过以上技术方案有效的解决了现有技术中鲁棒性和实时性差的技术问题。
申请公布号 CN103824070A 申请公布日期 2014.05.28
申请号 CN201410110812.1 申请日期 2014.03.24
申请人 重庆邮电大学 发明人 张鹏;程方;史涛;张瑞;朱建虎;蒋明浪
分类号 G06K9/00(2006.01)I;G06K9/62(2006.01)I 主分类号 G06K9/00(2006.01)I
代理机构 重庆华科专利事务所 50123 代理人 康海燕
主权项 1.一种基于计算机视觉的快速行人检测方法,其特征在于,包含以下步骤:步骤1:用摄像机提取监控场景中目标运动过程的视频图像,并将摄像机采集到的图像实时传送给后台计算机;步骤2:运动目标检测:包括背景模型初始化和模型更新;所述背景模型初始化是计算机对实时接收的图像序列采用像素级算法ViBe法,对图像中每个像素进行初始化建立背景模型;所述模型更新是指采用帧差法和ViBe法相结合的方法求取的运动区域,并基于原图像对出现的Ghost区域中的像素进行背景模型更新,即通过比较这个模型与当前帧图像来分割出前景目标:具体步骤如下:2.1)将视频图像分帧,并对单帧图像中的每个像素进行背景模型初始化,设k=1时输入第1帧图像I<sub>1</sub>;<img file="FDA0000481224620000011.GIF" wi="248" he="82" />K<sub>G</sub>(x,y)、f<sup>1</sup>(x,y)分别是像素点(x,y)背景模型、空间领域和像素值<maths num="0001"><![CDATA[<math><mrow><msubsup><mi>BF</mi><mi>M</mi><mn>1</mn></msubsup><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>=</mo><mo>{</mo><msubsup><mi>f</mi><mi>n</mi><mn>1</mn></msubsup><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>|</mo><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>&Element;</mo><msub><mi>K</mi><mi>G</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>}</mo><mo>;</mo></mrow></math>]]></maths>2.2)对第2帧图像I<sub>2</sub>(k=2)进行前景分割,得到分割后图像F<sub>2</sub>并对各个像素的背景模型进行更新,设k=i,则像素点(x,y)的背景模型为<img file="FDA0000481224620000014.GIF" wi="178" he="58" />像素值为f<sup>i</sup>(x,y)利用如下准则来判读该像素点是否为前景点<img file="FDA0000481224620000013.GIF" wi="774" he="164" />R为分开前景和背景像素点设定的阈值;2.3)输入第3帧视频图像I<sub>3</sub>(k=3),计算I<sub>3</sub>分割后图像F<sub>3</sub>;使用下面公式得到I<sub>2</sub>与I<sub>3</sub>的差分和阈值化后的图像D<sub>2,3</sub>,将D<sub>2,3</sub>与F<sub>3</sub>做与运算,去除F<sub>3</sub>中的一部分Ghost区域,然后基于原图像I<sub>3</sub>将这部分Ghost区域的像素背景模型更新<maths num="0002"><![CDATA[<math><mrow><msub><mi>D</mi><mrow><mi>i</mi><mo>,</mo><mi>j</mi></mrow></msub><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><mn>1</mn></mtd><mtd><mo>|</mo><msub><mi>I</mi><mi>I</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>-</mo><msub><mi>I</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>|</mo><mo>&GreaterEqual;</mo><mi>T</mi></mtd></mtr><mtr><mtd><mn>0</mn></mtd><mtd><mo>|</mo><msub><mi>I</mi><mi>I</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>-</mo><msub><mi>I</mi><mi>j</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>)</mo></mrow><mo>|</mo><mo>&lt;</mo><mi>T</mi></mtd></mtr></mtable></mfenced><mo>;</mo></mrow></math>]]></maths>T为设定阈值;2.4)输入第k帧视频图像I<sub>k</sub>(k=4),利用上一帧更新得到背景模型计算F<sub>k</sub>,使用上面公式得到I<sub>k-1</sub>与I<sub>k</sub>做差分并阈值化后的图像D<sub>k-1,k</sub>,同时将D<sub>k-1.k</sub>与F<sub>k</sub>做与运算,去除F<sub>k</sub>中的一部分鬼影区域,而后基于原图像I<sub>k</sub>将去除的Ghost区域的像素点进行背景模型更新;2.5)重复步骤2.4,依次输入后续视频序列I<sub>k</sub>(k=5,6...M)直到最大视频帧数;步骤3:目标块轮廓特征点的提取:将提取出的前景目标区域用最小矩形窗口进行标示,并求出各目标块的面积S和轮廓G,通过目标块面积S来选择求取目标轮廓最高点坐标;步骤4:根据轮廓特征点和头部检测器来定位和检测出行人目标:在求得各目标轮廓最高点后,根据轮廓最高点确定头部候选区,使用目标检测窗口对头部候选区进行遍历,得到待检测样本,然后将待检测样本输入训练好的复合头部检测器,判断其是否为头部目标,以此判定是否为行人目标。
地址 400065 重庆市南岸区黄桷垭崇文路2号