一种降低人脸检测存储量的方法及设备的制作方法

文档序号:6599291阅读:353来源:国知局
专利名称:一种降低人脸检测存储量的方法及设备的制作方法
技术领域
本发明涉及一种降低人脸检测存储量的方法及设备。
背景技术
随着视频监控的推广,人脸检测技术而变得越来越重要。在各种人脸检测技术中, 采用AdaBoost自适应增强算法的人脸检测技术准确率较高,并且已经被硬件芯片实现。该技术一般采用CCD或CMOS摄像机输出的8比特位宽的灰度图像作为输入。图1是基于AdaBoost自适应增强算法的人脸检测技术中所采用的微特征的示例图。如图1所示,在该技术的人脸检测处理过程中,这种技术采用了很多典型的微特征。例如,最左边的微特征表示一种模板。在处理中,需要先求出白块对应区域内的像素和,再求出黑块对应区域内的像素和,然后将两者相减。在人脸与非人脸图片的相同位置上,计算得出的值的大小是不一样的,因此这些微特征可以用来区分人脸和非人脸。由此可见,在人脸检测中,大量运算涉及到求某个区域内的像素和。为了加速这一计算过程,需要一个专门用于计算积分图像和平方积分图像的环节,而这个环节占用的存储量比较多。图2是计算积分图像和平方积分图像的示意图。如图2所示,图像被分为A、B、C、D四个区域,每个区域右下角的点分别是1、2、3、 4点,图像右下角的坐标为(X,y)。在坐标点(X,y),积分图像的取值是由所示图像左上角和右下角之间构成的矩形区域内所有点的灰度值的总和。例如,在1点的值表示区域A内各点的灰度值总和,简记为 Il ;在2点的值表示区域A+B内各点的灰度值总和,记为12 ;类似的,在3点的值记为13 ; 在4点的值记为14。于是,矩形区域D的灰度值总和可以表示为11+14-12-13。类似的,平方积分图像在1点的值表示区域A的各点灰度值平方的总和,简记为A, 在2点的值为A+B,在3点的值为A+C,在4点的值为A+B+C+D。于是,矩形区域D的灰度值平方的总和也可以由第1、2、3、4点的平方积分图像值简单得出。应当理解,一个像素点可表达的不同颜色数取决于比特每像素(bpp,bitper pixel),比如Sbpp代表每个像素点用8比特表示,即像素位宽为8比特。一般来说,可以将像素位宽称之为图像位宽。如果一幅图像宽为W像素,高为H像素,像素位宽为8比特;则在积分图像中, 某个像素点可能需要的最大位宽为8+10 (W*H),因此整个积分图像需要的存储量约为 (8+log2(ff*H))比特;同理,在平方积分图像中,某个像素点可能需要的最大位宽为 16+10 (W* H),因此整个平方积分图像需要的存储量约为(16+10 (W* H))比特。从上述公式可以看出,积分图像和平方积分图像所需的存储量与像素位宽有着很直接的关系,像素位宽过高会造成积分图像和平方积分图像所需要的存储量很大,从而增加硬件芯片的成本。

发明内容
本发明提供了一种能解决以上问题的降低人脸检测存储量的方法及设备。在第一方面,提供了一种降低人脸检测存储量的方法,包括降低待检测图像的像素位宽;采用误差扩散法将每个像素点的灰度值在降低像素位宽过程中所产生的误差扩散到相邻像素点上;对降低了像素位宽并进行了误差扩散的图像,求取其积分图像和平方积分图像;其中,积分图像所需存储量为(像素位宽+10 (W* H)) 比特,平方积分图像所需存储量为(像素位宽* 2+10 (W * H) ” W * H比特,W为图像宽度的像素数量,H为图像高度的像素数量。优选地,误差扩散法是将像素点的灰度值在降低像素位宽中所产生的误差扩散到所述像素点的右方、左下方、下方和右下方的四个相邻像素点上。优选地,误差扩散中所采用的误差分配比例为3 :3:5: 5,分别对应所述像素点的右方、左下方、下方和右下方的相邻像素点。优选地,像素位宽降低是将像素位宽从8比特降低到6比特.在第二方面,提供了一种降低人脸检测存储量的设备,包括降低待检测图像的像素位宽的模块;采用误差扩散法将每个像素点的灰度值在降低像素位宽过程中所产生的误差扩散到相邻像素点上的模块;对降低了像素位宽并进行了误差扩散的图像,求取其积分图像和平方积分图像的模块;其中,积分图像所需存储量为(像素位宽+10 (W* H)) *ff*H 比特,平方积分图像所需存储量为(像素位宽* 2+10 (W* H)) 比特,W为图像宽度的像素数量,H为图像高度的像素数量。本发明通过在人脸检测过程中降低待检图像的像素位宽,节省了硬件芯片中计算积分图像和平方积分图像时所需的存储空间,降低了芯片成本;并且对在像素位宽降低过程中产生的误差进行扩散,降低了对积分图像和平方积分图像的计算结果的影响,从而维持了图像的能量基本不变。


下面将参照附图对本发明的具体实施方案进行更详细的说明,在附图中图3是根据本发明一个实施例的降低人脸检测硬件存储量的方法示意图;以及图4是根据本发明一个实施例的误差扩散法的示意图。
具体实施例方式在本发明中,为了在人脸检测处理中降低计算积分图像和平方积分图像所需要的存储量,在进行所述计算时采用精度较低的图像。例如,将图像中每像素用6比特或5比特表示,降低了图像精度。图3是根据本发明一个实施例的降低人脸检测硬件存储量的方法示意图。如图3所示,首先降低待检测图像的像素位宽;然后,采用误差扩散法将将像素位宽中产生的误差扩散开去;最后,对降低了像素位宽并进行了误差扩散的图像,求取其积分图像和平方积分图像。应当指出,可以采用各种方法来降低图像的像素位宽。比如,可以将像素点的灰度值转换成期待像素位宽所对应的灰度值,从而降低像素位宽。
图4是根据本发明一个实施例的误差扩散法的示意图。例如,8比特位宽的图像,S卩256级灰度图像上有一个像素点,其灰度值是110(0 255)。如果要将这个像素点转换成6比特、即64级灰度的像素值,一种方法是将该像素值除以4。那么,转换后的灰度值为110/4 = 27. 5,保留整数位后就是27,可见在转换后存在 0.5的误差。为了使转换后的图像接近原始图像,需要用误差扩散法将转换过程中引入的误差扩散开去。所谓误差扩散,就是当像素深度降低时,将像素颜色的变化误差扩散开去。通过误差扩散,使得肉眼在观察图片的时候,相邻像素点的集合整体的误差变小,更贴近原始图像。如图4所示,当前一个8比特像素点的灰度值为P,变为6比特后其灰度值为P’, 则此过程中引入的误差d(相对于8比特灰度值)为d = P_4*P,(乘以4是因为P,是6比特值)该误差被乘以相应的权重之后,叠加到相邻的4个像素点上右方、左下方、下方、 右下方,其相应的权重为3/16、3/16、5/16、5/16。权重表示了所采用的误差扩散方案,即针对对应的相邻像素点的误差分配比例为3 3 5 5。应当理解,可以将误差扩散到相邻的更少和/或更多的像素点上,还可以在误差扩散中采用其他的误差分配比例,比如7 :3:5: 1之类的误差分配比例。例如,原来下方的8比特像素点的灰度值为Q,叠加误差之后,其灰度值Q’变为Q' = Q+d* 5/16依此类推,可以得出其他相邻像素点的灰度值。例如,在叠加误差之后,该像素点右方、左下方和右下方的相邻像素点的灰度值分别为Q+cT 3/16,Q+cT 3/16,Q+cT 5/16。通过这样的误差扩散,进而可以得到一幅宽、高与原始图像相同,像素位宽为6比特的图像。 然后,对像素位宽为6比特的图像计算其积分图像和平方积分图像。从上对积分图像和平方积分图像的计算可知,在降低像素位宽之前,积分图像的存储量为(8+10 (W* H)) *ff*H 比特,平方积分图像的存储量为(16+10 (W*H)) *W*H,在降低图像的像素位宽之后,积分图像的存储量降低到(6+log2(W*H)) 比特,平方积分图像的存储量降低到(12+10 (W *H)) 比特。由此可见,积分图像和平方积分图像所需存储量在像素位宽降低之后有了明显的降低。通过采用误差扩散法,使得图像的像素位宽降低对积分图像影响较小。因为在某个区域内,各像素点因为降低位宽而带来的误差一般都扩散到同一区域内相邻的像素点上。另外,相对于对积分图像的影响来说,采用误差扩散法对平方积分图像的影响稍大,但一般也可以忽略不计。采用误差扩散法来减低图像的像素位宽,可以保持图像的能量基本不变。这样,在基本不影响人脸检测算法的前提下,节省了硬件芯片保存积分图像和平方积分图像所需要的存储空间,降低芯片的成本。另外,图像的像素位宽降低之后,还可以对相应的运算单元(如乘法器、除法器等)做出简化。在其他例子中,也可以将8比特位宽的图像降低为5比特、4比特或其他位宽的图像。应当理解,根据具体应用场合,可以选取合适的位宽。
显而易见,在不偏离本发明的真实精神和范围的前提下,在此描述的本发明可以有许多变化。因此,所有对于本领域技术人员来说显而易见的改变,都应包括在本权利要求书所涵盖的范围之内。本发明所要求保护的范围仅由所述的权利要求书进行限定。
权利要求
1.一种降低人脸检测存储量的方法,包括 降低待检测图像的像素位宽;采用误差扩散法将每个像素点的灰度值在降低像素位宽过程中所产生的误差扩散到相邻像素点上;对降低了像素位宽并进行了误差扩散的图像,求取其积分图像和平方积分图像; 其中,积分图像所需存储量为(像素位宽+10 (W * H)) * W * H比特,平方积分图像所需存储量为(像素位宽* 2+10 (W * H)) * W * H比特,W为图像宽度的像素数量,H为图像高度的像素数量。
2.根据权利要求1所述的方法,其中,误差扩散法是将像素点的灰度值在降低像素位宽中所产生的误差扩散到所述像素点的右方、左下方、下方和右下方的四个相邻像素点上。
3.根据权利要求2所述的方法,其中,误差扩散中所采用的误差分配比例为 3:3:5: 5,分别对应所述像素点的右方、左下方、下方和右下方的相邻像素点。
4.根据权利要求1所述的方法,其中,像素位宽降低是将像素位宽从8比特降低到6比特。
5.一种降低人脸检测存储量的设备,包括 降低待检测图像的像素位宽的模块;采用误差扩散法将每个像素点的灰度值在降低像素位宽过程中所产生的误差扩散到相邻像素点上的模块;对降低了像素位宽并进行了误差扩散的图像,求取其积分图像和平方积分图像的模块;其中,积分图像所需存储量为(像素位宽+10 (W * H)) * W * H比特,平方积分图像所需存储量为(像素位宽* 2+10 (W * H)) * W * H比特,W为图像宽度的像素数量,H为图像高度的像素数量。
全文摘要
本发明涉及一种降低人脸检测存储量的方法和设备,其中,该方法包括降低待检测图像的像素位宽;采用误差扩散法将每个像素点的灰度值在降低像素位宽过程中所产生的误差扩散到相邻像素点上;对降低了像素位宽并进行了误差扩散的图像,求取其积分图像和平方积分图像;其中,积分图像所需存储量为(像素位宽+log2(W*H))*W*H比特,平方积分图像所需存储量为(像素位宽*2+log2(W*H))*W*H比特,W为图像宽度的像素数量,H为图像高度的像素数量。本发明通过降低图像的像素位宽并进行误差扩散,在不影响人脸检测算法的前提下,节省了硬件芯片中积分图像和平方积分图像所需的存储空间,降低了芯片成本。
文档编号G06T1/00GK102194203SQ20101012596
公开日2011年9月21日 申请日期2010年3月16日 优先权日2010年3月16日
发明者王浩 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1