內容簡介:轟動程式圈3大AI影像辨識利器
從收集資料、圖片擷取、建立標籤、訓練模型
到智慧影像辨識的全面進化實戰!
人工智慧(Artificial Intelligence)應用基本上可分五大層面:時間序列、圖像處理、音訊處理、自然語言處理以及動態影像處理,其中與「智慧影像」相關者就佔了兩大領域。智慧影像是透過電腦視覺技術,從中學習人類的視覺辨識能力,並自動判讀影像中的關鍵資訊,目前被大量使用在圖像辨識、人臉識別、物體動作捕捉、光學文字識別...等,是人工智慧最為廣泛的應用之一。
在這個領域的研究中有許多功能強大的工具,如OpenCV、Yolo與dlib,但許多使用者卻不知如何收集資料、建立標籤,更不知道如何訓練模型,進而達成智慧影像辨識的結果!本書將引領讀者運用自己的資料,透過本機與雲端的資源,以目前主流技術進行自有模型的訓練來完成實際可用的智慧影像應用。
挑戰智慧影像最佳學習地圖,
結合本機與雲端應用,
真正深入AI影像辨識核心!
■掌握智慧影像的技術特性與主流的應用模組,涵蓋OpenCV、Pillow、Yolo與dlib。
■根據不同模組特性介紹其資料來源的收集方式,除了一般土法煉鋼的徒手拍攝影像,也能利用Kaggle資料庫進行下載,或是利用動態影片進行大量圖片的擷取,再運用自動批次的方式進行圖片整理與特徵標記。
■當本機在訓練模型時發生記憶體不足、效能不夠等問題時,使用Google專為機器學習而生的Colab雲端服務來訓練自己的模型。
■集結最具代表性的實務應用主題,包括人臉辨識、口罩人臉辨識、車牌辨識、車流統計…等專題,在真實的情況中體驗智慧影像的應用,並擁有開發能力。
■針對OpenCV與Pillow影像處理特別提供入門影音輔助教學,加速學習效率。
書附超值學習資源:範例程式檔/100分鐘OpenCV與Pillow影像處理入門影音教學
目錄
章節說明:CH01 認識智慧影像辨識
1.1 人工智慧
1.1.1 人工智慧是什麼?
1.1.2 人工智慧基本應用
1.1.3 人工智慧實際應用
1.2 智慧影像辨識應用
1.2.1 影像處理
1.2.2 智慧影像辨識
1.2.3 突破智慧影像辨識學習的困境
CH02 OpenCV和Pillow影像處理
2.1 OpenCV
2.1.1 以OpenCV讀取及顯示圖形
2.1.2 儲存影像檔
2.1.3 OpenCV基本繪圖
2.1.4 使用OpenCV進行臉部偵測
2.1.5 擷取臉部圖形及存檔
2.2 圖片特效處理
2.2.1 認識圖片的維度
2.2.2 圖片灰階和黑白處理
2.3 建立新畫布與圖形合併
2.3.1 建立新畫布
2.3.2 圖形合併
2.4 擷取攝影機影像
2.5 Pillow
2.5.1 Pillow圖片基本操作
2.5.2 Pillow圖片編輯
2.5.3 圖片灰階處理
2.5.4 Pillow繪製圖形
2.6 OpenCV與Pillow圖像格式互轉
2.6.1 OpenCV轉Pillow
2.6.2 Pillow轉OpenCV
2.6.3 OpenCV和Pillow黑白圖片處理比較
CH03 OpenCV模型訓練
3.1 專題方向
3.2 準備訓練Haar特徵分類器資料
3.2.1 認識Haar特徵分類器
3.2.2 處理正樣本及實測圖片
3.2.3 處理負樣本圖片
3.3 建立車牌號碼Haar特徵分類器模型
3.3.1 處理Haar特徵分類器模型的檔案結構
3.3.2 加入正樣本
3.3.3 加入負樣本
3.3.4 正樣本標記資料
3.3.5 顯示及修改框選區域
3.3.6 調整框選區域寬高比
3.3.7 增加車牌數量
3.3.8 訓練Haar特徵分類器
3.4 使用Haar特徵分類器模型
3.4.1 Haar特徵分類器模型語法
3.4.2 車牌號碼偵測
CH04 OpenCV影像辨識-車牌
4.1 專題方向
4.2 車牌號碼擷取
4.2.1 原始圖片轉換尺寸
4.2.2 擷取車牌號碼圖形
4.2.3 以輪廓偵測分割車牌號碼文字
4.2.4 組合擷取車牌號碼文字圖形
4.2.5 去除畸零地
4.3 車牌辨識
4.3.1 文字辨識
4.3.2 單一車牌辨識
4.3.3 整批車牌辨識
CH05 火箭級智慧影像辨識-Yolo
5.1 Yolo是什麼?
5.1.1 Yolo發展歷程
5.1.2 Yolo偵測物體原理概述
5.1.3 Yolo偵測物體種類
5.2 建立Yolo系統
5.2.1 安裝軟體與模組
5.2.2 編譯Yolo
5.2.3 在命令提示字元視窗執行Yolo
5.2.4 以Python程式執行Yolov3
5.3 訓練自訂Yolo偵測模型
5.3.1 標記工具
5.3.2 下載Kaggle口罩資料
5.3.3 轉換PascalVOC為Yolo格式
5.3.4 建立訓練組態資料結構
5.3.5 訓練模型
CH06 使用Colab訓練Yolo模型
6.1 Colab:功能強大的虛擬機器
6.1.1 Colab介紹
6.1.2 Colab建立記事本
6.1.3 Jupyter Notebook基本操作
6.1.4 Colab連接Google Drive雲端硬碟
6.1.5 執行Linux命令
6.2 Colab中訓練Yolo模型
6.2.1 整理口罩資料
6.2.2 進行Yolov3模型訓練
6.2.3 訓練Yolo模型注意事項
6.2.4 訓練其他Yolo模型
6.3 使用自行訓練的Yolo模型
6.3.1 在Colab中使用自行訓練Yolo模型
6.3.2 在Python中使用自行訓練Yolo模型
CH07 最強智慧影像辨識-dlib
7.1 dlib人臉偵測
7.1.1 安裝dlib
7.1.2 簡單人臉偵測
7.1.3 5點特徵人臉偵測
7.1.4 CNN訓練模型人臉偵測
7.1.5 68點特徵人臉偵測
7.1.6 攝影機圖像中畫出點輪廓
7.2 dlib人臉辨識
7.2.1 人臉辨識
7.2.2 dlib人臉登入系統
7.3 dlib其他應用
7.3.1 偵測嘴巴是否張開
7.3.2 偵測打瞌睡
7.3.3 物體追蹤
CH08 dlib自行訓練模型
8.1 dlib訓練自己模型
8.1.1 擷取影片畫面蒐集資料
8.1.2 標記圖片
8.1.3 訓練模型
8.1.4 使用模型
8.1.5 自行訓練模型應用:車流偵測
8.2 dlib訓練進階模型
8.2.1 偵測多物體功能
8.2.2 訓練車牌特徵點模型
8.2.3 使用車牌特徵點模型
8.2.4 車牌特徵點模型應用
章節說明:CH01 認識智慧影像辨識
1.1 人工智慧
1.1.1 人工智慧是什麼?
1.1.2 人工智慧基本應用
1.1.3 人工智慧實際應用
1.2 智慧影像辨識應用
1.2.1 影像處理
1.2.2 智慧影像辨識
1.2.3 突破智慧影像辨識學習的困境
CH02 OpenCV和Pillow影像處理
2.1 OpenCV
2.1.1 以OpenCV讀取及顯示圖形
2.1.2 儲存影像檔
2.1.3 OpenCV基本繪圖
2.1.4 使用OpenCV進行臉部偵測
2.1.5 擷取臉部圖形及存檔
2.2 圖片特效處理
2.2.1 認識圖片的維度
2.2.2 圖片灰階和黑白處理
2.3 建立新畫布與圖形合併
2.3.1 建立新畫布
2.3.2 圖形合併
2....