●目錄1 OpenCV入門1.1 初識OpenCV1.1.1 OpenCV的模塊簡介1.1.2 OpenCV 2.4.13與3.2版本的區別1.2 部署OpenCV1.2.1 在Visual Studio 2015中 配置OpenCV1.2.2 OpenCV 2.X C++ API的個示例1.2.3 OpenCV 3.X C++ API的個示例1.2.4 在Anaconda 2中配置OpenCV1.2.5 OpenCV 2.X Python API的個示例1.2.6 OpenCV 3.X Python API的個示例2 圖像數字化2.1 認識Numpy中的ndarray2.1.1 構造ndarray對像2.1.2 訪問ndarray中的值2.2 認識OpenCV中的Mat類2.2.1 初識Mat2.2.2 構造單通道Mat對像2.2.3 獲得單通道Mat的基本信息2.2.4 訪問單通道Mat對像中的值2.2.5 向量類Vec2.2.6 構造多通道Mat對像2.2.7 訪問多通道Mat對像中的值2.2.8 獲得Mat中某一區域的值2.3 矩陣的運算2.3.1 加法運算2.3.2 減法運算2.3.3 點乘運算2.3.4 點除運算2.3.5 乘法運算2.3.6 其他運算2.4 灰度圖像數字化2.4.1 概述2.4.2 將灰度圖像轉換為Mat2.4.3 將灰度圖轉換為ndarray2.5 彩色圖像數字化2.5.1 將RGB彩色圖像轉換為多通道Mat2.5.2 將RGB彩色圖轉換為三維的ndarray2.6 參考文獻3 幾何變換3.1 仿射變換3.1.1 平移3.1.2 放大和縮小3.1.3 旋轉3.1.4 計算仿射矩陣3.1.5 插值算法3.1.6 Python實現3.1.7 C++實現3.1.8 旋轉函數rotate(OpenCV3.X新特性)3.2 投影變換3.2.1 原理詳解3.2.2 Python實現3.2.3 C++實現3.3 極坐標變換3.3.1 原理詳解3.3.2 Python實現3.3.3 C++實現3.3.4 線性極坐標函數linearPolar(OpenCV 3.X新特性)3.3.5 對數極坐標函數logPolar(OpenCV 3.X新特性)3.4 參考文獻4 對比度增強4.1 灰度直方圖4.1.1 什麼是灰度直方圖4.1.2 Python及C++實現4.2 線性變換4.2.1 原理詳解4.2.2 Python實現4.2.3 C++實現4.3 直方圖正規化4.3.1 原理詳解4.3.2 Python實現4.3.3 C++實現4.3.4 正規化函數normalize4.4 伽馬變換4.4.1 原理詳解4.4.2 Python實現4.4.3 C++實現4.5 全局直方圖均衡化4.5.1 原理詳解4.5.2 Python實現4.5.3 C++實現4.6 對比度的自適應直方圖均衡化4.6.1 原理詳解4.6.2 代碼實現4.7 參考文獻5 圖像平滑5.1 二維離散卷積5.1.1 卷積定義及矩陣形式5.1.2 可分離卷積核5.1.3 離散卷積的性質5.2 高斯平滑5.2.1 高斯卷積核的構建及分離性5.2.2 高斯卷積核的二項式近似5.2.3 Python實現5.2.4 C++實現5.3 均值平滑5.3.1 均值卷積核的構建及分離性5.3.2 快速均值平滑5.3.3 Python實現5.3.4 C++實現5.4 中值平滑5.4.1 原理詳解5.4.2 Python實現5.4.3 C++實現5.5 雙邊濾波5.5.1 原理詳解5.5.2 Python實現5.5.3 C++實現5.6 聯合雙邊濾波5.6.1 原理詳解5.6.2 Python實現5.6.3 C++實現5.7 導向濾波5.7.1 原理詳解5.7.2 Python實現5.7.3 快速導向濾波5.7.4 C++實現5.8 參考文獻6 閾值分割6.1 方法概述6.1.1 全局閾值分割6.1.2 閾值函數threshold(OpenCV3.X新特性)6.1.3 局部閾值分割6.2 直方圖技術法6.2.1 原理詳解6.2.2 Python實現6.2.3 C++實現6.3 熵算法6.3.1 原理詳解6.3.2 代碼實現6.4 Otsu閾值處理6.4.1 原理詳解6.4.2 Python實現6.4.3 C++實現6.5 自適應閾值6.5.1 原理詳解6.5.2 Python實現6.5.3 C++實現6.6 二值圖的邏輯運算6.6.1 “與”和“或”運算6.6.2 Python實現6.6.3 C++實現6.7 參考文獻7 形態學處理7.1 腐蝕7.1.1 原理詳解7.1.2 實現代碼及效果7.2 膨脹7.2.1 原理詳解7.2.2 Python實現7.2.3 C++實現7.3 開運算和閉運算7.3.1 原理詳解7.3.2 Python實現7.4 其他形態學處理操作7.4.1 頂帽變換和底帽變換7.4.2 形態學梯度7.4.3 C++實現8 邊緣檢測8.1 Roberts算子8.1.1 原理詳解8.1.2 Python實現8.1.3 C++實現8.2 Prewitt邊緣檢測8.2.1 Prewitt算子及分離性8.2.2 Python實現8.2.3 C++實現8.3 Sobel邊緣檢測8.3.1 Sobel算子及分離性8.3.2 構建高階的Sobel算子8.3.3 Python實現8.3.4 C++實現8.4 Scharr算子8.4.1 原理詳解8.4.2 Python實現8.4.3 C++實現8.5 Kirsch算子和Robinson算子8.5.1 原理詳解8.5.2 代碼實現及效果8.6 Canny邊緣檢測8.6.1 原理詳解8.6.2 Python實現8.6.3 C++實現8.7 Laplacian算子8.7.1 原理詳解8.7.2 Python實現8.7.3 C++實現8.8 高斯拉普拉斯(LoG)邊緣檢測8.8.1 原理詳解8.8.2 Python實現8.8.3 C++實現8.9 高斯差分(DoG)邊緣檢測8.9.1 高斯拉普拉斯與高斯差分的關繫8.9.2 Python實現8.9.3 C++實現8.10 Marr-Hildreth邊緣檢測8.10.1 算法步驟詳解8.10.2 Pyton實現8.10.3 C++實現8.11 參考文獻9 幾何形狀的檢測和擬合9.1 點集的最小外包9.1.1 最小外包旋轉矩形9.1.2 旋轉矩形的4個頂點(OpenCV 3.X新特性)9.1.3 最小外包圓9.1.4 最小外包直立矩形(OpenCV 3.X新特性)9.1.5 最小凸包9.1.6 最小外包三角形( OpenCV 3.X新特性)9.2 霍夫直線檢測9.2.1 原理詳解9.2.2 Python實現9.2.3 C++實現9.3 霍夫圓檢測9.3.1 標準霍夫圓檢測9.3.2 Python實現9.3.3 基於梯度的霍夫圓檢測9.3.4 基於梯度的霍夫圓檢測函數HoughCircles9.4 輪廓9.4.1 查找、繪制輪廓9.4.2 外包、擬合輪廓9.4.3 輪廓的周長和面積9.4.4 點和輪廓的位置關繫9.4.5 輪廓的凸包缺陷9.5 參考文獻10 傅裡葉變換10.1 二維離散的傅裡葉(逆)變換10.1.1 數學理解篇10.1.2 快速傅裡葉變換10.1.3 C++實現10.1.4 Python實現10.2 傅裡葉幅度譜與相位譜10.2.1 基礎知識10.2.2 Python實現10.2.3 C++實現10.3 譜殘差顯著性檢測10.3.1 原理詳解10.3.2 Python實現10.3.3 C++實現10.4 卷積與傅裡葉變換的關繫10.4.1 卷積定理10.4.2 Python實現10.5 通過快速傅裡葉變換計算卷積10.5.1 步驟詳解10.5.2 Python實現10.5.3 C++實現10.6 參考文獻11 頻率域濾波11.1 概述及原理詳解11.2 低通濾波和高通濾波11.2.1 三種常用的低通濾波器11.2.2 低通濾波的C++實現11.2.3 低通濾波的Python實現11.2.4 三種常用的高通濾波器11.3 帶通和帶阻濾波11.3.1 三種常用的帶通濾波器11.3.2 三種常用的帶阻濾波器11.4 自定義濾波器11.4.1 原理詳解11.4.2 C++實現11.5 同態濾波11.5.1 原理詳解11.5.2 Python實現11.6 參考文獻12 色彩空間12.1 常見的色彩空間12.1.1 RGB色彩空間12.1.2 HSV色彩空間12.1.3 HLS色彩空間12.2 調整彩色圖像的飽和度和亮度12.2.1 Python實現12.2.2 C++實現