目錄-OpenCV3編程入門

二 初探core組件
4 OpenCV數據結構與基本繪圖
4.1 基礎圖像容器Mat
4.1.1 數字圖像存儲概述
4.1.2 mat結構的使用
4.1.3 像素值的存儲方法
4.1.4 顯示創建mat對象的七種方法
4.1.5 OpenCV中的格式化輸出方式
4.1.6 輸出其他常用數據結構
4.1.7 示例程序:基礎圖像容器mat類的使用
4.2 常用數據結構和函數
4.2.1 點的表示:point類
4.2.2 顏色的表示:scalar類
4.2.3 尺寸的表示:size類
4.2.4 矩形的表示:rect類
4.2.5 顏色空間轉換
4.2.6 其他常用的顏色知識
4.3 基本圖形的繪製
4.3.1 drawellipse()函數的寫法
4.3.2 drawfilledcircle()函數的寫法
4.3.3 drawpolygon()函數的寫法
4.3.4 drawline()函數的寫法
4.3.5 main函數的寫法
4.4 本章小結

5 core組件進階
5.1 訪問圖像中的像素
5.1.1 圖像在內存之中的存儲方式
5.1.2 顏色空間縮減
5.1.3 LUT函數:look up table操作
5.1.4 計時函數
5.1.5 訪問圖像中像素的三類方法
5.1.6 示例程序
5.2 ROI區域圖像疊加&圖像混合
5.2.1 感興趣區域:ROI
5.2.2 線性混合操作
5.2.3 計算數組加權和:addWeighted()函數
5.2.4 綜合示例:初級圖像組合
5.3 分離顏色通道,多通道圖像混合
5.3.1 通道分離:split()函數
5.3.2 通道合併:merge()函數
5.3.3 示例程序:多通道圖像混合
5.4 圖像對比度,亮度值調整
5.4.1 理論依據
5.4.2 訪問圖片中的像素
5.4.3 示例程序:圖像對比度,亮度值調整
5.5 離散傅里葉變換
5.5.1 離散傅里葉變換的原理
5.5.2 dft()函數詳解
5.5.3 返回DFT最優尺寸大小:getOptimalDFTSize()函數
5.5.4 擴充圖像邊界:copyMakeBorder()函數
5.5.5 計算二維矢量的幅值:magnitude()函數
5.5.6 計算自然對數:log()函數
5.5.7 矩陣歸一化:normalize()函數
5.5.8 示例程序:離散傅里葉變換
5.6 輸入輸出XML和YAML文件
5.6.1 XML和YAML文件簡介
5.6.2 FileStorage類操作文件的使用引導
5.6.3 示例程序:XML和YAML文件的寫入
5.6.4 示例程序:XML和YAML文件的寫入
5.7 本章小結

三 掌握imgproc組件
6 圖像處理
6.1 線性濾波:方框濾波,均值濾波,高斯濾波
6.1.1 平滑處理
6.1.2 圖像濾波與濾波器
6.1.3 線性濾波器的簡介
6.1.4 濾波和模糊
6.1.5 鄰域算子與線性鄰域濾波
6.1.6 方框濾波
6.1.7 均值濾波
6.1.8 高斯濾波
6.1.9 線性濾波相關OpenCV源碼濾波
6.1.10 OpenCV中gaussianblur函數源碼剖析
6.1.11 線性濾波核心API函數
6.1.12 圖像線性濾波綜合示例
6.2 非線性濾波:中值濾波,雙邊濾波
6.2.1 非線性濾波概述
6.2.2 中值濾波
6.2.3 雙邊濾波
6.2.4 非線性濾波相關核心API函數
6.2.5 OpenCV中的5種圖像濾波綜合示例
6.3 形態學濾波(1):腐蝕與膨脹
6.3.1 形態學概述
6.3.2 膨脹
6.3.3 腐蝕
6.3.4 相關OpenCV源碼分析溯源
6.3.5 相關核心API函數講解
6.3.6 綜合示例:腐蝕與膨脹
6.4 形態學濾波(2):開運算,閉運算,形態學梯度,頂帽,黑帽
6.4.1 開運算
6.4.2 閉運算
6.4.3 形態學梯度
6.4.4 頂帽
6.4.5 黑帽
6.4.6 形態學濾波OpenCV源碼分析溯源
6.4.7 核心API函數:morpgologyEx()
6.4.8 各形態學操作使用規範一覽
6.4.9 綜合示例:形態學濾波
6.5 漫水填充
6.5.1 漫水填充的定義
6.5.2 漫水填充法的基本思想
6.5.3 實現漫水填充法算法:floodFill函數
6.5.4 綜合示例:漫水填充
6.6 圖像金字塔與圖片尺寸縮放
6.6.1 引言
6.6.2 關於圖像金字塔
6.6.3 高斯金字塔
6.6.4 拉普拉斯金字塔
6.6.5 尺寸調整
6.6.6 圖像金字塔相關API函數
6.6.7 綜合示例:圖像金字塔與圖片尺寸縮放
6.7 閾值化
6.7.1 固定閾值操作:Threshold()函數
6.7.2 自適應閾值操作:adaptiveThreshold()函數
6.7.3 示例程序:基本閾值操作
6.8 本章小結

7 圖像變換
7.1 基於OpenCV的邊緣檢測
7.1.1 邊緣檢測的一般步驟
7.1.2 Canny算子
7.1.3 sobel算子
7.1.4 laplacian算子
7.1.5 scharr濾波器
7.1.6 綜合示例:邊緣檢測
7.2 霍夫變換
7.2.1 霍夫變換概述
7.2.2 OpenCV中的霍夫變換
7.2.3 霍夫變換的原理
7.2.4 標準霍夫變換:HoughLines()函數
7.2.5 累積概率霍夫變換:HoughLinesP()函數
7.2.6 霍夫圓變換
7.2.7 霍夫梯度法的原理
7.2.8 霍夫梯度法的缺點
7.2.9 霍夫圓變換:HoughCircles()函數
7.2.10 綜合示例:霍夫變換
7.3 重映射
7.3.1 重映射的概念
7.3.2 實現重映射:remap()函數
7.3.3 基礎示例程序:基本重映射
7.3.4 綜合示例程序:實現多種重映射
7.4 仿射變換
7.4.1 認識仿射變換
7.4.2 放射變換的求法
7.4.3 進行仿射變換:warpAffine()函數
7.4.4 計算二維旋轉變換矩陣:getRotationMatrix2D()函數
7.4.5 示例程序:仿射變換
7.5 直方圖均衡化
7.5.1 直方圖均衡化的概念和特點
7.5.2 實現直方圖均衡化:equalizeHist()函數
7.5.3 示例程序:直方圖均衡化
7.6 本章小結

8 圖像輪廓與圖像分割修復
8.1 查找並繪製輪廓
8.1.1 尋找輪廓:findContours()函數
8.1.2 繪製輪廓:drawContours()函數
8.1.3 基礎示例程序:輪廓查找
8.1.4 綜合示例程序:查找並繪製輪廓
8.2 尋找物體的凸包
8.2.1 凸包
8.2.2 尋找凸包:convexHull()函數
8.2.3 基礎示例程序:凸包檢測基礎
8.2.4 綜合示例程序:尋找和繪製物體的凸包
8.3 使用多邊形將輪廓包圍
8.3.1 返回外部矩形邊界:boundingRect()函數
8.3.2 尋找最小包圍矩形:minAreaRect()函數
8.3.3 尋找最小包圍圓形:minEnclosingCircle()函數
8.3.4 用橢圓擬合二維點集:fitEllipse()函數
8.3.5 逼近多邊形曲線:approxPolyDP()函數
8.3.6 基礎示例程序:創建包圍輪廓的矩形邊界
8.3.7 基礎示例程序:創建包圍輪廓的圓形邊界
8.3.8 綜合示例程序:使用多邊形包圍輪廓
8.4 圖像的矩
8.4.1 矩的計算:moments()函數
8.4.2 計算輪廓面積:contourArea()函數
8.4.3 計算輪廓長度:arcLength()函數
8.4.4 綜合示例程序:查找和繪製圖像輪廓矩
8.5 分水嶺算法
8.5.1 實現分水嶺算法:watershed()函數
8.5.2 綜合示例程序:分水嶺算法
8.6 圖像修補
8.6.1 實現圖像修補
8.6.2 綜合示例程序:圖像修補
8.7 本章小結

9 直方圖與匹配
9.1 圖像直方圖概述
9.2 直方圖的計算與繪製
9.2.1 計算直方圖:calcHist()函數
9.2.2 找尋最值:minMaxLoc()函數
9.2.3 示例程序:繪製H-s直方圖
9.2.4 示例程序:計算並繪製圖像一維直方圖
9.2.5 示例程序:繪製RGB三色直方圖
9.3 直方圖對比
9.3.1 對比直方圖:compareHist()函數
9.3.2 示例程序:直方圖對比
9.4 反向投影
9.4.1 引言
9.4.2 反向投影的工作原理
9.4.3 反向投影的作用
9.4.4 反向投影的結果
9.4.5 計算反向投影:calcBackProject()函數
9.4.6 通道複製:mixChannels()函數
9.4.7 綜合程序:反向投影
9.5 模板匹配
9.5.1 模板匹配的概念與原理
9.5.2 實現模板匹配:matchTemplate()函數
9.5.3 綜合示例:模板匹配
9.6 本章小結

四 深入feature2d組件
10 角點檢測
10.1 Harris角點檢測
10.1.1 興趣點與角點
10.1.2 角點檢測
10.1.3 harries角點檢測
10.1.4 實現Harris角點檢測:cornerHarris()函數
10.1.5 綜合示例:Harris角點檢測與繪製
10.2 shi-tomasi角點檢測
10.2.1 shi-tomasi角點檢測概述
10.2.2 確定圖像強角點:goodFeaturesToTrack()函數
10.2.3 綜合示例:shi-tomasi角點檢測
10.3 亞像素級角點檢測
10.3.1 背景概述
10.3.2 尋找亞像素角點:cornerSubPix()函數
10.3.3 綜合示例:亞像素級角點檢測
10.4 本章小結

11 特徵檢測與匹配
11.1 SURF特徵點檢測
11.1.1 SURF算法概覽
11.1.2 SURF算法原理
11.1.3 SURF類相關OpenCV源碼分析
11.2.3 示例程序:SURF特徵提取
11.3 使用FLANN進行特徵點提取
11.3.1 FlannBasedMatcher類的簡單分析
11.3.2 找到最佳匹配:DescriptorMatcher::match方法
11.3.3 示例程序:使用FLANN進行特徵點匹配
11.3.4 綜合示例程序:FLANN結合SURF進行關鍵點的描述和匹配
11.3.5 綜合示例程序:SIFT配合暴力匹配進行關鍵點描述和提取
11.4 尋找已知物體
11.4.1 尋找透視變換:findHomography()函數
11.4.3 示例程序:尋找已知物體
11.5 ORB特徵提取
11.5.1 ORB算法概述
11.5.2 相關概念認知
11.5.3 ORB類相關源碼簡單分析
11.5.4 示例程序:ORB算法匹配描述與匹配
11.6 本章小結

附錄

參考資料:OpenCV3編程入門 毛星雲,冷雪飛等著。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章