书籍详情
深度学习计算机视觉实战
作者:肖铃 著
出版社:电子工业出版社
出版时间:2021-11-01
ISBN:9787121417597
定价:¥99.00
购买这本书可以去
内容简介
本书是一本看懂计算机视觉的实战指南,使用理论与实践相结合的思想,真正一站式搞定理论学习、算法开发到模型部署上线。 全书内容共分为四个部分。第一部分包括第1、2章,主要讲解深度学习和计算机视觉基础,如计算机视觉领域的经典网络和常见的目标检测算法;第二部分包括第3~6章,主要讲解图像处理知识,结合应用案例,对知识点进行分析说明;第三部分包括第7~11章,主要讲解计算机视觉中的实战项目,对实现细节做了追本溯源的讲解;第四部分包括第12~13章,主要讲解模型的落地部署,该部分的讲解基于TensorFlow Lite框架,该框架受众广、热度高,且在各种平台都有对应的支持与优化加速方案,方便读者使用。 本书中的上百个知识点与50多个案例都是作者工程应用中的经验总结,每章末尾均有进阶必备”,给读者提供更多的拓展知识。本书适合计算机视觉的初学者、计算机视觉算法开发人员、对深度学习有兴趣的用户或者亟须工程落地使用的用户,也适合作为高校相关专业的学生教材使用。
作者简介
肖铃,硕士,现任南方海洋科学与工程广东省实验室工程师。2016年毕业于中国科学技术大学与中国科学院合肥物质科学研究院安徽光机所大气光学研究中心,曾就职于中兴通讯股份有限公司和珠海金山办公软件有限公司,长期从事图像处理、深度学习计算机视觉算法,以及基于TensorFlow Lite的AI模型部署研究。刘东,研究员,博士生导师。现任中国科学院合肥物质科学研究院安徽光机所大气光学研究中心副主任,曾在美国怀俄明大学大气科学系做博士后。主要从事大气光学和激光雷达大气探测研究工作,是国际激光大气探测协会(ICLAS)中国唯一委员,SKYNET国际委员会中国委员,安徽省气象学会副理事长。
目录
第1章 深度学习基础 1
1.1 神经网络 1
1.1.1 感知机 1
1.1.2 神经网络原理 2
1.2 卷积神经网络 3
1.2.1 CNN基本操作 3
1.2.2 CNN原理 6
1.3 循环神经网络 7
1.3.1 RNN 7
1.3.2 LSTM与GRU 8
1.4 经典网络 9
1.4.1 AlexNet 9
1.4.2 VGG 10
1.4.3 GoogLeNet 11
1.4.4 ResNet 12
1.4.5 MobileNet 13
1.5 进阶必备:如何学习深度学习
并“落地”求职 16
1.5.1 深度学习如何快速入门 16
1.5.2 深度学习行业求职技巧 17
第2章 计算机视觉基础 18
2.1 目标检测Two-stage算法 18
2.1.1 R-CNN算法 18
2.1.2 Fast R-CNN算法 20
2.1.3 Faster R-CNN算法 21
2.2 目标检测One-stage算法 23
2.2.1 YOLO系列算法 23
2.2.2 SSD算法 29
2.3 图像分割算法 31
2.3.1 FCN算法 31
2.3.2 U-Net算法 33
2.3.3 DeepLab系列算法 34
2.3.4 Mask R-CNN算法 37
2.4 进阶必备:计算机视觉方向知多少 38
第3章 基础图像处理 40
3.1 线性滤波 40
3.1.1 案例1:使用方框滤波 41
3.1.2 案例2:使用均值滤波 46
3.1.3 案例3:使用高斯滤波 48
3.2 非线性滤波 50
3.2.1 案例4:使用中值滤波例 50
3.2.2 案例5:使用双边滤波 52
3.3 OpenCV形态学运算 54
3.3.1 案例6:进行膨胀操作 55
3.3.2 案例7:进行腐蚀操作 57
3.3.3 案例8:使用形态学运算 58
3.4 案例9:使用漫水填充 63
3.5 图像金字塔 67
3.5.1 案例10:使用高斯金字塔 67
3.5.2 案例11:使用拉普拉斯
金字塔 70
3.6 阈值化 73
3.6.1 案例12:使用基本阈值 74
3.6.2 案例13:使用自适应阈值 78
3.7 进阶必备:选择一款合适的图像处理工具 80
3.7.1 OpenCV 80
3.7.2 Matlab 81
第4章 图像变换 83
4.1 边缘检测 83
4.1.1 案例14:Sobel算法 83
4.1.2 案例15:Scharr算法 87
4.1.3 案例16:Laplacian算法 90
4.1.4 案例17:Canny算法 91
4.2 案例18:绘制轮廓 94
4.3 霍夫变换 97
4.3.1 案例19:霍夫线变换 97
4.3.2 案例20:霍夫圆变换 101
4.4 案例21:重映射 103
4.5 案例22:仿射变换 106
4.6 案例23:透视变换 109
4.7 直方图 111
4.7.1 案例24:直方图的计算
与绘制 111
4.7.2 案例25:直方图均衡化 113
4.8 进阶必备:图像变换应用之文本
图像矫正 114
4.8.1 图像变换知识总结 114
4.8.2 案例26:文本图像矫正 115
第5章 角点检测 117
5.1 案例27:Harris角点检测 117
5.2 案例28:Shi-Tomasi角点检测 119
5.3 案例29:亚像素级角点检测 122
5.4 进阶必备:角点检测知识总结 125
第6章 特征点检测与匹配 127
6.1 特征点检测 127
6.1.1 opencv-contrib环境安装 127
6.1.2 案例30:SIFT特征点检测 130
6.1.3 案例31:SURF特征点检测 137
6.2 特征匹配 139
6.2.1 案例32:BruteForce匹配 139
6.2.2 案例33:FLANN匹配 146
6.3 案例34:ORB特征提取 148
6.4 进阶必备:利用特征点拼接图像 151
6.4.1 特征点检测算法汇总 151
6.4.2 案例35:基于特征点检测与
匹配的图像拼接 151
第7章 手写数字识别 155
7.1 Keras的应用 155
7.1.1 Keras模型 155
7.1.2 Keras层 156
7.1.3 模型编译 157
7.1.4 模型训练 158
7.2 LeNet算法 159
7.3 案例36:使用Keras实现手写数字识别 160
7.3.1 模型训练 160
7.3.2 手写数字识别模型推理 164
7.4 进阶必备:算法模型开发流程 167
7.4.1 数据准备 167
7.4.2 网络搭建 169
7.4.3 模型训练 170
第8章 CIFAR-10图像分类 171
8.1 图像分类数据集 171
8.1.1 CIFAR-10数据集和
CIFAR-100数据集 171
8.1.2 ImageNet数据集 172
8.1.3 PASCAL VOC数据集 173
8.2 案例37:CIFAR-10图像分类 173
8.2.1 模型训练过程 174
8.2.2 模型推理 179
8.3 进阶必备:COCO数据集与使用
HOGTSVM方法实现图像分类 180
8.3.1 COCO数据集 180
8.3.2 案例38:使用HOG+SVM
方法实现图像分类 180
第9章 验证码识别 184
9.1 TensorFlow应用 184
9.1.1 案例39:TensorFlow的
基本使用 184
9.1.2 TensorFlow的常用模块 186
9.2 案例40:验证码识别 188
9.2.1 生成验证码图片 188
9.2.2 基于TensorFlow的
验证码识别 189
9.3 进阶必备:算法模型开发技巧 194
9.3.1 数据预处理技巧 194
9.3.2 网络搭建技巧 195
9.3.3 模型训练技巧 196
第10章 文本检测实战 197
10.1 文本检测算法 197
10.1.1 CTPN算法 198
10.1.2 EAST算法 200
10.2 案例41:基于EAST算法的文本检测 202
10.2.1 数据预处理 202
10.2.2 网络搭建 205
10.2.3 模型训练 212
10.2.4 文本检测验证 217
10.3 进阶必备:在不同场景下文本检测的
应对方式 218
10.3.1 复杂场景文本检测 219
10.3.2 案例42:使用形态学运算
实现简单场景文本检测 220
10.3.3 案例43:使用MSER+NMS
实现简单场景文本检测 223
第11章 文本识别实战 226
11.1 文本识别算法 226
11.1.1 CRNN算法 226
11.1.2 Attention OCR算法 229
11.2 案例44:基于C-RNN算法的
文本识别 231
11.2.1 数据预处理 231
11.2.2 网络搭建 232
11.2.3 模型训练 236
11.2.4 文本识别验证 237
11.3 进阶必备:单字OCR 238
11.3.1 OCR探究 238
11.3.2 案例45:文本图片
字符切割 238
第12章 TensorFlow Lite 244
12.1 TensorFlow Lite介绍 244
12.1.1 TensorFlow Lite基础 245
12.1.2 TensorFlow Lite源码分析 246
12.2 模型转换 248
12.2.1 FlatBuffers文件格式 248
12.2.2 案例46:其他格式
转换为.tflite模型 250
12.3 模型量化 252
12.3.1 案例47:量化感知训练 252
12.3.2 案例48:训练后量化 255
12.4 进阶必备:模型转换与
模型部署优化答疑 257
12.4.1 模型转换问题 257
12.4.2 模型部署优化 258
第13章 基于TensorFlow Lite的AI
功能部署实战 260
13.1 部署流程 260
13.2 案例49:移动端部署 261
13.2.1 搭建开发环境 262
13.2.2 编译运行项目 262
13.2.3 调用过程解析 264
13.3 PC端部署 266
13.3.1 案例50:Windows端部署 266
13.3.2 案例51:Linux端部署 278
13.3.3 案例52:ARM平台部署 282
13.3.4 案例53:MIPS平台部署 285
13.4 进阶必备:推理框架拓展与
OpenCV编译部署 286
13.4.1 其他深度学习推理框架 286
13.4.2 OpenCV编译 286
1.1 神经网络 1
1.1.1 感知机 1
1.1.2 神经网络原理 2
1.2 卷积神经网络 3
1.2.1 CNN基本操作 3
1.2.2 CNN原理 6
1.3 循环神经网络 7
1.3.1 RNN 7
1.3.2 LSTM与GRU 8
1.4 经典网络 9
1.4.1 AlexNet 9
1.4.2 VGG 10
1.4.3 GoogLeNet 11
1.4.4 ResNet 12
1.4.5 MobileNet 13
1.5 进阶必备:如何学习深度学习
并“落地”求职 16
1.5.1 深度学习如何快速入门 16
1.5.2 深度学习行业求职技巧 17
第2章 计算机视觉基础 18
2.1 目标检测Two-stage算法 18
2.1.1 R-CNN算法 18
2.1.2 Fast R-CNN算法 20
2.1.3 Faster R-CNN算法 21
2.2 目标检测One-stage算法 23
2.2.1 YOLO系列算法 23
2.2.2 SSD算法 29
2.3 图像分割算法 31
2.3.1 FCN算法 31
2.3.2 U-Net算法 33
2.3.3 DeepLab系列算法 34
2.3.4 Mask R-CNN算法 37
2.4 进阶必备:计算机视觉方向知多少 38
第3章 基础图像处理 40
3.1 线性滤波 40
3.1.1 案例1:使用方框滤波 41
3.1.2 案例2:使用均值滤波 46
3.1.3 案例3:使用高斯滤波 48
3.2 非线性滤波 50
3.2.1 案例4:使用中值滤波例 50
3.2.2 案例5:使用双边滤波 52
3.3 OpenCV形态学运算 54
3.3.1 案例6:进行膨胀操作 55
3.3.2 案例7:进行腐蚀操作 57
3.3.3 案例8:使用形态学运算 58
3.4 案例9:使用漫水填充 63
3.5 图像金字塔 67
3.5.1 案例10:使用高斯金字塔 67
3.5.2 案例11:使用拉普拉斯
金字塔 70
3.6 阈值化 73
3.6.1 案例12:使用基本阈值 74
3.6.2 案例13:使用自适应阈值 78
3.7 进阶必备:选择一款合适的图像处理工具 80
3.7.1 OpenCV 80
3.7.2 Matlab 81
第4章 图像变换 83
4.1 边缘检测 83
4.1.1 案例14:Sobel算法 83
4.1.2 案例15:Scharr算法 87
4.1.3 案例16:Laplacian算法 90
4.1.4 案例17:Canny算法 91
4.2 案例18:绘制轮廓 94
4.3 霍夫变换 97
4.3.1 案例19:霍夫线变换 97
4.3.2 案例20:霍夫圆变换 101
4.4 案例21:重映射 103
4.5 案例22:仿射变换 106
4.6 案例23:透视变换 109
4.7 直方图 111
4.7.1 案例24:直方图的计算
与绘制 111
4.7.2 案例25:直方图均衡化 113
4.8 进阶必备:图像变换应用之文本
图像矫正 114
4.8.1 图像变换知识总结 114
4.8.2 案例26:文本图像矫正 115
第5章 角点检测 117
5.1 案例27:Harris角点检测 117
5.2 案例28:Shi-Tomasi角点检测 119
5.3 案例29:亚像素级角点检测 122
5.4 进阶必备:角点检测知识总结 125
第6章 特征点检测与匹配 127
6.1 特征点检测 127
6.1.1 opencv-contrib环境安装 127
6.1.2 案例30:SIFT特征点检测 130
6.1.3 案例31:SURF特征点检测 137
6.2 特征匹配 139
6.2.1 案例32:BruteForce匹配 139
6.2.2 案例33:FLANN匹配 146
6.3 案例34:ORB特征提取 148
6.4 进阶必备:利用特征点拼接图像 151
6.4.1 特征点检测算法汇总 151
6.4.2 案例35:基于特征点检测与
匹配的图像拼接 151
第7章 手写数字识别 155
7.1 Keras的应用 155
7.1.1 Keras模型 155
7.1.2 Keras层 156
7.1.3 模型编译 157
7.1.4 模型训练 158
7.2 LeNet算法 159
7.3 案例36:使用Keras实现手写数字识别 160
7.3.1 模型训练 160
7.3.2 手写数字识别模型推理 164
7.4 进阶必备:算法模型开发流程 167
7.4.1 数据准备 167
7.4.2 网络搭建 169
7.4.3 模型训练 170
第8章 CIFAR-10图像分类 171
8.1 图像分类数据集 171
8.1.1 CIFAR-10数据集和
CIFAR-100数据集 171
8.1.2 ImageNet数据集 172
8.1.3 PASCAL VOC数据集 173
8.2 案例37:CIFAR-10图像分类 173
8.2.1 模型训练过程 174
8.2.2 模型推理 179
8.3 进阶必备:COCO数据集与使用
HOGTSVM方法实现图像分类 180
8.3.1 COCO数据集 180
8.3.2 案例38:使用HOG+SVM
方法实现图像分类 180
第9章 验证码识别 184
9.1 TensorFlow应用 184
9.1.1 案例39:TensorFlow的
基本使用 184
9.1.2 TensorFlow的常用模块 186
9.2 案例40:验证码识别 188
9.2.1 生成验证码图片 188
9.2.2 基于TensorFlow的
验证码识别 189
9.3 进阶必备:算法模型开发技巧 194
9.3.1 数据预处理技巧 194
9.3.2 网络搭建技巧 195
9.3.3 模型训练技巧 196
第10章 文本检测实战 197
10.1 文本检测算法 197
10.1.1 CTPN算法 198
10.1.2 EAST算法 200
10.2 案例41:基于EAST算法的文本检测 202
10.2.1 数据预处理 202
10.2.2 网络搭建 205
10.2.3 模型训练 212
10.2.4 文本检测验证 217
10.3 进阶必备:在不同场景下文本检测的
应对方式 218
10.3.1 复杂场景文本检测 219
10.3.2 案例42:使用形态学运算
实现简单场景文本检测 220
10.3.3 案例43:使用MSER+NMS
实现简单场景文本检测 223
第11章 文本识别实战 226
11.1 文本识别算法 226
11.1.1 CRNN算法 226
11.1.2 Attention OCR算法 229
11.2 案例44:基于C-RNN算法的
文本识别 231
11.2.1 数据预处理 231
11.2.2 网络搭建 232
11.2.3 模型训练 236
11.2.4 文本识别验证 237
11.3 进阶必备:单字OCR 238
11.3.1 OCR探究 238
11.3.2 案例45:文本图片
字符切割 238
第12章 TensorFlow Lite 244
12.1 TensorFlow Lite介绍 244
12.1.1 TensorFlow Lite基础 245
12.1.2 TensorFlow Lite源码分析 246
12.2 模型转换 248
12.2.1 FlatBuffers文件格式 248
12.2.2 案例46:其他格式
转换为.tflite模型 250
12.3 模型量化 252
12.3.1 案例47:量化感知训练 252
12.3.2 案例48:训练后量化 255
12.4 进阶必备:模型转换与
模型部署优化答疑 257
12.4.1 模型转换问题 257
12.4.2 模型部署优化 258
第13章 基于TensorFlow Lite的AI
功能部署实战 260
13.1 部署流程 260
13.2 案例49:移动端部署 261
13.2.1 搭建开发环境 262
13.2.2 编译运行项目 262
13.2.3 调用过程解析 264
13.3 PC端部署 266
13.3.1 案例50:Windows端部署 266
13.3.2 案例51:Linux端部署 278
13.3.3 案例52:ARM平台部署 282
13.3.4 案例53:MIPS平台部署 285
13.4 进阶必备:推理框架拓展与
OpenCV编译部署 286
13.4.1 其他深度学习推理框架 286
13.4.2 OpenCV编译 286
猜您喜欢