OpenCV 4計算機視覺項目實戰(原書第2版) ( 簡體 字) |
作者:(西)大衛·米蘭·埃斯克里瓦等著 | 類別:1. -> 教材 -> 數位影像處理 |
譯者: |
出版社:機械工業出版社 | 3dWoo書號: 51506 詢問書籍請說出此書號!【缺書】 NT售價: 395 元 |
出版日:7/1/2019 |
頁數:208 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787111631644 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:OpenCV是用于開發計算機視覺應用程序的最流行的庫之一,它使我們能夠實時運行許多不同的計算機視覺算法。它已存在很多年了,并且已經成為該領域的標準庫。OpenCV的主要優勢之一是它經過高度優化,幾乎可以在所有平臺上使用。
本書首先簡要介紹計算機視覺的各個領域以及相關的OpenCV函數,這些函數均用C++編寫。每章都包含實際的例子和代碼示例,用于演示用例。這有助于你輕松掌握主題并了解如何在現實生活中應用它們。綜上所述,這是一本實用的指導書,你將從中學會如何在C++中使用OpenCV并使用這個庫構建各種應用程序。
本書目標讀者
本書面向不熟悉OpenCV并希望在C++中使用OpenCV開發計算機視覺應用程序的開發人員。了解C++的基本知識將有助于理解本書。本書對于想要學習計算機視覺入門知識并理解基本概念的人也很有用。他們應該了解基本的數學概念,例如向量、矩陣和矩陣乘法,以便充分利用本書。在閱讀本書的過程中,你將學會如何使用OpenCV從零開始構建各種計算機視覺應用程序。
本書涵蓋內容
第1章介紹在各種操作系統上的安裝步驟,并介紹人類視覺系統以及計算機視覺中的各種主題。
第2章討論如何在OpenCV中讀/寫圖像和視頻,并解釋如何使用CMake構建項目。
第3章介紹如何構建圖形用戶界面和鼠標事件檢測器,以構建交互式應用程序。
第4章探討直方圖和濾波器,并展示如何對圖像進行卡通化處理。
第5章描述各種圖像預處理技術,如噪聲消除、閾值處理和輪廓分析。
第6章處理目標識別和機器學習,以及如何使用支持向量機來構建目標分類系統。
第7章討論人臉檢測和Haar級聯,然后解釋這些方法如何用于檢測人臉的各個部位。
第8章探討背景減除、視頻監控和形態圖像處理,并且描述它們如何相互連接。
第9章介紹如何使用不同技術跟蹤實時視頻中的目標,例如,基于顏色和基于特征進行跟蹤。
第10章討論光學字符識別、文本分割,并介紹Tesseract OCR引擎。
第11章深入探究Tesseract OCR引擎,解釋如何將其用于文本檢測、提取和識別。
第12章探討如何使用兩種常用的深度學習架構在OpenCV中應用深度學習,在這兩種架構中,YOLO v3用于目標檢測,而單發探測器(Single Shot Detector)用于人臉檢測。
如何充分利用本書
了解C++的基本知識將有助于理解本書內容。這些例子使用以下技術進行構建:OpenCV 4.0、CMake 3.3.x或更新版本、Tesseract、Leptonica(依賴于Tesseract)、Qt(可選)和OpenGL(可選)。 |
內容簡介:本書是一本使用OpenCV進行計算機視覺應用開發的實踐指南。書中不僅介紹OpenCV基礎知識,還詳細講解各種實用的計算機視覺算法以及一些高級的計算機視覺技術,通過豐富的實例和代碼示例,幫助你輕松掌握OpenCV概念及算法,從零開始構建各種計算機視覺應用程序。
全書共12章,第1章介紹OpenCV的入門知識及安裝;第2章討論如何在OpenCV中讀/寫圖像和視頻,并介紹CMake的使用;第3章介紹如何構建圖形用戶界面和鼠標事件檢測器,以構建交互式應用程序;第4章探討直方圖和濾波器,并展示如何對圖像進行卡通化;第5章描述各種圖像預處理技術,如噪聲消除、閾值處理和輪廓分析;第6章介紹如何使用支持向量機來構建目標分類系統;第7章討論人臉檢測和Haar級聯;第8章探討背景減除、視頻監控和形態圖像處理,并且描述它們如何相互連接;第9章介紹如何使用不同技術跟蹤實時視頻中的對象;第10章討論光學字符識別、文本分割;第11章探討如何將Tesseract OCR引擎用于文本的檢測、提取和識別;第12章探討如何使用YOLO v3和單發探測器這兩種常用的深度學習架構在OpenCV中應用深度學習。
OpenCV是用于開發計算機視覺應用程序的最流行的開源庫之一,它可以幫助你專注于構建完整的圖像處理、運動檢測和圖像分割項目。無論你是初涉計算機視覺技術,還是對其概念已有基本了解,本書都將成為你通過實例和項目掌握OpenCV概念及算法的實用指南。
本書首先介紹OpenCV的入門知識及安裝,然后介紹OpenCV的基礎知識,包括用戶界面、矩陣運算、濾波器和直方圖等,之后介紹復雜的計算機視覺算法,包括對象分割和分類、視頻監控、對象跟蹤等,最后探討對象跟蹤、文本識別、機器學習和人臉檢測等高級技術。閱讀本書之后,你將掌握常用和最新的計算機視覺技術,并學會從零開始構建各類OpenCV項目。
通過閱讀本書,你將學到:
在各種操作系統上安裝OpenCV 4
創建CMake腳本以編譯C++應用程序
了解基本的圖像矩陣格式和濾波器
探索圖像分割和特征提取技術
從靜態場景中刪除背景以識別需要監控的移動對象
采用各種技術跟蹤實時視頻中的對象
通過Tesseract進行文本檢測和識別
熟悉用于圖像分類的重要深度學習工具 |
目錄:前言 作者簡介 審校者簡介 第1章 OpenCV入門 1 1.1 了解人類視覺系統 1 1.2 人類如何理解圖像內容 3 1.3 你能用OpenCV做什么 4 1.3.1 內置數據結構和輸入/輸出 4 1.3.2 圖像處理操作 5 1.3.3 GUI 5 1.3.4 視頻分析 6 1.3.5 3D重建 6 1.3.6 特征提取 7 1.3.7 對象檢測 7 1.3.8 機器學習 8 1.3.9 計算攝影 8 1.3.10 形狀分析 9 1.3.11 光流算法 9 1.3.12 人臉和對象識別 9 1.3.13 表面匹配 10 1.3.14 文本檢測和識別 10 1.3.15 深度學習 10 1.4 安裝OpenCV 10 1.4.1 Windows 11 1.4.2 Mac OS X 11 1.4.3 Linux 13 1.5 總結 14 第2章 OpenCV基礎知識導論 15 2.1 技術要求 15 2.2 基本CMake配置文件 16 2.3 創建一個庫 16 2.4 管理依賴項 17 2.5 讓腳本更復雜 18 2.6 圖像和矩陣 20 2.7 讀/寫圖像 22 2.8 讀取視頻和攝像頭 25 2.9 其他基本對象類型 27 2.9.1 Vec對象類型 27 2.9.2 Scalar對象類型 28 2.9.3 Point對象類型 28 2.9.4 Size對象類型 29 2.9.5 Rect對象類型 29 2.9.6 RotatedRect對象類型 29 2.10 基本矩陣運算 30 2.11 基本數據存儲 32 2.12 總結 34 第3章 學習圖形用戶界面 35 3.1 技術要求 35 3.2 OpenCV用戶界面介紹 36 3.3 OpenCV的基本圖形用戶界面 36 3.4 Qt圖形用戶界面 44 3.5 OpenGL支持 50 3.6 總結 54 第4章 深入研究直方圖和濾波器 55 4.1 技術要求 56 4.2 生成CMake腳本文件 56 4.3 創建圖形用戶界面 57 4.4 繪制直方圖 59 4.5 圖像顏色均衡 62 4.6 Lomography效果 64 4.7 卡通效果 68 4.8 總結 72 第5章 自動光學檢查、對象分割和檢測 73 5.1 技術要求 73 5.2 隔離場景中的對象 74 5.3 為AOI創建應用程序 76 5.4 預處理輸入圖像 78 5.4.1 噪聲消除 78 5.4.2 用光模式移除背景進行分割 79 5.4.3 閾值 84 5.5 分割輸入圖像 85 5.5.1 連通組件算法 85 5.5.2 findContours算法 90 5.6 總結 92 第6章 學習對象分類 94 6.1 技術要求 94 6.2 機器學習概念介紹 95 6.3 計算機視覺和機器學習工作流程 98 6.4 自動對象檢查分類示例 100 6.4.1 特征提取 102 6.4.2 訓練SVM模型 105 6.4.3 輸入圖像預測 109 6.5 總結 111 第7章 檢測面部部位與覆蓋面具 112 7.1 技術要求 112 7.2 了解Haar級聯 112 7.3 什么是積分圖像 114 7.4 在實時視頻中覆蓋面具 115 7.5 戴上太陽鏡 118 7.6 跟蹤鼻子、嘴巴和耳朵 121 7.7 總結 122 第8章 視頻監控、背景建模和形態學操作 123 8.1 技術要求 123 8.2 理解背景減除 124 8.3 直接的背景減除 124 8.4 幀差分 128 8.5 高斯混合方法 131 8.6 形態學圖像處理 133 8.7 使形狀變細 134 8.8 使形狀變粗 135 8.9 其他形態運算符 136 8.9.1 形態開口 136 8.9.2 形態閉合 137 8.9.3 繪制邊界 138 8.9.4 禮帽變換 139 8.9.5 黑帽變換 140 8.10 總結 140 第9章 學習對象跟蹤 141 9.1 技術要求 141 9.2 跟蹤特定顏色的對象 141 9.3 構建交互式對象跟蹤器 143 9.4 用Harris角點檢測器檢測點 148 9.5 用于跟蹤的好特征 151 9.6 基于特征的跟蹤 153 9.6.1 Lucas-Kanade方法 153 9.6.2 Farneback算法 157 9.7 總結 161 第10章 開發用于文本識別的分割算法 162 10.1 技術要求 162 10.2 光學字符識別介紹 162 10.3 預處理階段 164 10.3.1 對圖像進行閾值處理 164 10.3.2 文本分割 165 10.4 在你的操作系統上安裝Tesseract OCR 172 10.4.1 在Windows上安裝Tesseract 172 10.4.2 在Mac上安裝Tesseract 173 10.5 使用Tesseract OCR庫 173 10.6 總結 177 第11章 用Tesseract進行文本識別 178 11.1 技術要求 178 11.2 文本API的工作原理 179 11.2.1 場景檢測問題 179 11.2.2 極值區域 180 11.2.3 極值區域過濾 181 11.3 使用文本API 182 11.3.1 文本檢測 182 11.3.2 文本提取 187 11.3.3 文本識別 189 11.4 總結 193 第12章 使用OpenCV進行深度學習 194 12.1 技術要求 194 12.2 深度學習簡介 195 12.2.1 什么是神經網絡,我們如何從數據中學習 195 12.2.2 卷積神經網絡 197 12.3 OpenCV中的深度學習 198 12.4 YOLO用于實時對象檢測 199 12.4.1 YOLO v3深度學習模型架構 200 12.4.2 YOLO數據集、詞匯表和模型 200 12.4.3 將YOLO導入OpenCV 201 12.5 用SSD進行人臉檢測 204 12.5.1 SSD模型架構 204 12.5.2 將SSD人臉檢測導入OpenCV 204 12.6 總結 208 |
序: |