CN102855484A - 基于局部积分图像处理的目标检测方法、装置及系统 - Google Patents
基于局部积分图像处理的目标检测方法、装置及系统 Download PDFInfo
- Publication number
- CN102855484A CN102855484A CN2012102680814A CN201210268081A CN102855484A CN 102855484 A CN102855484 A CN 102855484A CN 2012102680814 A CN2012102680814 A CN 2012102680814A CN 201210268081 A CN201210268081 A CN 201210268081A CN 102855484 A CN102855484 A CN 102855484A
- Authority
- CN
- China
- Prior art keywords
- integral image
- reg
- local integral
- zone
- topography
- 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.)
- Granted
Links
Images
Landscapes
- Image Processing (AREA)
Abstract
本发明提供了一种基于局部积分图像处理的目标检测方法、装置及系统,所述方法包括:步骤S11,读入局部图像区域的像素并计算该局部图像区域内的局部积分图像,所述局部图像区域的尺寸大于等于子窗口的尺寸,所述子窗口为目标检测中能检测出目标的最小的矩形区域;步骤S12,采用所述局部积分图像计算所述局部图像区域内各子窗口的矩形特征,并根据所述各子窗口的矩形特征在各子窗口中进行目标检测;步骤S13,更新所述局部图像区域,对于更新后的局部图像区域重复所述步骤S11至S12,直至对整幅图像完成目标检测。本发明能够限制用于表示积分图像像素的数据位数,节省存储积分图像的片内SRAM资源。
Description
技术领域
本发明涉及目标检测技术,尤其涉及一种基于局部积分图像处理的目标检测方法、装置及系统。
背景技术
Haar-Like特征是Viola等人提出的一种简单矩形特征(参见文献1:PaulViola,Michael Jones,Robust Real-time Object Detection[J].International Journal ofComputer Vision,57(2),pp.137-154,2002.),因类似于Haar小波的而得名。如图1a至图1c所示,Haar-Like型特征的定义是黑色矩形和白色矩形在图像子窗口中对应的区域的灰度级总和之差,Haar-Like型特征反映了图像局部的灰度变化。
Haar-Like特征分为三类:边缘特征、线性特征、中心特征(参见文献2:B.,Ernst,A.,Fast frontal-view face detection using a multi-path decision tree[C],Proceding of Audio-and Video-based Biometric Person Authentication,2003,pp.921-928),三类特征组合成特征模板,如图1a至图1c所示。特征模板内有白色和黑色两种矩形,并定义该模板的特征值为白色矩形中的像素和减去黑色矩形中的像素和。在确定了特征形式后,Haar-Like特征的数量就取决于训练样本图像矩阵的大小以及特征模板在子窗口内任意放置,文献3(Lienhart Rainer,Maydt Jochen,AnExtended Set of Haar-like Features for Rapid Object Detection[C].IEEE InternationalConference on Image Process,2002,pp.900-903)详细讨论了在某一子窗口中Haar-Like特征的数量,例如在一个24×24的子窗口中,上述三类Haar-Like特征的总数高达117,941个。
一种形态称为一种特征,找出所有子窗口的特征是进行弱分类训练的基础。而从大量的Haar特征中,选取若干具有最强分类能力的特征,是构建Haar分类器的关键所在。从Haar特征的形状发现,对于垂直、水平的特征,可以利用积分图像计算得到特征值。
积分图像是图像的一种表示方式,其定义如下:
ii(x,y)和i(x,y)分别为位置(x,y)处的积分图像和输入图像的值。积分图像中数据具有递增的特点,并且对于固定大小的图像,其积分图像的机器计算时间是固定的。对于尺寸为M×N的输入图像,根据公式(1)计算积分图像所需的加法操作的次数:1/4M2×N2。只需要对每个像素进行少量的计算工作,就能得到一幅图像的“积分图像”。“积分图像”能够在多种尺度下,使用相同的时间来计算不同的特征。
此外,还可以用Viola-Jones叠代公式(参见上述文献1)来计算积分图像:
S(x,y)=i(x,y)+S(x-1,y) (2)
ii(x,y)=ii(x,y-1)+S(x,y) (3)
其中i(x,y)为位置(x,y)处输入图像的值,S(x,y)为位置(x,y)处行方向像素的累加值,ii(x,y)为位置(x,y)处积分图像的值,如图2所示。对于尺寸为M×N输入图像,根据公式(2)和(3)计算积分图像所需的加法操作的次数:2M×N。
引入积分图像后,对于计算Haar特征值所需的矩形特征值(即该矩形所包含的像素累加和)的计算,只与此矩形4个顶点处的积分图像值有关,而与该矩形坐标位置无关,不论此矩形的尺寸如何,特征值的计算所耗费的时间都是常量,且都只是简单的加减运算。因此,利用图像的积分图像表示可大大地提高了Haar特征值的计算速度。
由于分类器在训练过程中每个样本的像素值都用其均方差进行了归一化处理,因此分类过程计算特征值之前,需要对子窗口中的图像进行归一化处理。式(4)为方差的计算公式,其中i为子窗口中的像素值:
其中σ2为方差,hw为子窗口的面积。
由式(4)得式(5):
hw2×σ2=hw∑i2-(∑i)2 (5)
目标检测过程中,弱分类器阈值与计算得到的特征值的一种比较公式为式(6),
Wc_TH×σ~Fv/hw (6)
其中,Fv为弱分类器的特征值,hw为检测子窗口的面积,Wc_Th为弱分类器的阈值。其中σ需要通过开放运算得到,为了避免式(6)中的开方运算和除法运算,对式(6)进行变换,得到式(7),变换过程中需要注意符号位的单独处理。
Wc_Th2×(hw×σ)2~Fv2 (7)将式(5)代入式(7)得所用的比较公式(8)。
Wc_TH2×(hw∑i2-(∑i)2)~Fv2 (8)
从公式(8)中可以发现,在目标检测过程中,除积分图像外,还需要计算平方积分图像。
对于积分图像的计算,常用的一种方法是一次性连续计算出整幅图像的积分图像,并存储在内存中,这是目前众多软件处理算法所采用的方式(参见文献4:Cordiner A.,Ogunbona P.,et al.,Face detection using generalised integral imagefeatures[C].IEEE International Conference on Image Processing,2009,pp.1229-1232)。对于硬件实现结构,该方法存在一些问题。首先,当一幅图像的尺寸较大时,例如图像分辨率为640×480时,像素位数为8bit时,其对应的积分图像每个像素的位数为8+lg(640×480)=27bit,存储其对应的积分图像所需的存储空间为:640×480×27,该空间远大于待处理图像的存储空间。文献5(Hiromoto M.,SuganoH.,et al.,Partially Parallel Architecture for AdaBoost-Based Detection With Haar-LikeFeatures[J].IEEE Transactions on Circuits and Systems for Video Technology,19(1),pp.41-52,2009)中将整幅图像的积分图像存储在片内的缓存(buffer)中,需要1M字节(Byte)的存储空间,占用大量的逻辑资源。
为了节省片内SRAM容量,需要一种新的目标检测技术。
发明内容
本发明要解决的技术问题是提供一种基于局部积分图像处理的目标检测方法、装置及系统,能够限制用于表示积分图像像素的数据位数,节省存储积分图像的片内SRAM资源。
为解决上述技术问题,本发明提供了一种基于局部积分图像处理的目标检测方法,包括:
步骤S11,读入局部图像区域的像素并计算该局部图像区域内的局部积分图像,所述局部图像区域的尺寸大于等于子窗口的尺寸,所述子窗口为目标检测中能检测出目标的最小的矩形区域;
步骤S12,采用所述局部积分图像计算所述局部图像区域内各子窗口的矩形特征,并根据所述各子窗口的矩形特征在各子窗口中进行目标检测;
步骤S13,更新所述局部图像区域,对于更新后的局部图像区域重复所述步骤S11至S12,直至对整幅图像完成目标检测。
可选地,在读入局部图像区域的像素并计算该局部图像区域内的局部积分图像时,还一并读入更新后的局部图像区域中新增的像素区域并计算该新增的像素区域在更新后的局部图像区域中的局部积分图像,在更新所述局部图像区域时,根据更新前的局部图像区域内的局部积分图像以及更新后的局部图像区域中新增的像素区域的局部积分图像计算更新后的局部图像区域内的局部积分图像。
可选地,所述局部图像区域的宽度为swg_w,高度为swg_h,按照如下公式计算更新后的局部图像区域的局部积分图像:
reg_lii[j][i]=reg_lii[j][i+M]-reg_lii[j][M-1];
i=0,1,2,…swg_w-1-M;j=0,1,2…swg_h-1;
reg_lii[j][i1+swg_w-M]=reg_upd[j][i1];i1=0,1,…M-1;j=0,1,2,…swg_h-1;
其中,reg_lii为存储所述局部图像区域的局部积分图像的数组,M为预设的数值,reg_upd为存储更新后的局部图像区域中新增的像素区域的局部积分图像的数组,reg_upd按照如下公式计算:
reg_upd[j][i]=s[j][i]+S[j];j=0;i=0,1…M-1;
reg_upd[j][i]=s[j][i]+reg_upd[j-1][i]+S[j];j=1,2,…swg_h-1;i=0,1,…M-1;
其中,S[j]采用如下公式计算:
S[j]=reg_lii[j][swg_w-1]-reg_lii[M-1],j=0;
S[j]=reg_lii[j][swg_w-1]-reg_lii[j-1][swg_w-1]
-(reg_lii[j][M-1]-reg_lii[j-1][M-1]),j=1,2,…swg_h-1;
s[j][i]采用如下公式计算:
其中,p[x]是第j行新增的像素点。
可选地,所述M预设为一次读取操作中读入的像素数量。
可选地,所述目标检测方法采用流水线方式进行,划分为两个流水阶段,分别为:
读入更新后的局部图像区域中新增的像素区域并计算该新增的像素区域在更新后的局部图像区域中的局部积分图像;
采用更新前的局部积分图像计算所述矩形特征并根据该矩形特征进行目标检测,以及采用所述新增的像素区域的局部积分图像计算更新后的局部图像区域的局部积分图像。
本发明还提供了一种基于局部积分图像处理的目标检测装置,包括:
局部积分图像计算模块,读入局部图像区域的像素并计算该局部图像区域内的局部积分图像,所述局部图像区域的尺寸大于等于子窗口的尺寸,所述子窗口为目标检测中能检测出目标的最小的矩形区域;
矩形特征计算及检测模块,采用所述局部积分图像计算所述局部图像区域内各子窗口的矩形特征,并根据所述各子窗口的矩形特征在各子窗口中进行目标检测;
计算控制模块,控制所述局部积分图像计算模块更新所述局部图像区域并计算局部积分图像,以及控制所述矩形特征计算及检测模块计算矩形特征并进行目标检测,直至对整幅图像完成目标检测。
可选地,所述局部积分图像计算模块包括:
装载及计算子模块,读入所述局部图像区域的像素并计算该局部图像区域内的局部积分图像,还一并读入更新后的局部图像区域中新增的像素区域并计算该新增的像素区域在更新后的局部图像区域中的局部积分图像,所述更新前的局部图像区域内的局部积分图像和新增的像素区域的局部积分图像存储于积分图像寄存器阵列中;
更新子模块,根据更新前的局部图像区域内的局部积分图像以及更新后的局部图像区域中新增的像素区域的局部积分图像计算更新后的局部图像区域内的局部积分图像,并以更新后的局部图像区域内的局部积分图像更新所述积分图像寄存器阵列中的更新前的局部图像区域内的局部积分图像。
可选地,所述局部图像区域的宽度为swg_w,高度为swg_h,所述更新子模块按照如下公式计算更新后的局部图像区域的局部积分图像:
reg_lii[j][i]=reg_lii[j][i+M]-reg_lii[j][M-1];
i=0,1,2,…swg_w-1-M;j=0,1,2,…swg_h-1;
reg_lii[j][i1+swg_w-M]=reg_upd[j][i1];i1=0,1,…M-1;j=0,1,2…swg_h-1;
其中,reg_lii为存储所述局部图像区域的局部积分图像的数组,M为预设的数值,reg_upd为存储更新后的局部图像区域中新增的像素区域的局部积分图像的数组,所述装载及计算子模块按照如下公式计算reg_upd:
reg_upd[j][i]=s[j][i]+S[j];j=0;i=0,1,…M-1;
reg_upd[j][i]=s[j][i]+reg_upd[j-1][i]+S[j];j=1,2,…swg_h-1;i=0,1,…M-1;
其中,S[j]采用如下公式计算:
S[j]=reg_lii[j][swg_w-1]-reg_lii[M-1],j=0;
S[j]=reg_lii[j][swg_w-1]-reg_lii[j-1][swg_w-1]
-(reg_lii[j][M-1]-reg_lii[j-1][M-1]),j=1,2,…swg_h-1;
s[j][i]采用如下公式计算:
其中,p[x]是第j行新增的像素点。
可选地,所述M预设为一次读取操作中读入的像素数量。
可选地,所述计算控制模块将所述装载及计算子模块设置为一流水阶段,将所述矩形特征计算及检测模块和更新子模块设置为另一流水阶段,并控制两个流水阶段采用流水线方式并行工作。
可选地,所述目标检测装置还包括:
平方积分图像计算模块,读入所述局部图像区域的像素的平方值并计算得到该局部图像区域内的局部平方积分图像。
本发明还提供了一种基于局部积分图像处理的目标检测系统,包括:
上述任一项所述的基于局部积分图像处理的目标检测装置;
与所述目标检测装置相连并对其进行配置的主控处理器;
与所述主控处理器和目标检测装置相连的外部存储器,所述目标检测装置从所述外部存储器读入像素。
与现有技术相比,本发明具有以下优点:
本发明实施例利用局部积分图像,将计算积分图像的累加操作限制在一个远远小于整幅图像的大小的尺寸上,从而限制了用于表示积分图像像素的数据位数,节省存储积分图像的片内SRAM的资源。
此外,本发明实施例局部积分图像的计算和局部图像区域中的目标检测是流水进行的,实现相邻图像区域的并行处理,提高目标检测速度。
附图说明
图1a是Haar矩形特征中的边缘特征;
图1b是Haar矩形特征中的线性特征;
图1c是Haar矩形特征中的中心特征;
图2是现有技术中积分图像的一种迭代计算过程的示意图;
图3是局部积分图像具有与位置无关的特性的示意图;
图4是本发明实施例的基于局部积分图像处理的目标检测方法的流程示意图;
图5是本发明实施例中的子窗口、子窗口组以及核心区域的位置关系示意图;
图6是本发明实施例中局部积分图像的更新过程示意图;
图7是本发明实施例中积分像素数据的计算过程的示意图;
图8是本发明实施例的基于局部积分图像处理的目标检测装置的结构框图;
图9示出了本发明实施例中基于局部积分图像的目标检测的流水处理过程;
图10是本发明实施例的基于局部积分图像处理的目标检测系统的结构框图;
图11是图10所示目标检测系统的工作流程示意图。
具体实施方式
下面结合具体实施例和附图对本发明作进一步说明,但不应以此限制本发明的保护范围。
从积分图像的定义可知,积分图像的像素值为相对值,对于计算某一个矩形的特征值,需要4个顶点的积分像素值通过线性计算得到。根据积分像素的定义可知,其矩形特征的特征值与参与计算积分图像的图像区域的位置无关。如图3所示,不论是在ABCD矩形区域中计算积分图像,还是在A’B’C’D’矩形区域中计算积分图像,矩形EFGH的特征值是不变的,所不同的是其4个端点的积分像素值,以及表示这些积分像素值所需的数据位数。因此,缩小参与计算积分图像的图像区域,不影响该图像区域内矩形特征的特征值计算,同时可减少表示积分图像像素的数据位数,以及存储该区域积分图像所需的存储空间。取图像画面的局部区域来计算该区域的积分图像,定义为局部积分图像。根据上述分析,利用局部积分图像计算该图像区域内的矩形特征所得到的特征值与在整幅图像的积分图像中同一区域内的同一矩形特征的特征值是一致的。
图4示出了本实施例的基于局部积分图像处理的目标检测方法的流程示意图,包括:
步骤S11,读入局部图像区域的像素并计算该局部图像区域内的局部积分图像,所述局部图像区域的尺寸大于等于子窗口(sub-window,简称sw)的尺寸,所述子窗口为目标检测中能检测出目标的最小的矩形区域;
步骤S12,采用所述局部积分图像计算所述局部图像区域内各子窗口的矩形特征,并根据所述各子窗口的矩形特征在各子窗口中进行目标检测;
步骤S13,更新所述局部图像区域,对于更新后的局部图像区域重复所述步骤S11至S12,直至对整幅图像完成目标检测。
本实施例中的目标检测方法具体以人脸检测为例来进行说明,但是本领域技术人员应当理解,本实施例的技术方案也可以扩展至人脸检测之外的其他目标检测过程。
在人脸检测中,子窗口可以是人脸检测中可能检出人脸的最小的矩形区域,又称作检测窗口。在检测算法中,通过设定其大小,过滤掉小于其大小的图像区域中的人脸。通常的检测算法以子窗口大小为最小处理单位,通过图像中移动子窗口的位置,检测该位置的子窗口区域中是否包括人脸。在本文所实现的图像缩放的实现结构中,对于利用不同缩放因子得到的待检测图像,子窗口的大小是固定的,例如可以是18×18,20×20等。
本实施例中的局部图像区域又称为子窗口组(sub-window group,简称为swg),是由图像中多个位置相邻的子窗口叠加构成的一个矩形区域。相邻子窗口中有大量的区域是重叠的,为了复用相邻区域重叠的积分图像像素数据,本实施例在计算和存储积分图像时,以swg为单位进行。swg矩形区域的大小由sw的大小和包含的sw的个数共同确定。参考图5,图5所示为sw在swg中的位置关系,定义所包含的sw的左上顶点所在的区域为swg的核心区域(core_range),其大小为swg_core_w×swg_core_h,每个sw的大小为sw_w×sw_h,则swg的矩形区域的大小为swg_w×swg_h=(swg_core_w+sw_w-1)×(swg_core_h+sw_h-1)。例如可以做如下设定:swg_core_w=8,swg_core_h=4,sw_w=sw_h=18,swg_w=25,swg_h=21。图像中swg的位置由其左上顶点的位置确定。在图像中的行方向存在多个swg,将这些swg称为swg行。图5中矩形框51为一个SWG,其中涵盖32个SW50,左上角矩形区域52为SW的左上顶点位置。
采用局部积分图像,可将计算积分图像的累加操作限制在一个远远小于整幅图像的局部图像区域(即子窗口组)内,从而减少了用于表示积分图像像素的数据位数,节省存储积分图像的片内SRAM的资源,而该局部图像区域的尺寸大于等于子窗口的尺寸,因而能够保证目标检测过程的执行。
局部积分图像的另一个作用是,计算积分图像的过程不是一次性对整幅图像计算完成,而是分阶段进行。当得到某局部图像区域的积分图像后,对该局部图像区域中的子窗口进行矩形特征计算以及人脸检测处理。当处理完该局部区域后,更新局部积分图像,得到相邻的下一区域的局部积分图像,对下一局部图像区域中所包含的子窗口进行矩形特征计算和人脸检测处理。更新过程中可以处理累加扩散的问题,以确保表示积分图像像素的数据位数不变。如此循环,直到对整幅图像中的所有局部图像区域中的子窗口完成人脸检测处理,即局部积分图像的计算和局部图像区域中的人脸检测是交错进行的。
用于计算局部积分图像的局部图像区域的尺寸应当不小于子窗口的尺寸,为了实现垂直、水平方向相邻的子窗口间的数据复用,局部图像区域的尺寸可适当大于子窗口的尺寸,即采用子窗口组的形式。例如,对于20×20(即sw_w=20,sw_h=20)的子窗口,为了实现垂直方向4个相邻子窗口,水平方向8个相邻的子窗口之间的数据复用,所选取的局部图像区域的大小为27×23(即swg_w=27,swg_h=23),对应的局部积分图像的数据位数为8+lg(27×23)=18。
采用寄存器组存储上述积分图像时,所需的寄存器位数为27×23×18=11178bit。reg_lii[j][i],i=0,1,…26,j=0,1,…22表示用于存储局部积分图像的寄存器组,该寄存器组内共可以包括27×23个18bit的寄存器。根据该寄存器组内存储的局部积分图像,可以计算各子窗口的矩形特征,并根据计算所得的矩形特征在相应的子窗口中进行人脸检测,直至对当前所选的局部图像区域中的每一子窗口都完成检测过程,之后,更新局部图像区域的范围,继续进行以上操作。
作为一个优选的实施例,为了有效利用更新前的局部图像区域的局部积分图像,本实施例在读入并计算当前局部图像区域的局部积分图像时,还一并读入更新后的局部图像区域中新增的像素区域,并计算该新增的像素区域在更新后的局部图像区域中的局部积分图像。也即,确定更新后的局部图像区域相对于当前的(即更新前的)局部图像区域所需要新引入的像素趋于,将这些像素区域读入并计算其局部积分图像。之后,可以利用更新前的局部图像区域内的局部积分图像以及更新后的局部图像区域中新增的像素区域的局部积分图像来计算更新后的局部图像区域内的局部积分图像。
例如,继续上述的示例,reg_upd[j][i],i=0,1,…M-1,j=0,1,…22表示用于存储更新局部积分图像的像素的寄存器组(或数组),该寄存器组中包括M×23个18bit的寄存器,更新计算过程如图5所示。其中,M为预设的数值,优选为一次读取操作中读入的像素的数量,本实施例中M的数值选为8。更加具体地,局部积分图像的更新过程由公式(9)、(10)定义。
reg_lii[j][i]=reg_lii[j][i+8]-reg_lii[j][7];i=0,1,2,…18;j=0,1,2,…22; (9)
reg_lii[j][i1+19]=reg_upd[j][i1];i1=0,1,…7;j=0,1,2,…22; (10)
公式(9)中,所减去的reg_lii[j][7]表示的是被移出更新后的局部图像区域的像素的积分像素值,以确保更新后的局部积分图像中的像素值只由更新后的局部图像区域中的像素计算得到。
其中,reg_upd[j][i]的计算公式参见以下的公式(11):
reg_upd[j][i]=s[j][i]+S[j];j=0;i=0,1,…7; (11)
reg_upd[j][i]=s[j][i]+reg_upd[j-1][i]+S[j];j=1,2,…22;i=0,1,…7;
其中S[j]为第j行的像素和,其值由以下公式(12)得到。
S[j]=reg_lii[j][26]-reg_lii[7],j=0
S[j]=reg_lii[j][26]-reg_lii[j-1][26] (12)
-(reg_lii[j][7]-reg_lii[j-1][7]),j=1,2,…22
s[j][i]为新增的图像像素的局部积分图像,设第j行新增的8个像素点为p[0],p[1],…p[7]则
图7所示为其计算过程。
此外,本实施例中局部积分图像的计算与局部图像区域中的目标检测是流水进行的,更加详细而言,本实施例的目标检测方法划分为2个流水阶段,分别为:读入更新后的局部图像区域中新增的像素区域并计算该新增的像素区域在更新后的局部图像区域中的局部积分图像;采用更新前的局部积分图像计算所述矩形特征并根据该矩形特征进行目标检测,以及采用所述新增的像素区域的局部积分图像计算更新后的局部图像区域的据图积分图像。采用流水方式,能够实现相邻的局部图像区域(即子窗口组)的并行处理,提高目标检测速度。
图8示出了本实施例的基于局部积分图像处理的目标检测装置的结构框图,包括:DMA接口80、局部积分图像计算模块81、矩形特征计算及检测模块82、计算控制模块83、积分图像寄存器阵列84、平方积分图像计算模块85、平方积分图像寄存器阵列86、配置模块87。
其中,DMA接口80可以通过总线从外部存储器读入待检测图像中的像素,并将其传输至局部积分图像计算模块81。本实施例中,DMA接口80优选采用2D地址模式,读数据的基本单元例如可以为21x 64bit的块。
局部积分图像计算模块81读入局部图像区域的像素并计算该局部图像区域内的局部积分图像。与先前描述相同,局部图像区域的尺寸大于等于子窗口的尺寸,所述子窗口为目标检测中能检测出目标的最小的矩形区域。局部积分图像计算模块81计算所得的局部积分图像可以存储在积分图像寄存器阵列84中。
矩形特征计算及检测模块82采用局部积分图像计算模块81计算所得的局部积分图像计算局部图像区域内各子窗口的矩形特征,并根据各子窗口的矩形特征在各子窗口中进行目标检测。
计算控制模块83控制局部积分图像计算模块81更新局部图像区域并计算局部积分图像,以及控制矩形特征计算及检测模块82计算矩形特征并进行目标检测,直至对整幅图像完成目标检测。
平方积分图像计算模块85与局部积分图像计算模块81类似,区别在于输入的数值为像素值的平方,得到的结果为局部平方积分图像,该局部平方积分图像可以存储至平方积分图像寄存器阵列86中。
配置模块87可以连接至外围总线,外部的主控制器可以通过该外围总线和配置模块87对整个目标检测装置进行配置,例如配置子窗口、子窗口组的尺寸等。
本实施例中,局部积分图像计算模块81包括:装载及计算子模块,读入所述局部图像区域的像素并计算该局部图像区域内的局部积分图像,还一并读入更新后的局部图像区域中新增的像素区域并计算该新增的像素区域在更新后的局部图像区域中的局部积分图像,更新前的局部图像区域内的局部积分图像和新增的像素的局部积分图像存储于积分图像寄存器阵列中;更新子模块,根据更新前的局部图像区域内的局部积分图像以及更新后的局部图像区域中新增的像素区域的局部积分图像计算更新后的局部图像区域内的局部积分图像,并以更新后的局部图像区域内的局部积分图像更新所述积分图像寄存器阵列中的更新前的局部图像区域内的局部积分图像。其中,装载及计算子模块和更新子模块的具体计算方式请参见前述公式(9)至公式(13)以及相关描述,这里不再赘述。
本实施例的目标检测装置中用2D寄存器阵列存储局部积分图像,能够方便后续的矩形特征计算及检测模块82在一个周期内得到多个所需的参考点的局部积分图像值,用于计算对应矩形特征值。需要说明的是,待检测的图像数据可以是原始图像数据,也可以是缩放后的图像数据,取决于目标检测装置当前运行的状态。
局部积分图像计算模块81可以同时计算8个像素点的局部积分像素值,输入包括为64bit的8个像素数据、上一行的8个积分像素数据、当前行的部分累加数据,输出为并行的8个积分像素值。采用流水计算结构,在得到装载数据的同时进行,可处理连续的输入像素,得到连续的积分像素数据输出。
计算控制模块83用于局部积分图像计算时序的控制,包括每一行起始位置的像素数据装载,其他位置的像素数据装载;提供给局部积分图像计算模块81的数据的选择控制。积分图像寄存器阵列84可以包含用于存储局部积分图像像素数据的寄存器组reg_lii和用于存储部分更新的积分图像像素数据的寄存器组reg_upd,实现reg_lii和reg_upd的读、写和更新控制,并输出局部积分图像像素数据到后续的矩形特征计算及检测模块83。类似地,平方积分图像计算模块85包含用于存储平方积分图像像素数据的寄存器组reg_sq_lii和用于存储部分更新的平方积分图像像素数据的寄存器组reg_sq_upd,实现reg_sq_lii和reg_sq_upd的读、写和更新控制,并输出积分图像像素数据到后续的特征值计算模块。
图9所示为该目标检测装置的流水工作过程,该过程分为两级流水操作,装载新增的部分子窗口组数据和计算新增部分局部积分图像可同时进行,计算结果存储在reg_upd中。矩形特征值计算与目标检测以及更新局部积分图像作为独立的一个流水级,流水线的长度取决于两者中的长者。两级流水的时间都是不确定的,其中装载数据所需的时钟周期受制于总线的传输效率和负荷情况。目标检测的周期取决于子窗口中的图像的内容,需要多少个级联级目标检测才能决定结束该子窗口的处理。每次完成一个子窗口组的检测后,需要固定的时间来更新局部积分图像寄存器阵列,得到下一子窗口组所需的局部积分图像。
参考图9,具体地,在90处,装载初始化子窗口组;在91处,计算局部积分图像;在流水周期Ⅰ中的92处,装载下一子窗口组新增部分数据,即第i个子窗口组相对于第i-1个子窗口组新增的部分数据;在流水周期Ⅰ中的93处,计算新增部分积分图像,即计算第i个子窗口组新增部分的局部积分图像;在流水周期Ⅰ中的94处,矩形特征值计算与级联检测,此处是针对第i-1个子窗口组进行的;在流水周期Ⅰ中的95处,更新局部积分图像,即采用第i个子窗口组新增部分的局部积分图像对第i-1个子窗口组的局部积分图像进行更新,得到第i个子窗口组的局部积分图像;在流水周期Ⅱ中的92处,装载下一子窗口组新增部分数据,即第i+1个子窗口组相对于第i个子窗口组新增的部分数据;在流水周期Ⅱ中的93处,计算新增部分积分图像,即计算第i+1个子窗口组新增部分的局部积分图像;在流水周期Ⅱ中的94处,矩形特征值计算与级联检测,此处是针对第i个子窗口组进行的;在流水周期Ⅱ中的95处,更新局部积分图像,即采用第i+1个子窗口组新增部分的局部积分图像对第i个子窗口组的局部积分图像进行更新,得到第i+1个子窗口组的局部积分图像;以此类推。其中,90和91为初始的准备阶段,92和93作为流水线的第一阶段运行,94和95作为流水线的第二阶段运行。两个阶段不断地按照流水线的方式执行,有效地提高了目标检测效率。换言之,装载及计算子模块设置为一个流水阶段,矩形特征计算及检测模块83和更新子模块为另一个流水阶段,二者采用流水线方式并行工作。
图10示出了本实施例的目标检测系统的结构框图,包括:目标检测装置101、主控处理器(CPU)102、外部存储器103。其中目标检测装置101为是图8所示的目标检测装置;主控处理器102可以是ARM等处理器,例如可以通过APB总线与目标检测装置101相连;外部存储器103可以是DRAM等存储器,例如可以通过AXI总线与主控处理器102和目标检测装置101相连,目标检测装置101的像素数据来自于外部存储器103。
图11示出了图10所示目标检测系统的工作流程,包括:
在111处,系统启动;
在112处,目标检测装置初始化;
在113处,判断帧数据是否准备好,如果未准备好,则返回113继续判断,如果准备好,则前进至114;
在114处,目标检测装置启动一帧的检测,具体检测方法请参见前述目标检测装置以及目标检测方法的描述;
在115处,输出检测结果,并返回113,进行下一帧图像的检测。
本发明虽然以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以做出可能的变动和修改,因此本发明的保护范围应当以本发明权利要求所界定的范围为准。
Claims (12)
1.一种基于局部积分图像处理的目标检测方法,其特征在于,包括:
步骤S11,读入局部图像区域的像素并计算该局部图像区域内的局部积分图像,所述局部图像区域的尺寸大于等于子窗口的尺寸,所述子窗口为目标检测中能检测出目标的最小的矩形区域;
步骤S12,采用所述局部积分图像计算所述局部图像区域内各子窗口的矩形特征,并根据所述各子窗口的矩形特征在各子窗口中进行目标检测;
步骤S13,更新所述局部图像区域,对于更新后的局部图像区域重复所述步骤S11至S12,直至对整幅图像完成目标检测。
2.根据权利要求1所述的基于局部积分图像处理的目标检测方法,其特征在于,在读入局部图像区域的像素并计算该局部图像区域内的局部积分图像时,还一并读入更新后的局部图像区域中新增的像素区域并计算该新增的像素区域在更新后的局部图像区域中的局部积分图像,在更新所述局部图像区域时,根据更新前的局部图像区域内的局部积分图像以及更新后的局部图像区域中新增的像素区域的局部积分图像计算更新后的局部图像区域内的局部积分图像。
3.根据权利要求2所述的基于局部积分图像处理的目标检测方法,其特征在于,所述局部图像区域的宽度为swg_w,高度为swg_h,按照如下公式计算更新后的局部图像区域的局部积分图像:
reg_lii[j][i]=reg_lii[j][i+M]-reg_lii[j][M-1];
i=0,1,2,…swg_w-1-M;j=0,1,2…swg_h-1;
reg_lii[j][i1+swg_w-M]=reg_upd[j][i1];i1=0,1,…M-1;j=0,1,2…swg_h-1;
其中,reg_lii为存储所述局部图像区域的局部积分图像的数组,M为预设的数值,reg_upd为存储更新后的局部图像区域中新增的像素区域的局部积分图像的数组,reg_upd按照如下公式计算:
reg_upd[j][i]=s[j][i]+S[j];j=0;i=0,1,…M-1;
reg_upd[j][i]=s[j][i]+reg_upd[j-1][i]+S[j];j=1,2,…swg_h-1;i=0,1…M-1;其中,S[j]采用如下公式计算:
S[j]=reg_lii[j][swg_w-1]-reg_lii[M-1],j=0;
S[j]=reg_lii[j][swg_w-1]-reg_lii[j-1][swg_w-1]
-(reg_lii[j][M-1]-reg_lii[j-1][M-1]),j=1,2,…swg_h-1;
s[j][i]采用如下公式计算:
其中,p[x]是第j行新增的像素点。
4.根据权利要求3所述的基于局部积分图像处理的目标检测方法,其特征在于,所述M预设为一次读取操作中读入的像素数量。
5.根据权利要求2所述的基于局部积分图像处理的目标检测方法,其特征在于,所述目标检测方法采用流水线方式进行,划分为两个流水阶段,分别为:
读入更新后的局部图像区域中新增的像素区域并计算该新增的像素区域在更新后的局部图像区域中的局部积分图像;
采用更新前的局部积分图像计算所述矩形特征并根据该矩形特征进行目标检测,以及采用所述新增的像素区域的局部积分图像计算更新后的局部图像区域的局部积分图像。
6.一种基于局部积分图像处理的目标检测装置,其特征在于,包括:
局部积分图像计算模块,读入局部图像区域的像素并计算该局部图像区域内的局部积分图像,所述局部图像区域的尺寸大于等于子窗口的尺寸,所述子窗口为目标检测中能检测出目标的最小的矩形区域;
矩形特征计算及检测模块,采用所述局部积分图像计算所述局部图像区域内各子窗口的矩形特征,并根据所述各子窗口的矩形特征在各子窗口中进行目标检测;
计算控制模块,控制所述局部积分图像计算模块更新所述局部图像区域并计算局部积分图像,以及控制所述矩形特征计算及检测模块计算矩形特征并进行目标检测,直至对整幅图像完成目标检测。
7.根据权利要求6所述的基于局部积分图像处理的目标检测装置,其特征在于,所述局部积分图像计算模块包括:
装载及计算子模块,读入所述局部图像区域的像素并计算该局部图像区域内的局部积分图像,还一并读入更新后的局部图像区域中新增的像素区域并计算该新增的像素区域在更新后的局部图像区域中的局部积分图像,所述更新前的局部图像区域内的局部积分图像和新增的像素区域的局部积分图像存储于积分图像寄存器阵列中;
更新子模块,根据更新前的局部图像区域内的局部积分图像以及更新后的局部图像区域中新增的像素区域的局部积分图像计算更新后的局部图像区域内的局部积分图像,并以更新后的局部图像区域内的局部积分图像更新所述积分图像寄存器阵列中的更新前的局部图像区域内的局部积分图像。
8.根据权利要求7所述的基于局部积分图像处理的目标检测装置,其特征在于,所述局部图像区域的宽度为swg_w,高度为swg_h,所述更新子模块按照如下公式计算更新后的局部图像区域的局部积分图像:
reg_lii[j][i]=reg_lii[j][i+M]-reg_lii[j][M-1];
i=0,1,2,…swg_w-1-M;j=0,1,2,…swg_h-1;
reg_lii[j][i1+swg_w-M]=reg_upd[j][i1];i1=0,1,…M-1;j=0,1,2…swg_h-1;
其中,reg_lii为存储所述局部图像区域的局部积分图像的数组,M为预设的数值,reg_upd为存储更新后的局部图像区域中新增的像素区域的局部积分图像的数组,所述装载及计算子模块按照如下公式计算reg_upd:
reg_upd[j][i]=s[j][i]+S[j];j=0;i=0,1…M-1;
reg_upd[j][i]=s[j][i]+reg_upd[j-1][i]+S[j];j=1,2,…swg_h-1;i=0,1…M-1;
其中,S[j]采用如下公式计算:
S[j]=reg_lii[j][swg_w-1]-reg_lii[M-1],j=0;
S[j]=reg_lii[j][swg_w-1]-reg_lii[j-1][swg_w-1]
-(reg_lii[j][M-1]-reg_lii[j-1][M-1]),j=1,2,…swg_h-1;
s[j][i]采用如下公式计算:
其中,p[x]是第j行新增的像素点。
9.根据权利要求8所述的基于局部积分图像处理的目标检测装置,其特征在于,所述M预设为一次读取操作中读入的像素数量。
10.根据权利要求7所述的基于局部积分图像处理的目标检测装置,其特征在于,所述计算控制模块将所述装载及计算子模块设置为一流水阶段,将所述矩形特征计算及检测模块和更新子模块设置为另一流水阶段,并控制两个流水阶段采用流水线方式并行工作。
11.根据权利要求6所述的基于局部积分图像处理的目标检测装置,其特征在于,还包括:
平方积分图像计算模块,读入所述局部图像区域的像素的平方值并计算得到该局部图像区域内的局部平方积分图像。
12.一种基于局部积分图像处理的目标检测系统,其特征在于,包括:
权利要求6至11中任一项所述的基于局部积分图像处理的目标检测装置;
与所述目标检测装置相连并对其进行配置的主控处理器;
与所述主控处理器和目标检测装置相连的外部存储器,所述目标检测装置从所述外部存储器读入像素。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210268081.4A CN102855484B (zh) | 2012-07-30 | 2012-07-30 | 基于局部积分图像处理的目标检测方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210268081.4A CN102855484B (zh) | 2012-07-30 | 2012-07-30 | 基于局部积分图像处理的目标检测方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102855484A true CN102855484A (zh) | 2013-01-02 |
CN102855484B CN102855484B (zh) | 2015-11-04 |
Family
ID=47402061
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210268081.4A Active CN102855484B (zh) | 2012-07-30 | 2012-07-30 | 基于局部积分图像处理的目标检测方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102855484B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103236034A (zh) * | 2013-04-16 | 2013-08-07 | 重庆绿色智能技术研究院 | 基于lsi电路的积分图快速生成方法和装置 |
CN103530641A (zh) * | 2013-09-30 | 2014-01-22 | 西安空间无线电技术研究所 | 一种高速实时图像共生矩阵角二阶距的实现方法 |
CN103700087A (zh) * | 2013-11-28 | 2014-04-02 | 深圳市智美达科技有限公司 | 移动侦测方法和装置 |
CN105205476A (zh) * | 2015-10-21 | 2015-12-30 | 上海红神信息技术有限公司 | 一种基于lbp特征的人脸识别硬件架构 |
CN109241969A (zh) * | 2018-09-26 | 2019-01-18 | 旺微科技(上海)有限公司 | 一种多目标检测方法及检测系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101546375A (zh) * | 2009-04-30 | 2009-09-30 | 上海交通大学 | 特征简化的人脸检测方法 |
CN101697199A (zh) * | 2009-08-11 | 2010-04-21 | 北京盈科成章科技有限公司 | 头面部动作检测方法及应用该方法操控计算机的助残系统 |
-
2012
- 2012-07-30 CN CN201210268081.4A patent/CN102855484B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101546375A (zh) * | 2009-04-30 | 2009-09-30 | 上海交通大学 | 特征简化的人脸检测方法 |
CN101697199A (zh) * | 2009-08-11 | 2010-04-21 | 北京盈科成章科技有限公司 | 头面部动作检测方法及应用该方法操控计算机的助残系统 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103236034A (zh) * | 2013-04-16 | 2013-08-07 | 重庆绿色智能技术研究院 | 基于lsi电路的积分图快速生成方法和装置 |
CN103236034B (zh) * | 2013-04-16 | 2016-03-30 | 中国科学院重庆绿色智能技术研究院 | 基于lsi电路的积分图快速生成方法和装置 |
CN103530641A (zh) * | 2013-09-30 | 2014-01-22 | 西安空间无线电技术研究所 | 一种高速实时图像共生矩阵角二阶距的实现方法 |
CN103530641B (zh) * | 2013-09-30 | 2016-08-17 | 西安空间无线电技术研究所 | 一种高速实时图像共生矩阵角二阶距的实现方法 |
CN103700087A (zh) * | 2013-11-28 | 2014-04-02 | 深圳市智美达科技有限公司 | 移动侦测方法和装置 |
CN103700087B (zh) * | 2013-11-28 | 2016-09-28 | 深圳市智美达科技股份有限公司 | 移动侦测方法和装置 |
CN105205476A (zh) * | 2015-10-21 | 2015-12-30 | 上海红神信息技术有限公司 | 一种基于lbp特征的人脸识别硬件架构 |
CN105205476B (zh) * | 2015-10-21 | 2018-04-17 | 上海红神信息技术有限公司 | 一种基于lbp特征的人脸识别硬件架构 |
CN109241969A (zh) * | 2018-09-26 | 2019-01-18 | 旺微科技(上海)有限公司 | 一种多目标检测方法及检测系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102855484B (zh) | 2015-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11113836B2 (en) | Object detection method, device, apparatus and computer-readable storage medium | |
CN101178770B (zh) | 一种图像检测方法及装置 | |
CN108345827B (zh) | 识别文档方向的方法、系统和神经网络 | |
CN102855484B (zh) | 基于局部积分图像处理的目标检测方法、装置及系统 | |
Xiong et al. | AI-NET: Attention inception neural networks for hyperspectral image classification | |
US7983480B2 (en) | Two-level scanning for memory saving in image detection systems | |
CN100561505C (zh) | 一种图像检测方法及装置 | |
Hiromoto et al. | Hardware architecture for high-accuracy real-time pedestrian detection with CoHOG features | |
US20090226047A1 (en) | Apparatus and Method of Processing Image and Human Face Detection System using the smae | |
CN102110284B (zh) | 信息处理设备及信息处理方法 | |
CN100561501C (zh) | 一种图像检测方法及装置 | |
Blair et al. | Characterizing a heterogeneous system for person detection in video using histograms of oriented gradients: Power versus speed versus accuracy | |
CN111814905A (zh) | 目标检测方法、装置、计算机设备和存储介质 | |
Hirabayashi et al. | GPU implementations of object detection using HOG features and deformable models | |
TW201224955A (en) | System and method for face detection using face region location and size predictions and computer program product thereof | |
Gao et al. | Face detection algorithm based on improved TinyYOLOv3 and attention mechanism | |
CN101271513A (zh) | 一种指纹识别系统芯片及其实现方法 | |
CN113343989A (zh) | 一种基于前景选择域自适应的目标检测方法及系统 | |
CN110232381B (zh) | 车牌分割方法、装置、计算机设备及计算机可读存储介质 | |
Takagi et al. | A real-time scalable object detection system using low-power HOG accelerator VLSI | |
CN103455996A (zh) | 边缘提取方法和设备 | |
Akpojotor et al. | Automatic license plate recognition on microprocessors and custom computing platforms: A review | |
CN107680246B (zh) | 一种纸币图案中的曲线边界定位方法及设备 | |
US9104450B2 (en) | Graphical user interface component classification | |
Liang et al. | The design of objects bounding boxes non-maximum suppression and visualization module based on FPGA |
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 |