CN101604380B - 人头识别直径搜索法 - Google Patents
人头识别直径搜索法 Download PDFInfo
- Publication number
- CN101604380B CN101604380B CN200910055122XA CN200910055122A CN101604380B CN 101604380 B CN101604380 B CN 101604380B CN 200910055122X A CN200910055122X A CN 200910055122XA CN 200910055122 A CN200910055122 A CN 200910055122A CN 101604380 B CN101604380 B CN 101604380B
- Authority
- CN
- China
- Prior art keywords
- people
- pixel point
- white pixel
- search
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
本发明涉及一种人头识别直径搜索法,将视频采集设备安装于人的头顶一定距离处,自上而下进行拍摄,采集的人头基本上是类圆区域,用直径搜索方法搜索图像每个像素点,从几个方向判断区域的类圆特性,从而识别人头,并获得人头的中心和半径。避开复杂的数学公式和Hough变换中抽象的空间转换概念,提高了准确率,具有内存占用小、高实时性的特点。
Description
技术领域
本发明涉及一种图像处理技术,特别涉及一种人头识别直径搜索法。
背景技术
人类活动的检测已经在视频自动监控、人机交互等多方面应用中起到了关键作用。在利用计算机实现的自动识别***中,对人的头部进行检测被认为是检测人活动最有效的手段之一,因为头部的信息是最容易被计算机***所识别。一个用于检测人类活动的自动识别***的健壮性直接取决于对人头部识别的准确性和实时性。如今,头部检测已经应用在了许多领域,例如针对行人的检测和针对乘客流量的检测。对乘客流量的检测,摄像头通常安装在人头上方,从上而下进行拍摄。人头检测的主要任务是确定人头部分的大小及位置。通过摄像头采集的实时图像被作为输入,自动识别***对其进行处理,输出关于图像中是否存在头部或者头部的个数、位置等数学描述信息。
摄像头从上而下拍摄,获得的人头图像就是一个类圆形目标。基于这种环境的人头检测方法已经发展出很多,它们各自有其局限性。譬如,利用结合梯度与彩色直方图进行人头识别,这种方法识别准确率受到衣服颜色的严重影响。采用随机抽取四个边缘点,通过计算它们的距离来判断是否存在一个可能的圆形目标,该方法在噪声干扰比较大的环境下,命中率很低,从而影响其检测速度。模糊C均值聚类方法由于首先要确定聚类数目而很难在这种聚类数目随机变化的情况下使用。检测类圆形目标的最常用的方法就是Hough变换(HT)。HT由于对噪声不敏感以及对不连续边缘具有很强的鲁棒性,而得到广泛应用。但是Hough变换不但占用大量的内存,而且对具有三维参数空间圆形目标的检测,HT的实时性问题显得很突出。后来发展了很多提高HT速度和降低内存需求量的算法,如随机Hough变换(RHT)、基于梯度信息的Hough变换(GHT)等。这些改进的Hough变换在噪声干扰比较大的时候都难以解决实时性问题。
发明内容
本发明是针对现在人头识别检测方法局限性的问题,提出了一种人头识别直径搜索法,克服传统方法的低实时性、低抗噪性和内存占用量大的缺点,是一种高准确率、高实时性的人头检测方法。
本发明的技术方案为:一种人头识别直径搜索法,将视频采集设备安装于人的头顶一定距离处,自上而下进行拍摄,采集数据后进行人头识别,人头识别直径搜索法包括以下具体步骤:
1)、初始化数组A[M][N]的各元素值为0,A[M][N]用来记录图像每一像素的纵向搜索白色像素点的延伸长度,其中M表示图像横向像素数,N表示纵向像素数;
2)、逐行扫描二值化的图像,当碰到白色像素点(x,y)时,程序开始纵向检测(x,y+1)、(x,y+2)……,为了容许区域中存在空洞,设置一个允许在纵向连续不出现白色像素点的数目T,T的值根据容许存在的空洞大小确定,当纵向连续不出现白色像素点的数目小于T时,继续往纵向搜索白色像素点,直到纵向连续不出现白色像素点的数目大于T,这时,将(x,y)处往纵向延伸的长度存入数组元素A[x][y];这样扫描整个图像后,就获得了数组A[M][N]的各个元素值,它记录了每一个白色像素点向纵向延伸的长度,黑色像素点纵向延伸长度已初始化为0;
3)、搜索A[M][N]的最大值,设为A[x0][y0],根据实际情况设定一个人头直径在图像中的最小值D,如果A[x0][y0]>D,则可能在(x0,y0)处往纵向延伸存在一个人头,其圆心位置为(x0,y0+A[x0][y0]/2),为进一步检验该处是否存在人头,在圆心位置处按照同样的方法进行横向检测,如果圆心处白色像素点横向延伸长度也大于D,则其为人头的可能性变大;基本可以认为该处存在人头,人头中心为(x0,y0+A[x0][y0]/2),半径为A[x0][y0]/2;如果需要进一步确认该处是否是人头,还可以在圆心处往45度方向和135度方向检测白色像素点延伸长度,看其是否符合人头类圆形特征的要求;
4)、搜索下一个人头前,先将A[x0][y0]及其周围的数组元素清零,以排除这一次搜索可能重复搜索到第一个人头,再搜索A[M][N]的最大值,设为A[x1][y1],按照步骤3)的方法验证(x1,y1)处是否存在人头;
5)、重复第4)步,直到搜索出来的最大值小于D,表明图像中的人头已经全部找出来。
本发明的有益效果在于:本发明人头识别直径搜索法,避开复杂的数学公式和Hough变换中抽象的空间转换概念,提高了准确率,具有内存占用小、高实时性的特点。
附图说明
图1是本发明人头识别直径搜索法程序运行的硬件结构框图;
图2是本发明人头识别直径搜索法中求取A[M][N]数组各元素的流程图;
图3是本发明人头识别直径搜索法中根据A[M][N]求取人头参数的流程图。
具体实施方式
摄像头从上而下拍摄进行人头识别的情况通常应用在客流统计***中,如超市、公园、公交车等。这种情况下通常采用减背景的方法提取人体目标,然后对减背景后的图像采用快速模糊C均值算法求取灰度阈值,进行二值化,再进行人头识别和计数。二值化后的白色像素点为人头目标和一些噪声。
本发明算法根据二值化后图像的特征来设计,避开复杂的数学公式和Hough变换中抽象的空间转换概念。由于人头的灰度值比较集中,背景减后的图像剩下的人头区域比较集中,根据阈值的不同,人头区域存在空洞现象,在很多算法中要进行形态学处理。本算法将形态学处理融合在一起,主要原理为直径搜索。设二值化图像左上角为坐标原点,横向为X方向,纵向为Y方向。首先逐行搜索图像每个像素点,当碰到一个白色像素点时(设坐标为(x,y)),搜索方向转为纵向,检测(x,y+1)是不是白色像素点,由于存在空洞现象,可以允许连续几点不是白色像素点,一直往纵向搜索,直到连续点不是白色像素点的数量超过某阈值。记录下来从(x,y)开始往下搜索的长度。这样就得到整幅二值化图像每个白色像素点在纵向的延伸长度,然后搜索延伸长度的最大值的位置,设为(x0,y0),该点有可能是人头位置,然后根据该点的延伸长度找到可能的中心位置,在中心位置再进行横向搜索白色像素点,以判断该区域横向是否满足人头的类圆形特征。为进一步判断该区域是否满足人头特征,还可以在中心位置沿45度方向和135度方向进行搜索白色像素点,进行人头的类圆形特征验证,以排除检测到的目标是长条形目标或其它非类圆形目标。搜索并验证完第一个人头之后,再搜索第二个可能的人头,直到白色像素点的延伸长度低于某一阈值(这一阈值设置为最小的人头直径值)。
如图1所示硬件结构框图,本发明算法运行的硬件结构包括:视频采集模块、TI公司的DM642硬件电路板和处理结果输出模块。由于计算机视觉处理的对象是数据量大的数字图像,所以选用高性能的专用于数字媒体应用的DSP,即选用TI公司的TMS320DM642作处理器。将视频采集设备安装于人的头顶一定距离处,自上而下进行拍摄,采集的人头基本上是类圆区域。从几个方向判断区域的类圆特性,从而识别人头,并获得人头的中心和半径。
如图2所示二值化求取A[M][N]数组各元素的流程图和根据A[M][N]求取人头参数的流程图,体现具体的算法步骤如下:
1)、初始化数组A[M][N]的各元素值为0,A[M][N]用来记录图像每一像素的纵向搜索白色像素点的延伸长度,其中M表示图像横向像素数,N表示纵向像素数。
2)、逐行扫描二值化的图像,当碰到白色像素点(x,y)时,程序开始纵向检测(x,y+1)、(x,y+2)……,为了容许区域中存在空洞,设置一个允许在纵向连续不出现白色像素点的数目T,当纵向连续不出现白色像素点的数目小于T时,继续往纵向搜索白色像素点,直到纵向连续不出现白色像素点的数目大于T。这时,将(x,y)处往纵向延伸的长度存入数组元素A[x][y]。T的值根据容许存在的空洞大小确定,设定T值其实质就是将形态学处理融合到了该算法。T的值要选择的恰当,T太小就会导致人头区域的空洞越不过去;T太大,就会导致搜索到人头以外的区域。这样遍历整个图像后,就获得了数组A[M][N]的各个元素值,它记录了每一个白色像素点向纵向延伸的长度(黑色像素点纵向延伸长度已初始化为0)。
3)、搜索A[M][N]的最大值,设为A[x0][y0],根据实际情况设定一个人头直径在图像中的最小值D,如果A[x0][y0]>D,则可能在(x0,y0)处往纵向延伸存在一个人头,其圆心位置为(x0,y0+A[x0][y0]/2)。为进一步检验该处是否存在人头,在圆心位置处按照同样的方法进行横向检测,如果圆心处白色像素点横向延伸长度也大于D,则其为人头的可能性变大,基本可以认为该处存在人头,人头中心为(x0,y0+A[x0][y0]/2),半径为A[x0][y0]/2。如果需要进一步确认该处是否是人头,还可以在圆心处往45度方向和135度方向检测白色像素点延伸长度,看其是否符合人头类圆形特征的要求。
4)、搜索下一个人头前,先将A[x0][y0]及其周围的数组元素清零,以排除这一次搜索可能重复搜索到第一个人头。再搜索A[M][N]的最大值,设为A[x1][y1],按照步骤3)的方法验证(x1,y1)处是否存在人头。
5)、重复第4)步,直到搜索出来的最大值小于D,表明图像中的人头已经全部找出来。
在该人头检测算法中确定A[M][N]值的流程图,算法中最核心的部分是确定数组A[M][N]各个元素值,也是相对耗时的代码部分,其核心代码如下:
for(i=0;i<M;i++)
for(j=0;j<N;j++)//遍历整个二值化图像
{
A[i][j]=0;//该数组记录每个像素纵向搜索延伸长度,
if(第i行j列的像素灰度值==255)//碰到白色像素点
{
Temp=0;//初始化纵向连续不出现白色像素点的数目
for(k=1;k<N;k++)//纵向搜索
{
if(i+k<N&&第i+k行j列的像素灰度值)==255)
temp=0;//如果是白色像素点点,则复位
else {
temp++;//如果不是白色像素点,则temp加一
if(temp>T)break;
//如果连续不出现边缘点的数目超过阈值T,则终止纵向搜索
}
}
A[i][j]=k;//记录下来该白色像素点处纵向延伸的长度
}
}
在确定了每个像素点的纵向延伸长度A[M][N]后,需要搜索A[M][N]中的人头信息,其流程图如图3所示。程序在TMS320DM642上运行,用直径搜索法检测人头,M=720,N=576;T=4,核心代码执行时间为0.01145秒;用Hough变换检测,核心代码运行时间为0.49251秒,运行速度快40倍左右。使用不同的算法,检测出来的人头中心和半径也有一定的误差,但是误差很小,只有几个像素的误差。
Claims (1)
1.一种人头识别直径搜索法,将视频采集设备安装于人的头顶一定距离处,自上而下进行拍摄,采集数据后进行人头识别,人头识别直径搜索法包括以下具体步骤:
1)、初始化数组A[M][N]的各元素值为0,A[M][N]用来记录图像每一像素的纵向搜索白色像素点的延伸长度,其中M表示图像横向像素数,N表示纵向像素数;
2)、逐行扫描二值化的图像,当碰到白色像素点(x,y)时,程序开始纵向检测(x,y+1)、(x,y+2)……,为了容许区域中存在空洞,设置一个允许在纵向连续不出现白色像素点的数目T,T的值根据容许存在的空洞大小确定,当纵向连续不出现白色像素点的数目小于T时,继续往纵向搜索白色像素点,直到纵向连续不出现白色像素点的数目大于T,这时,将(x,y)处往纵向延伸的长度存入数组元素A[x][y];这样扫描整个图像后,就获得了数组A[M][N]的各个元素值,它记录了每一个白色像素点向纵向延伸的长度,黑色像素点纵向延伸长度已初始化为0;
3)、搜索A[M][N]的最大值,设为A[x0][y0],根据实际情况设定一个人头直径在图像中的最小值D,当A[x0][y0]>D,则在(x0,y0)处往纵向延伸存在一个人头,其圆心位置为(x0,y0+A[x0][y0]/2),为进一步检验该处是否存在人头,在圆心位置处按照同样的方法进行横向检测,当圆心处白色像素点横向延伸长度也大于D,则其为人头的可能性变大;认为该处存在人头,人头中心为(x0,y0+A[x0][y0]/2),半径为A[x0][y0]/2;当需要进一步确认该处是否是人头,则在圆心处往45度方向和135度方向检测白色像素点延伸长度,看其是否符合人头类圆形特征的要求;
4)、搜索下一个人头前,先将A[x0][y0]及其周围的数组元素清零,以排除这一次搜索可能重复搜索到第一个人头,再搜索A[M][N]的最大值,设为A[x1][y1],按照步骤3)的方法验证(x1,y1)处是否存在人头;
5)、重复第4)步,直到搜索出来的最大值小于D,表明图像中的人头已经全部找出来。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910055122XA CN101604380B (zh) | 2009-07-21 | 2009-07-21 | 人头识别直径搜索法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910055122XA CN101604380B (zh) | 2009-07-21 | 2009-07-21 | 人头识别直径搜索法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101604380A CN101604380A (zh) | 2009-12-16 |
CN101604380B true CN101604380B (zh) | 2011-07-20 |
Family
ID=41470103
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910055122XA Expired - Fee Related CN101604380B (zh) | 2009-07-21 | 2009-07-21 | 人头识别直径搜索法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101604380B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012066910A1 (ja) | 2010-11-19 | 2012-05-24 | 株式会社ニコン | 誘導装置、検出装置及び姿勢状態判定装置 |
CN103903284A (zh) * | 2014-03-24 | 2014-07-02 | 中山新诺科技股份有限公司 | 一种基于最小二乘法的多圆检测方法 |
CN105404852B (zh) * | 2015-10-28 | 2019-01-25 | 广州视源电子科技股份有限公司 | 一种显示公共卫生间空位的方法及装置 |
CN106022226B (zh) * | 2016-05-11 | 2019-03-01 | 同济大学 | 一种基于多方向多通道条形结构的行人再辨识方法 |
CN107742355B (zh) * | 2017-11-13 | 2023-08-18 | 江苏海洋大学 | 自动传送分拣硬币的装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1334439A (zh) * | 2000-06-01 | 2002-02-06 | 株式会社三丰 | 一种斑点图像相关的光学位置传感器 |
CN101144708A (zh) * | 2007-09-26 | 2008-03-19 | 东南大学 | 三维扫描***中圆形标志点的检测方法 |
CN101334263A (zh) * | 2008-07-22 | 2008-12-31 | 东南大学 | 圆形目标的圆心定位方法 |
EP2079054A1 (en) * | 2008-01-11 | 2009-07-15 | OMG Plc. | Detection of blobs in images |
-
2009
- 2009-07-21 CN CN200910055122XA patent/CN101604380B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1334439A (zh) * | 2000-06-01 | 2002-02-06 | 株式会社三丰 | 一种斑点图像相关的光学位置传感器 |
CN101144708A (zh) * | 2007-09-26 | 2008-03-19 | 东南大学 | 三维扫描***中圆形标志点的检测方法 |
EP2079054A1 (en) * | 2008-01-11 | 2009-07-15 | OMG Plc. | Detection of blobs in images |
CN101334263A (zh) * | 2008-07-22 | 2008-12-31 | 东南大学 | 圆形目标的圆心定位方法 |
Non-Patent Citations (1)
Title |
---|
JP特开2007-172642A 2007.07.05 |
Also Published As
Publication number | Publication date |
---|---|
CN101604380A (zh) | 2009-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106951879B (zh) | 基于摄像头与毫米波雷达的多特征融合车辆检测方法 | |
CN109633676A (zh) | 一种基于激光雷达侦测障碍物运动方向的方法及*** | |
KR100201739B1 (ko) | 물체 관측 방법 및 그 방법을 이용한 물체 관측장치와,이 장치를 이용한 교통흐름 계측장치 및 주차장 관측장치 | |
CN102479327B (zh) | 目标识别***,以及用于汽车的障碍识别***和方法 | |
JP6226368B2 (ja) | 車両監視装置、および車両監視方法 | |
CN101604380B (zh) | 人头识别直径搜索法 | |
Kuk et al. | Fast lane detection & tracking based on Hough transform with reduced memory requirement | |
CN109871732B (zh) | 停车格辨识***及其方法 | |
CN104303193A (zh) | 基于聚类的目标分类 | |
CN110298323B (zh) | 基于视频分析的打架检测方法、***、装置 | |
JPWO2010140578A1 (ja) | 画像処理装置、画像処理方法、及び画像処理用プログラム | |
CN102855461A (zh) | 在图像中检测手指的方法及设备 | |
Wu et al. | Traffic monitoring and vehicle tracking using roadside cameras | |
Zhang et al. | Bidirectional multiple object tracking based on trajectory criteria in satellite videos | |
CN109101874B (zh) | 一种基于深度图像的图书馆机器人障碍识别方法 | |
CN110096934A (zh) | 路面标识检测方法和设备 | |
CN111830966A (zh) | 角落识别和清扫方法、装置及存储介质 | |
US8116524B2 (en) | Method of object detection | |
JP2013149177A (ja) | オプティカルフロー処理装置 | |
Michael et al. | Fast change detection for camera-based surveillance systems | |
CN113449629B (zh) | 基于行车视频的车道线虚实识别装置、方法、设备及介质 | |
CN116110230A (zh) | 基于车载摄像头的车辆越车道线识别方法及*** | |
CN105930813B (zh) | 一种在任意自然场景下检测行文本的方法 | |
KR100976142B1 (ko) | 차량검출방법 | |
JP4842301B2 (ja) | 歩行者検出装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110720 Termination date: 20140721 |
|
EXPY | Termination of patent right or utility model |