本书以手势识别技术理论与应用为主题,系统地介绍了该领域常用的数据集,以及基于手工特征、卷积神经网络、循环神经网络及其变种、多模态数据融合与注意力机制等实现的手势识别算法。此外,本书还结合作者的开发经验,介绍了手势识别在真实场景中的应用,旨在使读者在了解相关技术的同时提升实际应用能力。
本书既适合从事计算机视觉和人工智能领域研究的技术人员阅读,也可以作为高等院校相关专业师生的参考教材。
从人类诞生开始, 手势作为人类的一种交流方式就已经形成。手势作为语言的补充,为人们的交流带来了便利。近些年来,随着人工智能技术的不断发展,学术界和工业界涌现出一大批手势识别算法,有效推动了该领域的发展。与此同时,随着人们对人机交互友好性和便利性要求的不断提升,手势作为人类认知和感受世界的最基础、最自然的交互方式之一,自然也成为了未来人机交互方式的一个重要发展方向。因此,研究在真实场景中的手势识别技术对提升人机交互技术的可用性有着重要的现实意义。
近二十年来,国内外学者在人体动作/手势识别领域取得了丰富的研究成果,特别是近年来深度学习技术的蓬勃发展催生了大量实现方法简单、性能优良的算法。然而,目前系统介绍手势识别技术理论和应用的书籍非常少,这使得不少初学者难得其要,不便开展研究,同样也不利于推动手势识别这一领域整体研究的普及和发展。鉴于此,作者结合自己多年来在手势识别技术及应用领域的研究经验和国内外学者的最新研究成果,编著了本书。
本书主要从基于计算机视觉的手势识别方法入手,重点讨论了现有的各类手势识别技术理论及相关的研究成果。全书首先以手势识别技术的发展历程为线索,系统介绍了基于传统的手工特征、卷积神经网络、循环神经网络及其变种、多模态数据融合及注意力机制的手势识别方法;随后结合作者在研究手势识别及其应用过程中的经验,介绍了三个基于手势识别的人机交互案例;最后介绍了未来手势识别问题的新的研究方向和应用场景。
本书共9章。第1章介绍了手势识别的基本概念及发展,包括手势识别的概念、现有手势识别方法的分类与发展情况,以及当前手势识别领域存在的主要问题;第2章着眼于手势识别领域常用的数据集,从静态和动态手势识别这两类问题入手,分别介绍了相关数据集,并对这些数据集的提出时间、模态类型、数据量等内容进行了比较和分析;第3章主要关注基于传统的手工特征的手势识别方法,以手势识别过程中的不同步骤为依据,分别介绍了手部区域分割、手势特征提取和手势识别的不同方法;第4章从深度卷积神经网络的发展谈起,分别介绍了二维和三维卷积神经网络的结构,以及基于这些网络实现手势识别的各种方法;第5章主要介绍了基于循环神经网络及其变种的手势识别方法,首先说明了循环神经网络的概念与内涵,包括循环神经网络的发展概述、循环神经网络的不同变种、结合外部存储单元的记忆网络等,随后介绍了这些网络模型是如何应用于动态手势识别任务中的;第6章主要关注基于多模态数据融合的手势识别方法,首先介绍了深度、红外、骨骼、 光流、显著性等不同模态数据的特点及生成方法,随后介绍了在手势识别任务中不同阶段实现多模态数据融合的方法及性能差异;第7章的重点是注意力机制在手势识别中的应用,首先介绍了注意力机制的概念,随后分析了作为手势识别前处理的注意力机制和基于不同模态互补性的注意力机制两种将注意力机制与手势识别相结合的方法;第8章结合作者的开发经验,以三个应用案例为基础介绍了将手势识别用于人机交互的框架及技术细节;第9章对手势识别在未来人机交互中应用的发展情况展开探讨,介绍了面向人机交互的手势识别在当前研究中遇到的问题及未来可能的研究方向,以及手势识别未来可以在哪些人机交互应用中进一步发挥作用。
本书内容系统、全面、新颖,理论与典型应用实例相结合,既可以作为大学本科生和研究生的补充教材,也可以作为企业应用手势识别时的理论指导用书; 既可以作为初次接触手势识别技术者的入门读物,也可以作为高级研究人员的参考书。本书的读者对象为图像处理、计算机应用、模式识别等领域的专业人员和研究人员,以及高等院校相关专业的师生。阅读本书需要读者具备线性代数、微分和概率论等基础,并且对于人工智能和机器学习的基本知识有所了解。
全书由苗启广、李宇楠、刘向增和刘如意共同编写,其中苗启广参与编写了第1、8、9章,李宇楠参与编写了第1、2、6、7、9章,刘向增参与编写了第3、4、5章,刘如意参与编写了第2、3、8章。本书的编写还得到了史媛媛、陈绘州、房慧娟、梁思宇、扶小龙和苗凯彬等人的大力帮助,在此一并表示感谢。由于作者水平有限,时间仓促,书中难免会出现一些错漏之处,恳请读者批评指正。
作 者
2021年10月
第1章 手势识别的基本概念及发展 1
1.1 手势识别的概念 1
1.1.1 手势的形成与其在人类社会中的作用 1
1.1.2 手势与人机交互 3
1.2 手势识别算法的发展情况 5
1.2.1 基于手工特征的方法 6
1.2.2 基于概率图模型的方法 7
1.2.3 基于视觉词袋的方法 8
1.2.4 基于神经网络的方法 8
1.3 当前手势识别领域面临的挑战 10
1.4 本章小结 11
参考文献 11
第2章 手势识别领域的常用数据集 19
2.1 静态手势数据集 20
2.2 动态手势数据集 23
2.3 数据集总结 32
2.4 本章小结 35
参考文献 35
第3章 基于手工特征的手势识别方法 39
3.1 手部区域分割 39
3.1.1 基于边缘信息的分割方法 39
3.1.2 基于运动分析的分割技术 41
3.1.3 基于肤色特征的分割方法 44
3.1.4 小结 45
3.2 手势特征提取 45
3.2.1 Haarlike特征 45
3.2.2 LBP特征 49
3.2.3 SIFT特征 50
3.2.4 SURF特征 56
3.2.5 HOG特征 59
3.2.6 HOF特征 62
3.2.7 小结 63
3.3 手势识别 63
3.3.1 模板匹配 63
3.3.2 有限状态机 64
3.3.3 动态时间规整 68
3.4 本章小结 71
参考文献 71
第4章 基于卷积神经网络的手势识别方法 75
4.1 深度卷积神经网络的发展概述 75
4.2 深度卷积神经网络的基本操作 76
4.2.1 卷积神经网络的特点 76
4.2.2 卷积神经网络的基本结构 78
4.2.3 卷积神经网络的训练过程 81
4.3 二维卷积神经网络在手势识别中的应用 83
4.3.1 双流网络 83
4.3.2 Temporal Segment Networks 83
4.4 三维卷积神经网络的基本操作 84
4.4.1 三维卷积 85
4.4.2 三维池化 85
4.5 三维卷积神经网络在手势识别中的应用 86
4.5.1 C3D网络 86
4.5.2 ResC3D网络 88
4.5.3 TwoStream Inflated 3D ConvNet网络 90
4.6 本章小结 92
参考文献 93
第5章 基于循环神经网络及其变种的手势识别方法 96
5.1 循环神经网络的发展概述 96
5.2 循环神经网络及其变种 97
5.2.1 RNN的基本结构 97
5.2.2 双向RNN 98
5.2.3 LSTM 99
5.2.4 GRU 100
5.3 结合外部存储单元的记忆网络 102
5.3.1 记忆网络框架 102
5.3.2 神经图灵机 103
5.4 循环神经网络在手势识别中的应用 106
5.4.1 RNN在手势识别中的应用 107
5.4.2 LSTM在手势识别中的应用 108
5.4.3 记忆网络和LSTM相结合在手势识别中的应用 109
5.5 本章小结 111
参考文献 111
第6章 基于多模态数据融合的手势识别方法 113
6.1 多模态数据的生成 113
6.1.1 深度数据 113
6.1.2 红外数据 115
6.1.3 骨骼数据 117
6.1.4 光流数据 121
6.1.5 显著性数据 123
6.2 不同模态数据的融合算法 126
6.2.1 数据级融合 127
6.2.2 特征级融合 128
6.2.3 决策级融合 133
6.2.4 其他融合方法 136
6.3 本章小结 138
参考文献 138
第7章 手势识别与注意力机制 143
7.1 注意力机制的概念 143
7.1.1 注意力机制的研究进展 143
7.1.2 人类的视觉注意力 143
7.1.3 注意力机制在计算机视觉中的使用 144
7.2 作为手势识别前处理的注意力机制 145
7.2.1 光照平衡 145
7.2.2 预先手部检测 147
7.3 基于不同模态数据互补性的注意力机制 151
7.4 本章小结 155
参考文献 156
第8章 基于手势识别的人机交互案例 159
8.1 手势识别案例一:无人机控制 159
8.2 手势识别案例二:智能家居控制 165
8.3 手势识别案例三:机器人控制 171
8.4 本章小结 175
参考文献 175
第9章 手势识别在未来人机交互中应用的发展探讨 177
9.1 面向人机交互的手势识别新技术 177
9.1.1 当前手势识别技术面临的问题 177
9.1.2 未来的研究方向 178
9.2 手势识别在人机交互中的新应用 180
9.2.1 智能驾驶 180
9.2.2 智能家居 181
9.2.3 无人机控制 182
9.2.4 机器人控制 183
9.3 本章小结 184
参考文献 184