opencv3.0架構詳解及新增功能

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