发明名称 一种基于目标行为分析的行人图像实时检测方法
摘要 本发明公开了一种基于目标行为分析的行人图像实时检测方法,该方法包括4个步骤,依次是图像预处理、目标分割、目标特征提取和目标特征分析,所述的图像预处理包括对采集到的图像进行横向及纵向抽样处理,用以减少图像数据的计算量,所述的目标分割包括对初始背景提取、帧差分割目标和形态学滤波,所述的目标特征提取,包括连通域处理和目标跟踪,所述的目标特征分析,包括对目标速度、轨迹的平滑程度、目标长宽比以及目标面积的分析判断。
申请公布号 CN104463903A 申请公布日期 2015.03.25
申请号 CN201410286444.6 申请日期 2014.06.24
申请人 中海网络科技股份有限公司 发明人 杨忆明;袁彬;谭中慧;于艳玲;王军群;杨东雷
分类号 G06T7/20(2006.01)I;G06T7/00(2006.01)I;G06K9/00(2006.01)I 主分类号 G06T7/20(2006.01)I
代理机构 上海伯瑞杰知识产权代理有限公司 31227 代理人 吴泽群
主权项 一种基于目标行为分析的行人图像实时检测方法,其特征在于,该方法包括4个步骤,依次是图像预处理、目标分割、目标特征提取和目标特征分析,所述的图像预处理包括对采集到的图像进行横向及纵向抽样处理,用以减少图像数据的计算量,所述的目标分割包括对初始背景提取、帧差分割目标和形态学滤波,其中,所述的初始背景提取的实现步骤为:a1)统计连续N帧视频变化情况,记录像素中个点灰度出现情况<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>P</mi><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>k</mi><mo>)</mo></mrow><mo>=</mo><mfenced open='{' close='' separators=''><mtable><mtr><mtd><mi>p</mi><mo>+</mo><mn>1</mn><mo>,</mo><mi>if i</mi><msub><mi>mage</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>m</mi><mo>)</mo></mrow><mo>=</mo><mi>k</mi></mtd></mtr><mtr><mtd><mi>p</mi><mo>,</mo><mi>if</mi><msub><mi>image</mi><mi>i</mi></msub><mrow><mo>(</mo><mi>x</mi><mo>,</mo><mi>y</mi><mo>,</mo><mi>m</mi><mo>)</mo></mrow><mo>&NotEqual;</mo><mi>k</mi></mtd></mtr></mtable><mrow><mi>i</mi><mo>=</mo><mn>1,2</mn><mo>.</mo><mo>.</mo><mo>.</mo><mi>N</mi></mrow></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1.1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000525829930000011.GIF" wi="1601" he="162" /></maths>其中,P(x,y,k表)示像素点(x,y)处亮度值为k出现的次数,image<sub>i</sub>(x,y,m)表示某一帧图像像素点(x,y)处亮度值为m,a2)将连续N帧某点灰度出现频率最大值,作为该点的灰度值,即初始背景灰度值。Background(x,y)=max(P(x,y,k))k=0,1,2…255    (1.2)所述的帧差分割目标的具体实现步骤为:b1)为方便后续计算,首先将抽样后的结果进行块化,设原始图像宽度及高度为W、H,块的大小为w、h,则块化后的图像大小为<maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mfenced open='{' close=''><mtable><mtr><mtd><mi>wid</mi><mo>=</mo><mi>W</mi><mo>/</mo><mi>w</mi></mtd></mtr><mtr><mtd><mi>hei</mi><mo>=</mo><mi>H</mi><mo>/</mo><mi>h</mi></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1.3</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000525829930000012.GIF" wi="1241" he="214" /></maths>b2)使用当前图像与背景图像进行差分,以获得运动目标,其中DifGray<sub>i</sub>为背景差分后某块的灰度值,Gray<sub>n</sub>为当前帧某块内像素灰度值,Background<sub>n</sub>为背景中对应块内像素灰度值<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><msub><mi>DifGray</mi><mi>i</mi></msub><mo>=</mo><munderover><mi>&Sigma;</mi><mrow><mi>n</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>w</mi><mo>*</mo><mi>h</mi></mrow></munderover><msub><mi>Gray</mi><mi>n</mi></msub><mo>-</mo><munderover><mi>&Sigma;</mi><mrow><mi>n</mi><mo>=</mo><mn>0</mn></mrow><mrow><mi>w</mi><mo>*</mo><mi>h</mi></mrow></munderover><msub><mi>Background</mi><mi>n</mi></msub><mo>,</mo><mn>0</mn><mo>&lt;</mo><mi>i</mi><mo>&lt;</mo><mi>wid</mi><mo>*</mo><mi>hei</mi><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1.4</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000525829930000013.GIF" wi="1679" he="141" /></maths>b3)二值化阈值的选择使用迭代式阈值选择法,A)选择视频图像中的灰度的中值作为首先的估计阈值T<sub>0</sub>;B)利用开始估计的阈值T<sub>0</sub>把图像的灰度值分成两个不同的区域:R<sub>1</sub>、R<sub>2</sub>,根据式(1.5)计算区域R<sub>1</sub>和R<sub>2</sub>的灰度的均值u<sub>1</sub>和u<sub>2</sub>:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msub><mi>u</mi><mn>1</mn></msub><mo>=</mo><mfrac><mrow><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><msub><mi>T</mi><mi>i</mi></msub></munderover><msub><mi>in</mi><mi>i</mi></msub></mrow><mrow><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><msub><mi>T</mi><mi>i</mi></msub></munderover><msub><mi>n</mi><mi>i</mi></msub></mrow></mfrac><mo>,</mo><msub><mi>u</mi><mn>2</mn></msub><mo>=</mo><mfrac><mrow><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><msub><mi>T</mi><mi>i</mi></msub></mrow><mrow><mi>L</mi><mo>-</mo><mn>1</mn></mrow></munderover><msub><mi>in</mi><mi>i</mi></msub></mrow><mrow><munderover><mi>&Sigma;</mi><mrow><mi>i</mi><mo>=</mo><msub><mi>T</mi><mi>i</mi></msub></mrow><mrow><mi>L</mi><mo>-</mo><mn>1</mn></mrow></munderover><msub><mi>n</mi><mi>i</mi></msub></mrow></mfrac><mo>,</mo></mrow>]]></math><img file="FDA0000525829930000021.GIF" wi="471" he="290" /></maths>n为个数         (1.5)C)计算出u<sub>1</sub>和u<sub>2</sub>后,计算出新的阈值T<sub>i+1</sub>:<maths num="0005" id="cmaths0005"><math><![CDATA[<mrow><msub><mi>T</mi><mrow><mi>i</mi><mo>+</mo><mn>1</mn></mrow></msub><mo>=</mo><mfrac><mn>1</mn><mn>2</mn></mfrac><mrow><mo>(</mo><msub><mi>u</mi><mn>1</mn></msub><mo>+</mo><msub><mi>u</mi><mn>2</mn></msub><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1.6</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000525829930000022.GIF" wi="1224" he="128" /></maths>D)重复步骤B)、C),直到T<sub>i+1</sub>和T<sub>i</sub>无限接近时,其值即为二值化阈值T。b4)当差分结果大于阈值T时,则将该块结果置为255,否则置为0,实现目标的二值化,<maths num="0006" id="cmaths0006"><math><![CDATA[<mrow><mi>TwoVal</mi><mo>=</mo><mfenced open='{' close=''><mtable><mtr><mtd><mn>255</mn><mo>,</mo><mi>DifGray</mi><mo>></mo><mi>T</mi></mtd></mtr><mtr><mtd><mn>0</mn><mo>,</mo><mi>DifGray</mi><mo>&lt;</mo><mi>T</mi></mtd></mtr></mtable></mfenced><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1.7</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000525829930000023.GIF" wi="1232" he="156" /></maths>所述的形态学滤波实现的步骤为:c1)对二值化分割结果进行横向扫描,当相邻两白块间间隔小于2个块时,则将中间区域的黑块置为255,否则保留原值;c2)对二值化分割结果进行纵向扫描,当相邻两白块间间隔小于2个块时,则将中间区域的黑块置为255,否则保留原值;所述的目标特征提取,包括连通域处理和目标跟踪,其中,连通域处理的实现步骤是:d1)图像初步标记为每个块赋予临时标记,并且将临时标记的等价关系记录在等价表中;d2)整理等价表A’)将具有等价关系的临时标记全部等价为其中的最小值;B’)对连通区域以自然数顺序重新编号,得到临时标记与最终标记之间的等价关系;d3)图像代换对图像进行逐块代换,将临时标记代换为最终标记,经过上述处理,图像中连通域按照由上到下,由左到右出现的顺序被标以连续的自然数;d4)连通域外接矩形连通域标记结束后,进行其最小外接矩形的求取,将属于同一个标号的块连接起来,以确定该目标的长度和宽度;所述的目标跟踪的实现步骤为:e1)获取重心对连通域进行横向投影,确定其横向的块数,设图像目标物块数为N,列数为[0,L‑1],对应列i的目标物块数为n<sub>i</sub>,几率为p<sub>i</sub>=n<sub>i</sub>/N,i=1,2…L       (1.8)其中<img file="FDA0000525829930000031.GIF" wi="216" he="140" />则列的重心为y=i*p<sub>i</sub>          (1.9)同理,得到行的重心,e2)目标重心跟踪得到重心后,保存重心的行和列,在第N+1帧对第N帧中的重心附近8*8的搜索范围内进行搜索,如果搜索到有目标物的重心,则认为两帧为同一目标物,更新重心的行和列坐标,搜索下一帧,以获得目标的运动轨迹,且选择跟踪N′帧,以放大车辆与行人之间的差距;e3)轨迹速度计算获得目标运动轨迹后,记录轨迹中每个点对应的位置及帧数,则轨迹速度为<maths num="0007" id="cmaths0007"><math><![CDATA[<mrow><mi>v</mi><mo>=</mo><mfrac><mrow><msub><mi>d</mi><mi>N</mi></msub><mo>-</mo><msub><mi>d</mi><mn>0</mn></msub></mrow><msup><mi>N</mi><mo>&prime;</mo></msup></mfrac><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1.10</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000525829930000032.GIF" wi="1092" he="130" /></maths>其中,d<sub>N</sub>为轨迹终点对应的像素位置,d<sub>0</sub>为轨迹起点对应的像素位置,N′为跟踪的帧数,即N′=10;所述的目标特征分析,包括对目标速度、轨迹的平滑程度、目标长宽比以及目标面积的分析判断,对目标速度,选择相同帧数的轨迹的运动矢量和进行判断,即相同时间内运动的距离作为判断的依据,对轨迹的平滑程度采用弦长及弧长的差的大小来衡量轨迹的平滑程度,当弦长和弧长差值比较大时,说明跟踪的目标物为行人,当弧长和弦长差值比较小时,说明跟踪的目标物为车辆,行人的轨迹位移矢量小,车辆的位移矢量大,说明车辆的速度大,行人的速度小,对于目标长宽比,在获得目标连通域的外接矩形后,即可获得行人目标的长度和宽度,根据其长宽比的大小作为行人检测的依据之一,对于目标面积,根据连通域外接矩形的面积大小作为行人检测的依据,这里,*代表数学符号中的乘号。
地址 200135 上海市浦东新区民生路600号