下面分別解釋一下各個類的作用。
filetoolkit
,提供一些讀取檔案常用的方法,是乙個工具類。
fileprocessor
,根據一定的規則讀取每幀對應的檔案。
frameprocessor
,對每一幀資料進行處理。
streamprocessor
,控制整個流程,不斷地通過fileprocessor
讀取資料,輸入frameprocessor
中進行處理,考慮到有時候需要從多個檔案讀取資料在一幀中進行分析,因此在streamprocessor
中採用了vector容器來儲存需要用到的fileprocessor
以及所讀取的資料。
涉及到的設計模式有:
1.單例模式,用於filetoolkit
,**中使用的是meyers的實現方式。
2.策略模式,即frameprocessor
提供統一的資料處理介面,再由例如videoplayer
實現具體的資料處理方法。fileprocessor
也是類似的,但是由於fileprocessor
的成員並不完全是純虛函式,因此只能稱其為乙個抽象類,而非介面。
*3.訪問者模式,由於需要在乙個frameprocessor
中支援多個輸入資料的處理,考慮過是否需要用訪問者模式,但是覺得又並不是非常符合這個場景,最後還是沒有採用。
基於Python和Opencv的目標檢測與特徵
而我們訓練分類器的過程就是給這個分類函式 數學模型 找到一系列最優的引數,使得通過這個函式來判斷時能達到最好的分類效果 更高階一點的分類器就加入了學習和自適應的概念使得分類更精準 那麼通過什麼可以得到這個分類器呢?就是分類演算法 提到演算法我們不得不提到機器學習的概念,機器學習演算法簡單來說可以通過...
基於openCV和python的車牌字元切割
在車牌識別以及別的需要文字識別的場景中都需要對影象中的文字進行正確的切分以便於下一步的識別,類似人的閱讀計算機在識別文字時只能乙個乙個的來,精準的切分字元是識別的必要條件。假設我們已經從包含整輛車的中得到了只包含車牌的區域,如圖一所示,那麼任務就是如何把圖一 現的字母和數字單獨分開。注意到圖一的左上...
基於Opencv的SIFT SURF HOG的實現
sift實現 surf的實現 include include includeusing namespace std using namespace cv using namespace cv xfeatures2d int main int argc,char ar namedwindow inpu...