OpenCV 架構學習



庫設計通用考慮:

1、 Cv  命名空間

2、自動內存管理 主要採用了智能指針,引用計數功能

3、飽和操作 處理溢出值

4、數據類型支持和多通道支持

5、錯誤和異常處理

6、多線程和可重入性


core  主要定義了 traits 多類型支持,點,矩形,mat,vec,ptr,動態結構等數據結構

imgproc 主要定義了圖像濾波,幾何變換,直方圖,結構描述等數字圖像處理基本算法

...

主要關注 opencv中抽象類層次的定義和使用


features2D 定義了特徵檢測,特徵描述,特徵比較等三個抽象類層次


ml 定義了機器學習抽象類層次



這些算法的使用都是用基類指針指向具體實體類

ptr<基類>  pointToTarget = new 實體類

但是基類指針只能訪問基類接口,所以opencv在設計類層次的時候定義了虛函數來封裝子類具體實現。





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