YOLO模型和mtcnn模型对比,在做人脸识别时,有何不...
识别技术是基于人的脸部特征,对输入的人脸图像或者视频流进行判断。首先判断是否存在人脸,如果存在,则进一步给出人脸所在的位置、大小。并根据这些信息进一步提取出人脸的特征信息,最后将其与已知的人脸对比,从而识别每个人脸的身份,总体来说,人脸的识别分为两大步骤,一是人脸的检测,二是人脸的对齐,人脸检测方面,目前人脸检测采用边框检测的方式,即利用网络学习将图像划分为若干边框,从若干边框中捕捉人脸,并提取出人脸的关键点信心,人脸的对齐则是将图像中的人脸与已知的人脸进行比对从而达到识别的目的。
如MTCNN(Multi-task Cascaded Convolutional Neural Networks),MTCNN人脸识别的主要方法是:
当给定一张照片的时候,将其缩放到不同尺度形成图像金字塔,以达到尺度不变。
步骤1:使用P-Net生成候选窗和边框回归向量(bounding box regression vectors)。使用Bounding box regression的方法来校正这些候选窗,使用非极大值抑制(NMS)合并重叠的候选框。全卷积网络和FasterR-CNN中的RPN一脉相承;
步骤2:使用N-Net改善候选窗,将通过P-Net的候选窗输入R-Net中,拒绝掉
深度学习的人脸识别如何判断一张人脸是否识别通过?
人脸识别分两个部分:
第一步:人脸图片预处理,即检测图片中人脸并裁剪成指定尺寸的人脸图。
第二步:人脸识别,包括模型训练、目标人脸分类训练、 预测目标人脸。
1. 人脸检测原理
人脸识别,首先得做人脸检测,也就是找到人脸在哪里,用矩形框框出位置。理想情况下,应该检测出图片中所有的人脸。
人脸检测模型:
1、MTCNN (TensorFlow)
2、SSD Face (Caffe)
获得人脸的矩形框后,然后就要做人脸对齐(Face Alignment),因为原始图片中,人脸的姿态、位置可能有较大区别,
为了统一处理,要把人脸“摆正”。“摆正”的方法,其实就是先找到人脸的关键点,比如眼睛、鼻子、嘴巴、脸轮廓等。根据这些
关键点,使用仿射变换将人脸统一标准,尽量消除姿势不同带来的误差。
这里采用基于TensorFlow的MTCNN(Multi-task convolutional neural networks) 模型。MTCNN是一种基于深度神经网络的
人脸检测和人脸对其的方法。MTCNN由3个神经网络构成,分别是P-Net,R-Net、O-Net。7
在使用上述网络之前,要对原始图片进行预处理,先将原始图片缩放到不同尺寸,形成一个“图像金字塔”,
接着再对每个尺寸的图片通过神经网络计算一次。
这样做的原因是,原始图片中,人脸可能存在不同的尺寸,有的脸大,有的脸小。对于脸小的,可以在放大后的图片上检测,
对于脸大的,可以在缩小后的图片上检测,这样就可以在统一的尺寸下检测人脸了。
caffe训练好人脸识别模型,怎么在LFW上验证识别率
人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术。用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行脸部的一系列相关技术,通常也叫做人像识别、面部识别。
全部评论