CN111382727A - 一种基于深度学习的犬脸识别方法 - Google Patents
一种基于深度学习的犬脸识别方法 Download PDFInfo
- Publication number
- CN111382727A CN111382727A CN202010256214.0A CN202010256214A CN111382727A CN 111382727 A CN111382727 A CN 111382727A CN 202010256214 A CN202010256214 A CN 202010256214A CN 111382727 A CN111382727 A CN 111382727A
- Authority
- CN
- China
- Prior art keywords
- dog
- face
- dog face
- image
- detection network
- 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
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- 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/20—Image preprocessing
-
- 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/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/462—Salient features, e.g. scale invariant feature transforms [SIFT]
-
- 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)
- Biophysics (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Human Computer Interaction (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于深度学习的犬脸识别方法。本发明包括如下步骤:对犬只图像构造图像金字塔,将金字塔中的图像送入第一检测网络,得到大量候选犬脸区域;对候选犬脸区域进行过滤和调整,送入第二检测网络,得到最终的犬脸区域;基于脸部特征点对犬脸图像进行仿射变换,得到对齐后的犬脸图像;将对齐后的犬脸图像缩放到合适尺寸,并进行归一化后,送入特征提取网络,得到犬脸特征;重复上述步骤构造包含犬只信息和犬脸特征的犬只底库;计算待识别的犬只图像的犬脸特征与犬只底库中每个犬脸特征的欧式距离,欧式距离最小的即为最终识别出的犬只。本发明训练特征提取网络时使用TripletLoss损失函数进行反向传播和优化,提高了算法效率和识别的准确度。
Description
技术领域
本发明属于深度学习图像识别技术领域,特别是涉及一种基于深度学习的犬脸识别方法。
背景技术
近年来,我国犬只数量持续快速增长。2019年,全国城镇宠物犬数量已经高达5000万只以上。犬只伤人甚至致死事件时有发生,已经对广大人民群众的生命财产安全带来了严重威胁。如何有效地对数量巨大的犬只进行有效识别和管理,已成为公共安全领域的一个重大课题。
目前,对犬只进行识别主要有三种方法:一是办理养犬证明,二是给犬只带上标志身份的标牌、项圈或二维码,三是给犬只植入微芯片。第一种方法需要养犬人每年定期复检,且犬只一旦丢失成为流浪犬,其他人就无法再确定犬只身份,养犬人也无有效途径寻回丢失的犬只。第二种方法虽然方便,但标牌、项圈或二维码很容易丢失。第三种方法比较可靠,但微芯片需要专门的读取器才能读出身份信息,且有可能在血液中流动,实际使用时不够便捷。
随着人工智能技术的盛行,一些基于深度学习的犬脸识别方法已相继被提出。但这些方法基本都在后台PC服务器端运行,消耗的CPU和内存资源较大,无法应用于移动端设备。为了方便公共安全管理人员,特别是偏远地区的管理人员对犬只进行有效管控,需要设计一种能在移动端实时识别犬脸的方法,能够有效解决上述问题。
发明内容
本发明的目的在于提供一种基于深度学习的犬脸识别方法,通过在移动端设备部署犬脸检测系统,对犬只进行实时高效的犬脸识别,再配合本地犬只数据库,能够在无网络的环境下进行犬脸识别,解决了现有的犬脸检测系统部署在后台服务器时,占用CPU和内存资源大以及犬脸识别不够精准的问题。
为解决上述技术问题,本发明是通过以下技术方案实现的:
本发明为一种基于深度学习的犬脸识别方法,包括如下步骤:
步骤S1:构建由第一检测网络、第二检测网络和特征提取网络依次连接的深度神经网络模型;
步骤S2:对犬只图像构造图像金字塔,将金字塔中的图像送入第一检测网络,得到大量候选犬脸区域;
步骤S3:对候选犬脸区域进行过滤和调整,缩放到合适尺寸,送入第二检测网络,得到最终的犬脸区域;
步骤S4:基于脸部特征点对犬脸图像进行仿射变换,得到对齐后的犬脸图像;
步骤S5:将对齐后的犬脸图像缩放到合适尺寸,并进行归一化后,送入特征提取网络,得到犬脸特征;
步骤S6:重复步骤S2至步骤S5,构造包含犬只信息和犬脸特征的犬只底库;
步骤S7:计算待识别的犬只图像的犬脸特征与步骤S6中犬只底库中每个犬脸特征的欧式距离,欧式距离最小的即为最终识别出的犬只。
优选地,所述步骤S2中,第一检测网络将犬只图像作为输入,经过三个轻量级卷积层后,通过一个犬脸二分类器softmax来判断该区域是否为犬脸,并通过边框特征和面部关键点特征的回归来进行犬脸区域的粗定位,最终会生成大量犬脸的候选区域。
优选地,所述步骤S3中,第二检测网络使用第一检测网络输出的候选犬脸区域作为输入,经过四个轻量级卷积层和一个全连接层后,通过一个犬脸二分类器softmax来判断该区域是否为犬脸,并通过边框特征和面部关键点特征的回归来进行犬脸的边框和面部特征点的精确定位,最终过滤掉效果差的犬脸的候选区域。
优选地,所述步骤S5中,候选犬脸区域输入特征提取网络处理时,选取MobileNetV2作为基准网络,使用全局Depthwise卷积层代替全局平均池化层。
优选地,所述深度神经网络模型的训练步骤如下:
步骤S61:采集犬只图像,清洗和过滤掉不符合要求的图像,对犬只的犬脸部分进行标注,包括犬脸边框和脸部特征点;
步骤S62:使用上述图像和标注信息构建图像金字塔,得到大量的正负样本,训练第一检测网络,得到模型文件;
步骤S63:使用第一检测网络模型对部分犬只图像进行检测,将置信度高于阈值的区域作为困难样本挖掘的来源,获得部分正负样本;
步骤S64:将上述获得的正负样本与原始图像中的正负样本进行合并,缩放到合适尺寸,训练第二检测网络,得到模型文件;
步骤S65:使用第二检测网络模型对原始图像进行检测,获取裁剪后的犬脸部分图像。犬脸图像基于脸部特征点进行仿射变换,得到对齐后的图像;
步骤S66:使用上述犬脸图像和TripletLoss损失函数训练特征提取网络;
步骤S67:训练完成后,得到模型文件和一个距离阈值,当两个犬脸图像的欧式距离小于该阈值时,则认定为相同的犬只;否则,认定为不同的犬只。
本发明具有以下有益效果:
(1)本发明的犬脸检测网络通过两阶段方式构建,第一阶段快速初选,第二阶段精准定位,检测效率高;特征提取网络基于MobileNetV2调整了网络结构,并使用全局深度卷积,提升了算法效率和特征精度;训练特征提取网络时,使用TripletLoss损失函数进行反向传播和优化,提高了识别的准确度。
(2)本发明通过在移动端设备部署犬脸检测系统,对犬只进行实时高效的犬脸识别,配合本地犬只数据库,能够在无网络的环境下进行犬脸识别,大大方便了公共安全管理人员的执法和管控。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的一种基于深度学习的犬脸识别方法流程图;
图2为本发明实施例中第一检测网络的结构流程图;
图3为本发明实施例中第二检测网络的结构流程图;
图4为本发明实施例中特征提取网络的结构流程图;
图5为本发明实施例中训练犬脸识别深度神经网络的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
请参阅图1所示,本发明为一种基于深度学习的犬脸识别方法,包括如下步骤:
步骤S1:构建由第一检测网络、第二检测网络和特征提取网络依次连接的深度神经网络模型;
步骤S2:对犬只图像构造图像金字塔,其尺寸为16*16*3,将金字塔中的图像送入第一检测网络,进行边框回归和NMS后,得到大量候选犬脸区域;
步骤S3:对候选犬脸区域进行过滤和调整,缩放到32*32*3,送入第二检测网络,进行边框回归和NMS后,得到最终的犬脸区域,包括犬脸边框和脸部特征点;
步骤S4:基于脸部特征点对犬脸图像进行仿射变换,得到对齐后的犬脸图像;
步骤S5:将对齐后的犬脸图像缩放到112*112*3,并进行归一化后,送入特征提取网络,得到128维度的犬脸特征;
步骤S6:重复步骤S2至步骤S5,构造包含犬只信息和犬脸特征的犬只底库;
步骤S7:计算待识别的犬只图像的犬脸特征与步骤S6中犬只底库中每个犬脸特征的欧式距离,欧式距离最小的即为最终识别出的犬只。
其中,步骤S2中,第一检测网络将犬只图像作为输入,经过三个轻量级卷积层后,通过一个犬脸二分类器softmax来判断该区域是否为犬脸,并通过维度为1*1*4的边框特征和维度为1*1*6的面部关键点特征的回归来进行犬脸区域的粗定位,最终会生成大量犬脸的候选区域。
由于网络简单,隐藏层部分只有3个卷积层,且没有使用任何全连接层,速度会非常快。通过第一检测网络后,大量非犬脸的图像会被过滤掉,减少了后续网络的运算量,其主要结构如下表1所示:
输入 | 输出 | |
输入层 | RGB三通道数据格式 | input |
卷积层 | input | conv1 |
最大池化层 | conv1 | pool1 |
卷积层 | pool1 | conv2 |
卷积层 | conv2 | conv3 |
卷积层 | conv3 | conv4-1 |
卷积层 | conv3 | conv4-2 |
卷积层 | conv3 | conv4-3 |
Softmax层 | conv4-1 | probe1 |
表1为第一检测网络结构表
其中,步骤S3中,第二检测网络使用第一检测网络输出的候选犬脸区域作为输入,经过四个轻量级卷积层和一个全连接层后,通过一个犬脸二分类器softmax来判断该区域是否为犬脸,并使用维度为4的边框特征和维度为6的面部关键点特征的回归来进行犬脸的边框和面部特征点的精确定位,最终过滤掉效果差的犬脸的候选区域。
第二检测网络与第一检测网络相比,更为复杂,由于增加了一个卷积层和一个维度较大的全连接层,保留了更多的犬脸图像的特征,会过滤掉大量效果较差的候选犬脸区域,其主要结构如下表2所示:
输入 | 输出 | |
输入层 | RGB三通道数据格式 | input |
卷积层 | input | conv1 |
最大池化层 | conv1 | pool1 |
卷积层 | pool1 | conv2 |
最大池化层 | conv2 | pool2 |
卷积层 | conv2 | conv3 |
最大池化层 | conv3 | pool3 |
卷积层 | pool3 | conv4 |
全连接层 | conv4 | fc5 |
全连接层 | fc5 | fc6-1 |
全连接层 | fc5 | fc6-2 |
全连接层 | fc5 | fc6-3 |
Softmax层 | fc6-1 | probe1 |
表2为第二检测网络结构表
其中,步骤S5中,特征提取网络会对第二检测网络生成候选犬脸区域输入特征提取网络处理时,选取MobileNetV2作为基准网络。
为了提高推理效率和优化识别结果,对MobileNetV2网络的结构进行了部分调整,主要包括:
一、不使用全连接层,因为全连接层会大大增加网络的复杂度和参数数量,导致模型效率降低。
二、使用全局Depthwise卷积层代替全局平均池化层。使用全局平均池化时,每个神经元都有完全相同的权重系数,会导致网络提取到的信息不够多元和丰富,进而导致特征的精度下降。使用全局Depthwise卷积层时,假设输入特征I的尺寸为W*H*C,全局Depthwise卷积层的卷积核K的尺寸也为W*H*C,输出特征O使用I*K的深度卷积运算后,尺寸为1*1*C。可以看到,此时不同的神经元拥有不同的重要性和权重系数,提取出的特征更为准确,模型效果更佳。
三、减小瓶颈块的个数和扩展因子等参数。犬脸与人脸不同,犬脸面部区域包含大量的毛发,这些毛发的特征并不明显,基本无法作为后续识别的依据。也就是说,相对于人脸,犬脸的有效特征要更少一些,网络也可以更简单一些。因此,对上述参数进行调整,可进一步提升特征提取网络的效率,并且不会明显降低提取出的特征的精度。
特征提取网络的主要结构如下表3所示:
输入 | 输出 | |
输入层 | RGB三通道数据格式 | input |
卷积层 | input | conv1 |
Depthwise卷积层 | conv1 | conv2 |
4个瓶颈块 | conv2 | bn3 |
1个瓶颈块 | bn3 | bn4 |
5个瓶颈块 | bn4 | bn5 |
1个瓶颈块 | bn5 | bn6 |
4个瓶颈块 | bn6 | bn7 |
全局Depthwise卷积层 | bn7 | gconv8 |
表3为特征提取网络结构表
其中,深度神经网络模型的训练步骤如下:
步骤S61:采集犬只图像,尽量覆盖不同光照、距离、角度、品种、表情等各种情况,同一只犬只需要采集多张图像。清洗和过滤掉不清晰、过曝等不符合要求的图像,对犬只的犬脸部分进行标注,包括犬脸边框和脸部特征点。与人脸不同,一些脸部毛发较多的犬只,嘴部基本都被遮挡住了,因此仅选取左眼、右眼和鼻子作为脸部特征点。将图像和标注后的信息基于不同的犬只进行分目录保存,相同犬只的图像保存在同一个目录下;
步骤S62:使用上述图像和标注信息构建图像金字塔,得到大量的正负样本,训练第一检测网络,得到模型文件;
步骤S63:使用第一检测网络模型对部分犬只图像进行检测,将置信度高于阈值的区域作为困难样本挖掘的来源,获得部分正负样本;
步骤S64:将上述获得的正负样本与原始图像中的正负样本进行合并,缩放到合适尺寸,训练第二检测网络,得到模型文件;
步骤S65:使用第二检测网络模型对原始图像进行检测,获取裁剪后的犬脸部分图像。犬脸图像基于脸部特征点进行仿射变换,得到对齐后的图像;
步骤S66:使用上述犬脸图像和TripletLoss损失函数训练特征提取网络,TripletLoss基于一个三元组(b,p,n),其中,b表示基准的犬脸图像,p与b属于相同的犬只,n与b属于不同的犬只,TripletLoss损失函数使得相同犬只的类内距离最小化,不同犬只的类间距离最大化;
步骤S67:训练完成后,得到模型文件和一个距离阈值,当两个犬脸图像的欧式距离小于该阈值时,则认定为相同的犬只;否则,认定为不同的犬只。
本发明提供的犬脸识别方法在arm cortex a9800MHz CPU的移动端设备上运行,经过大量测试得知,当犬只图像的分辨率为640x480时,能够使犬脸识别耗时40毫秒以内完成,耗时最短且实时帧率达到25帧/秒以上,准确率达到96%以上。
本实施例的一个具体应用为:
构建由第一检测网络、第二检测网络和特征提取网络依次连接的深度神经网络模型;
其中,第一检测网络是一个犬脸的候选区域检测网络,如图2所示,该网络将16x16分辨率的RGB三通道犬只图像作为输入,经过conv1、pool1、conv2和conv3后,通过一个犬脸二分类器softmax的输出probe1来判断该区域是否为犬脸,并使用边框特征conv4-2和面部关键点特征conv4-3的回归来进行犬脸区域的粗定位,以生成犬脸的候选区域。由于隐藏层部分只有conv1、conv2和conv3这三个轻量级的卷积层,且输出没有使用任何全连接层,而是使用卷积层代替,速度会非常快。同时,该网络会使用边框回归和NMS来进一步优化检测结果。其主要结构如下:
(1)输入层,尺寸为16*16*3,RGB三通道数据格式,输出为input。
(2)卷积层,核大小为3*3,核数量为10,激活函数为PReLU,输入为input,输出为conv1,其大小为14*14*10。
(3)最大池化层,核大小为2*2,步长为2,输入为conv1,输出为pool1,其大小为7*7*10。
(4)卷积层,核大小为3*3,核数量为16,激活函数为PReLU,输入为pool1,输出为conv2,其大小为5*5*16。
(5)卷积层,核大小为5*5,核数量为32,激活函数为PReLU,输入为conv2,输出为conv3,其大小为1*1*32。
(6)卷积层,核大小为1*1,核数量为2,输入为conv3,输出为conv4-1,其大小为1*1*2。
(7)卷积层,核大小为1*1,核数量为4,输入为conv3,输出为conv4-2,其大小为1*1*4,用于获取犬脸的矩形边框区域。
(8)卷积层,核大小为1*1,核数量为6,输入为conv3,输出为conv4-3,其大小为1*1*6,用于获取犬脸的特征点。
(9)softmax层,输入为conv4-1,输出为probe1,用于获取犬脸的置信度。
如图3所示,第二检测网络将第一检测网络输出的候选犬脸区域调整到32*32*3后作为输入,经过conv1、conv2、conv3、conv4这四个卷积层和fc5全连接层后,通过一个犬脸二分类器softmax的输出probe1来判断该区域是否为犬脸,并使用边框特征fc6-2和面部关键点特征fc6-3的回归来进行犬脸的边框和面部特征点的精确定位。同时,该网络会使用边框回归和NMS来进一步优化检测结果。其主要结构如下:
(1)输入层,尺寸为32*32*3,RGB三通道数据格式,输出为input。
(2)卷积层,核大小为3*3,核数量为32,激活函数为PReLU,输入为input,输出为conv1,其大小为30*30*32。
(3)最大池化层,核大小为2*2,步长为2,输入为conv1,输出为pool1,其大小为15*15*32。
(4)卷积层,核大小为3*3,核数量为64,激活函数为PReLU,输入为pool1,输出为conv2,其大小为13*13*64。
(5)最大池化层,核大小为2*2,步长为2,输入为conv2,输出为pool2,其大小为7*7*64。
(6)卷积层,核大小为3*3,核数量为64,激活函数为PReLU,输入为pool2,输出为conv3,其大小为5*5*64。
(7)最大池化层,核大小为2*2,步长为2,输入为conv3,输出为pool3,其大小为3*3*64。
(8)卷积层,核大小为1*1,核数量为128,激活函数为PReLU,输入为pool3,输出为conv4,其大小为3*3*128。
(9)全连接层,核数量为256,dropout的比率为0.2,激活函数为PReLU,输入为conv4,输出为fc5,其大小为256。
(10)全连接层,核数量为2,输入为fc5,输出为fc6-1,其大小为2。
(11)全连接层,核数量为4,输入为fc5,输出为fc6-2,其大小为4,用于获取犬脸的矩形边框区域。
(12)全连接层,核数量为6,输入为fc5,输出为fc6-3,其大小为6,用于获取犬脸的特征点。
(13)softmax层,输入为fc6-1,输出为probe1,用于获取犬脸的置信度。
如图4所示,特征提取网络以MobileNetV2为基准,对第二检测网络生成的犬脸区域进行对齐,并缩放到112*112*3的尺寸,再送入一系列的卷积层和瓶颈块进行犬脸特征的提取。为了提高推理效率和优化识别结果,对MobileNetV2网络的结构进行了部分调整,其主要结构如下:
(1)输入层,尺寸为112*112*3,RGB三通道数据格式,输出为input。
(2)卷积层,核大小为3*3,核数量为64,步长为2,输入为input,输出为conv1,其大小为56*56*64。
(3)Depthwise卷积层,核大小为3*3,核数量为64,步长为1,对齐模式为SAME,输入为conv1,输出为conv2,其大小为56*56*64。
(4)4个瓶颈块,通道数为64,第一个瓶颈块步长为2,其余步长为1,扩展因子为2,输入为conv2,输出为bn3,其大小为28*28*64。
(5)1个瓶颈块,通道数为128,步长为2,扩展因子为5,输入为bn3,输出为bn4,其大小为14*14*128。
(6)5个瓶颈块,通道数为128,步长为1,扩展因子为3,输入为bn4,输出为bn5,其大小为14*14*128。
(7)1个瓶颈块,通道数为128,步长为2,扩展因子为5,输入为bn5,输出为bn6,其大小为7*7*128。
(8)4个瓶颈块,通道数为128,步长为1,扩展因子为3,输入为bn6,输出为bn7,其大小为7*7*128。
(9)全局Depthwise卷积层,核大小为7*7,核数量为128,输入为bn7,输出为gconv8,其大小为1*1*128。
如图5所示,训练深度神经网络模型的主要步骤如下:
(1)采集10万只左右的犬只图像,尽量覆盖不同光照、距离、角度、表情等各种情况,同一只犬只需要采集50到100张图像。清洗和过滤掉不清晰、过曝等不符合要求的图像,对犬只的犬脸部分进行标注,包括犬脸边框和脸部特征点。与人脸不同,一些脸部毛发较多的犬只,嘴部基本都被遮挡住了,因此仅选取左眼、右眼和鼻子作为脸部特征点。将图像和标注后的信息基于不同的犬只进行分目录保存,相同犬只的图像保存在同一个目录下。
(2)使用上述图像和标注信息构建图像金字塔,得到大量的16x16x3尺寸的正负样本。训练第一检测网络,得到模型文件。
(3)使用第一检测网络模型对部分犬只图像进行检测,将置信度高于0.6的区域作为困难样本挖掘的来源,获得部分正负样本。
(4)将上述获得的正负样本与原始图像中的正负样本进行合并,缩放到32x32x3尺寸。训练第二检测网络,得到模型文件。
(5)使用第二检测网络模型对原始图像进行检测,获取裁剪后的犬脸部分图像。犬脸图像基于脸部特征点进行仿射变换,得到对齐后的图像。对齐后,后续提取的脸部特征会更加精确。
(6)使用上述犬脸图像和TripletLoss损失函数训练特征提取网络。TripletLoss基于一个三元组(b,p,n),其中,b表示基准的犬脸图像,p与b属于相同的犬只,n与b属于不同的犬只。TripletLoss损失函数使得相同犬只的类内距离最小化,不同犬只的类间距离最大化。训练完成后,得到模型文件和一个距离阈值。当两个犬脸图像的欧式距离小于该阈值时,可认为是相同的犬只,否则,认为是不同的犬只。
本发明的犬脸识别方法在arm cortex a9800MHz CPU的移动端设备上运行,犬只图像的分辨率为640x480时,犬脸识别耗时40毫秒以内,实时帧率达到25帧/秒以上,准确率达到96%以上。
值得注意的是,上述系统实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
另外,本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,相应的程序可以存储于一计算机可读取存储介质中。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (5)
1.一种基于深度学习的犬脸识别方法,其特征在于,包括如下步骤:
步骤S1:构建由第一检测网络、第二检测网络和特征提取网络依次连接的深度神经网络模型;
步骤S2:对犬只图像构造图像金字塔,将金字塔中的图像送入第一检测网络,得到大量候选犬脸区域;
步骤S3:对候选犬脸区域进行过滤和调整,缩放到合适尺寸,送入第二检测网络,得到最终的犬脸区域;
步骤S4:基于脸部特征点对犬脸图像进行仿射变换,得到对齐后的犬脸图像;
步骤S5:将对齐后的犬脸图像缩放到合适尺寸,并进行归一化后,送入特征提取网络,得到犬脸特征;
步骤S6:重复步骤S2至步骤S5,构造包含犬只信息和犬脸特征的犬只底库;
步骤S7:计算待识别的犬只图像的犬脸特征与步骤S6中犬只底库中每个犬脸特征的欧式距离,欧式距离最小的即为最终识别出的犬只。
2.根据权利要求1所述的一种基于深度学习的犬脸识别方法,其特征在于,所述步骤S2中,第一检测网络将犬只图像作为输入,经过三个轻量级卷积层后,通过一个犬脸二分类器softmax来判断该区域是否为犬脸,并通过边框特征和面部关键点特征的回归来进行犬脸区域的粗定位,最终会生成大量犬脸的候选区域。
3.根据权利要求1所述的一种基于深度学习的犬脸识别方法,其特征在于,所述步骤S3中,第二检测网络使用第一检测网络输出的候选犬脸区域作为输入,经过四个轻量级卷积层和一个全连接层后,通过一个犬脸二分类器softmax来判断该区域是否为犬脸,并通过边框特征和面部关键点特征的回归来进行犬脸的边框和面部特征点的精确定位,最终过滤掉效果差的犬脸的候选区域。
4.根据权利要求1所述的一种基于深度学习的犬脸识别方法,其特征在于,所述步骤S5中,候选犬脸区域输入特征提取网络处理时,选取MobileNetV2作为基准网络,使用全局Depthwise卷积层代替全局平均池化层。
5.根据权利要求1所述的一种基于深度学习的犬脸识别方法,其特征在于,所述深度神经网络模型的训练步骤如下:
步骤S61:采集犬只图像,清洗和过滤掉不符合要求的图像,对犬只的犬脸部分进行标注,包括犬脸边框和脸部特征点;
步骤S62:使用上述图像和标注信息构建图像金字塔,得到大量的正负样本,训练第一检测网络,得到模型文件;
步骤S63:使用第一检测网络模型对部分犬只图像进行检测,将置信度高于阈值的区域作为困难样本挖掘的来源,获得部分正负样本;
步骤S64:将上述获得的正负样本与原始图像中的正负样本进行合并,缩放到合适尺寸,训练第二检测网络,得到模型文件;
步骤S65:使用第二检测网络模型对原始图像进行检测,获取裁剪后的犬脸部分图像。犬脸图像基于脸部特征点进行仿射变换,得到对齐后的图像;
步骤S66:使用上述犬脸图像和TripletLoss损失函数训练特征提取网络;
步骤S67:训练完成后,得到模型文件和一个距离阈值,当两个犬脸图像的欧式距离小于该阈值时,则认定为相同的犬只;否则,认定为不同的犬只。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010256214.0A CN111382727B (zh) | 2020-04-02 | 2020-04-02 | 一种基于深度学习的犬脸识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010256214.0A CN111382727B (zh) | 2020-04-02 | 2020-04-02 | 一种基于深度学习的犬脸识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111382727A true CN111382727A (zh) | 2020-07-07 |
CN111382727B CN111382727B (zh) | 2023-07-25 |
Family
ID=71222919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010256214.0A Active CN111382727B (zh) | 2020-04-02 | 2020-04-02 | 一种基于深度学习的犬脸识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111382727B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GR1010102B (el) * | 2021-03-26 | 2021-10-15 | Breed Ike, | Συστημα αναγνωρισης προσωπου ζωων |
WO2022012179A1 (zh) * | 2020-07-16 | 2022-01-20 | 北京字节跳动网络技术有限公司 | 生成特征提取网络的方法、装置、设备和计算机可读介质 |
CN114821658A (zh) * | 2022-05-11 | 2022-07-29 | 平安科技(深圳)有限公司 | 牛脸识别方法、运行控制装置、电子设备及存储介质 |
CN115240230A (zh) * | 2022-09-19 | 2022-10-25 | 星宠王国(北京)科技有限公司 | 一种犬类脸部检测模型训练方法、装置、检测方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109344693A (zh) * | 2018-08-13 | 2019-02-15 | 华南理工大学 | 一种基于深度学习的人脸多区域融合表情识别方法 |
US20190108735A1 (en) * | 2017-10-10 | 2019-04-11 | Weixin Xu | Globally optimized recognition system and service design, from sensing to recognition |
CN109859190A (zh) * | 2019-01-31 | 2019-06-07 | 北京工业大学 | 一种基于深度学习的目标区域检测方法 |
-
2020
- 2020-04-02 CN CN202010256214.0A patent/CN111382727B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20190108735A1 (en) * | 2017-10-10 | 2019-04-11 | Weixin Xu | Globally optimized recognition system and service design, from sensing to recognition |
CN109344693A (zh) * | 2018-08-13 | 2019-02-15 | 华南理工大学 | 一种基于深度学习的人脸多区域融合表情识别方法 |
CN109859190A (zh) * | 2019-01-31 | 2019-06-07 | 北京工业大学 | 一种基于深度学习的目标区域检测方法 |
Non-Patent Citations (1)
Title |
---|
傅勇;潘晴;田妮莉;杨志景;BINGO WING-KUEN LING;EVERETT.X.WANG;: "改进级联卷积神经网络的平面旋转人脸检测" * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022012179A1 (zh) * | 2020-07-16 | 2022-01-20 | 北京字节跳动网络技术有限公司 | 生成特征提取网络的方法、装置、设备和计算机可读介质 |
GR1010102B (el) * | 2021-03-26 | 2021-10-15 | Breed Ike, | Συστημα αναγνωρισης προσωπου ζωων |
CN114821658A (zh) * | 2022-05-11 | 2022-07-29 | 平安科技(深圳)有限公司 | 牛脸识别方法、运行控制装置、电子设备及存储介质 |
CN114821658B (zh) * | 2022-05-11 | 2024-05-14 | 平安科技(深圳)有限公司 | 牛脸识别方法、运行控制装置、电子设备及存储介质 |
CN115240230A (zh) * | 2022-09-19 | 2022-10-25 | 星宠王国(北京)科技有限公司 | 一种犬类脸部检测模型训练方法、装置、检测方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111382727B (zh) | 2023-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111382727B (zh) | 一种基于深度学习的犬脸识别方法 | |
CN110516571B (zh) | 基于光流注意力神经网络的跨库微表情识别方法及装置 | |
CN103136533B (zh) | 基于动态阈值的人脸识别方法及装置 | |
CN108009482A (zh) | 一种提高人脸识别效率方法 | |
CN107967458A (zh) | 一种人脸识别方法 | |
CN107871101A (zh) | 一种人脸检测方法及装置 | |
CN104992223A (zh) | 基于深度学习的密集人数估计方法 | |
CN111241975B (zh) | 一种基于移动端边缘计算的人脸识别检测方法及系统 | |
CN107145889A (zh) | 基于具有RoI池化的双CNN网络的目标识别方法 | |
CN109284733A (zh) | 一种基于yolo和多任务卷积神经网络的导购消极行为监控方法 | |
CN109801265B (zh) | 一种基于卷积神经网络的实时输电设备异物检测系统 | |
CN105335716A (zh) | 一种基于改进udn提取联合特征的行人检测方法 | |
CN105095870A (zh) | 基于迁移学习的行人重识别方法 | |
CN106169071A (zh) | 一种基于动态人脸与胸卡识别的考勤方法及系统 | |
CN104504395A (zh) | 基于神经网络实现人车分类的方法和系统 | |
Lu et al. | Multi-object detection method based on YOLO and ResNet hybrid networks | |
CN111191564A (zh) | 基于多角度神经网络的多姿态人脸情绪识别方法及系统 | |
CN108345900B (zh) | 基于颜色纹理分布特征的行人重识别方法及其系统 | |
CN109977887A (zh) | 一种抗年龄干扰的人脸识别方法 | |
CN103971106A (zh) | 多视角人脸图像性别识别方法及装置 | |
Filippidou et al. | Single sample face recognition using convolutional neural networks for automated attendance systems | |
CN106874825A (zh) | 人脸检测的训练方法、检测方法和装置 | |
CN110020626A (zh) | 一种基于注意力机制的多源异构数据身份识别方法 | |
CN112507893A (zh) | 一种基于边缘计算的分布式无监督行人重识别方法 | |
CN106886771A (zh) | 基于模块化pca的图像主信息提取方法及人脸识别方法 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |