深度学习实践:计算机视觉
出版时间:2019
内容简介
本书主要介绍了深度学习在计算机视觉方面的应用及工程实践,以Python 3为开发语言,并结合当前主流的深度学习框架进行实例展示。主要内容包括:OpenCV入门、深度学习框架介绍、图像分类、目标检测与识别、图像分割、图像搜索以及图像生成等,涉及到的深度学习框架包括PyTorch、TensorFlow、Keras、Chainer、MXNet等。通过本书,读者能够了解深度学习在计算机视觉各个方向的应用以及*进展。 本书的特点是依托工业环境的实践经验,具备较强的实用性和专业性。适合于广大计算机视觉工程领域的从业者、深度学习爱好者、相关专业的大学生和研究生以及对计算机视觉感兴趣的爱好者 使用。
目录
第1章 深度学习与计算机视觉1
1.1 图像基础3
1.2 深度学习与神经网络基础4
1.2.1 函数的简单表达5
1.2.2 函数的矩阵表达5
1.2.3 神经网络的线性变换6
1.2.4 神经网络的非线性变换6
1.2.5 深层神经网络6
1.2.6 神经网络的学习过程8
1.3 卷积神经网络CNN9
1.4 基础开发环境搭建14
1.5 本章总结15
第2章 OpenCV入门16
2.1 读图、展示和保存新图17
2.2 像素点及局部图像18
2.3 基本线条操作19
2.4 平移20
2.5 旋转20
2.6 缩放21
2.6.1 邻近插值22
2.6.2 双线性插值22
2.7 翻转23
2.8 裁剪23
2.9 算术操作23
2.10 位操作24
2.11 Masking操作25
2.12 色彩通道分离与融合26
2.13 颜色空间转换27
2.14 颜色直方图28
2.15 平滑与模糊29
2.16 边缘检测31
2.17 人脸和眼睛检测示例32
2.18 本章总结35
第3章 常见深度学习框架36
3.1 PyTorch38
3.1.1 Tensor39
3.1.2 Autograd42
3.1.3 Torch.nn43
3.2 Chainer45
3.2.1 Variable46
3.2.2 Link与Function47
3.2.3 Chain50
3.2.4 optimizers51
3.2.5 损失函数51
3.2.6 GPU的使用52
3.2.7 模型的保存与加载54
3.2.8 FashionMnist图像分类示例54
3.2.9 Trainer59
3.3 TensorFlow与Keras66
3.3.1 TensorFlow66
3.3.2 Keras67
3.4 MXNet与Gluon73
3.4.1 MXNet73
3.4.2 Gluon74
3.4.3 Gluon Sequential74
3.4.4 Gluon Block75
3.4.5 使用GPU76
3.4.6 Gluon Hybrid77
3.4.7 Lazy Evaluation79
3.4.8 Module80
3.5 其他框架81
3.6 本章总结81
第4章 图像分类82
4.1 VGG84
4.1.1 VGG介绍84
4.1.2 MXNet版VGG使用示例85
4.2 ResNet89
4.2.1 ResNet介绍89
4.2.2 Chainer版ResNet示例90
4.3 Inception95
4.3.1 Inception介绍95
4.3.2 Keras版Inception V3川菜分类97
4.4 Xception116
4.4.1 Xception简述116
4.4.2 Keras版本Xception使用示例116
4.5 DenseNet122
4.5.1 DenseNet介绍122
4.5.2 PyTorch版DenseNet使用示例122
4.6 本章总结126
第5章 目标检测与识别128
5.1 Faster RCNN129
5.1.1 Faster RCNN介绍129
5.1.2 ChainerCV版Faster RCNN示例131
5.2 SSD139
5.2.1 SSD介绍139
5.2.2 SSD示例140
5.3 YOLO148
5.3.1 YOLO V1、V2和V3介绍148
5.3.2 Keras版本YOLO V3示例150
5.4 本章总结157
第6章 图像分割158
6.1 物体分割159
6.2 语义分割164
6.2.1 FCN与SegNet166
6.2.2 PSPNet171
6.2.3 DeepLab172
6.3 实例分割176
6.3.1 FCIS177
6.3.2 Mask R-CNN178
6.3.3 MaskLab180
6.3.4 PANet181
6.4 本章总结181
第7章 图像搜索183
7.1 Siamese Network185
7.2 Triplet Network186
7.3 Margin Based Network188
7.4 Keras版Triplet Network示例190
7.4.1 准备数据190
7.4.2 训练文件191
7.4.3 采样文件195
7.4.4 模型训练202
7.4.5 模型测试206
7.4.5 结果可视化210
7.5 本章小结216
第8章 图像生成218
8.1 VAE219
8.1.1 VAE介绍219
8.1.2 Chainer版本VAE示例220
8.2 生成对抗网络GAN221
8.2.1 GAN介绍221
8.2.2 Chainer DCGAN RPG游戏角色生成示例229
8.3 Neural Style Transfer238
8.3.1 Neural Style Transfer介绍238
8.3.2 MXNet多风格转换MSG-Net示例241
8.4 本章总结246
后记247