OpenCV 3 計算機視覺 : Python 語言實現, 2/e (Learning OpenCV 3 Computer Vision with Python, 2/e) OpenCV 3计算机视觉:Python语言实现(原书第2版)

喬·米尼奇諾 (Joe Minichino), 約瑟夫·豪斯 (Joseph Howse)

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

商品描述

本書分9章來介紹計算機視覺的重要概念,所有的概念都融入了一些很有趣的項目。

本書首先詳細介紹了多個平臺下基於Python的OpenCV安裝,繼而介紹了計算機視覺應用的基本操作,包括圖像文件的讀取與顯示,圖像處理的基本操作(比如邊緣檢測等),深度估計與分割,人臉檢測與識別,圖像的檢索,目標的檢測與識別,目標跟蹤,神經網絡的手寫體識別。
可以這樣說,本書是一本不可多得的採用OpenCV實踐計算機視覺應用的好書。

作者簡介

作者:(愛爾蘭)喬·米尼奇諾(Joe Minichino)、(加拿大)約瑟夫·豪斯(Joseph Howse)
 
譯者:劉波、苗貝貝、史斌

目錄大綱

譯者序
前言
作者簡介
審校者簡介
譯者簡介

第1章安裝OpenCV1 
1.1選擇和使用合適的安裝工具2 
1.1.1在Windows上安裝2 
1.1.2在OS X系統中安裝6 
1.1.3在Ubuntu及其衍生版本中安裝11 
1.1.4在其他類Unix系統中安裝12 
1.2安裝Contrib模塊13 
1.3運行示例13 
1.4查找文檔、幫助及更新14 
1.5總結15 

第2章處理文件、攝像頭和圖形用戶界面16 
2.1基本I/O腳本16 
2.1.1讀/寫圖像文件16 
2.1.2圖像與原始字節之間的轉換19 
2.1.3使用numpy.array訪問圖像數據20 
2.1.4視頻文件的讀/寫22 
2.1.5捕獲攝像頭的幀23 
2.1.6在窗口顯示圖像24 
2.1.7在窗口顯示攝像頭幀25 
2.2Cameo項目(人臉跟踪和圖像處理)26 
2.3Cameo—面向對象的設計27 
2.3.1使用managers .CaptureManager提取視頻流27
2.3.2使用managers.WindowManager抽象窗口和鍵盤32 
2.3.3cameo.Cameo的強大實現33 
2.4總結34 

第3章使用OpenCV 3處理圖像36 
3.1不同色彩空間的轉換36 
3.2傅里葉變換37 
3.2.1高通濾波器37 
3.2.2低通濾波器39 
3.3創建模塊39 
3.4邊緣檢測40 
3.5用定制內核做卷積41 
3.6修改應用43 
3.7Canny邊緣檢測44 
3.8輪廓檢測45 
3.9邊界框、最小矩形區域和最小閉圓的輪廓46 
3.10凸輪廓與Douglas—Peucker算法48 
3.11直線和圓檢測50 
3.11.1直線檢測50 
3.11.2圓檢測51 
3.12檢測其他形狀52 
3.13總結52 

第4章深度估計與分割53 
4.1創建模塊53 
4.2捕獲深度攝像頭的幀54 
4.3從視差圖得到掩模56 
4.4對複制操作執行掩模57 
4.5使用普通攝像頭進行深度估計59 
4.6使用分水嶺和GrabCut算法進行物體分割63 
4.6.1用GrabCut進行前景檢測的例子64
4.6.2使用分水嶺算法進行圖像分割66 
4.7總結69 

第5章人臉檢測和識別70 
5.1Haar級聯的概念70 
5.2獲取Haar級聯數據71 
5.3使用OpenCV進行人臉檢測72 
5.3.1靜態圖像中的人臉檢測72 
5.3.2視頻中的人臉檢測74 
5.3.3人臉識別76 
5.4總結82 

第6章圖像檢索以及基於圖像描述符的搜索83 
6.1特徵檢測算法83 
6.1.1特徵定義84 
6.1 .2使用DoG和SIFT進行特徵提取與描述86 
6.1.3使用快速Hessian算法和SURF來提取和檢測特徵89 
6.1.4基於ORB的特徵檢測和特徵匹配91 
6.1.5ORB特徵匹配93 
6.1.6K—最近鄰匹配95 
6.1.7FLANN匹配96 
6.1.8FLANN的單應性匹配99 
6.1.9基於文身取證的應用程序示例102 
6.2總結105 

第7章目標檢測與識別106 
7.1目標檢測與識別技術106 
7.1.1HOG描述符107 
7.1.2檢測人112 
7.1.3創建和訓練目標檢測器113 
7.2汽車檢測116 
7.2.1代碼的功能118
7.2.2SVM和滑動窗口122 
7.3總結134 

第8章目標跟踪135 
8.1檢測移動的目標135 
8.2背景分割器:KNN、MOG2和GMG138 
8.2.1均值漂移和CAMShift142 
8.2.2彩色直方圖144 
8.2.3返回代碼146 
8.3CAMShift147 
8.4卡爾曼濾波器149 
8.4.1預測和更新149 
8.4.2範例150 
8.4.3一個基於行人跟踪的例子153 
8.4.4Pedestrian類154 
8.4.5主程序157 
8.5總結159 

第9章基於OpenCV的神經網絡簡介160 
9.1人工神經網絡160 
9.2人工神經網絡的結構161 
9.2.1網絡層級示例162 
9.2.2學習算法163 
9.3OpenCV中的ANN164 
9.3.1基於ANN的動物分類166 
9.3.2訓練週期169 
9.4用人工神經網絡進行手寫數字識別170 
9.4.1MNIST—手寫數字數據庫170 
9.4.2定制訓練數據170 
9.4.3初始參數171 
9.4.4迭代次數171 
9.4.5其他參數171
9.4.6迷你庫172 
9.4.7主文件175 
9.5可能的改進和潛在的應用180 
9.5.1改進180 
9.5.2應用181 
9.6總結181