內容簡介
科班出身的AI人必修課:OpenCV影像處理使用python
內容簡介
電腦視覺技術的應用越來越廣泛,有非常多的軟體工具和函數庫可以用來建置電腦視覺應用,針對Python的OpenCV就是一個很好的選擇,本書正是針對以Python為基礎的OpenCV來說明的。
Python和OpenCV結合,必將產生巨大的威力。本書以OpenCV官方文件的知識脈絡為主線,在此基礎上對細節進行補充和說明。
本書不僅介紹 OpenCV 函數的使用方法,還介紹函數實現的演算法原理。在介紹 OpenCV 函數的使用方法時,提供大量的程式示例。在介紹函數對圖像的處理前,先展示函數對數值、陣列的處理,方便讀者從數值的角度觀察和瞭解函數的處理過程和結果。在介紹具體的演算法原理時,使用通俗易懂的語言和貼近生活的示例來說明問題,避免使用過多複雜抽象的公式。
適合讀者群:電腦視覺領域的初學者、專業技術人員、影像處理愛好者,或相關科系師生做為學習參考教材。
本書特色
■ 介紹以Python為基礎的OpenCV視覺函數庫的使用
■ 內容通俗易懂、生動有趣,案例豐富,實用性強
內容簡介
電腦視覺技術的應用越來越廣泛,有非常多的軟體工具和函數庫可以用來建置電腦視覺應用,針對Python的OpenCV就是一個很好的選擇,本書正是針對以Python為基礎的OpenCV來說明的。
Python和OpenCV結合,必將產生巨大的威力。本書以OpenCV官方文件的知識脈絡為主線,在此基礎上對細節進行補充和說明。
本書不僅介紹 OpenCV 函數的使用方法,還介紹函數實現的演算法原理。在介紹 OpenCV 函數的使用方法時,提供大量的程式示例。在介紹函數對圖像的處理前,先展示函數對數值、陣列的處理,方便讀者從數值的角度觀察和瞭解函數的處理過程和結果。在介紹具體的演算法原理時,使用通俗易懂的語言和貼近生活的示例來說明問題,避免使用過多複雜抽象的公式。
適合讀者群:電腦視覺領域的初學者、專業技術人員、影像處理愛好者,或相關科系師生做為學習參考教材。
本書特色
■ 介紹以Python為基礎的OpenCV視覺函數庫的使用
■ 內容通俗易懂、生動有趣,案例豐富,實用性強
作者簡介
作者簡介
李立宗
南開大學碩士,天津職業技術師範大學副教授,從事電腦視覺領域的教學和研究。主編《OpenCV程式設計案例詳解》等多本圖書,在網易雲課堂主講《OpenCV圖窮匕見》等多門課程。
李立宗
南開大學碩士,天津職業技術師範大學副教授,從事電腦視覺領域的教學和研究。主編《OpenCV程式設計案例詳解》等多本圖書,在網易雲課堂主講《OpenCV圖窮匕見》等多門課程。
內容目錄
目錄
前言
01 OpenCV 入門
1.1 如何使用
1.2 影像處理基本操作
1.3 OpenCV 貢獻庫
02影像處理基礎
2.1 影像的基本表示方法
2.2 像素處理
2.3 使用numpy.array 存取像素
2.4 有興趣區域(ROI)
2.5 通道操作
2.6 取得影像屬性
03影像運算
3.1 影像加法運算
3.2 影像加權和
3.3 逐位元邏輯運算
3.4 掩模
3.5 影像與數值的運算
3.6 位平面分解
3.7 影像加密和解密
3.8 數字浮水印
3.9 臉部打碼及解碼
04色彩空間類型轉換
4.1 色彩空間基礎
4.2 類型轉換函數
4.3 類型轉換實例
4.4 HSV 色彩空間討論
4.5 alpha 通道
05幾何轉換
5.1 縮放
5.2 翻轉
5.3 仿射
5.4 透視
5.5 重對映
06設定值處理
6.1 threshold 函數
6.2 自我調整設定值處理
6.3 Otsu 處理
07影像平滑處理
7.1 均值濾波
7.2 方框濾波
7.3 高斯濾波
7.4 中值濾波
7.5 雙邊濾波
7.6 2D 旋積
08形態學操作
8.1 腐蝕
8.2 膨脹
8.3 通用形態學函數
8.4 開運算
8.5 閉運算
8.6 形態學梯度運算
8.7 禮帽運算
8.8 黑帽運算
8.9 核函數
09影像梯度
9.1 Sobel 理論基礎
9.2 Sobel 運算元及函數使用
9.3 Scharr 運算元及函數使用
9.4 Sobel 運算元和Scharr運算元的比較
9.5 Laplacian 運算元及函數使用
9.6 運算元歸納
10 Canny 邊緣檢測
10.1 Canny 邊緣檢測基礎
10.2 Canny 函數及使用
11影像金字塔
11.1 理論基礎
11.2 pyrDown 函數及使用
11.3 pyrUp 函數及使用
11.4 取樣可逆性的研究
11.5 拉普拉斯金字塔
12影像輪廓
12.1 尋找並繪製輪廓
12.2 矩特徵
12.3 Hu 矩
12.4 輪廓擬合
12.5 Convex|Hull
12.6 利用形狀場景演算法比較
12.7 輪廓的特徵值
13長條圖型處理
13.1 長條圖的含義
13.2 繪製長條圖
13.3 長條圖均衡化
13.4 pyplot 模組介紹
14傅立葉轉換
14.1 理論基礎
14.2 Numpy 實現傅立葉轉換
14.3 OpenCV 實現傅立葉轉換
15範本比對
15.1 範本比對基礎
15.2 多範本比對
16霍夫轉換
16.1 霍夫直線轉換
16.2 霍夫圓環轉換
17影像分割與分析
17.1 用分水嶺演算法實現影像分割與分析
17.2 互動式前景分析
18視訊處理
18.1 VideoCapture 類別
18.2 VideoWriter 類別
18.3 視訊操作基礎
19繪圖及互動
19.1 繪畫基礎
19.2 滑鼠互動
19.3 捲軸
20 K 近鄰演算法
20.1 理論基礎
20.2 計算
20.3 手寫數字識別的原理
20.4 自訂函數手寫數字識別
20.5 K 近鄰模組的基本使用
20.6 K 近鄰手寫數字識別
21支援向量機
21.1 理論基礎
21.2 SVM 案例介紹
22 K平均值分群
22.1 理論基礎
22.2 K 平均值聚類模組
22.3 簡單範例
23人臉識別
23.1 人臉檢測
23.2 LBPH 人臉識別
23.3 EigenFaces 人臉識別
23.4 Fisherfaces 人臉識別
23.5 人臉資料庫
A 範例
A-1 範例檔案hist.py
A-2 範例檔案inpaint.py
A-3 範例檔案kmeans.py
B 參考文獻
前言
01 OpenCV 入門
1.1 如何使用
1.2 影像處理基本操作
1.3 OpenCV 貢獻庫
02影像處理基礎
2.1 影像的基本表示方法
2.2 像素處理
2.3 使用numpy.array 存取像素
2.4 有興趣區域(ROI)
2.5 通道操作
2.6 取得影像屬性
03影像運算
3.1 影像加法運算
3.2 影像加權和
3.3 逐位元邏輯運算
3.4 掩模
3.5 影像與數值的運算
3.6 位平面分解
3.7 影像加密和解密
3.8 數字浮水印
3.9 臉部打碼及解碼
04色彩空間類型轉換
4.1 色彩空間基礎
4.2 類型轉換函數
4.3 類型轉換實例
4.4 HSV 色彩空間討論
4.5 alpha 通道
05幾何轉換
5.1 縮放
5.2 翻轉
5.3 仿射
5.4 透視
5.5 重對映
06設定值處理
6.1 threshold 函數
6.2 自我調整設定值處理
6.3 Otsu 處理
07影像平滑處理
7.1 均值濾波
7.2 方框濾波
7.3 高斯濾波
7.4 中值濾波
7.5 雙邊濾波
7.6 2D 旋積
08形態學操作
8.1 腐蝕
8.2 膨脹
8.3 通用形態學函數
8.4 開運算
8.5 閉運算
8.6 形態學梯度運算
8.7 禮帽運算
8.8 黑帽運算
8.9 核函數
09影像梯度
9.1 Sobel 理論基礎
9.2 Sobel 運算元及函數使用
9.3 Scharr 運算元及函數使用
9.4 Sobel 運算元和Scharr運算元的比較
9.5 Laplacian 運算元及函數使用
9.6 運算元歸納
10 Canny 邊緣檢測
10.1 Canny 邊緣檢測基礎
10.2 Canny 函數及使用
11影像金字塔
11.1 理論基礎
11.2 pyrDown 函數及使用
11.3 pyrUp 函數及使用
11.4 取樣可逆性的研究
11.5 拉普拉斯金字塔
12影像輪廓
12.1 尋找並繪製輪廓
12.2 矩特徵
12.3 Hu 矩
12.4 輪廓擬合
12.5 Convex|Hull
12.6 利用形狀場景演算法比較
12.7 輪廓的特徵值
13長條圖型處理
13.1 長條圖的含義
13.2 繪製長條圖
13.3 長條圖均衡化
13.4 pyplot 模組介紹
14傅立葉轉換
14.1 理論基礎
14.2 Numpy 實現傅立葉轉換
14.3 OpenCV 實現傅立葉轉換
15範本比對
15.1 範本比對基礎
15.2 多範本比對
16霍夫轉換
16.1 霍夫直線轉換
16.2 霍夫圓環轉換
17影像分割與分析
17.1 用分水嶺演算法實現影像分割與分析
17.2 互動式前景分析
18視訊處理
18.1 VideoCapture 類別
18.2 VideoWriter 類別
18.3 視訊操作基礎
19繪圖及互動
19.1 繪畫基礎
19.2 滑鼠互動
19.3 捲軸
20 K 近鄰演算法
20.1 理論基礎
20.2 計算
20.3 手寫數字識別的原理
20.4 自訂函數手寫數字識別
20.5 K 近鄰模組的基本使用
20.6 K 近鄰手寫數字識別
21支援向量機
21.1 理論基礎
21.2 SVM 案例介紹
22 K平均值分群
22.1 理論基礎
22.2 K 平均值聚類模組
22.3 簡單範例
23人臉識別
23.1 人臉檢測
23.2 LBPH 人臉識別
23.3 EigenFaces 人臉識別
23.4 Fisherfaces 人臉識別
23.5 人臉資料庫
A 範例
A-1 範例檔案hist.py
A-2 範例檔案inpaint.py
A-3 範例檔案kmeans.py
B 參考文獻
ISBN: 9789869807296