Ошибка std :: bad_alloc во время каскадного обучения opencv

Я пытаюсь обучить каскадный классификатор для обнаружения людей. У меня 779 положительных изображений w=190xh=510 и 311 негативных изображений w=1280xh=720,

  1. Создание сэмплов с -w 190 -h 510 (в моем случае размер позитивного изображения составляет 190×510)

    ./ createamples -img ../cascade_data/6.jpg -num 11 -bg bg.dat -vec
    vec_data / 6.vec -maxxangle 0.6 -максимальный угол 0 -maxzangle 0.3 -maxidev 100
    -bgcolor 0 -bgthresh 0 -w 190 -h 510

Это работало без каких-либо проблем.

  1. Когда я пытаюсь

-data cascade_trained / -vec ../data/merged_data.vec -bg ../data/bg.txt -numPos 779 -numNeg 311 -numStages 21 -numThreads 4-этапный тип BOOST -featureType LBP -w 190 -h 510 -min5HitRate -maxFalseAlarmRate 0.25 -maxDepth 1 -maxWeakCount 100

Я получаю сообщение об ошибке:

terminate called after throwing an instance of 'std::bad_alloc'
what():  std::bad_alloc
Aborted (core dumped)

После просмотра похожих вопросов, опубликованных на SO, я обнаружил, что это проблема с размером изображений, но я не нашел ни одного правильного ответа, который помог бы решить проблему.

У меня есть следующие вопросы: я пытаюсь обнаружить людей. Из 1280×720 фоновых изображений моя рентабельность инвестиций в среднем составляет 190×510. Теперь для того, чтобы обучить мой классификатор

1. Каким должен быть размер моих положительных и отрицательных образцов?

2. Как -w -h параметры повлияют на мой классификатор?

1

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector