網頁

2016年11月22日 星期二

Cascade Classifier Training

開啟命令提示字元

set PATH=D:\OpenCV\build_64\install\x64\vc12\bin;%PATH%
set PATH=D:\OpenCV\dep\tbb2017_20160916oss\bin\intel64\vc12;%PATH%
set PATH=D:\Qt\Qt5.7.0_64\5.7\msvc2013_64\bin;%PATH%

cd neg
dir/b>neg.txt
編輯 neg.txt 加入檔案路徑

標註 正樣本
使用 opencv_annotation.exe
"D:\OpenCV\build_64\install\x64\vc12\bin\opencv_annotation.exe" --annotations=20160615.txt --images=20160615\*.jpg
c: add rectangle to current image
n: save added rectangles and show next image
d: delete the last annotation made
<ESC>: exit program(無法使用,請參考下列修正方式)

編輯 opencv_annotation.cpp
case 27
  //destroyWindow(window_name);
  stop = true;
  break;
不然無法用 ESC 結束程式

產生 pos.vec
"D:\OpenCV\build_64\install\x64\vc12\bin\opencv_createsamples.exe" -info pos.txt -vec pos.vec -w 50 -h 25

產生 xml
mkdir xml
"D:\OpenCV\build_64\install\x64\vc12\bin\opencv_traincascade.exe" -data xml -vec pos.vec -bg neg.txt -numPos 150 -numNeg 20 -numStages 20 -maxFalseAlarmRate 0.45 -featureType LBP -w 50 -h 25

-numPos 每級分類器訓練時所用正樣本數目
-numNeg 每級分類器訓練時所用負樣本數目,可大於 -bg 指定的圖片數目
-featureType: HAAR
-featureType: LBP
-mode BASIC 直立
-mode ALL
-minHitRate 0.999 正樣本被判成正樣本的比例
-maxFalseAlarmRate 0.5 負樣本被判成正樣本的比例

錯誤 Required leaf false alarm rate achieved. Branch training terminated.
預設 -maxFalseAlarmRate 0.5

沒有留言:

張貼留言