電腦視覺開發實戰——基於OpenCV

郭佳

  • 電腦視覺開發實戰——基於OpenCV-preview-1
  • 電腦視覺開發實戰——基於OpenCV-preview-2
電腦視覺開發實戰——基於OpenCV-preview-1

商品描述

本書以實踐為導向,將理論與實踐相結合,深入淺出地介紹了使用Python與OpenCV進行電腦視覺實踐的基本知識和具體方法。

本書旨在為各種背景的讀者提供通向電腦視覺世界的路徑,從零基礎的初學者到有編程經驗的開發者都能夠受益。其中,第1章介紹了人工智能的歷史與發展,第2章提供了Python編程的基礎,而第3章至第9章詳細介紹了OpenCV的安裝、配置和應用,幫助讀者構建堅實的電腦視覺基礎。最後,第10章為實例練習,鞏固了所學知識,可以作為課堂和課後作業的良好補充。

本書作為普通高等院校電腦科學、人工智能、數學等專業相關課程的材。學習本書無需前置知識。本書也可作為所有專業學生瞭解電腦視覺與編程地參考書。

作者簡介

郭佳 [个人经历] 华中科技大学软件工程专业硕士,日本法政大学信息科学专业硕士、博士,日本京都大学特任研究员、特任助理教授。SCI期刊Applied Intelligence, Complex & intelligent systems 审稿人 [研究方向] 人工智能、进化计算、神经网络。 [学术成果] 近年来在SCI、EI期刊上发表多篇论文,多次参与进化计算领域会议。 [主要荣誉] 2017年1月,在国际会议 International Symposium on Artificial Life and Robotics 上获得青年作者奖(Young Author Award)

目錄大綱

第1章 認識人工智能 1

1.1 人工智能概述 2

1.2 電腦視覺概述 3

1.3 R-CNN系列算法 5

1.3.1 R-CNN算法 5

1.3.2 Fast R-CNN算法 7

1.3.3 Faster R-CNN算法 8

1.4 殘差網絡 10

1.4.1 ResNet概述 10

1.4.2 ResNet背景 10

1.4.3 ResNet核心內容 11

1.4.4 ResNet結構 13

1.5 YOLO 19

1.5.1 YOLOv1 19

1.5.2 YOLOv2 21

1.5.3 YOLOv3 23

1.5.4 YOLOv4 24

1.5.5 YOLOv5 28

1.6 本章小結 29

1.7 習題 30

第2章 Python基礎 31

2.1 Python概述 32

2.2 開發環境的安裝 33

2.2.1 Python的下載與安裝 33

2.2.2 PyCharm的下載與安裝 37

2.2.3 第一次使用PyCharm 40

2.3 Python語法 42

2.3.1 Python的保留字 42

2.3.2 輸出“hello world” 44

2.3.3 使用if()判斷 44

2.3.4 使用for()循環 45

2.3.5 使用while()循環 45

2.3.6 Python數字 47

2.3.7 Python字符串 49

2.3.8 Python時間 53

2.3.9 Python內置函數 54

2.3.10 Python運算符 55

2.3.11 Python實例 58

2.4 本章小結 61

2.5 習題 61

第3章 使用OpenCV處理

圖像 71

3.1 OpenCV基礎 72

3.1.1 Python的第三方庫(框架) 72

3.1.2 OpenCV的安裝與導入 73

3.2 讀取圖像 81

3.3 顯示圖像 82

3.4 保存圖像 83

3.5 圖像屬性 84

3.6 本章小結 85

3.7 習題 86

第4章 使用OpenCV和

NumPy操作像素 87

4.1 NumPy與像素 88

4.2 創建數組 90

4.3 操作數組 92

4.4 創建圖像 93

4.5 拼接圖像 96

4.6 修改圖像 99

4.7 本章小結 100

4.8 習題 100

第5章 使用OpenCV繪制

圖形與文字 101

5.1 繪制線段 102

5.2 繪制矩形 103

5.3 繪制圓 106

5.4 繪制多邊形 109

5.5 繪制文字 111

5.6 本章小結 114

5.7 習題 114

第6章 使用OpenCV對圖像

進行幾何變換 115

6.1 縮放 116

6.2 翻轉 117

6.3 平移 119

6.4 旋轉 119

6.5 本章小結 121

6.6 習題 121

第7章 使用OpenCV進行模板

匹配和圖像分割 122

7.1 模板匹配 123

7.2 圖像分割 126

7.2.1 使用分水嶺算法的圖像分割 126

7.2.2 圖像金字塔 129

7.2.3 交互式前景提取 133

7.3 本章小結 136

7.4 習題 136

第8章 使用OpenCV進行

特徵檢測 137

8.1 角檢測 138

8.2 特徵點檢測 140

8.3 特徵匹配與對象查找 142

8.4 本章小結 146

8.5 習題 146

第9章 使用OpenCV進行

人臉檢測與識別 147

9.1 人臉識別技術的發展歷程 148

9.2 人臉檢測與識別方法介紹 148

9.3 人臉檢測 150

9.4 人臉識別 153

9.5 本章小結 154

9.6 習題 154

第10章 實例練習 155

10.1 實例一:繪制4條豎線 156

10.2 實例二:繪制4個空心正方形 156

10.3 實例三:繪制4個實心正方形 157

10.4 實例四:繪制3個空心圓 158

10.5 實例五:繪制3個實心圓 159

10.6 實例六:繪制彩色圓環 159

10.7 實例七:繪制四邊形和圓 160

10.8 實例八:繪制線條粗細不同的

四邊形 161

10.9 實例九:在縮放後的圖像上繪制

4條豎線 162

10.10 實例十:在縮放後的圖像上繪制

4個矩形 163

10.11 實例十一:在縮放後的圖像上繪制

矩形與文字 163