CN110879984A - 一种人脸比对的方法及设备 - Google Patents
一种人脸比对的方法及设备 Download PDFInfo
- Publication number
- CN110879984A CN110879984A CN201911128937.6A CN201911128937A CN110879984A CN 110879984 A CN110879984 A CN 110879984A CN 201911128937 A CN201911128937 A CN 201911128937A CN 110879984 A CN110879984 A CN 110879984A
- Authority
- CN
- China
- Prior art keywords
- face
- matrix
- bottom library
- recognized
- feature matrix
- 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.)
- Pending
Links
Images
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
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/94—Hardware or software architectures specially adapted for image or video understanding
- G06V10/955—Hardware or software architectures specially adapted for image or video understanding using specific electronic processors
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Health & Medical Sciences (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Human Computer Interaction (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Image Analysis (AREA)
Abstract
本申请的目的是提供一种人脸比对的方法及设备,本申请通过根据获取的待识别人脸图片确定待识别人脸图片矩阵,根据获取的底库人脸图片确定底库人脸图片矩阵;根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸特征矩阵和底库人脸特征矩阵;将所述待识别人脸特征矩阵和底库人脸特征矩阵分别进行归一化处理,得到待比对人脸图片特征矩阵和底库人脸图片特征矩阵;根据所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵确定n组待载入元素;每次将n组待载入元素中z组待载入元素载入至z个GPU中,同时进行人脸比对加速处理,得到比对结果。从而有效地减少了数组遍历的时间复杂度,结合GPU并行运算,有效提高了人脸比对的速度。
Description
技术领域
本申请涉及人脸识别领域,尤其涉及一种人脸比对的方法及设备。
背景技术
人脸识别作为最常见的计算机视觉任务之一,近年来取得了巨大的进步,而人脸比对是人脸识别的一个重要的环节,其主要思想是将获取到的用户图像与已注册的底库中的图像进行对比,如果用户图像与底库中的图像较为相似,则将该底库中的图像作为比对的结果。目前进行比对时,常用的方法是通过计算向量之间的距离,根据计算的距离确定比对的结果,而该方法中在与底库特征向量分别计算距离时比较耗时,人脸比对效率低。
发明内容
本申请的一个目的是提供一种人脸比对的方法及设备,解决现有技术中人脸比对时计算向量之间的距离比较耗时、比对效率低的问题。
根据本申请的一个方面,提供了一种人脸比对的方法,该方法包括:
根据获取的待识别人脸图片确定待识别人脸图片矩阵,根据获取的底库人脸图片确定底库人脸图片矩阵;
根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸特征矩阵和底库人脸特征矩阵;
将所述待识别人脸特征矩阵和底库人脸特征矩阵分别进行归一化处理,得到待比对人脸图片特征矩阵和底库人脸图片特征矩阵;
根据所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵确定n组待载入元素,其中,n为底库人脸图片的组数;
每次将n组待载入元素中z组待载入元素载入至z个GPU中,同时进行人脸比对加速处理,得到比对结果,其中,1<z≤n。
进一步地,根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸特征矩阵和底库人脸特征矩阵,包括:
根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸图片的列表变量和底库人脸图片的列表变量;
分别对所述待识别人脸图片的列表变量和所述底库人脸图片的列表变量进行人脸特征提取,得到待识别人脸特征矩阵和底库人脸特征矩阵。
进一步地,根据所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵确定n组待载入元素,包括:
将所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵转化为张量数据格式;
将转化为张量数据格式的底库人脸图片特征矩阵分割成n个张量,其中,每个张量的尺寸根据特征向量维度及图片个数确定,n与图片个数的乘积等于获取的底库人脸图片的数量;
根据所述n个张量及所述转化为张量数据格式的待比对人脸图片矩阵确定n组待载入元素。
进一步地,每次将n组待载入元素中z组待载入元素载入至z个GPU中,同时进行人脸比对加速处理,包括:
每次将n组待载入元素中z组待载入元素载入至z个GPU中,在每个GPU上同时进行张量的点乘运算,得到n个分数矩阵;
遍历由所述n个分数矩阵组成的列表,每次获取z个分数矩阵,得到多组分数矩阵;
从每一组分数矩阵中选取排序前i个子张量,将每选取到的i个子张量组成一个人脸相似度分数子张量,其中,i为正数;
将相邻的人脸相似度分数子张量载入同一个GPU中进行加速处理。
进一步地,从每一组分数矩阵中选取排序前i个子张量,将每选取到的i个子张量组成一个人脸相似度分数子张量,包括:
对每一组z个分数矩阵中的每个分数矩阵进行排序,选取每行前i个的子张量组成人脸相似度分数子张量,每一组选取完毕后,确定出的n个人脸相似度分数子张量存储至分数列表变量中,并将所选取的分数矩阵的列序号存储至索引列表变量中,其中,每一个索引对应一个人脸相似度分数子张量。
进一步地,将相邻的人脸相似度分数子张量载入同一个GPU中进行加速处理,包括:
将所述分数列表变量中的每相邻两个人脸相似度分数子张量组成人脸相似度分数子张量对,将所述人脸相似度分数子张量对载入至z个GPU中进行拼接,得到融合张量;
当每个GPU当前运算完毕后,继续载入所述分数列表变量中剩余的人脸相似度分数子张量对,直至所述分数列表变量中的所有元素计算完毕。
根据本申请又一个方面,还提供了一种人脸比对的设备,该设备包括:
获取装置,用于根据获取的待识别人脸图片确定待识别人脸图片矩阵,根据获取的底库人脸图片确定底库人脸图片矩阵;
确定矩阵装置,用于根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸特征矩阵和底库人脸特征矩阵;
归一化处理装置,用于将所述待识别人脸特征矩阵和底库人脸特征矩阵分别进行归一化处理,得到待比对人脸图片特征矩阵和底库人脸图片特征矩阵;
确定装置,用于根据所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵确定n组待载入元素,其中,n为底库人脸图片的组数;
比对装置,用于每次将n组待载入元素中z组待载入元素载入至z个GPU中,同时进行人脸比对加速处理,得到比对结果,其中,1<z≤n。
根据本申请另一个方面,还提供了一种人脸比对的设备,该设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行前述所述方法的操作。
根据本申请再一个方面,还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如前述所述的方法。
与现有技术相比,本申请通过根据获取的待识别人脸图片确定待识别人脸图片矩阵,根据获取的底库人脸图片确定底库人脸图片矩阵;根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸特征矩阵和底库人脸特征矩阵;将所述待识别人脸特征矩阵和底库人脸特征矩阵分别进行归一化处理,得到待比对人脸图片特征矩阵和底库人脸图片特征矩阵;根据所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵确定n组待载入元素,其中,n为底库人脸图片的组数;每次将n组待载入元素中z组待载入元素载入至z个GPU中,同时进行人脸比对加速处理,得到比对结果,其中,1<z≤n。从而通过将人脸比对通过切割底库特征将亿万级数据分解,有效地减少了数组遍历的时间复杂度,结合GPU并行运算,有效提高了人脸比对的速度。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出根据本申请的一个方面提供的一种人脸比对的方法的流程示意图;
图2示出本申请一实施例中基于GPU进行人脸比对加速时的点乘运算示意图;
图3示出本申请一实施例中根据分数矩阵确定人脸相似度分数子张量的示意图;
图4示出根据本申请又一个方面提供的一种人脸比对的设备的结构示意图。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本申请作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(例如中央处理器(Central Processing Unit,CPU))、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RandomAccess Memory,RAM)和/或非易失性内存等形式,如只读存储器(Read Only Memory,ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(Phase-Change RAM,PRAM)、静态随机存取存储器(Static Random Access Memory,SRAM)、动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、数字多功能光盘(Digital Versatile Disk,DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括非暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
图1示出根据本申请的一个方面提供的一种人脸比对的方法的流程示意图,该方法包括:步骤S11~步骤S15,
在步骤S11中,根据获取的待识别人脸图片确定待识别人脸图片矩阵,根据获取的底库人脸图片确定底库人脸图片矩阵;在此,获取m1张待识别人脸图片和m2张底库人脸图片时,可以使用计算机视觉库(opencv)的读取图片文件函数(imread)从测试集中读取,其中,底库人脸图片为每个用户采集一定数量的人脸图片从而形成该用户的底库人脸图片。接着,根据m1张待识别人脸图片中的像素值确定m1个待识别人脸图片矩阵,根据m2张底库人脸图片中的像素值确定m2个底库人脸图片矩阵。
在步骤S12中,根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸特征矩阵和底库人脸特征矩阵;在此,对待识别人脸图片矩阵进行特征提取,比如提取待识别人脸图片矩阵中对应像素位置的确定对应的待识别人脸特征矩阵;对底库人脸图片矩阵进行特征提取,根据提取的特征确定底库人脸特征矩阵。
在步骤S13中,将所述待识别人脸特征矩阵和底库人脸特征矩阵分别进行归一化处理,得到待比对人脸图片特征矩阵和底库人脸图片特征矩阵;在此,对待识别人脸特征矩阵和底库人脸特征矩阵分别进行归一化处理,使得特征值为[0-1],例如,人脸特征矩阵为[[30,20],[60,10]],经过归一化处理后得到[[0.117,0.078],[0.235,0.039]],将归一化的待识别人脸特征矩阵存储在第一矩阵变量(feature1)中,归一化的底库人脸特征矩阵存储在第二矩阵变量(feature2)中,其中,feature1为m1×n的待比对人脸图片特征矩阵,m1为待比对人脸图片数量,n为底库人脸图片的组数且n取偶数,feature2为m2×n的底库人脸图片特征矩阵。
在步骤S14中,根据所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵确定n组待载入元素,其中,n为底库人脸图片的组数。在此,底库人脸图片分为n组,每一组中有k张人脸图片,根据底库人脸图片特征矩阵确定待载入的向量,将每一个待载入的向量与根据待比对的人脸图片特征确定的载入元素作为一组待载入元素,总共确定出n组待载入元素每组待载入元素中的两个元素用于进行人脸比对。从而在步骤S15中,每次将n组待载入元素中z组待载入元素载入至z个GPU中,同时进行人脸比对加速处理,得到比对结果,其中,1<z≤n。在此,根据选用z个GPU进行人脸比对的加速处理,遍历n组待载入元素时,每遍历到z个组时就将该z个组的待载入元素载入至z个GPU中,一组载入一个GPU中,同时进行加速处理,根据归一化后的特征矩阵确定待载入元素,将待载入元素送入至图形处理器(GPU)中,可以充分利用GPU并行的特性,达到人脸比对加速的效果。
在本申请一实施例中,在步骤S12中,根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸图片的列表变量和底库人脸图片的列表变量;分别对所述待识别人脸图片的列表变量和所述底库人脸图片的列表变量进行人脸特征提取,得到待识别人脸特征矩阵和底库人脸特征矩阵。在此,将m1个待识别人脸图片矩阵输入到人脸检测网络(mtcnn)进行向前传播得到m1个128*128人脸子图矩阵,将该人脸子图矩阵存储到列表变量sub_face1中。对m2个底库人脸图片矩阵进行同样操作得到sub_face2。将sub_face1输入到人脸识别网络(mobilefaceNet)进行人脸特征提取,得到尺寸(m1*512)维的待识别人脸特征矩阵,其中,512为特征向量维度;对sub_face2进行同样操作,得到尺寸(m2*512)维的底库人脸特征矩阵。
在本申请一实施例中,在步骤S14中,将所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵转化为张量数据格式;将转化为张量数据格式的底库人脸图片特征矩阵分割成n个张量,其中,每个张量的尺寸根据特征向量维度及图片个数确定,n与图片个数的乘积等于获取的底库人脸图片的数量;根据所述n个张量及所述转化为张量数据格式的待比对人脸图片特征矩阵确定n组待载入元素。在此,将特征矩阵转化为张量数据格式时,可以使用深度学习框架(torch)库函数的from_numpy将feature1和feature2转化成张量(Tensor)数据格式,其中,张量数据格式为pytorch框架处理的特定数据格式,转化为张量的数据更加方便载入至GPU中进行并行运算。接着,调用pytorch库函数split将feature2分割成n个尺寸为512*k的张量,其中n*k等于m2,将n个张量组成的列表保存到列表变量features中,k为图片个数,512为特征向量维度。将n个由feature2得到的n个张量与转化为张量数据格式的feature1组成n组待载入元素,每一组待载入元素中包括一个由feature2得到的一个张量与转化为张量数据格式的feature1。切割后进行相似度计算,即遍历features列表变量,每次获取z个张量与转化为张量数据格式的feature1进行点乘运算,直到遍历完features中所有元素,得到分数矩阵。将向量运算转化为矩阵运算,并且通过多GPU实现并行,在m1和m2为亿万级数量时,人脸比对得到明显的加速效果。
在本申请一实施例中,在步骤S15中,每次将n组待载入元素中z组待载入元素载入至z个GPU中,在每个GPU上同时进行张量的点乘运算,得到n个分数矩阵;遍历由所述n个分数矩阵组成的列表,每次获取z个分数矩阵,得到多组分数矩阵;从每一组分数矩阵中选取排序前i个子张量,将每选取到的i个子张量组成一个人脸相似度分数子张量,其中,i为正数;将相邻的人脸相似度分数子张量载入同一个GPU中进行加速处理。在此,遍历features列表变量,每次获取z个张量组进行点乘运算,直到遍历完n组张量,得到分数矩阵similar_score,尺寸为m1*k,根据该分数矩阵得到人脸相似度分数张量,因此,最终得到n个尺寸为m1*k的人脸相似度分数张量组成的列表similar_scores。如图2所示,可以调用pytorch库函数toDevice将z个张量载入至z个GPU中(z大于1),其中,每个张量的尺寸为512*k,并且将m1*512张量分别载入到z个GPU中,在此,每一组待载入元素为一个尺寸为512*k的张量及一个尺寸为m1*512的张量;每个GPU中要进行矩阵m1*512与矩阵k*512的转置进行点乘运算,即m1*512点乘512*k,点乘运算时可以调用pytorch库函数matmul在每个GPU上同时进行张量的点乘运算,点乘结果为分数矩阵,从该分数矩阵中得到人脸相似度分数张量。遍历得到的分数矩阵的列表similar_scores,每次获取z个similar_score(分数矩阵),直到遍历完止,每个similar_score为m1*k矩阵。每次获取的z个similar_score为一组,从每一组的z个分数矩阵中选取排序前i个子张量,取每行前i个大的元素组成人脸相似度分数子张量,i为正数,比如i为100,对每个分数矩阵进行排序,选取每行前100大的元素组成人脸相似度分数子张量,从而将相邻的两个人脸相似度分数子张量载入同一个GPU中进行加速处理,即将两个相邻的人脸相似度分数子张量进行加速的融合处理。
具体地,在步骤S15中,从每一组分数矩阵中选取排序前i个张量时,可以对每一组z个分数矩阵中的每个分数矩阵进行排序,选取每行前i个的分数矩阵组成人脸相似度分数子张量,每一组选取完毕后,确定出的n个人脸相似度分数子张量存储至分数列表变量中,并将所选取的分数矩阵的列序号存储至索引列表变量中,其中,每一个索引对应一个人脸相似度分数子张量。在此,比如i为100,如图3所示,调用torch库函数argsort对每个similar_score进行行排序,选取每行前100(top100)大的元素组成人脸相似度分数子张量sub_similar_score,并将所取元素的列序号保存到索引(index)列表变量中,一个index对应一个sub_similar_score,其由100个整数组成的列表,每个整数表示人脸标识(id),每个sub_similar_score为尺寸m1*100的有序分数张量,得到z个sub_similar_score。对剩余n-z个张量再每次遍历获取z个分数矩阵,按照第一次获取到的z个分数矩阵的处理方式,直至获取到n-z个sub_similar_score。
接着,将所述分数列表变量中的每相邻两个人脸相似度分数子张量组成人脸相似度分数子张量对,将所述人脸相似度分数子张量对载入至z个GPU中进行拼接,得到融合张量;当每个GPU当前运算完毕后,继续载入所述分数列表变量中剩余的人脸相似度分数子张量对,直至所述分数列表变量中的所有元素计算完毕。在此,遍历n个分数矩阵,按照上述实施例中每次获取到z个分数矩阵,进行处理,得到z个人脸相似度分数子张量sub_similar_score,再接着遍历剩余n-z个分数矩阵,按照每次获取z个分数矩阵进行处理,直至遍历完n个分数矩阵后,将最终得到的n个sub_similar_score存储到列表变量scores中,n个index列表存储到列表变量indexs中。将每两个人脸相似度分数子张量sub_similar_score作为人脸相似度分数子张量对载入同一个GPU中,直至z个GPU全部载入人脸相似度分数子张量对,即,将每相邻两个人脸相似度分数子张量进行融合,得到新的人脸相似度分数子张量sub_similar_score,若每个GPU当前运算完毕,继续载入scores中剩余的人脸相似度分数子张量对进行融合,直至所有元素计算完毕。z个GPU并行处理时,每个GPU中的人脸相似度分数子张量对有如下步骤:调用pytorch库函数cat将人脸相似度分数子张量对进行拼接得到尺寸为(m1,200)融合张量score_mix,最终得到z/2个融合张量存储到列表变量score_mixs;其中,(m1,200)为从(m1,n)中选取200个图片得到的结果。对剩余n-z个分数矩阵每次按照获取到z个分数矩阵进行处理,直至载入GPU中将所有元素处理完毕后,最终得到尺寸为(m1,100)的分数张量和对应的索引(index)列表,即m1中的每张人脸对应底库中最相似的100张人脸,其中,(m1,100)为从(m1,200)中选取最相似的100张人脸图片的结果。将得到的分数张量和对应的index列表输出,其中,index列表中的值表示m1中每张人脸对应底库中最相似的100张人脸的id。从而通过将人脸比对通过切割底库特征将亿万级数据分解,有效地减少了数组遍历的时间复杂度,结合GPU并行运算,有效提高了人脸比对的速度。
图4示出根据本申请又一个方面提供的一种人脸比对的设备的结构示意图,该设备包括:获取装置11、确定矩阵装置12、归一化处理装置13、确定装置14及比对装置15,其中,获取装置11用于根据获取的待识别人脸图片确定待识别人脸图片矩阵,根据获取的底库人脸图片确定底库人脸图片矩阵;确定矩阵装置12用于根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸特征矩阵和底库人脸特征矩阵;归一化处理装置13用于将所述待识别人脸特征矩阵和底库人脸特征矩阵分别进行归一化处理,得到待比对人脸图片特征矩阵和底库人脸图片特征矩阵;确定装置14用于根据所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵确定n组待载入元素,其中,n为底库人脸图片的组数;比对装置15用于每次将n组待载入元素中z组待载入元素载入至z个GPU中,同时进行人脸比对加速处理,得到比对结果,其中,1<z≤n。
需要说明的是,获取装置11、确定矩阵装置12、归一化处理装置13、确定装置14及比对装置15执行的内容分别与上述步骤S11、S12、S13、S14和S15中的内容相同或相应相同,为简明起见,在此不再赘述。
进一步地,确定矩阵装置12用于根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸图片的列表变量和底库人脸图片的列表变量;分别对所述待识别人脸图片的列表变量和所述底库人脸图片的列表变量进行人脸特征提取,得到待识别人脸特征矩阵和底库人脸特征矩阵。
进一步地,确定装置14用于将所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵转化为张量数据格式;将转化为张量数据格式的底库人脸图片特征矩阵分割成n个张量,其中,每个张量的尺寸根据特征向量维度及图片个数确定,n与图片个数的乘积等于获取的底库人脸图片的数量;根据所述n个张量及所述转化为张量数据格式的待比对人脸图片矩阵确定n组待载入元素。
进一步地,比对装置15用于每次将n组待载入元素中z组待载入元素载入至z个GPU中,在每个GPU上同时进行张量的点乘运算,得到n个分数矩阵;遍历由所述n个分数矩阵组成的列表,每次获取z个分数矩阵,得到多组分数矩阵;从每一组分数矩阵中选取排序前i个子张量,将每选取到的i个子张量组成一个人脸相似度分数子张量,其中,i为正数;将相邻的人脸相似度分数子张量载入同一个GPU中进行加速处理。
具体地,比对装置15用于对每一组z个分数矩阵中的每个分数矩阵进行排序,选取每行前i个的子张量组成人脸相似度分数子张量,每一组选取完毕后,确定出的n个人脸相似度分数子张量存储至分数列表变量中,并将所选取的分数矩阵的列序号存储至索引列表变量中,其中,每一个索引对应一个人脸相似度分数子张量。
进一步地,比对装置15用于将所述分数列表变量中的每相邻两个人脸相似度分数子张量组成人脸相似度分数子张量对,将所述人脸相似度分数子张量对载入至z个GPU中进行拼接,得到融合张量;当每个GPU当前运算完毕后,继续载入所述分数列表变量中剩余的人脸相似度分数子张量对,直至所述分数列表变量中的所有元素计算完毕。
需要说明的是,上述确定矩阵装置12、确定装置14及比对装置15执行的内容分别与上述实施例中的S12、S14和S15中的内容相同或相应相同,为简明起见,在此不再赘述。
此外,本申请实施例还提供了一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现前述一种人脸比对的方法。
在本申请一实施例中,还提供了一种人脸比对的设备,所述设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如前述所述方法的操作。
例如,计算机可读指令在被执行时使所述一个或多个处理器:
根据获取的待识别人脸图片确定待识别人脸图片矩阵,根据获取的底库人脸图片确定底库人脸图片矩阵;
根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸特征矩阵和底库人脸特征矩阵;
将所述待识别人脸特征矩阵和底库人脸特征矩阵分别进行归一化处理,得到待比对人脸图片特征矩阵和底库人脸图片特征矩阵;
根据所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵确定n组待载入元素,其中,n为底库人脸图片的组数;
每次将n组待载入元素中z组待载入元素载入至z个GPU中,同时进行人脸比对加速处理,得到比对结果,其中,1<z≤n。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。而调用本申请的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (9)
1.一种人脸比对的方法,其特征在于,所述方法包括:
根据获取的待识别人脸图片确定待识别人脸图片矩阵,根据获取的底库人脸图片确定底库人脸图片矩阵;
根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸特征矩阵和底库人脸特征矩阵;
将所述待识别人脸特征矩阵和底库人脸特征矩阵分别进行归一化处理,得到待比对人脸图片特征矩阵和底库人脸图片特征矩阵;
根据所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵确定n组待载入元素,其中,n为底库人脸图片的组数;
每次将n组待载入元素中z组待载入元素载入至z个GPU中,同时进行人脸比对加速处理,得到比对结果,其中,1<z≤n。
2.根据权利要求1所述的方法,其特征在于,根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸特征矩阵和底库人脸特征矩阵,包括:
根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸图片的列表变量和底库人脸图片的列表变量;
分别对所述待识别人脸图片的列表变量和所述底库人脸图片的列表变量进行人脸特征提取,得到待识别人脸特征矩阵和底库人脸特征矩阵。
3.根据权利要求1所述的方法,其特征在于,根据所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵确定n组待载入元素,包括:
将所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵转化为张量数据格式;将转化为张量数据格式的底库人脸图片特征矩阵分割成n个张量,其中,每个张量的尺寸根据特征向量维度及图片个数确定,n与图片个数的乘积等于获取的底库人脸图片的数量;
根据所述n个张量及所述转化为张量数据格式的待比对人脸图片矩阵确定n组待载入元素。
4.根据权利要求3所述的方法,其特征在于,每次将n组待载入元素中z组待载入元素载入至z个GPU中,同时进行人脸比对加速处理,包括:
每次将n组待载入元素中z组待载入元素载入至z个GPU中,在每个GPU上同时进行张量的点乘运算,得到n个分数矩阵;
遍历由所述n个分数矩阵组成的列表,每次获取z个分数矩阵,得到多组分数矩阵;
从每一组分数矩阵中选取排序前i个子张量,将每选取到的i个子张量组成一个人脸相似度分数子张量,其中,i为正数;
将相邻的人脸相似度分数子张量载入同一个GPU中进行加速处理。
5.根据权利要求4所述的方法,其特征在于,从每一组分数矩阵中选取排序前i个子张量,将每选取到的i个子张量组成一个人脸相似度分数子张量,包括:
对每一组z个分数矩阵中的每个分数矩阵进行排序,选取每行前i个的子张量组成人脸相似度分数子张量,每一组选取完毕后,确定出的n个人脸相似度分数子张量存储至分数列表变量中,并将所选取的分数矩阵的列序号存储至索引列表变量中,其中,每一个索引对应一个人脸相似度分数子张量。
6.根据权利要求5所述的方法,其特征在于,将相邻的人脸相似度分数子张量载入同一个GPU中进行加速处理,包括:
将所述分数列表变量中的每相邻两个人脸相似度分数子张量组成人脸相似度分数子张量对,将所述人脸相似度分数子张量对载入至z个GPU中进行拼接,得到融合张量;
当每个GPU当前运算完毕后,继续载入所述分数列表变量中剩余的人脸相似度分数子张量对,直至所述分数列表变量中的所有元素计算完毕。
7.一种人脸比对的设备,其特征在于,所述设备包括:
获取装置,用于根据获取的待识别人脸图片确定待识别人脸图片矩阵,根据获取的底库人脸图片确定底库人脸图片矩阵;
确定矩阵装置,用于根据所述待识别人脸图片矩阵和所述底库人脸图片矩阵分别确定待识别人脸特征矩阵和底库人脸特征矩阵;
归一化处理装置,用于将所述待识别人脸特征矩阵和底库人脸特征矩阵分别进行归一化处理,得到待比对人脸图片特征矩阵和底库人脸图片特征矩阵;
确定装置,用于根据所述待比对人脸图片特征矩阵和底库人脸图片特征矩阵确定n组待载入元素,其中,n为底库人脸图片的组数;
比对装置,用于每次将n组待载入元素中z组待载入元素载入至z个GPU中,同时进行人脸比对加速处理,得到比对结果,其中,1<z≤n。
8.一种人脸比对的设备,其特征在于,所述设备包括:
一个或多个处理器;以及
存储有计算机可读指令的存储器,所述计算机可读指令在被执行时使所述处理器执行如权利要求1至6中任一项所述方法的操作。
9.一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行以实现如权利要求1至6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911128937.6A CN110879984A (zh) | 2019-11-18 | 2019-11-18 | 一种人脸比对的方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911128937.6A CN110879984A (zh) | 2019-11-18 | 2019-11-18 | 一种人脸比对的方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110879984A true CN110879984A (zh) | 2020-03-13 |
Family
ID=69729818
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911128937.6A Pending CN110879984A (zh) | 2019-11-18 | 2019-11-18 | 一种人脸比对的方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110879984A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111310743A (zh) * | 2020-05-11 | 2020-06-19 | 腾讯科技(深圳)有限公司 | 人脸识别方法、装置、电子设备及可读存储介质 |
CN111552828A (zh) * | 2020-04-26 | 2020-08-18 | 上海天诚比集科技有限公司 | 一种1比n人脸比对方法 |
CN111723647A (zh) * | 2020-04-29 | 2020-09-29 | 平安国际智慧城市科技股份有限公司 | 基于路径的人脸识别方法、装置、计算机设备和存储介质 |
CN112036370A (zh) * | 2020-09-22 | 2020-12-04 | 济南博观智能科技有限公司 | 一种人脸特征比对方法、系统、设备及计算机存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180005017A1 (en) * | 2015-11-26 | 2018-01-04 | Tencent Technology (Shenzhen) Company Limited | Face model matrix training method and apparatus, and storage medium |
CN107577990A (zh) * | 2017-08-09 | 2018-01-12 | 武汉世纪金桥安全技术有限公司 | 一种基于gpu加速检索的大规模人脸识别方法 |
CN109214273A (zh) * | 2018-07-18 | 2019-01-15 | 平安科技(深圳)有限公司 | 人脸图像比对方法、装置、计算机设备及存储介质 |
-
2019
- 2019-11-18 CN CN201911128937.6A patent/CN110879984A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180005017A1 (en) * | 2015-11-26 | 2018-01-04 | Tencent Technology (Shenzhen) Company Limited | Face model matrix training method and apparatus, and storage medium |
CN107577990A (zh) * | 2017-08-09 | 2018-01-12 | 武汉世纪金桥安全技术有限公司 | 一种基于gpu加速检索的大规模人脸识别方法 |
CN109214273A (zh) * | 2018-07-18 | 2019-01-15 | 平安科技(深圳)有限公司 | 人脸图像比对方法、装置、计算机设备及存储介质 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111552828A (zh) * | 2020-04-26 | 2020-08-18 | 上海天诚比集科技有限公司 | 一种1比n人脸比对方法 |
CN111723647A (zh) * | 2020-04-29 | 2020-09-29 | 平安国际智慧城市科技股份有限公司 | 基于路径的人脸识别方法、装置、计算机设备和存储介质 |
CN111723647B (zh) * | 2020-04-29 | 2022-04-15 | 平安国际智慧城市科技股份有限公司 | 基于路径的人脸识别方法、装置、计算机设备和存储介质 |
CN111310743A (zh) * | 2020-05-11 | 2020-06-19 | 腾讯科技(深圳)有限公司 | 人脸识别方法、装置、电子设备及可读存储介质 |
CN111310743B (zh) * | 2020-05-11 | 2020-08-25 | 腾讯科技(深圳)有限公司 | 人脸识别方法、装置、电子设备及可读存储介质 |
CN112036370A (zh) * | 2020-09-22 | 2020-12-04 | 济南博观智能科技有限公司 | 一种人脸特征比对方法、系统、设备及计算机存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110879984A (zh) | 一种人脸比对的方法及设备 | |
US20220230420A1 (en) | Artificial intelligence-based object detection method and apparatus, device, and storage medium | |
US11210522B2 (en) | Sample extraction method and device targeting video classification problem | |
US10621764B2 (en) | Colorizing vector graphic objects | |
CN111275784B (zh) | 生成图像的方法和装置 | |
CN115391578B (zh) | 一种跨模态图文检索模型训练方法及系统 | |
CN109284700B (zh) | 图像中多个人脸检测的方法、存储介质、设备及系统 | |
CN112348028A (zh) | 一种场景文本检测方法、批改方法、装置、电子设备及介质 | |
CN111405314B (zh) | 一种信息处理方法、装置、设备及存储介质 | |
CN115344805A (zh) | 素材审核方法、计算设备及存储介质 | |
CN110570348A (zh) | 一种脸部图像替换方法及设备 | |
AU2021240205B1 (en) | Object sequence recognition method, network training method, apparatuses, device, and medium | |
CN111814820A (zh) | 图像处理方法及装置 | |
WO2020114422A1 (zh) | 处理数据的方法和数据处理装置 | |
US20220044104A1 (en) | Method and apparatus for forward computation of neural network, and computer-readable storage medium | |
CN118277604A (zh) | 一种基于超维矢量计算的图像检索方法 | |
CN113240050A (zh) | 一种特征融合权重可调的金属打印熔池检测方法 | |
CN117315752A (zh) | 人脸情绪识别网络模型的训练方法、装置、设备和介质 | |
CN111062385A (zh) | 一种用于图像文本信息检测的网络模型构建方法与系统 | |
CN111815638B (zh) | 视频分割网络模型的训练方法、视频分割方法及相关设备 | |
CN113139463B (zh) | 用于训练模型的方法、装置、设备、介质和程序产品 | |
CN112950638B (zh) | 图像分割方法、装置、电子设备及计算机可读存储介质 | |
CN113724261A (zh) | 一种基于卷积神经网络的快速图像构图方法 | |
WO2023047164A1 (en) | Object sequence recognition method, network training method, apparatuses, device, and medium | |
CN111931677A (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 | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20230228 |