- /****************************************************************************************************************
- 文件說明:
- OpenCv3.0中新架構以及新增功能的詳解
- 時間地點:
- 陝西師範大學 問津樓 2017.5.16
- 作 者:
- 九 月
- ****************************************************************************************************************/
- /****************************************************************************************************************
- 文件說明:
- OpenCv3.0.0新特性的分析
- (一)OpenCv3.0相對於OpenCv2.X系列的改變
- 1)項目架構的改變
- OpenCv3.0拋棄了整體的項目架構方式,採用了內核+插件的架構形式
- 2)添加了更多的cuda加速模塊
- 3)所有的算法都將繼承自cv::Algorithm接口
- (二)語言層、OS、硬件
- 1)語言:支持Python、C/C++、Java
- 2)OS:windows、linux、MacOS、ios、Android、WinRTx
- 3)硬件:GPU、X86、ARM、MIPS
- (三)OpenCv編程中的加速手段
- 1)針對GPU的加速:CUDA、OpenCL
- 2)針對x86和x64的加速:OpenCl、SSE/AUX
- (四)OpenCv各模塊的總結
- 1)calib3d---Calibration(校準)和3D這兩個單詞的組合:這個模塊主要用於:
- 1)攝像機的校準
- 2)三維重建
- 3)包括:基本的多視角幾何算法、單個攝像機的標定、物體姿態估計、
- 立體相似性算法、3D信息的重建等
- 2)core模塊:核心模塊功能,包含以下內容:
- 1)OpenCv基本的數據結構
- 2)動態數據結構
- 3)繪圖函數
- 4)數據操作相關函數
- 5)輔助功能與系統函數和宏
- 6)與OpenGL的互操作
- 3)imgproc模塊:圖像處理模塊,主要包括以下功能:
- 1)線性和非線性的濾波
- 2)圖像的幾何變換
- 3)其他的圖像變換
- 4)直方圖相關操作
- 5)結構分析與形狀分析
- 6)運動分析與目標跟蹤
- 7)特徵檢測
- 8)目標檢測
- 4)feature2d模塊:包含如下功能:
- 1)特徵的檢測與描述
- 2)特徵檢測器的通用接口(Feature Detectors)
- 3)特徵提取器的通用接口(Descriptor Extractors)
- 4)特徵描述符的通用接口(Descriptor)
- 5)描述符匹配器的通用接口
- 6)關鍵點繪製函數和匹配功能繪製函數
- 5)flann:
- 1)快速近似最近鄰搜索
- 2)聚類
- 6)highgui模塊:
- 1)高層GUI圖形用戶界面
- 2)媒體的輸入輸出
- 3)視頻捕捉
- 4)圖像和視頻的編碼解碼
- 5)圖形交互界面
- 7)legacy:一些已經廢棄的代碼
- 8)ml:機器學習模塊庫
- 9)nonfree模塊:
- 1)一些具有專利的算法模塊
- 2)包括GPU相關的內容
- 10)objdetect:目標檢測模塊
- 1)級聯分類
- 2)Latent SVM
- 11)photo:包含圖像修復和圖像去燥兩部分
- 12)stitching:圖像拼接模塊,包含如下的內容:
- 1)拼接流水線
- 2)特點尋找和匹配圖像
- 3)估計旋轉
- 4)自動校準
- 5)圖片歪斜
- 6)接縫估測
- 7)曝光補償
- 8)圖片混合
- 13)superres:超分辨了技術
- 14)video:視頻組件分析,該模塊包括:
- 1)運動估計
- 2)背景分離
- 3)對象跟蹤
- 15)Gpu:gpu加速代碼模塊
- 16)viz:3D視覺的可視化
- 17)
- (五)OpenCv機器學習庫中主要實現的算法如下所示:
- 1)一般貝葉斯分類器
- 2)K近鄰分類
- 3)支持向量機
- 4)期望最大化
- 5)決策樹
- 6)隨機森林
- 7)Boost分類器
- 8)神經網絡
- 每種算法實現的函數主要如下所示:
- 1)數據處理:獲得訓練樣本的測試樣本
- 2)分類器初始化參數設置
- 3)訓練
- 4)預測分類
- 5)分類器的讀寫保存:主要完成從文件節點中讀取分類器相關信息以及得到的分類器相關信息保存到文件中等
- (六)OpenCv中的CUDA加速模塊:
- 1)cuda:CUDA-加速的計算機視覺算法,包括數據結構cuda、GpuMat、基於cuda的相機標定以及三維重建等
- 2)cudaarithm: CUDA加速的矩陣運算模塊
- 3)cudabgsegm: CUDA加速的背景分割模塊,通常用於視頻監控
- 4)cudacodec: CUDA加速的視頻編碼解碼
- 5)cudafeature2d:CUDA-加速的特徵提取和描述模塊,與feature2d模塊類似
- 6)cudafilters: CUDA-加速的圖像濾波算法
- 7)cudaimgproc: CUDA-加速的圖像處理算法、包括直方圖計算、霍夫變換等
- 8)cudaoptflow: CUDA-加速的光流檢測算法
- 9)cudastereo: CUDA-加速的立體匹配算法
- 10)cudawarping: CUDA-加速的快速圖像變換,如透視變換、旋轉、改變尺寸等
- 11)cudev:CUDA核心功能,類似core模塊中的基礎算法
- (七)OpenCv3.0增加的功能:
- 1)opencv_contrib/ccalib 全方位攝像機標定和立體三維重建
- 2)opencv_contrib/sfm module 從運動信息中恢復三維場景結構
- 3)opencv_contrib/dpm module 改進的變形部件爲基礎的模型
- 4)opencv_contrib/tracking module 採用核心化相關濾波實時多目標跟蹤
- 5)opencv_contrib/text module 改進和擴展場景文字探測
- 6)opencv_contrib/stereo module 立體匹配的改進
- 7)opencv_contrib/structured_light 結構關係標定
- 8)opencv_contrib/aruco 運用棋盤 + ArUco庫標定攝像頭
- 9)opencv_contrib/dnn module 深度神經網絡框架的通用接口的實現
- 10)opencv_contrib/calib3d and opencv_contrib/ximgproc 邊緣意思過濾的最新進展,改進SGBM立體算法
- 11)opencv_contrib/xobjdetect 改進的ICF檢測,WaldBoost實現
- 12)opencv_contrib/tracking module 多目標TLD算法跟蹤
- 13)opencv_contrib/cnn_3dobj 3D姿態估計使用細胞神經網絡
- **********************************************************************************************************/
- https://blog.csdn.net/maweifei/article/details/72457394
opencv3.0架構詳解及新增功能
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.