购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

前言

在新冠疫情肆虐时,国家认可的健康宝(我们常说的绿码)遍地开花,而这离不开人脸识别,人脸就是我们的通行证。

人脸识别技术就是基于人的脸部特征信息进行身份识别的一种生物识别技术,是用多种测量方法和手段来扫描人脸,包括热成像、3D人脸地图、独特特征(也称为地标)分类等分析面部特征的几何比例、关键面部特征之间的映射距离、皮肤表面纹理。

长期以来,由于技术手段的落后和人脸的复杂,人脸技术一直没有被大规模应用。究其原因,还是当时的人脸识别技术对人的头部位置、面部表情以及年龄的易变性辨识度非常低,难以准确地判断目标,不能给出一个准确度较高的结论,从而制约了这项技术的发展。

随着深度学习的兴起,人们发现使用深度学习技术能够较好地进行人脸识别。深度学习方法的主要优势是可以用非常大型的数据集进行训练,学习到表征这些数据的最佳特征,从而在要求的准确度下实现人脸识别的目标。

本书以全新的TensorFlow 2版本为基础进行编写,教会读者如何运用深度学习框架实现人脸识别。从TensorFlow 2的基础语法开始讲解,到介绍如何使用TensorFlow 2进行深度学习程序的设计,以及如何在实战中设计出人脸识别模型。

本书对TensorFlow 2的核心内容进行深入分析,重要内容均结合代码进行讲解,围绕深度学习原理介绍了大量实战案例,读者通过这些案例可以将TensorFlow 2运用于自己的实际开发工作和项目中。

本书是一本面向初级和中级读者的翔实教程。通过本书的学习,读者能够掌握深度学习的核心内容和在TensorFlow框架下实现人脸识别的知识要点,以及掌握从模型构建到应用程序编写的整套技巧。

本书特色

1.版本新,易入门

本书详细介绍TensorFlow 2的安装和使用、TensorFlow的默认API以及官方推荐的Keras编程方法与技巧等。

2.作者经验丰富,代码编写细腻

作者是长期奋战在科研和工业界的一线算法设计和程序编写人员,实战经验丰富,对代码中可能会出现的各种问题和“坑”有丰富的处理经验,使得读者能够少走很多弯路。

3.理论扎实,深入浅出

在代码设计的基础上,本书还深入浅出地介绍需要掌握的深度学习的一些基本理论知识,作者通过大量的公式与图示结合的方式对理论进行阐述,是一本难得的好书。

4.对比多种应用方案,实战案例丰富

本书采用大量的实例,同时也提供一些实现同类功能的其他解决方案,覆盖使用TensorFlow进行深度学习开发中常用的知识。

本书内容及知识体系

本书是基于TensorFlow 2.1版本的新架构模式和框架来完整介绍TensorFlow 2使用方法的进阶教程,主要内容如下:

第1、2章是本书的起始部分,详细介绍人类视觉的生理解释和人脸识别的发展历程、使用过的传统技术和方法以及缺陷和不足,并且介绍使用深度学习进行人脸识别的通用流程和一些可以获取到的数据集,供读者在后期学习中使用。

第3章是有关深度学习框架TensorFlow的使用。本章详细介绍TensorFlow 2.1版本的安装方法以及对应的运行环境的安装,并且通过一个简单的例子验证TensorFlow 2的安装效果。还将介绍TensorFlow硬件的采购,使用一块能够运行TensorFlow GPU版本的显卡能让我们的学习事半功倍。

第4章是本书的重点,从MODEL的设计开始,循序渐进地介绍TensorFlow 2的编程方法和步骤,包括结合Keras进行TensorFlow 2模型设计的完整步骤,以及自定义层的方法。第4章的内容看起来很简单,但却是本书的核心,读者一定要反复阅读,掌握所有内容和代码的编写。

第5章是深度学习的理论部分,介绍反馈神经网络的实现和核心的两个算法,作者通过图示并结合理论公式的方式详细介绍理论和原理,并手动实现了一个反馈神经网络。

第6章详细介绍卷积神经网络的原理和各个模型的使用和自定义内容,讲解借助卷积神经网络算法构建一个简单的CNN模型进行MNIST数字识别。使用卷积神经网络识别物体是深度学习的一个经典内容,也是人脸识别的基础内容。因而本章也是本书的重点内容,能够极大地加强读者掌握对TensorFlow框架的使用和程序的编写。

第7章介绍TensorFlow新版本的数据读写和训练过程的可视化部分,内容包括使用TensorFlow 2自带的Datasets API对数据的序列化存储,通过简单的想法将数据重新读取和调用的程序编写方法,以及训练过程可视化的一个非常重要的工具TensorBoard。

第8章介绍ResNet的基本思想和内容。ResNet是一个具有里程碑性质的框架,标志着粗犷的卷积神经网络设计向着精确化和模块化的方向转化。ResNet本身的程序编写非常简单,但是其中蕴含的设计思想却是跨越性的。

第9章讲解人脸识别的一个重要模块。首先向读者介绍使用Python封装好的类库实现人脸的检测,并在此基础上教会读者使用已有的程序自制所需要的人脸检测数据集。之后详细介绍MTCNN这个经典的人脸检测模型的使用方法。

第10章介绍使用多种深度学习模型实现人脸识别模型,从基于卷积神经到使用孪生网络的单机版模型,进而引申到为了解决人脸识别不易迁移而诞生的TripletModel。本书为这一系列的人脸识别模型均提供了实现代码,并对这些实现代码进行了讲解,旨在帮助读者解决使用人脸识别模型实战时可能遇到的各种问题。

源码、数据集、开发环境与技术支持

本书配套资源请用微信扫描右边的二维码下载,也可按页面提示把链接转发到自己的邮箱中下载。

如果有疑问,可发送邮件至booksaga@163.com,邮件主题为“TensorFlow人脸识别实战”。技术支持信息请查看下载资源中的相关文件。

适合阅读本书的读者

勘误和支持

由于笔者的水平有限,加之编写时间跨度较长,同时TensorFlow的演进较快,在编写此书的过程中难免会出现不够准确的地方,恳请读者批评指正。

感谢出版社所有编辑在本书编写中提供的无私帮助和宝贵建议,正是由于编辑的耐心和支持才让本书得以出版。感谢我的家人的支持和理解,这些都给了我莫大的动力,让我的努力更加有意义。

著者
2021年1月 Agsate7H2AjE1fIIeCPgNhOACAHqrj93xpPveMOsR1eEnf7llLNl337oK09bufZ7

点击中间区域
呼出菜单
上一章
目录
下一章
×