Классификатор OpenCV Haar убит

Я пытаюсь обучить классификатор Хаара, однако во время Stage 2 он останавливается с сообщением Killed

PARAMETERS:
cascadeDirName: classifier
vecFileName: samples.vec
bgFileName: negatives.txt
numPos: 500
numNeg: 964
numStages: 10
precalcValBufSize[Mb] : 2048
precalcIdxBufSize[Mb] : 2048
stageType: BOOST
featureType: HAAR
sampleWidth: 80
sampleHeight: 40
boostType: GAB
minHitRate: 0.999
maxFalseAlarmRate: 0.5
weightTrimRate: 0.95
maxDepth: 1
maxWeakCount: 100
mode: ALL

Stages 0-1 are loaded

===== TRAINING 2-stage =====
<BEGIN
POS count : consumed   500 : 500
NEG count : acceptanceRatio    964 : 0.182992
Precalculation time: 49
+----+---------+---------+
|  N |    HR   |    FA   |
+----+---------+---------+
|   1|        1|        1|
+----+---------+---------+
|   2|        1|        1|
+----+---------+---------+
|   3|        1|        1|
+----+---------+---------+
|   4|        1|        1|
+----+---------+---------+
|   5|        1|  0.56639|
+----+---------+---------+
Killed

Команда, которую я использую для запуска, приведена ниже:

opencv_traincascade -data classifier -vec samples.vec -bg negatives.txt  -numStages 10 -minHitRate 0.999 -maxFalseAlarmRate 0.5 -numPos 500-nonsym -mem 512  -numNeg 964 -w 80 -h 40 -mode ALL -precalcValBufSize 2048  -precalcIdxBufSize 2048

Чем это вызвано?

NB: я следую руководству, приведенному здесь. (замена изображений другим объектом в разном количестве).


person Colin747    schedule 17.11.2014    source источник
comment
У меня сейчас такая же проблема. Вы нашли решение?   -  person dephinera    schedule 01.12.2014


Ответы (1)


Уменьшив ширину и высоту в команде opencv_traincascade, программа заработала корректно.

Ваш -w 80 -h 40, вероятно, слишком высок для вашего ПК. Рекомендуемый размер должен быть -w 24 -h 24.

Я заметил сильное использование жесткого диска при выполнении команды, если только он не был отключен. Возможно, наши жесткие диски недостаточно быстры.

person secavfr    schedule 14.04.2019
comment
Я столкнулся с той же проблемой. с 143292 положительными изображениями и 65251 отрицательным изображением. -w равно 80, а -h равно 80. Теперь я пытаюсь сделать это со значениями по умолчанию 24 и 24. но я не понял, почему это должно работать, а не 80 x 80. Чем это объясняется? - person RC0993; 27.09.2019