专栏首页播放刘德华的歌人脸识别算法分享系列之课程一
原创

人脸识别算法分享系列之课程一

Let's get started

大家好,欢迎来到人脸识别算法分享系列课程!

本次课程,分为三个部分,第一个部分是人脸识别概述,第二个部分是讲解人工神经网络,第三部分是人脸识别算法概述。

下面我们进入第一部分

第一部分:人脸识别概述

什么是人脸识别?

人脸识别是 计算机视觉-computer Vision 领域里很典型的应用。

人脸识别的目的就是要判断图片和视频(视频是由图片构成的)中人脸的身份是什么。

人脸识别是身份识别的一种,它跟身份证识别、指纹识别、虹膜识别都是相似的。可以将人脸识别和大家熟悉的身份证做对比:

这是检测给定图片中的人脸(Face)的位置、相应的面部属性和人脸质量信息,位置包括 (x,y,w,h),面部属性包括性别(gender)、年龄(age)、表情(expression)、魅力(beauty)、眼镜(glass)、发型(hair)、口罩(mask)和姿态 (pitch,roll,yaw),人脸质量信息包括整体质量分(score)、模糊分(sharpness)、光照分(brightness)和五官遮挡分(completeness)。

人脸检测与分析官方说明文档:

https://cloud.tencent.com/document/product/867/32800#API-Explorer

人脸检测与分析调用接口:API 3.0 Explorer

对请求图片进行人脸关键点定位,计算眉毛、眼睛、鼻子、嘴巴、脸型轮廓、眼珠等90个关键点。了解详情

人脸检测与分析官方说明文档:

https://cloud.tencent.com/document/product/867/32800#API-Explorer

人脸检测与分析调用接口API 3.0 Explorer

五官定位demo体验https://cloud.tencent.com/act/event/iaidemo

•人脸对齐是将不同角度的人脸图像对齐成同一种标准的形状。

•先定位人脸上的特征点,然后通过几何变换(仿射、旋转、缩放),使各个特征点对齐(将眼睛、嘴等部位移到相同位置)。

•对给定一张人脸照片,和已有人脸库中的N个人脸进行比对,找出最相似的一张脸或多张脸,并给出相似度排序,实现1 : N或M:N搜索。了解详情

•人脸搜索调用接口:API 3.0 Explorer

•五官定位demo体验:

https://cloud.tencent.com/act/event/iaidemo

对请求图片进行人脸关键点定位,计算眉毛、眼睛、鼻子、嘴巴、脸型轮廓、眼珠等90个关键点。了解详情

人脸验证官方说明文档:

https://cloud.tencent.com/document/product/867/32800#API-Explorer

人脸人脸调用接口:API 3.0 Explorer

人脸验证demo体验:

https://cloud.tencent.com/act/event/iaidemo

对请求图片进行人脸关键点定位,计算眉毛、眼睛、鼻子、嘴巴、脸型轮廓、眼珠等90个关键点。了解详情

人脸检测与分析官方说明文档:

https://cloud.tencent.com/document/product/867/32800#API-Explorer

人脸检测与分析调用接口:API 3.0 Explorer

五官定位demo体验:https://cloud.tencent.com/act/event/iaidemo

l人脸识别的应用变得越来越广泛,只要跟身份识别相关的未来都有可能使用人脸识别。下面列几个典型的应用场景。

1.门禁系统

2.安防系统

3.无人超市

4.电子护照及身份证

5.自主服务系统(如ATM)

6.信息安全系统,如刷脸支付

7.娱乐型应用,如抖音里的部分道具

第二部分:人工神经网络

直观理解人工神经网络的训练过程

l层,多个层组合成网络(或模型)。

l输入数据和相应的目标。

l损失函数,即用于学习的反馈信号。

l优化器,决定学习过程如何进行。

梯度(gradient)是张量运算的导数。它是导数这一概念向多元函数导数的推广。多元函数是以张量作为输入的函数。

假设有一个输入向量 x 、一个矩阵 W 、一个目标 y 和一个损失函数 loss 。你可以用 W 来计算预测值 y_pred ,然后计算损失,或者说预测值 y_pred 和目标 y 之间的距离。

y_pred = dot(W, x)

loss_value = loss(y_pred, y)

如果输入数据 x 和 y 保持不变,那么这可以看作将 W 映射到损失值的函数。

loss_value = f(W)。

假设 W 的当前值为 W0 。 f 在 W0 点的导数是一个张量 gradient(f)(W0) ,其形状与 W 相同,每个系数 gradient(f)(W0)[i, j] 表示改变 W0[i, j] 时 loss_value 变化的方向和大小。

张量 gradient(f)(W0) 是函数 f(W) = loss_value 在 W0 的导数。

(1) 抽取训练样本 x 和对应目标 y 组成的数据批量。

(2) 在 x 上运行网络,得到预测值 y_pred 。

(3) 计算网络在这批数据上的损失,用于衡量 y_pred 和 y 之间的距离。

(4) 计算损失相对于网络参数的梯度[一次反向传播(backward pass)]。

(5) 将参数沿着梯度的反方向移动一点,比如 W -= step * gradient ,从而使这批数据上的损失减小一点。

描述的是一维参数空间中的梯度下降,但在实践中需要在高维空间中使用梯度下降。

神经网络的每一个权重参数都是空间中的一个自由维度,网络中可能包含数万个甚至上百万个

参数维度。

此外,SGD 还有多种变体,其区别在于计算下一次权重更新时还要考虑上一次权重更新,

而不是仅仅考虑当前梯度值,比如带动量的 SGD、Adagrad、RMSProp 等变体。这些变体被称

为优化方法(optimization method)或优化器(optimizer)。其中动量的概念尤其值得关注,它在

许多变体中都有应用。动量解决了 SGD 的两个问题:收敛速度和局部极小点。图 2-13 给出了

损失作为网络参数的函数的曲线。

第三部分-算法

1.人脸识别问题可以描述为,给定某一场景下的静态图象或者动态序列,根据预先存储的人脸数据库识别或者认证场景中一个或者多个人的身份。

2.早期的人脸识别多采用传统机器学习算法,经典的算法如特征脸结合线性判别分析。而且研究关注的焦点更多集中在如何提取更有鉴别力的特征上,以及如何更有效的对齐人脸。随着研究的深入,传统机器学习算法人脸识别在二维图象上的性能提升逐渐到达瓶颈,于是大多数人开始转而研究视频中的人脸识别问题,或者结合三维模型的方法去进一步提升人脸识别的性能,少数学者开始研究三维人脸的识别问题。

l人脸识别领域,也是从传统机器学习算法过度到深度学习算法的。

l在机器学习阶段,人脸识别也经历了3个重要的阶段:

1.几何特征阶段

2.表象特征阶段

3.纹理特征阶段

在深度学习阶段,算法的发展也同样经历了3个阶段:

1.从最开始的 VGG 网络到 Inception 网络再到 Resnet 网络,网络模型总体上呈现出更深,更宽的趋势。

2.旷视、商汤为代表的在学术公开竞赛中取得好成绩的这些厂商,开始发展实际业务为起点,通过不断扩大他们的实际数据集合,算法性能也在逐渐的提升。

3.进一步增加数据量以提升算法性能以外,与第一阶段相反,大家开始在不降低识别性能的基础上,研究网络的轻量化。轻量化的主要目的有两个,一个是提升算法的速度,甚至能够部署到移动端;另外一个就是便于硬件实现,从而将人脸识别算法直接做成一个硬件模块。

l头部姿势

l年龄

l遮挡

l光照条件

l人脸表情

1、人脸识别概述,人工神经网络,人脸识别算法。

2*、卷积神经网络。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

相关文章

  • 第五:人脸识别算法课程系列文章-Facenet算法

    大家好,欢迎大家来到本节课。本次课给大家分享人脸识别的算法。从这里开始,我们就先看一下人脸识别算法所面临的挑战吧。

    算法发
  • 使用通用印刷体识别高精度版本进行地图文字进行识别提取

    https://cloud.tencent.com/document/product/866/34937

    算法发
  • 基于字符尺度的文字识别算法

    文章地址:https://arxiv.org/pdf/1812.09900.pdf

    算法发
  • 人脸识别系列四 | DeepID1算法

    这是人脸识别系列的第5篇文章,前4篇文章可以在公众号的人脸识别栏里找到,这篇文章主要是解析CVPR 2014年的经典人脸识别论文DeepID1算法。论文的地址如...

    BBuf
  • 游戏测试

    王兵
  • SIM7600CE TCP/IP连接与PPP拨号上网 4G上网

    微雪官方教程:http://www.waveshare.net/wiki/SIM7600CE_4G_HAT

    墨文
  • 手机游戏大热风潮下的游戏开发公司生死破冰路

    8月的中国国际数码互动娱乐展览会依旧热闹,但游戏开发行业却感受到了一丝丝凉意。与会的多位游戏开发公司高层均坦言虽然游戏开发行业仍在在快速发展,但已经面临一些瓶颈...

    西安弈聪软件公司
  • 云游戏技术概述

      云游戏具有极大的想象空间,从20年前,就吸引众多的前辈们尝试。由于技术条件不够成熟,而纷纷成为了前浪。

    魏雪
  • Spring Web MVC 文件上传

    Demo_Null
  • 【Xbox one S】开箱&开机&初入坑心得

    身为一个资lao深nian单机游戏玩家,常年混迹在PC平台,但内心深处一直对主机有种迷之向往,感觉那才是单机游戏的正处之地,坐沙发上拿着手柄对着电视跌宕起伏才是...

    AhDung

扫码关注云+社区

领取腾讯云代金券