书籍详情
Python图像处理经典实例
作者:桑迪潘·戴伊(Sandipan Dey)
出版社:人民邮电出版社
出版时间:2023-01-01
ISBN:9787115588951
定价:¥119.80
购买这本书可以去
内容简介
本书提供了相关工具和算法,能帮助读者实现分析和可视化图像处理。本书给出了60 余个具体实例的解决方法,采用“菜谱式”方式组织内容,以期指导读者快速实践图像的分析和可视化处理,应对图像处理中的常见挑战,并学习如何执行复杂的任务,如对象检测、图像分割和使用大型混合数据集的图像重建,以及各种图像增强和图像恢复技术,如卡通化、梯度混合和稀疏字典学习。?本书适合计算机视觉工程师、图像处理工程师、软件工程师和机器学习工程师等专业人士阅读,也适合具有一定Python编程基础并希望进一步了解图像处理的细节和复杂性的读者参考。
作者简介
桑迪潘·戴伊(Sandipan Dey)是一位兴趣广泛的数据科学家,主要研究机器学习、深度学习、图像处理和计算机视觉,曾在推荐系统、行业动态预测模型、传感器定位模型、情感分析和设备预测等众多数据科学领域工作过。桑迪潘·戴伊拥有美国马里兰大学计算机科学硕士学位,在IEEE 数据挖掘会议和期刊上发表了数篇学术论文,并在数据科学、机器学习、深度学习、图像处理及相关课程/专业等方面获得了100多个慕课(mooc)学习认证。他经常在博客空间(sandipanweb)撰写博客,是机器学习教育爱好者。
目录
第 1章 图像处理与变换 1
1.1 技术要求 1
1.2 变换颜色空间(RGB→Lab) 2
1.2.1 准备工作 2
1.2.2 执行步骤 2
1.2.3 工作原理 4
1.2.4 更多实践 4
1.3 应用仿射变换 4
1.3.1 准备工作 5
1.3.2 执行步骤 5
1.3.3 工作原理 6
1.3.4 更多实践 7
1.4 应用透视变换和单应性变换 7
1.4.1 准备工作 8
1.4.2 执行步骤 8
1.4.3 工作原理 10
1.4.4 更多实践 11
1.5 基于图像创建铅笔草图 11
1.5.1 准备工作 11
1.5.2 执行步骤 11
1.5.3 工作原理 13
1.5.4 更多实践 14
1.6 创建卡通图像 14
1.6.1 准备工作 15
1.6.2 执行步骤 15
1.6.3 工作原理 16
1.6.4 更多实践 17
1.7 模拟光艺术/长曝光 17
1.7.1 准备工作 17
1.7.2 执行步骤 17
1.7.3 工作原理 19
1.7.4 更多实践 19
1.8 在HSV颜色模型中使用颜色进行目标检测 21
1.8.1 准备工作 21
1.8.2 执行步骤 21
1.8.3 工作原理 22
第 2章 图像增强 24
2.1 使用滤波器去除图像中不同类型的噪声 24
2.1.1 准备工作 24
2.1.2 执行步骤 25
2.1.3 工作原理 26
2.1.4 更多实践 28
2.2 基于去噪自编码器的图像去噪 28
2.2.1 准备工作 28
2.2.2 执行步骤 28
2.2.3 工作原理 31
2.2.4 更多实践 32
2.3 基于PCA/DFT/DWT的图像去噪 33
2.3.1 准备工作 33
2.3.2 执行步骤 33
2.3.3 工作原理 35
2.3.4 更多实践 36
2.4 基于各向异性扩散的图像去噪 36
2.4.1 准备工作 36
2.4.2 执行步骤 36
2.4.3 工作原理 38
2.4.4 更多实践 38
2.5 利用直方图均衡化改善图像对比度 38
2.5.1 准备工作 39
2.5.2 执行步骤 39
2.5.3 更多实践 41
2.6 执行直方图匹配 41
2.6.1 准备工作 41
2.6.2 执行步骤 42
2.6.3 工作原理 43
2.6.4 更多实践 44
2.7 执行梯度融合 45
2.7.1 准备工作 45
2.7.2 执行步骤 46
2.8 基于Canny、LoG/零交叉以及小波的边缘检测 47
2.8.1 准备工作 47
2.8.2 执行步骤 48
2.8.3 工作原理 52
2.8.4 更多实践 53
第3章 图像修复 54
3.1 使用维纳滤波器来修复图像 55
3.1.1 准备工作 55
3.1.2 执行步骤 55
3.2 使用约束小二乘法滤波器来修复图像 58
3.2.1 准备工作 58
3.2.2 执行步骤 59
3.2.3 工作原理 62
3.2.4 更多实践 62
3.3 使用马尔可夫随机场来修复图像 63
3.3.1 准备工作 64
3.3.2 执行步骤 64
3.3.3 工作原理 66
3.4 图像修补 67
3.4.1 准备工作 68
3.4.2 执行步骤 68
3.4.3 工作原理 68
3.4.4 更多实践 70
3.5 基于深度学习的图像修复 71
3.5.1 准备工作 72
3.5.2 执行步骤 72
3.5.3 更多实践 74
3.6 基于字典学习的图像修复 75
3.6.1 准备工作 75
3.6.2 执行步骤 75
3.6.3 更多实践 78
3.7 使用小波进行图像压缩 79
3.7.1 准备工作 80
3.7.2 执行步骤 80
3.7.3 工作原理 81
3.8 使用隐写术和隐写分析技术 82
3.8.1 准备工作 83
3.8.2 执行步骤 83
3.8.3 工作原理 86
3.8.4 更多实践 86
第4章 二值图像处理 87
4.1 对二值图像应用形态学运算 87
4.1.1 准备工作 88
4.1.2 执行步骤 88
4.1.3 工作原理 90
4.1.4 更多实践 92
4.2 应用形态学滤波器 93
4.2.1 准备工作 94
4.2.2 执行步骤 94
4.2.3 工作原理 100
4.2.4 更多实践 100
4.3 形态模式匹配 102
4.3.1 准备工作 102
4.3.2 执行步骤 103
4.3.3 工作原理 105
4.3.4 更多实践 106
4.4 基于形态学的图像分割 106
4.4.1 准备工作 107
4.4.2 执行步骤 107
4.4.3 工作原理 111
4.4.4 更多实践 112
4.5 对象计数 113
4.5.1 准备工作 113
4.5.2 执行步骤 113
4.5.3 工作原理 115
4.5.4 更多实践 116
第5章 图像配准 117
5.1 基于SimpleITK模块的医学图像配准 117
5.1.1 准备工作 118
5.1.2 执行步骤 118
5.1.3 工作原理 121
5.1.4 更多实践 121
5.2 使用ECC算法进行图像对齐和变形 123
5.2.1 准备工作 123
5.2.2 执行步骤 124
5.2.3 工作原理 126
5.2.4 更多实践 127
5.3 使用dlib库进行人脸对齐 127
5.3.1 准备工作 128
5.3.2 执行步骤 128
5.3.3 工作原理 130
5.3.4 更多实践 130
5.4 RANSAC算法的鲁棒匹配和单应性 132
5.4.1 准备工作 132
5.4.2 执行步骤 133
5.4.3 工作原理 134
5.5 图像拼接(全景) 135
5.5.1 准备工作 136
5.5.2 执行步骤 136
5.5.3 工作原理 142
5.5.4 更多实践 142
5.6 人脸变形 142
5.6.1 准备工作 143
5.6.2 执行步骤 143
5.6.3 工作原理 149
5.6.4 更多实践 149
5.7 实现图像搜索引擎 150
5.7.1 准备工作 150
5.7.2 执行步骤 150
5.7.3 更多实践 158
第6章 图像分割 159
6.1 使用Otsu和Riddler-Calvard的阈值化进行图像分割 159
6.1.1 准备工作 160
6.1.2 执行步骤 160
6.1.3 工作原理 161
6.1.4 更多实践 161
6.2 使用自组织映射进行图像分割 162
6.2.1 准备工作 163
6.2.2 执行步骤 163
6.2.3 工作原理 166
6.2.4 更多实践 166
6.3 使用scikit-image进行随机游走图像分割 168
6.3.1 准备工作 168
6.3.2 执行步骤 169
6.3.3 工作原理 170
6.3.4 更多实践 171
6.4 使用GMM-EM算法进行人体皮肤的图像分割 171
6.4.1 准备工作 172
6.4.2 执行步骤 173
6.4.3 工作原理 175
6.5 医学图像分割 176
6.5.1 准备工作 176
6.5.2 执行步骤 176
6.5.3 工作原理 182
6.5.4 更多实践 183
6.6 深度语义分割 184
6.6.1 准备工作 185
6.6.2 执行步骤 185
6.7 深度实例分割 190
6.7.1 准备工作 191
6.7.2 执行步骤 192
6.7.3 工作原理 194
第7章 图像分类 195
7.1 使用scikit-learn库对图像进行分类(方向梯度直方图和逻辑回归) 196
7.1.1 准备工作 196
7.1.2 执行步骤 197
7.1.3 工作原理 200
7.1.4 更多实践 202
7.2 使用Gabor滤波器组对纹理进行分类 202
7.2.1 准备工作 203
7.2.2 执行步骤 203
7.2.3 工作原理 206
7.2.4 更多实践 207
7.3 使用VGG19/Inception V3/MobileNet/ResNet101(基于PyTorch库)
对图像进行分类 207
7.3.1 准备工作 208
7.3.2 执行步骤 208
7.3.3 工作原理 210
7.3.4 更多实践 212
7.4 图像分类的微调(使用迁移学习) 212
7.4.1 准备工作 213
7.4.2 执行步骤 214
7.4.3 工作原理 217
7.4.4 更多实践 218
7.5 使用深度学习模型对交通标志进行分类(基于PyTorch库) 219
7.5.1 准备工作 219
7.5.2 执行步骤 219
7.5.3 工作原理 226
7.5.4 更多实践 227
7.6 使用深度学习实现人体姿势估计 227
7.6.1 准备工作 228
7.6.2 执行步骤 228
7.6.3 工作原理 231
第8章 图像中的目标检测 232
8.1 基于HOG/SVM的目标检测 232
8.1.1 准备工作 234
8.1.2 执行步骤 234
8.1.3 工作原理 236
8.1.4 更多实践 237
8.2 基于YOLO v3的目标检测 237
8.2.1 准备工作 238
8.2.2 执行步骤 238
8.2.3 工作原理 241
8.2.4 更多实践 242
8.3 基于Faster R-CNN的目标检测 242
8.3.1 准备工作 243
8.3.2 执行步骤 243
8.3.3 工作原理 245
8.3.4 更多实践 246
8.4 基于Mask R-CNN的目标检测 246
8.4.1 准备工作 247
8.4.2 执行步骤 247
8.4.3 工作原理 250
8.4.4 更多实践 250
8.5 基于Python-OpenCV的多目标跟踪 250
8.5.1 准备工作 251
8.5.2 执行步骤 251
8.5.3 工作原理 253
8.5.4 更多实践 253
8.6 使用EAST/Tesseract来检测/识别图像中的文本 253
8.6.1 准备工作 255
8.6.2 执行步骤 255
8.6.3 工作原理 257
8.7 使用 Viola-Jones/Haar特征进行人脸检测 258
8.7.1 准备工作 258
8.7.2 执行步骤 258
8.7.3 工作原理 259
8.7.4 更多实践 260
第9章 人脸识别、图像描述及其他技术 261
9.1 使用FaceNet进行人脸识别 261
9.1.1 准备工作 262
9.1.2 执行步骤 263
9.1.3 工作原理 267
9.2 使用深度学习模型来识别年龄、性别和情绪 268
9.2.1 准备工作 268
9.2.2 执行步骤 269
9.2.3 更多实践 270
9.3 使用深度学习模型进行图像着色 270
9.3.1 准备工作 271
9.3.2 执行步骤 271
9.4 使用卷积神经网络和长短期记忆自动生成图像字幕 273
9.4.1 准备工作 274
9.4.2 执行步骤 274
9.4.3 工作原理 275
9.5 使用GAN生成图像 276
9.5.1 准备工作 277
9.5.2 执行步骤 278
9.5.3 工作原理 283
9.5.4 更多实践 284
9.6 使用变分自编码器重建并生成图像 284
9.6.1 准备工作 285
9.6.2 执行步骤 285
9.6.3 更多实践 290
9.7 使用受限玻耳兹曼机重建孟加拉语MNIST图像 291
9.7.1 准备工作 292
9.7.2 执行步骤 292
1.1 技术要求 1
1.2 变换颜色空间(RGB→Lab) 2
1.2.1 准备工作 2
1.2.2 执行步骤 2
1.2.3 工作原理 4
1.2.4 更多实践 4
1.3 应用仿射变换 4
1.3.1 准备工作 5
1.3.2 执行步骤 5
1.3.3 工作原理 6
1.3.4 更多实践 7
1.4 应用透视变换和单应性变换 7
1.4.1 准备工作 8
1.4.2 执行步骤 8
1.4.3 工作原理 10
1.4.4 更多实践 11
1.5 基于图像创建铅笔草图 11
1.5.1 准备工作 11
1.5.2 执行步骤 11
1.5.3 工作原理 13
1.5.4 更多实践 14
1.6 创建卡通图像 14
1.6.1 准备工作 15
1.6.2 执行步骤 15
1.6.3 工作原理 16
1.6.4 更多实践 17
1.7 模拟光艺术/长曝光 17
1.7.1 准备工作 17
1.7.2 执行步骤 17
1.7.3 工作原理 19
1.7.4 更多实践 19
1.8 在HSV颜色模型中使用颜色进行目标检测 21
1.8.1 准备工作 21
1.8.2 执行步骤 21
1.8.3 工作原理 22
第 2章 图像增强 24
2.1 使用滤波器去除图像中不同类型的噪声 24
2.1.1 准备工作 24
2.1.2 执行步骤 25
2.1.3 工作原理 26
2.1.4 更多实践 28
2.2 基于去噪自编码器的图像去噪 28
2.2.1 准备工作 28
2.2.2 执行步骤 28
2.2.3 工作原理 31
2.2.4 更多实践 32
2.3 基于PCA/DFT/DWT的图像去噪 33
2.3.1 准备工作 33
2.3.2 执行步骤 33
2.3.3 工作原理 35
2.3.4 更多实践 36
2.4 基于各向异性扩散的图像去噪 36
2.4.1 准备工作 36
2.4.2 执行步骤 36
2.4.3 工作原理 38
2.4.4 更多实践 38
2.5 利用直方图均衡化改善图像对比度 38
2.5.1 准备工作 39
2.5.2 执行步骤 39
2.5.3 更多实践 41
2.6 执行直方图匹配 41
2.6.1 准备工作 41
2.6.2 执行步骤 42
2.6.3 工作原理 43
2.6.4 更多实践 44
2.7 执行梯度融合 45
2.7.1 准备工作 45
2.7.2 执行步骤 46
2.8 基于Canny、LoG/零交叉以及小波的边缘检测 47
2.8.1 准备工作 47
2.8.2 执行步骤 48
2.8.3 工作原理 52
2.8.4 更多实践 53
第3章 图像修复 54
3.1 使用维纳滤波器来修复图像 55
3.1.1 准备工作 55
3.1.2 执行步骤 55
3.2 使用约束小二乘法滤波器来修复图像 58
3.2.1 准备工作 58
3.2.2 执行步骤 59
3.2.3 工作原理 62
3.2.4 更多实践 62
3.3 使用马尔可夫随机场来修复图像 63
3.3.1 准备工作 64
3.3.2 执行步骤 64
3.3.3 工作原理 66
3.4 图像修补 67
3.4.1 准备工作 68
3.4.2 执行步骤 68
3.4.3 工作原理 68
3.4.4 更多实践 70
3.5 基于深度学习的图像修复 71
3.5.1 准备工作 72
3.5.2 执行步骤 72
3.5.3 更多实践 74
3.6 基于字典学习的图像修复 75
3.6.1 准备工作 75
3.6.2 执行步骤 75
3.6.3 更多实践 78
3.7 使用小波进行图像压缩 79
3.7.1 准备工作 80
3.7.2 执行步骤 80
3.7.3 工作原理 81
3.8 使用隐写术和隐写分析技术 82
3.8.1 准备工作 83
3.8.2 执行步骤 83
3.8.3 工作原理 86
3.8.4 更多实践 86
第4章 二值图像处理 87
4.1 对二值图像应用形态学运算 87
4.1.1 准备工作 88
4.1.2 执行步骤 88
4.1.3 工作原理 90
4.1.4 更多实践 92
4.2 应用形态学滤波器 93
4.2.1 准备工作 94
4.2.2 执行步骤 94
4.2.3 工作原理 100
4.2.4 更多实践 100
4.3 形态模式匹配 102
4.3.1 准备工作 102
4.3.2 执行步骤 103
4.3.3 工作原理 105
4.3.4 更多实践 106
4.4 基于形态学的图像分割 106
4.4.1 准备工作 107
4.4.2 执行步骤 107
4.4.3 工作原理 111
4.4.4 更多实践 112
4.5 对象计数 113
4.5.1 准备工作 113
4.5.2 执行步骤 113
4.5.3 工作原理 115
4.5.4 更多实践 116
第5章 图像配准 117
5.1 基于SimpleITK模块的医学图像配准 117
5.1.1 准备工作 118
5.1.2 执行步骤 118
5.1.3 工作原理 121
5.1.4 更多实践 121
5.2 使用ECC算法进行图像对齐和变形 123
5.2.1 准备工作 123
5.2.2 执行步骤 124
5.2.3 工作原理 126
5.2.4 更多实践 127
5.3 使用dlib库进行人脸对齐 127
5.3.1 准备工作 128
5.3.2 执行步骤 128
5.3.3 工作原理 130
5.3.4 更多实践 130
5.4 RANSAC算法的鲁棒匹配和单应性 132
5.4.1 准备工作 132
5.4.2 执行步骤 133
5.4.3 工作原理 134
5.5 图像拼接(全景) 135
5.5.1 准备工作 136
5.5.2 执行步骤 136
5.5.3 工作原理 142
5.5.4 更多实践 142
5.6 人脸变形 142
5.6.1 准备工作 143
5.6.2 执行步骤 143
5.6.3 工作原理 149
5.6.4 更多实践 149
5.7 实现图像搜索引擎 150
5.7.1 准备工作 150
5.7.2 执行步骤 150
5.7.3 更多实践 158
第6章 图像分割 159
6.1 使用Otsu和Riddler-Calvard的阈值化进行图像分割 159
6.1.1 准备工作 160
6.1.2 执行步骤 160
6.1.3 工作原理 161
6.1.4 更多实践 161
6.2 使用自组织映射进行图像分割 162
6.2.1 准备工作 163
6.2.2 执行步骤 163
6.2.3 工作原理 166
6.2.4 更多实践 166
6.3 使用scikit-image进行随机游走图像分割 168
6.3.1 准备工作 168
6.3.2 执行步骤 169
6.3.3 工作原理 170
6.3.4 更多实践 171
6.4 使用GMM-EM算法进行人体皮肤的图像分割 171
6.4.1 准备工作 172
6.4.2 执行步骤 173
6.4.3 工作原理 175
6.5 医学图像分割 176
6.5.1 准备工作 176
6.5.2 执行步骤 176
6.5.3 工作原理 182
6.5.4 更多实践 183
6.6 深度语义分割 184
6.6.1 准备工作 185
6.6.2 执行步骤 185
6.7 深度实例分割 190
6.7.1 准备工作 191
6.7.2 执行步骤 192
6.7.3 工作原理 194
第7章 图像分类 195
7.1 使用scikit-learn库对图像进行分类(方向梯度直方图和逻辑回归) 196
7.1.1 准备工作 196
7.1.2 执行步骤 197
7.1.3 工作原理 200
7.1.4 更多实践 202
7.2 使用Gabor滤波器组对纹理进行分类 202
7.2.1 准备工作 203
7.2.2 执行步骤 203
7.2.3 工作原理 206
7.2.4 更多实践 207
7.3 使用VGG19/Inception V3/MobileNet/ResNet101(基于PyTorch库)
对图像进行分类 207
7.3.1 准备工作 208
7.3.2 执行步骤 208
7.3.3 工作原理 210
7.3.4 更多实践 212
7.4 图像分类的微调(使用迁移学习) 212
7.4.1 准备工作 213
7.4.2 执行步骤 214
7.4.3 工作原理 217
7.4.4 更多实践 218
7.5 使用深度学习模型对交通标志进行分类(基于PyTorch库) 219
7.5.1 准备工作 219
7.5.2 执行步骤 219
7.5.3 工作原理 226
7.5.4 更多实践 227
7.6 使用深度学习实现人体姿势估计 227
7.6.1 准备工作 228
7.6.2 执行步骤 228
7.6.3 工作原理 231
第8章 图像中的目标检测 232
8.1 基于HOG/SVM的目标检测 232
8.1.1 准备工作 234
8.1.2 执行步骤 234
8.1.3 工作原理 236
8.1.4 更多实践 237
8.2 基于YOLO v3的目标检测 237
8.2.1 准备工作 238
8.2.2 执行步骤 238
8.2.3 工作原理 241
8.2.4 更多实践 242
8.3 基于Faster R-CNN的目标检测 242
8.3.1 准备工作 243
8.3.2 执行步骤 243
8.3.3 工作原理 245
8.3.4 更多实践 246
8.4 基于Mask R-CNN的目标检测 246
8.4.1 准备工作 247
8.4.2 执行步骤 247
8.4.3 工作原理 250
8.4.4 更多实践 250
8.5 基于Python-OpenCV的多目标跟踪 250
8.5.1 准备工作 251
8.5.2 执行步骤 251
8.5.3 工作原理 253
8.5.4 更多实践 253
8.6 使用EAST/Tesseract来检测/识别图像中的文本 253
8.6.1 准备工作 255
8.6.2 执行步骤 255
8.6.3 工作原理 257
8.7 使用 Viola-Jones/Haar特征进行人脸检测 258
8.7.1 准备工作 258
8.7.2 执行步骤 258
8.7.3 工作原理 259
8.7.4 更多实践 260
第9章 人脸识别、图像描述及其他技术 261
9.1 使用FaceNet进行人脸识别 261
9.1.1 准备工作 262
9.1.2 执行步骤 263
9.1.3 工作原理 267
9.2 使用深度学习模型来识别年龄、性别和情绪 268
9.2.1 准备工作 268
9.2.2 执行步骤 269
9.2.3 更多实践 270
9.3 使用深度学习模型进行图像着色 270
9.3.1 准备工作 271
9.3.2 执行步骤 271
9.4 使用卷积神经网络和长短期记忆自动生成图像字幕 273
9.4.1 准备工作 274
9.4.2 执行步骤 274
9.4.3 工作原理 275
9.5 使用GAN生成图像 276
9.5.1 准备工作 277
9.5.2 执行步骤 278
9.5.3 工作原理 283
9.5.4 更多实践 284
9.6 使用变分自编码器重建并生成图像 284
9.6.1 准备工作 285
9.6.2 执行步骤 285
9.6.3 更多实践 290
9.7 使用受限玻耳兹曼机重建孟加拉语MNIST图像 291
9.7.1 准备工作 292
9.7.2 执行步骤 292
猜您喜欢