![]() |
Модераторы: gambit |
![]() ![]() ![]() |
|
Ali002 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 11.4.2014 Репутация: нет Всего: нет |
Люди!!!
Подскажите пожалуйста как подготовить шаблон изображения - бланк анкеты стандартный, далее алгоритм поиска ячеек (квадратики) ответов на бланке анкеты(отсканированная анкета). Как определить координаты нужных ячеек и как сохранять расстояние между центрами ячеек каждого вопроса и размеры ячеек. И как распознать символ в ячейке? И можно поподробнее про поиск квадратиков есть примеры алгоритма этого поиска желательно код Как исключать внутренние области квадратов и как положение строки квадратов находить, можете кодом показать на примере ? Это сообщение отредактировал(а) Ali002 - 22.5.2014, 21:39 |
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 8 Всего: 118 |
такую анкету распознать не сложно.
1) очевидно что анкета будет отсканирована. Желательно сразу сканировать в серые тона. 2) далее устранить поворот изображения используя преобразования Хафа (Hough transform) для определения угла поворота. 3) (я бы делал так) далее вам надо определить реальные границы зоны интереса (вашего листа прямоугольник). Его можно взять из п2, очевидно. 4) Более того, т.к. это анкета, то Вам известны примерные параметры соотношения сторон прямоугольника нужного вам. Исходя из этой информации вы можете предпологать где находятся квадратики (полоса шириной какой вам надо). 5) В этой полосе вам придётся искать закрашенные квадратики. Для этого можно использовать бинаризированное изображение. В зависимости от качества алгоритмы разные. Думаю вам подойдет адаптивная локальная бинаризация вроде алгоритма Bradley (хз как по-русски чувака зовут). 6) Делите вертикальную полосу на строки (да хоть хафом опять ж или по яркостным диаграммам). И строите яркостную гистограмму по этой полосе. В местах заштриховывания будет выраженый пик гистограммы. Предварительно полосу можно очищать от мусора (например пройдясь матрицей 3*3). Конечно, можно квадраты искать по алгоритму Susan или какому другому, но, думаю, тут это будет избыточно. собственно всё. ЗЫ: а при чем тут .net и базы данных-то?! Это сообщение отредактировал(а) jonie - 11.4.2014, 19:03 -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
Ali002 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 11.4.2014 Репутация: нет Всего: нет |
А можно с этого места по подробнее и если есть может код примерный ? И вообще как запоминать места ячеек и узнавать какое значение ей присваивать? нужен же шаблон да? а я не знаю как его сдлеть из изображения, помогите пожалуйста |
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 8 Всего: 118 |
http://mechanoid.kiev.ua/programming-text-...egmentator.html вот вам примерный алгоритм -------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
Ali002 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 11.4.2014 Репутация: нет Всего: нет |
Благодарю!! не увидела этого сообщения ![]() |
||||
|
|||||
Ali002 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 11.4.2014 Репутация: нет Всего: нет |
Мне необходимо запомнить места ячеек для того чтобы потом сравнивать с их положением другие анкеты и как то узнавать что под такой то цифрой такая ячейка, извиняюсь за настойчивость но я просто не догоняю как это сделать с помощью наложения полос необходимой ширины ведь в последующих анкетах возможны какие то изменения этих полос? Подскажите как запомнить координаты ячеек в базе! а перед тем как запомнить как найти необходимые ячейки МОЖЕТЕ КОД кинуть хотя бы примерный |
|||
|
||||
jonie |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5613 Регистрация: 21.8.2005 Где: Владимир Репутация: 8 Всего: 118 |
под каждый анкетный тип листа вам стоит сделать "шаблон", где в процентах будет описано где ячейки примерно лежат, а уже алгоритм будет использовать эти данные для кросс-проверке при разборе конкретного листа конкретного типа.
-------------------- Что-то не поняли? -> Напейтесь до зеленых человечков... эта сверхцивилизация Вам поможет... |
|||
|
||||
Ali002 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 18 Регистрация: 11.4.2014 Репутация: нет Всего: нет |
всмысли под каждый анкетный лист? может быть 1 шаблон сделать на все случаи? а как сделать этот шаблон? тоесть в каком формате |
|||
|
||||
![]() ![]() ![]() |
Прежде чем создать тему, посмотрите сюда: | |
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Базы данных под .NET | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |