關於我自己

2014年11月16日 星期日

OpenCV Hog+SVM (1)

OpenCV Hog+SVM 

在網路上有看到部分 Hog+SVM  數字辨識

但是流程部分並不是講解的詳細 ~ 所以在把流程詳細講解一便

先解說我用的系統:

VC2008  + Win7 64 + OpenCV 2.0 +CMake 2.6

1.首先到

https://code.google.com/p/supplement-of-the-mnist-database-of-handwritten-digits/downloads/list

下載要訓練的文字範例


 2.

 3.


4.

 5.

 

6.

7.

 

8.

 

9.

 

10.

 

11.

 

12.

 

13.

 

14.

 

15.

 

16.

 

17.

 

18.

部分輸入解說:

 ifstream svm_data("c:/num/SVM_DATA.txt");  //輸入剛剛我們自己創建 SVM_DATA.txt
svm.save( "SVM_DATA.xml" );    //系統會自動產生
ifstream img_tst( "c:/num/SVM_TEST.txt" );   //輸入剛剛我們自己創建 SVM_TEST.txt
ofstream predict_txt( "SVM_PREDICT.txt" );  //系統會自動產生

PS: 因為測試圖片是28*28

所以我輸入圖片也是28*28的BMP檔案

然後可以隨便在28*28的格式輸入你想測試的數字

 缺點:

超過28*28的圖片就失效了 

 該程式為靜態辨識而已

如果說這能應用到哪裡喔 ~ 只能說手機的文字辨字

因為手機的一開始設置的圖片大小是固定的說

如果說要克服你是500*500有辦法最後存檔把它存成28*28也是可

以解決的說 

在於旋轉的角度跟尺度的縮放~就有可能就要另外討論

 Scale-invariant跟Rotation-invariant

 

 


17 則留言:

  1. 您好,我對數字辨識很感興趣,關於這領域的一些問題可以請教您嗎?

    回覆刪除
  2. 能幫得上忙的話~我很樂意回答!!!

    回覆刪除
  3. 在別篇文章有看到用tesseract ocr辨識數字的範例
    請問可以運用輪廓+ocr辨識綠燈秒數這類的數字嗎?

    回覆刪除
  4. 作者已經移除這則留言。

    回覆刪除
  5. 請問可以分享一下最後一張圖運算的程式碼嗎
    萬分感謝

    回覆刪除
    回覆
    1. http://blog.163.com/pz124578@126/blog/static/235226942013435156379/

      刪除
  6. 順便貼上不錯的網站說明
    http://alex-phd.blogspot.tw/2014/03/hog.html

    回覆刪除
  7. 想請問
    做正sample的時候,是用徒手煉鋼嗎?
    還是有用甚麼軟體幫忙輔助
    畢竟做這個有幾千張 如果都要統一格式要做超久的
    謝謝

    回覆刪除
  8. 請問可以分享 HOG+SVM程式碼嗎
    樓上問題也想知道

    回覆刪除
    回覆
    1. 試試看這個吧
      http://www.xlgps.com/article/31306.html

      刪除
  9. 請問您有保留train-images-bmp.rar 檔案嗎
    GOOGLE CODE裡面的壞掉了

    回覆刪除
    回覆
    1. 我只有t10k-images-bmp檔案的說~抱歉

      刪除
  10. 你好,可以分享程式碼給我嗎?謝謝

    回覆刪除
  11. 連接己斷 請問可以分享一下最後一張圖運算的程式碼嗎 感謝
    http://blog.163.com/pz124578@126/blog/static/235226942013435156379/

    回覆刪除