优质实用课件精选——人脸识别演讲ppt

上传人:高远 文档编号:137977695 上传时间:2020-07-13 格式:PPT 页数:24 大小:7.64MB
返回 下载 相关 举报
优质实用课件精选——人脸识别演讲ppt_第1页
第1页 / 共24页
优质实用课件精选——人脸识别演讲ppt_第2页
第2页 / 共24页
优质实用课件精选——人脸识别演讲ppt_第3页
第3页 / 共24页
优质实用课件精选——人脸识别演讲ppt_第4页
第4页 / 共24页
优质实用课件精选——人脸识别演讲ppt_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《优质实用课件精选——人脸识别演讲ppt》由会员分享,可在线阅读,更多相关《优质实用课件精选——人脸识别演讲ppt(24页珍藏版)》请在金锄头文库上搜索。

1、人脸识别 / AI,face detection / AI / week report,汇报人:XXX,前 言,人脸识别,是基于人的脸部特征信息进行身份识别的一种生物识别技术。用摄像机或摄像头采集含有人脸的图像或视频流,并自动在图像中检测和跟踪人脸,进而对检测到的人脸进行脸部识别。 它集成了人工智能、机器学习、模型理论、视频图像处理等多样专业技术。 随着智能手机的快速普及,可以通过手机镜头在手机上做基于人脸识别的身份注册、认证、登录等,使身份认证进程更安全、方便。由于人脸比指纹等视觉辨识度更高,所以刷脸的应用前景更广阔。,目录 / Contents,01,人脸识别 . 应用,02,人脸图像 .

2、 预处理,03,人脸图像 . 特征检测,04,人脸图像 . 匹配与识别,01,人脸识别 . 初识,人脸识别分为两大类:一是回答我是谁的问题,即辨认(Identification),二是回答这个人是我吗?即(Verification)。 正常人眼的识别准确率是97%,而目前专业的人脸识别研究企业机构可让其精确度高达99%以上,若结合眼纹等多因子验证,准确率能达到99.99%。且以人脸识别技术为核心的系统,能解决人脸识别在现实应用场景中面临的众多问题。,应用场景 / Application scenario,02,人脸图像 . 预处理,预处理是人脸识别过程中的一个重要环节。输入图像由于图像采集环境

3、的不同,如光照明暗程度、以及设备性能的优劣等,往往存有噪声,对比度不够等缺点。因此我们需要对其进行图像预处理。,图像预处理 / Image preprocessing,灰度化 / Grayscale,灰度变换方法 / Gray scale transformation method,rgbImage = imread(Lena.jpg); grayImage=rgb2gray(rgbImage); J1 = imadjust(grayImage,0 1,0 1,2.5); J2 = imadjust(grayImage,0 1,0 1,1.5); J3 = imadjust(grayImage

4、,0 1,0 1,0.67); J4 = imadjust(grayImage,0 1,0 1,0.4); subplot(1,5,1);imshow(J1);title(gamma=2.5); subplot(1,5,2);imshow(J2);title(gamma=1.5); subplot(1,5,3);imshow(grayImage);title(原灰度图像); subplot(1,5,4);imshow(J3);title(gamma=0.67); subplot(1,5,5);imshow(J4);title(gamma=0.4);,左图是一张进行灰度变换的灰度图。先从左上角看

5、,该像素的灰度值为254。然后下一个灰度值143,对其进行映射,得到的值是一个比143少的数。matlab当中常用的灰度变换函数是: imadjust(I,low_in; high_in,low_out; high_out,gamma),几何变换 / Geometric transformation,%平移 se=translate(strel(1),20 20); img2=imdilate(img1,se); figure,imshow(img2); imwrite(img2,a2.jpg);,I=imread(baby.bmp); height,width,dim=size(I); tf

6、orm1=maketform(affine,0,1,0;1,0,0;0,0,1); I1=imtransform(I,tform1,nearest);,%旋转 img3=imrotate(img1,90); figure,imshow(img3); imwrite(img3,a3.jpg);,% %缩放 img4=imresize(img1,2); figure,imshow(img4); imwrite(img4,a4.jpg);,平移,转置,旋转,缩放,图像增强 / Image enhancement,归一化 / Normalized,所谓图像归一化, 就是通过一系列变换, 将待处理的原始

7、图像转换成相应的唯一标准形式(该标准形式图像对平移、旋转、缩放等仿射变换具有不变特性)。,1、什么是归一化?,图像归一化使得图像可以抵抗几何变换的攻击,也就是转换成唯一的标准形式以抵抗仿射变换。,2、为什么归一化?,线性函数归一化(Min-Max scaling) 0均值标准化(Z-score standardization),3、 数据归一化的方法有哪些?,03,人脸图像 . 特征检测,所谓人脸检测,就是给定任意一张图片,找到其中是否存在一个或多个人脸,并返回图片中每个人脸的位置和范围。即找出特征点。 在模式识别领域,一句重要的话是:“Features matter”。获得好的特征是识别成功

8、的关键。,深度学习 . 特征点 / DeepLearning,特征点检测 . 算法 在人脸检测的基础上,根据输入的人脸图像,自动定位出面部关键特征点,如眼睛、鼻尖、嘴角点、眉毛以及人脸各部件轮廓点等,输入:人脸外观,输出:人脸特征点集合。,人脸对齐 . 算法 以看作在一张人脸图像搜索人脸预先定义的点(也叫人脸形状),通常从一个粗估计的形状开始,然后通过迭代来细化形状的估计。方法包括: AAM (Active Appearnce Model) ASM(Active Shape Model),特征点定位 . 算法 利用CNN,由粗到细,实现人脸关键点的精确定位。一般网络结构分为3层:level 1

9、、level 2、level 3。每层都包含多个独立的CNN模型。,特征点提取 . 算法 需要一个特征提取器(predictor),构建特征提取器可以训练模型。要下载dlib提供的已经训练好的关键点提取模型。,特征点检测算法 / Base on CNN,人脸对齐算法 / Face alignment,仿射变换以求人脸对齐,import cv2 import numpy as np from matplotlib import pyplot as plt img = cv2.imread(lena.jpg, 1) rows,cols,channel = img.shape / 仿射函数,将3个原

10、图点坐标,和得到结果图的3个点坐标,生成参数带入函数得到结果 pts1 = np.float32(50,50,200,50,50,200) pts2 = np.float32(10,100,200,50,100,250) M = cv2.getAffineTransform(pts1,pts2) dst = cv2.warpAffine(img,M,(cols,rows) plt.subplot(121),plt.imshow(img),plt.title(Input) plt.subplot(122),plt.imshow(dst),plt.title(Output) plt.show(),

11、特征点定位算法 / Feature location,F1定位所有的5个关键点, EN1用于定位:左眼+右眼+鼻子 三个特征点, NM1用于定位:左嘴角+右嘴角+鼻子 三个特征点。,level1粗定位,包含3个CNN,每两个CNN负责预测同一个关键点,然后取平均得到这一点的精确预测。输入为在level1输出的关键点周围的局部裁剪图像。,level2精确定位,包含10个CNN,level3更精确定位,结构和作用与level2一致,10个CNN,两两平均,只是输入的图像是在leve2关键点基础上做了更小的裁剪。,特征提取算法 / Feature extraction,首先,需要一个特征提取器(pr

12、edictor),构建特征提取器可以训练模型。要下载dlib提供的已经训练好的关键点提取模型。因为我的人脸图片是不同角度的,所以不一定能够检测到人脸,所以当检测不到人脸时,依次旋转图片60度,再次检测,直到能够检测到人脸为止,如果旋转了360度还是检测不到人脸的话,那么认为该图片中不存在人脸。,关键点提取,提取-保存,保存68个关键点,对照着左图,比如说想获取鼻尖的坐标,那么横坐标就是shapes0.part30.x(),其余的类似。,特征提取算法 / Feature extraction,#include #include #include #include #include #includ

13、e using namespace dlib; using namespace std; int main() try cv:VideoCapture cap(0);/.先初始化,打开视频 if (!cap.isOpened() cerr Unable to connect to camera endl; return 1; ,关键点提取,frontal_face_detector detector =get_frontal_face_detector(); shape_predictor pose_model; deserialize(shape_predictor_68_face_land

14、marks.dat) pose_model; while (cv:waitKey(30) != 27) / Grab a frame cv:Mat temp; cap temp; cv_image cimg(temp);/ Detect faces std:vector faces = detector(cimg);/ Find the pose of each face. std:vector shapes; for (unsigned long i = 0; i faces.size(); +i) shapes.push_back(pose_model(cimg, facesi); if

15、(!shapes.empty() for (int i = 0; i 68; i+) circle(temp, cvPoint(shapes0.part(i).x(), shapes0.part(i).y(), 3, cv:Scalar(0, 0, 255), -1);/shapes0.part(i).x();/68个 /Display it all on the screen imshow(Dlib特征点, temp); ,04,人脸图像 . 匹配与识别,提取的人脸图像的特征数据与数据库中存储的特征模板进行搜索匹配,通过设定一个阈值,当相似度超过这一阈值,则把匹配得到的结果输出。根据相似程度

16、对人脸的身份信息进行判断。这一过程又分为两类:一类是确认(1:1)另一类是辨认(1:N)。,人脸识别 / Face recognition,通过计算特征向量之间的欧氏距离来得到人脸相似程度。在LFW上面取得了当时最好的成绩,识别率为99.63%。,原理,1. 先导入模型参数 2. 然后导入两张图片,分别获取其经过模型后得到的128维特征向量 3. 最后计算两个向量的欧氏距离,步骤,欧几里得度量(euclidean metric)(也称欧氏距离)是一个通常采用的距离定义,指在m维空间中两个点之间的真实距离,或者向量的自然长度(即该点到原点的距离)。在二维和三维空间中的欧氏距离就是两点之间的实际距离。,计算欧氏距离,欧氏距离 / Euclidean Distance,精确度比较 / Accuracy Comparison,SeetaFace 由中科院计算所山世光带领研究组研发。代码基于C+实现,不依赖第三方库。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号