2012-06-27 89 views
1

我們目前正在使用opencv.pre-processing進行android ocr應用程序的處理,分割,特徵提取步驟已完成。分類是剩下的一步,我們被卡住了..我們正在使用一個填充了每個字母特徵的數據庫表格。首先,我們每個字母只有一個特徵,我們使用了歐幾里得距離,但結果不準確,更多需要獲得的功能,所以我們做了。現在的問題是,我們有7個功能每封信,絕對不知道如何根據它們對i/p進行分類..有人建議使用knn,但我們無法弄清楚並且該部分中的opencv文檔尚不清楚。如果有人能幫助它,那麼它會很好。 在此先感謝使用opencv進行圖像分類

回答

3

簡而不討論細節。矢量空間在這裏派上用場。您需要爲訓練集中的每個實例構建一個特徵向量 <feature1, feature2, feature3.. featureN>。 從這些圖像中提取您認爲或者您在研究文章中閱讀的特徵對於圖像分類非常重要。例如,你可以做質心,高斯模糊,直方圖等。 一旦你有了這些值,線性代數就會發揮一些分類算法的作用:knn,svm,naive bayes等你在你的訓練集上運行,那就是你建立你的模型。 如果模型準備就緒,請在測試集上運行它。 使用交叉驗證以獲得更全面的結果。 有關詳情,請在課程筆記: http://www.inf.ed.ac.uk/teaching/courses/iaml/slides/knn-2x2.pdfhttp://www.inf.ed.ac.uk/teaching/courses/inf2b/lectureSchedule.html

+0

謝謝你:)這些鏈接真的很有用:) – user1486322

0

想補充一點的OpenCV可能不會有那種你可能更喜歡分類的。

這裏有幾個圖書館,儘管你可能不得不在移動平臺上看到最好的圖書館。你能否提供一些你正在使用的功能的細節?

最簡單的KNN(k-最近鄰)度量將是在輸入樣本的要素與數據庫表中的每個向量之間找到n維(對於n維特徵向量)的歐幾里德距離。如果您有多個類並且要將輸入圖像分類爲圖像的「類型」或「類」之一,還要探索Mahalanobis距離(用於測量點與數據集/類之間的距離)。

正如@matcheek所提到的,使用機器學習技術如SVM,神經網絡等可以實現更復雜的功能。然而,首先考慮一個更簡單的事情,比如kNN,考慮到它可能會限制計算的複雜性。