CN111291698B - 密集人群场景人脸图像的高速识别方法及装置 - Google Patents
密集人群场景人脸图像的高速识别方法及装置 Download PDFInfo
- Publication number
- CN111291698B CN111291698B CN202010103071.XA CN202010103071A CN111291698B CN 111291698 B CN111291698 B CN 111291698B CN 202010103071 A CN202010103071 A CN 202010103071A CN 111291698 B CN111291698 B CN 111291698B
- Authority
- CN
- China
- Prior art keywords
- face
- cosine similarity
- library
- characteristic values
- images
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000004364 calculation method Methods 0.000 claims abstract description 57
- 239000013598 vector Substances 0.000 claims abstract description 21
- 238000001514 detection method Methods 0.000 claims abstract description 13
- 238000007667 floating Methods 0.000 claims description 19
- 238000012545 processing Methods 0.000 claims description 15
- 238000007493 shaping process Methods 0.000 claims description 12
- 229910052754 neon Inorganic materials 0.000 claims description 10
- GKAOGPIIYCISHV-UHFFFAOYSA-N neon atom Chemical compound [Ne] GKAOGPIIYCISHV-UHFFFAOYSA-N 0.000 claims description 10
- 238000010606 normalization Methods 0.000 claims description 9
- 238000012163 sequencing technique Methods 0.000 claims description 9
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 5
- 238000012546 transfer Methods 0.000 claims description 5
- 238000000605 extraction Methods 0.000 claims description 4
- 230000006870 function Effects 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- COCLLEMEIJQBAG-UHFFFAOYSA-N 8-methylnonyl 2-methylprop-2-enoate Chemical compound CC(C)CCCCCCCOC(=O)C(C)=C COCLLEMEIJQBAG-UHFFFAOYSA-N 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/52—Surveillance or monitoring of activities, e.g. for recognising suspicious objects
- G06V20/53—Recognition of crowd images, e.g. recognition of crowd congestion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
- G06V40/166—Detection; Localisation; Normalisation using acquisition arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种密集人群场景人脸图像的高速识别方法及装置,其中,该密集人群场景人脸图像的高速识别方法包括:获取抓拍的多个人脸图像数据;分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸图像特征值;将多个人脸图像的人脸特征值以单个人脸图像特征值数为单位分成两组,利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,以及利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,其中,人脸库中预存有人脸库特征值向量;输出N张相似度最高的人脸图片。使用本发明的方法,可以极大提高人脸比对速度,提高了产品的竞争力。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种密集人群场景人脸图像的高速识别方法、装置及可读存储介质。
背景技术
人脸图像识别是安防监控的重要课题,特别是对于密集人群场景中的人脸图像。目前,对于密集人群场景中的人脸图像识别通常采用普通CPU芯片来与人脸库中的所有图片进行比对,如此,会占用CPU芯片的资源,降低CPU芯片的处理效率,进而影响整个人脸图像的处理性能。
有鉴于此,有必要提出对目前人脸图像的识别方法进行进一步的改进。
发明内容
为解决上述至少一技术问题,本发明的主要目的是提供一种密集人群场景人脸图像的高速识别方法、装置及可读存储介质。
为实现上述目的,本发明采用的第一个技术方案为:提供一种密集人群场景人脸图像的高速识别方法,包括:
获取抓拍的多个人脸图像数据;
分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸特征值;
将多个人脸图像的人脸特征值以单个人脸图像特征值数为单位分成两组,利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,以及利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,其中,人脸库中预存有人脸库特征值向量;
输出N张相似度最高的人脸图片。
其中,所述分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸特征值之后,包括:
对人脸图像特征值进行归一化处理。
其中,所述利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,具体包括:
将人脸特征值及人脸库特征值的每个分量均从32位浮点数定点化为16位短整形;
对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算;
将定点余弦相似度转换为32位浮点余弦相似度;
将人脸特征值与人脸库里所有图片的人脸库特征值分别计算得到的余弦相似度结果放入结果缓存区并进行排序,并获取余弦相似度最大的多张人脸图片。
其中,所述对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算中使用neon指令集计算余弦相似度。
其中,所述利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算之前,包括:
预分人脸图片输入数据内存、人脸库输入数据内存、以及DSP参数传递内存;
将人脸特征值拷贝至人脸图片输入数据内存,将人脸库特征值拷贝至人脸库输入数据内存,以及将DSP函数参数放入DSP参数传递内存;
从DSP函数参数中分别解析出待计算的第二组人脸特征值及人脸库特征值。
其中,所述利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,具体包括:
将人脸特征值及人脸库特征值的每个分量均从32位浮点数定点化为16位短整形;
对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算;
将定点余弦相似度转换为32位浮点余弦相似度;
将人脸特征值与人脸库里所有图片的人脸库特征值分别计算得到的余弦相似度结果放入CPU结果内存并进行排序,并获取余弦相似度最大的多张人脸图片。
为实现上述目的,本发明采用的第二个技术方案为:提供一种密集人群场景人脸图像的高速识别装置,包括:
获取模块,用于获取抓拍的多个人脸图像数据;
提取模块,用于分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸特征值;
计算模块,用于将多个人脸图像的人脸特征值以单个人脸图像特征值数为单位分成两组,利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,以及利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,其中,人脸库中预存有人脸库特征值向量;
显示模块,用于输出N张相似度最高的人脸图片。
其中,还包括归一化模块,用于:
对人脸图像特征值进行归一化处理。
其中,所述计算模块,具体用于:
将人脸特征值及人脸库特征值的每个分量均从32位浮点数定点化为16位短整形;
对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算;
将定点余弦相似度转换为32位浮点余弦相似度;
将人脸特征值与人脸库里所有图片的人脸库特征值分别计算得到的余弦相似度结果放入结果缓存区/CPU结果内存并进行排序,并获取余弦相似度最大的多张人脸图片。
为实现上述目的,本发明采用的第三个技术方案为:提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现上述方法中的步骤。
本发明的技术方案通过采用先获取抓拍的多个人脸图像数据,然后分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸特征值,再将多个人脸图像的人脸特征值以单个人脸图像特征值数为单位分成两组,利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,以及利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,最后输出N张相似度最高的人脸图片,在CPU/DSP计算过程中,通过把32位浮点数转成16位定点数进行余弦相似度计算,在很小的精度损失的情况下,极大加速了余弦相似度计算。CPU计算时利用neon指令集来加速计算,极大提高了计算速度,进而提高了人脸比对速度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本发明第一实施例密集人群场景人脸图像的高速识别方法的方法流程图;
图2为本发明第二实施例密集人群场景人脸图像的高速识别装置的模块方框图;
图3为本发明第三实施例提供的一种电子设备模块方框图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,本发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
请参照图1,图1为本发明第一实施例密集人群场景人脸图像的高速识别方法的方法流程图。区别于现有技术在密集人群场景中单独采用CPU进行人脸图像识别时,对CPU资源耗费较大,造成图像处理效率较低的问题,本发明实施例提供了一种密集人群场景人脸图像的高速识别方法,可以同时使用CPU和DSP计算人脸特征值和人脸库特征值的余弦相似度,进而识别出抓拍的人脸图像。在本发明的实施例中,该方法具体包括:
步骤S101、获取抓拍的多个人脸图像数据。
具体的,上述的多个人脸图像数据可以由前端摄像机或抓拍机进行抓拍,然后通过网络协议输送到图像识别终端。值得注意的是,这里的多个人脸图像数据为密集人群场景的人脸图像抓拍结果。
步骤S102、分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸特征值。
具体的,可以利用深度学习算法对人脸图像数据进行检测识别处理,然后提取出多个人脸特征值。每个人脸图像数据都有多个人脸特征值,比如为256,512,1024等,取决于具体的深度学习神经网络算法。
进一步的,所述分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸特征值之后,包括:
对人脸图像特征值进行归一化处理。
具体的,先将人脸特征值变成一个向量,向量的每个分量都是一个特征值,然后将其归一化。
n维向量e={e1,e2,...,en},
n维向量的模为|e|=√(e12+e22+...+en2),
那么其归一化向量为:
e0=e/|e|=[1/√(e12+e22+...+en2)]*{e1,e2,...,en},
其中,e1,e2,…,en为人脸特征值。
步骤S103、将多个人脸图像的人脸特征值以单个人脸图像特征值数为单位分成两组,利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,以及利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,其中,人脸库中预存有人脸库特征值向量。
本实施例中,将将多个人脸图像的人脸特征值以单个人脸图像特征值数为单位分成两组,分别利用CPU及DSP对人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片。
具体的,所述利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,具体包括:
将人脸特征值及人脸库特征值的每个分量均从32位浮点数定点化为16位短整形;
对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算,其中,所述对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算中使用neon指令集计算余弦相似度。
将定点余弦相似度转换为32位浮点余弦相似度;
将人脸特征值与人脸库里所有图片的人脸库特征值分别计算得到的余弦相似度结果放入结果缓存区并进行排序,并获取余弦相似度最大的多张人脸图片。
具体而言,为了加速计算,先把人脸图片及人脸库特征值向量的每个分量都从32位浮点数定点化为16位短整形。
定点化公式为:Xq=(int)x*2^Q,
其中,Xq为16位短整形定点数,x是浮点数。这里Q=15,因为x是有正数有负数,所以Q=15。同时为了防止溢出,当计算结果为2^15时,把它变成2^15-1=32767.当计算结果为-2^15=-32768时,把它变成-32767。
C语言的实现算法如下:
int iTmpValue=pSrc1_float*pow(2,15);
short pSrc1_s16=(short)max(min(iTmpValue,32767),-32767)
然后,将归一化且定点化后的人脸特征值跟人脸库里已经归一化且定点化好的人脸库特征值进行余弦相似度计算。
例如,人脸特征值为:
n维向量e={e1,e2,...,en},
其模为|e|=√(e12+e22+...+en2),
人脸库里一个人脸库特征值为:
n维向量a={a1,a2,...,an},
其模为|a|=√(a12+a22+...+an2),
余弦相似度为:
cos_similar=(e1*a1+e2*a2+…+en*an)/(|e|*|a|),
由于向量已经归一化,所以|e|=1,|a|=1,公式变成:
cos_similar=(e1*a1+e2*a2+…+en*an)。
由于已经定点化,进行定点乘法和加法计算时,要调用定点乘法公式:
Zq=Xq*Yq*(2^(-Q)),其中Xq,Yq,Zq为定点数,Q=15。
用C语言表示的算法为:
n维定点化向量E={Eq1,Eq2,...,Eqn}
n维定点化向量A={Aq1,Aq2,...,Aqn}
定点余弦相似度计算:
short cos_similar=(Eq1*Aq1+Eq2*Aq2+…+Eqn*Aqn)*2^(-Q),
其中,Q=15。
再,将算好的定点余弦相似度转换为32位浮点余弦相似度。具体公式如下:
x=(float)Xq*(2^(-Q)),
其中,x为浮点数,Xq为定点数,Q=15。
C语言的表示如下:
float fSimilar=cos_similar*pow(2,-15)。
最后,将人脸图片特征值向量和人脸库里所有图片的特征值向量一个个计算好的余弦相似度放入结果缓冲区,并排序,然后获取余弦相似度最高的多张人脸图片。
进一步的,所述利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算之前,包括:
预分人脸图片输入数据内存、人脸库输入数据内存、以及DSP参数传递内存;
将人脸特征值拷贝至人脸图片输入数据内存,将人脸库特征值拷贝至人脸库输入数据内存,以及将DSP函数参数放入DSP参数传递内存;
从DSP函数参数中分别解析出待计算的第二组人脸特征值及人脸库特征值。
具体而言,先配置好海思硬件用内存,包括人脸图片输入数据内存、人脸库输入数据内存,DSP参数传递的内存,以及用于暂存余弦相似度计算结果输出数据内存。
然后,将人脸特征值拷贝至人脸图片输入数据内存,将人脸库特征值拷贝至人脸库输入数据内存,以及将DSP函数参数放入DSP参数传递内存。其中,DSP函数参数包括批量处理的人脸图片数目,人脸库的特征值数目,每个特征值的大小,输入的人脸图片数据的硬件用内存的物理地址,人脸库数据的硬件内存的物理地址,输出的余弦相似度结果的硬件用物理地址等。
而后,在DSP收到计算余弦相似度的指令时,利用IDMA控制器把参数从CPU的内存拷贝到DSP的栈内存,以及从DSP参数中解析出待计算的人脸特征值和人脸库特征值。
最后,利用idma从CPU内存中获取人脸特征值数据,再计算人脸图片特征值跟人脸库图片特征值的余弦相似度。利用DSP计算余弦相似度的计算过程与利用CPU计算余弦相似度的计算过程相似。
具体的,所述利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,具体包括:
将人脸特征值及人脸库特征值的每个分量均从32位浮点数定点化为16位短整形;
对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算;
将定点余弦相似度转换为32位浮点余弦相似度;
将人脸特征值与人脸库里所有图片的人脸库特征值分别计算得到的余弦相似度结果放入CPU结果内存并进行排序,并获取余弦相似度最大的多张人脸图片。
其中,上述对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算中跟CPU用neon指令集计算不一样,这里用纯C语言,用DSP计算。
步骤S104、输出N张相似度最高的人脸图片。
将余弦相似度最大的N个结果输出送给网页进行显示,如此,得到识别出的人脸图像。该N为正整数,可以根据实际的要求设置。
本方案通过网络协议获取前端抓拍机的人脸图像数据,送给深度学习算法进行人脸检测识别提取特征值,然后送给特征值比对线程进行特征值比对,特征值比对线程把一部分人脸特征值用CPU跟人脸库进行余弦相似度计算,获取余弦相似度最大的多个结果。把另外一部分人脸特征值用DSP跟人脸库进行余弦相似度计算,获取余弦相似度最大的N个结果。用CPU计算余弦相似度时,先把人脸特征值的每个分量从32位浮点数定点化为16位短整数,然后用neon指令集进行计算,得到32位整数余弦相似度,然后把32位整数的余弦相似度转换为32位浮点数,得到最后的余弦相似度。用DSP计算余弦相似度时,先把特征值向量的每个分量从32位浮点数定点化为16位短整数,然后用DSP进行计算,得到32位整数余弦相似度,然后把32位整数的余弦相似度转换为32位浮点数。最后将余弦相似度最大的N个结果输出送给网页进行显示。上述的一部分人脸特征值为前述的第一组人脸特征值,上述的另一部分人脸特征值为前述的第二组人脸特征值。
本发明至少具有如下有益效果:
1、本方案利用CPU计算余弦相似度,先定点化为16位短整形,再调用neon指令集计算余弦相似度,最后把定点余弦相似度转为浮点数余弦相似度。
在海思HI3559芯片平台上,这里的算法相对于纯粹使用浮点数的neon指令集计算余弦相似度提高了60%的性能。相对于没有使用neon指令集的浮点数计算余弦相似度,提升了200%的性能;
2、解决了摄像头单纯依靠CPU,人脸图片跟大规模人脸库比对时性能不足的问题。在密集人群场景,大量人脸底库(10万及以上)这种需要大量实时人脸识别时,通过加入DSP计算,有效提高了每秒能同时比对的人脸张数,减少CPU消耗。
3、与单纯使用CPU来进行人脸图片跟人脸库比对,使用DSP来分担计算可以有效减少CPU负荷,可以腾出CPU用于处理其他业务。
请参照图2,图2为本发明第二实施例密集人群场景人脸图像的高速识别装置的模块方框图。在本发明的实施例中,该密集人群场景人脸图像的高速识别装置,包括:
获取模块101,用于获取抓拍的多个人脸图像数据;
提取模块102,用于分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸特征值;
计算模块103,用于将多个人脸图像的人脸特征值以单个人脸图像特征值数为单位分成两组,利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,以及利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,其中,人脸库中预存有人脸库特征值向量;
显示模块104,用于输出N张相似度最高的人脸图片。
本实施例中,本装置通过获取模块101,获取抓拍的多个人脸图像数据,然后通过提取模块102,分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸特征值,再通过计算模块103,将多个人脸图像的人脸特征值以单个人脸图像特征值数为单位分成两组,利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,以及利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,最后通过显示模块,输出N张相似度最高的人脸图片,在CPU/DSP计算过程中,通过把32位浮点数转成16位定点数进行余弦相似度计算,在很小的精度损失的情况下,极大加速了余弦相似度计算。CPU计算时利用neon指令集来加速计算,极大提高了计算速度,进而提高了人脸比对速度。
其中,还包括归一化模块,用于:
对人脸图像特征值进行归一化处理。
其中,所述计算模块103,具体用于:
将人脸特征值及人脸库特征值的每个分量均从32位浮点数定点化为16位短整形;
对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算;
将定点余弦相似度转换为32位浮点余弦相似度;
将人脸特征值与人脸库里所有图片的人脸库特征值分别计算得到的余弦相似度结果放入结果缓存区/CPU结果内存并进行排序,并获取余弦相似度最大的多张人脸图片。
请参阅图3,图3为本发明第三实施例提供的一种电子设备。该电子设备可用于实现前述实施例中的密集人群场景人脸图像的高速识别方法。如图3所示,该电子设备主要包括:存储器301、处理器302、总线303及存储在存储器301上并可在处理器302上运行的计算机程序,存储器301和处理器302通过总线303连接。处理器302执行该计算机程序时,实现前述实施例中的密集人群场景人脸图像的高速识别方法。其中,处理器的数量可以是一个或多个。
存储器301可以是高速随机存取记忆体(RAM,Random Access Memory)存储器,也可为非不稳定的存储器(non-volatile memory),例如磁盘存储器。存储器301用于存储可执行程序代码,处理器302与存储器301耦合。
进一步的,本发明实施例还提供了一种可读存储介质,该可读存储介质可以是设置于上述各实施例中的电子设备中,该可读存储介质可以是前述图3所示实施例中的存储器。
该可读存储介质上存储有计算机程序,该程序被处理器执行时实现前述实施例中的密集人群场景人脸图像的高速识别方法。进一步的,该计算机可存储介质还可以是U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的可读存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的技术方案构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。
Claims (8)
1.一种密集人群场景人脸图像的高速识别方法,其特征在于,所述密集人群场景人脸图像的高速识别方法包括:
获取抓拍的多个人脸图像数据;
分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸特征值;
将多个人脸图像的人脸特征值以单个人脸图像特征值数为单位分成两组,利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,其中,将人脸特征值及人脸库特征值的每个分量均从32位浮点数定点化为16位短整形;对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算,其中,所述对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算中使用neon指令集计算余弦相似度;将定点余弦相似度转换为32位浮点余弦相似度;以及利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,其中,人脸库中预存有人脸库特征值向量,
其中,先预分人脸图片输入数据内存、人脸库输入数据内存、以及DSP参数传递内存;
将人脸特征值拷贝至人脸图片输入数据内存,将人脸库特征值拷贝至人脸库输入数据内存,以及将DSP函数参数放入DSP参数传递内存;
从DSP函数参数中分别解析出待计算的第二组人脸特征值及人脸库特征值;
输出N张相似度最高的人脸图片。
2.如权利要求1所述的密集人群场景人脸图像的高速识别方法,其特征在于,所述分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸特征值之后,包括:
对人脸图像特征值进行归一化处理。
3.如权利要求2所述的密集人群场景人脸图像的高速识别方法,其特征在于,所述利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,具体包括:
将人脸特征值与人脸库里所有图片的人脸库特征值分别计算得到的余弦相似度结果放入结果缓存区并进行排序,并获取余弦相似度最大的多张人脸图片。
4.如权利要求3所述的密集人群场景人脸图像的高速识别方法,其特征在于,所述利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,具体包括:
将人脸特征值及人脸库特征值的每个分量均从32位浮点数定点化为16位短整形;
对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算;
将定点余弦相似度转换为32位浮点余弦相似度;
将人脸特征值与人脸库里所有图片的人脸库特征值分别计算得到的余弦相似度结果放入CPU结果内存并进行排序,并获取余弦相似度最大的多张人脸图片。
5.一种密集人群场景人脸图像的高速识别装置,其特征在于,所述密集人群场景人脸图像的高速识别装置包括:
获取模块,用于获取抓拍的多个人脸图像数据;
提取模块,用于分别对多个人脸图像数据里每个人脸图像数据进行人脸检测识别并提取多个人脸特征值;
计算模块,用于将多个人脸图像的人脸特征值以单个人脸图像特征值数为单位分成两组,利用CPU将第一组人脸特征值与人脸库进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,以及利用DSP将第二组人脸特征值与人脸库进行进行余弦相似度计算,并获取余弦相似度最大的多张人脸图片,其中,人脸库中预存有人脸库特征值向量,
其中,先预分人脸图片输入数据内存、人脸库输入数据内存、以及DSP参数传递内存;
将人脸特征值拷贝至人脸图片输入数据内存,将人脸库特征值拷贝至人脸库输入数据内存,以及将DSP函数参数放入DSP参数传递内存;
从DSP函数参数中分别解析出待计算的第二组人脸特征值及人脸库特征值;
显示模块,用于输出N张相似度最高的人脸图片。
6.如权利要求5所述的密集人群场景人脸图像的高速识别装置,其特征在于,还包括归一化模块,用于:
对人脸图像特征值进行归一化处理。
7.如权利要求5所述的密集人群场景人脸图像的高速识别装置,其特征在于,所述计算模块,具体用于:
将人脸特征值及人脸库特征值的每个分量均从32位浮点数定点化为16位短整形;
对归一化且定点化后的人脸特征值与人脸库特征值进行余弦相似度计算;
将定点余弦相似度转换为32位浮点余弦相似度;
将人脸特征值与人脸库里所有图片的人脸库特征值分别计算得到的余弦相似度结果放入结果缓存区/CPU结果内存并进行排序,并获取余弦相似度最大的多张人脸图片。
8.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至4中的任意一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010103071.XA CN111291698B (zh) | 2020-02-19 | 2020-02-19 | 密集人群场景人脸图像的高速识别方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010103071.XA CN111291698B (zh) | 2020-02-19 | 2020-02-19 | 密集人群场景人脸图像的高速识别方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111291698A CN111291698A (zh) | 2020-06-16 |
CN111291698B true CN111291698B (zh) | 2024-02-27 |
Family
ID=71024620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010103071.XA Active CN111291698B (zh) | 2020-02-19 | 2020-02-19 | 密集人群场景人脸图像的高速识别方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111291698B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112802009A (zh) * | 2021-02-25 | 2021-05-14 | 常州微亿智造科技有限公司 | 产品检测数据集的相似度计算方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317768A (zh) * | 2014-10-15 | 2015-01-28 | 中国人民解放军国防科学技术大学 | 面向cpu+dsp异构系统的矩阵乘加速方法 |
CN109214273A (zh) * | 2018-07-18 | 2019-01-15 | 平安科技(深圳)有限公司 | 人脸图像比对方法、装置、计算机设备及存储介质 |
CN109902561A (zh) * | 2019-01-16 | 2019-06-18 | 平安科技(深圳)有限公司 | 一种应用于机器人的人脸识别方法和装置、机器人 |
-
2020
- 2020-02-19 CN CN202010103071.XA patent/CN111291698B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317768A (zh) * | 2014-10-15 | 2015-01-28 | 中国人民解放军国防科学技术大学 | 面向cpu+dsp异构系统的矩阵乘加速方法 |
CN109214273A (zh) * | 2018-07-18 | 2019-01-15 | 平安科技(深圳)有限公司 | 人脸图像比对方法、装置、计算机设备及存储介质 |
CN109902561A (zh) * | 2019-01-16 | 2019-06-18 | 平安科技(深圳)有限公司 | 一种应用于机器人的人脸识别方法和装置、机器人 |
Also Published As
Publication number | Publication date |
---|---|
CN111291698A (zh) | 2020-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109815788B (zh) | 一种图片聚类方法、装置、存储介质及终端设备 | |
WO2019011165A1 (zh) | 人脸识别方法、装置、电子设备及存储介质 | |
CN109255392B (zh) | 基于非局部神经网络的视频分类方法、装置及设备 | |
CN103295022A (zh) | 图像相似度计算系统及方法 | |
CN113705462B (zh) | 人脸识别方法、装置、电子设备及计算机可读存储介质 | |
WO2021104097A1 (zh) | 表情包生成方法、装置及终端设备 | |
CN114186632A (zh) | 关键点检测模型的训练方法、装置、设备、存储介质 | |
CN112149583A (zh) | 烟雾检测方法、终端设备及存储介质 | |
CN112561879B (zh) | 模糊度评价模型训练方法、图像模糊度评价方法及装置 | |
CN111291698B (zh) | 密集人群场景人脸图像的高速识别方法及装置 | |
WO2022160202A1 (zh) | 佩戴口罩的检测方法、装置、终端设备及可读存储介质 | |
Xie et al. | An optimized face recognition for edge computing | |
CN113657249B (zh) | 训练方法、预测方法、装置、电子设备以及存储介质 | |
CN113158773B (zh) | 一种活体检测模型的训练方法及训练装置 | |
CN110717452A (zh) | 图像识别方法、装置、终端及计算机可读存储介质 | |
CN112784102B (zh) | 视频检索方法、装置和电子设备 | |
CN110659541A (zh) | 图像识别方法、装置及存储介质 | |
CN113658065A (zh) | 图像降噪方法及装置、计算机可读介质和电子设备 | |
CN109871779B (zh) | 掌纹识别的方法及电子设备 | |
CN112257689A (zh) | 人脸识别模型的训练和识别方法、存储介质及相关设备 | |
CN111814811A (zh) | 图像信息提取方法、训练方法及装置、介质和电子设备 | |
JP2015041293A (ja) | 画像認識装置および画像認識方法 | |
CN110287943B (zh) | 图像的对象识别方法、装置、电子设备及存储介质 | |
CN112749542A (zh) | 一种商品名称匹配方法、系统、设备及存储介质 | |
CN111401197A (zh) | 一种图片风险识别方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20221229 Address after: 518000 Yingfei Haocheng Science Park, Guansheng 5th Road, Luhu Community, Guanhu Street, Longhua District, Shenzhen, Guangdong 1515 Applicant after: Shenzhen Infineon Information Co.,Ltd. Address before: 518000 yingfeituo workshop, Guanlan high tech Industrial Park, Longhua New District, Shenzhen City, Guangdong Province Applicant before: SHENZHEN INFINOVA Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |