roboforum.ru

Технический форум по робототехнике.


Распознавание цифр с помощью простейшей статистики с Habr.RU

Распознавание цифр с помощью простейшей статистики с Habr.RU

Сообщение EdGull » 11 авг 2010, 15:04

Оригинал статьи http://habrahabr.ru/blogs/algorithm/101446/#habracut
вечером полностью перенесу

Суть метода

1. Определяются границы рисунка, вырезается прямоугольная область (чтобы отсечь пустые пиксели и уменьшить размерность рабочей матрицы).
2. Область делится крест накрест, на 4 части.
Изображение
Для каждой четверти подсчитывается количество попавших в нее закрашенных пикселей, вычисляется доля относительно всего рисунка. Примерно как-то так:
Изображение
3. Для более высокой точности распознавания, исследуется топология. С помощью рекурсивной функции подсчитывается количество замкнутых областей. Если их две — это точно цифра 8. Если одна — 0, 6 или 9 (тут пойдет уточнение по четвертям). Если нет таких областей — это какая-то из остальных цифр.
Изображение
4. Далее в дело вступает табличка, в которой заранее прописаны примерные распределения для каждой цифры, которые я рассчитал проведя небольшое исследование:
Изображение
Изображение
Для каждой цифры (строки) в таблице просчитывается суммарное отклонение, там, где оно минимально считаем, что эта цифра изображена на рисунке(конечно же учитывается топология, просчитанная на шаге 3, например, если обнаружена одна замкнутая область по таблице проверяются только 0, 6 и 9).
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Распознавание цифр с помощью простейшей статистики с Hab

Сообщение =DeaD= » 11 авг 2010, 15:08

Красиво, только 4 в зависимости от шрифта может иметь 0 или 1 замкнутую область.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Распознавание цифр с помощью простейшей статистики с Hab

Сообщение EdGull » 11 авг 2010, 15:18

мы это можем как-то для распознавания маяков пристроить?
Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Распознавание цифр с помощью простейшей статистики с Hab

Сообщение =DeaD= » 11 авг 2010, 15:22

Маловероятно. Тут мы опираемся на то, что мы точно видим цифру и мусора на картинке нет. А в маяках основная проблема - понять, где в кадре с кучей всякого добра нужный нам маяк. Скорее с маяками надо глядеть в сторону Feature Point, причем стабильных.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов

Re: Распознавание цифр с помощью простейшей статистики с Hab

Сообщение EdGull » 11 авг 2010, 17:59

Аватара пользователя
EdGull
 
Сообщения: 10211
Зарегистрирован: 28 дек 2004, 20:33
Откуда: Тольятти
Skype: Ed_Gull
прог. языки: Bascom AVR Basic
ФИО: Гуль Эдуард Викторович

Re: Распознавание цифр с помощью простейшей статистики с Hab

Сообщение =DeaD= » 11 авг 2010, 18:38

Та же фигня, ибо мы тоже уже знаем, что тут 4 цифры и примерно где они, а с маяками наоборот - не знаем не только где они, а есть ли они и сколько их.
Проект [[Open Robotics]] - Универсальные модули для построения роботов
Аватара пользователя
=DeaD=
 
Сообщения: 24218
Зарегистрирован: 06 окт 2004, 18:01
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов


Вернуться в Алгоритмы

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4