Распознавание цифр.

Тема в разделе "WASM.A&O", создана пользователем Clerk, 14 ноя 2010.

  1. CyberManiac

    CyberManiac New Member

    Публикаций:
    0
    Самый простой метод - "осыпание" всех пикселей цифры на две перпендикулярные оси. Заморочек - две: цифра должна быть достаточно большой и хотя бы приблизительно выровнена по вертикали.
     
  2. Pavia

    Pavia Well-Known Member

    Публикаций:
    0
    Clerk
    Там немного хитрее. Если нам надо распознать текст. То цифры имеют известные размеры. Поэтому применяется сдвиг окна. На размер этой цифры или на половину. Пробуется распознать. Двигается дальше на пол окна проверят былли мальчик т.е цифра вообщем выбирает лучшее положение окна. Конечно можно еще связанные компоненты искать.
    Собственно само распознавание цифр там хотя и построено на брутфорсе но оно в усеченном варианте.
    Так это из названия видно. Просто перебор позиции можно свести к 15*w*h операциям сложения. А там еще сравнивается не со всеми эталоннами, а только с 30 специальным образом составленным.
     
  3. n0name

    n0name New Member

    Публикаций:
    0
    7 и 1 не распознает это осыпание.
     
  4. TermoSINteZ

    TermoSINteZ Синоби даоса Команда форума

    Публикаций:
    2
    Добавлю немного ссылочек вам (хороших ссылок):
    http://habrahabr.ru/blogs/artificial_intelligence/64535/
    http://cgm.computergraphics.ru/issues/issue17/invariant_features
     
  5. CyberManiac

    CyberManiac New Member

    Публикаций:
    0
    n0name
    Распознаёт, если написано более-менее разборчиво. Если осыпать на вертикальную ось, разница весьма существенная.
     
  6. Clerk

    Clerk Забанен

    Публикаций:
    0
    Размышлял. Имеем бумажный лист, на нём нарисована большая цифра. Сверху лежит есчо один не прозрачный лист, имеющий небольшое отверстие. Перемещать верхний лист можно как угодно. Как определить что под ним нарисовано ?
     
  7. AlexCab

    AlexCab New Member

    Публикаций:
    0
    Clerk
    Каким бы способ мы не выполняли анализ изображения, всё равно требуется чать собственно его распознающая:
    0.Изображение
    1.Образ(массив координат переходов, etc.)(не обязательный пункт это только помогает пункту 2)
    Реализация: один из или оба сразу(см. attach), или иной незвестный мне.
    2.Распозноваение
    Реализация: Сравение с шаблонами, нейросети, "анализ масс", etc.
    3.ASCI
    Пункты 1 и 2 могут быть совмещены(например выполение сравения с шаблоном после кажлого прохода скнирования
    до достиженя уверености что "цифра именно та"), как бы там нибыло реализация зависит от конкретной задачи(требуемого качества, скорости и тп.).
    Какова ваша задача?
     
  8. Sasha7b9

    Sasha7b9 New Member

    Публикаций:
    0
    Забейте. Люди не могут прочитать, что сами написали, а вы хотите примитивным алгоритмом. Эта задача нерешаема в общем случае. Довольствуйтесь тем, что есть.
     
  9. PSR1257

    PSR1257 New Member

    Публикаций:
    0
    Как определить что под ним нарисовано ?

    Непонятно. Имецца в виду наложение малого фрейма (размер << размера описывающего прямоугольника)?

    По малому фрейму. Если я вижу окончание линии (как это будет у цифер 1,2,3,... но вообще нет у 8 или 0), то это индикатор. Если я нашел 3 окончания линий ("4" в написании как почтовый индекс), то это точно не 2 или 5 (по два окончания).

    "Осыпание," предложенное CyberManiac, выглядит также неплохо (надо смотреть), но я не понимаю как решается проблема поворота.

    Интересно, бывают ли более сложные искажения? Например, "турбулентность" (если это подходящий термин) - имею в виду что точки слегка поворачиваются по окружностям вокруг центра (масс) но поворот зависит от радиуса.
     
  10. PSR1257

    PSR1257 New Member

    Публикаций:
    0
    возможно сработает если получить минимальную по ширине проекцию на ось. Если ось строго горизонтальна то проекция на нее по идее минимальна ... не уверен что во всех шрифтах так и что будет при сильных искажениях.
     
  11. Clerk

    Clerk Забанен

    Публикаций:
    0
    AlexCab
    V2 это наиболее эффективный способ, ум так символы и распознаёт #26. Только я не могу понять пока некоторые моменты.
     
  12. PSR1257

    PSR1257 New Member

    Публикаций:
    0
    Clerk

    Как продвигаеца? Есть успех?
     
  13. tester3000

    tester3000 New Member

    Публикаций:
    0
    Метод сравнения по шаблону

    http://dign.narod.ru/articles/recognition/

    http://www.xakep.ru/magazine/xa/088/108/1.asp
    тоже самое только в PDF http://www.xakep.ru/magazine/xa/088/xa_088.pdf

    исходники к статье прикрепил
     
  14. PSR1257

    PSR1257 New Member

    Публикаций:
    0
    tester3000

    Бегло прочитал статью и программу на ксакепе. Вы делаете сравнение по шаблону, перебор. Рассмотрено вращение а также борьба с помехами (это наверное вообще можно рассматривать как отдельную проблему).

    Если есть желание, можно обсудить что еще можно сделать (часть идей выше).
     
  15. deLight

    deLight New Member

    Публикаций:
    0
    Clerk
    А вот и этап коммерциализации, наши поздравления.
    Звенящего шеккеля звук ждем в хеккерских форматах .mod и .xm
    (но можно и MP3)
     
  16. tester3000

    tester3000 New Member

    Публикаций:
    0
    PSR1257

    Хочу заметить это не мои статьи просто сам на Delphi недавно распознавалку капчи писал очень помогли эти статьи для простенькой капчи шаблонный метод как раз подходит да и разбираться с нейронными сетями вломы было ))
     
  17. PSR1257

    PSR1257 New Member

    Публикаций:
    0
    tester3000

    Ясно :)
     
  18. Tronix

    Tronix Member

    Публикаций:
    0
    Clerk, если не сложно, напишите потом о пути, по которому вы пошли. Дело в том, что тоже интересна данная тема, не ради комерса а ради знаний и опыта вообще. Я не прошу исходники или статью для домохозяек - просто, вкратце. Спасибо.
     
  19. khv_test

    khv_test New Member

    Публикаций:
    0
    Читал много про тему лучше чем тут не нашел информации с примерами на СИ
    http://mechanoid.narod.ru/misc/segmentator/index.html - алго разбиение на строки
    http://mechanoid.narod.ru/
     
  20. Rockphorr

    Rockphorr Well-Known Member

    Публикаций:
    0
    Clerk
    если распознавать на основе образов, то например в качестве эталонов было бы здорово использовать файлы со шрифтами