Обучение классификатору Хаара по обнаружению букв / цифр - PullRequest
0 голосов
/ 12 марта 2019

У меня есть тестовый лист ответов с обведенными кружками ответами, и я пытаюсь определить цифры / буквы с помощью OpenCV. Я использовал 10х10 с изображением '2' в качестве положительного изображения и 44 других частей листа ответов в качестве негативов, чтобы сам создать классификатор Хаара.

Видимо, я что-то не так делаю, так как мой классификатор не может обнаружить оригинал '2'.

$opencv_createsamples -vec a_desc.bin -info positive.txt -bg negative.txt -num 1 -w 10 -h 10

$opencv_traincascade -data classifiers -vec a_desc.bin -bg negative.txt -numStages 20 -numPos 1 -numNeg 46 -w 10 -h 10
....

    ===== TRAINING 4-stage =====
    <BEGIN
    POS count : consumed   1 : 1
    NEG count : acceptanceRatio    0 : 0
    Required leaf false alarm rate achieved. Branch training terminated.

Что я делаю не так:

  • тоже плата за негативы
  • слишком мало позитивов
  • размер негативов и позитивов должен совпадать
  • все изображения должны быть в одном формате (png | jpg | gif)

В основном, что ожидать от следующего подхода:

  1. Выбрана страница из случайных книг
  2. Мы создаем 10x10 изображение буквы 'e'
  3. Мы создаем 20 негативных изображений других букв / цифр
  4. Мы создаем классификатор, используя эти два набора данных
  5. Теперь попробуем классифицировать исходную страницу.

Предполагается, что мы должны находить ВСЕ вхождения 'e' и некоторые ложные срабатывания?

...