Python 圖像處理經典實例 Python Image Processing Cookbook: Over 60 recipes to help you perform complex image processing and computer vision tasks with ease

桑迪潘·戴伊(Sandipan Dey)

  • Python 圖像處理經典實例-preview-1
  • Python 圖像處理經典實例-preview-2
Python 圖像處理經典實例-preview-1

買這商品的人也買了...

商品描述

本書提供了相關工具和算法,能幫助讀者實現分析和可視化圖像處理。本書給出了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