你好,我正在認識一款使用級聯分類器,android和opencv庫的汽車。我的問題是,我的手機將所有東西都標記爲汽車。如何使用級聯分類器來減少錯誤識別
我已經創建了我的代碼基於: https://www.youtube.com/watch?v=WEzm7L5zoZE 和人臉檢測示例。我的應用程序行爲很奇怪,因爲標記看起來像隨機。我甚至不知道標記賽車是否正確,或者它只是一些隨機行爲。目前它甚至將我的鍵盤標記爲汽車。我不確定我可以改進什麼。我沒有看到訓練它之間的任何進展,5個或14個階段
我訓練我的文件多達14個階段
我的代碼看起來是這樣的:
@Override
public Mat onCameraFrame(Mat aInputFrame) {
// return FrameAnalyzer.analyzeFrame(aInputFrame);
// Create a grayscale image
Imgproc.cvtColor(aInputFrame, grayscaleImage, Imgproc.COLOR_RGBA2RGB);
MatOfRect objects = new MatOfRect();
// Use the classifier to detect faces
if (cascadeClassifier != null) {
cascadeClassifier.detectMultiScale(grayscaleImage, objects, 1.1, 1,
2, new Size(absoluteObjectSize, absoluteObjectSize),
new Size());
}
Rect[] dataArray = objects.toArray();
for (int i = 0; i < dataArray.length; i++) {
Core.rectangle(aInputFrame, dataArray[i].tl(), dataArray[i].br(),
new Scalar(0, 255, 0, 255), 3);
}
return aInputFrame;
}
使用更多的陰性樣本,並在訓練後向您的陰性樣本中添加誤報並再次訓練。 – Micka 2014-12-07 17:16:28
@Micka第二次培訓應該先加入還是會覆蓋第一次?與積極相關的負數越高,結果越好? – Fixus 2014-12-07 17:17:07
不知道哈爾探測器的培訓,但我想你必須完全重新培訓。 Afaik你通常使用更多的負面樣本(5倍到10倍)比正面的,但我不是專家在機器學習... – Micka 2014-12-07 17:29:24