Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.01.2012, 20:56   #1
Arsenx777
Delphi, c++, php
Форумчанин
 
Аватар для Arsenx777
 
Регистрация: 14.03.2011
Сообщений: 288
По умолчанию Избавление от шума на каптче

Есть несколько картинок(каптч)
1.JPG2.JPG3.JPG
Как можно избавиться от шума? тоесть от линуй, они размером в 1px.
Не как не могу сообразить.
Мудр тот, кто знает нужное, а не многое.

Arsenx777 вне форума Ответить с цитированием
Старый 17.01.2012, 22:10   #2
Gonzo
Форумчанин
 
Аватар для Gonzo
 
Регистрация: 07.03.2009
Сообщений: 123
По умолчанию

Если целью стоит дальнейшее распознавание,
то возможно такие шумы не сильно повлияют на работу.
Хотя могут быть проблемы с сегментацией букв.
В аттаче пример распознавания (писал не я и где взял уже не помню, надеюсь автор не обидится )
Вложения
Тип файла: rar GetImage.rar (186.5 Кб, 62 просмотров)
Не говорите что мне делать, и я не скажу куда Вам идти.
Пишу программы на заказ на Delphi и Pascal
Форум разработчиков Pascal и Delphi
Gonzo вне форума Ответить с цитированием
Старый 18.01.2012, 13:43   #3
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

Математическая морфология, не?
http://ru.wikipedia.org/wiki/%D0%9C%...B3%D0%B8%D1%8F

Если шум на картинке всегда выражен прямой линией, то преобразования Хафа легко справятся с ним
http://ru.wikipedia.org/wiki/%D0%9F%...B0%D1%84%D0%B0

...да и чистка шумов+сегментация для данной капчи — роскошь
Благодарить в репутацию. Проклинать — туда же

Последний раз редактировалось Luuzuk; 18.01.2012 в 13:51.
Luuzuk вне форума Ответить с цитированием
Старый 18.01.2012, 13:50   #4
Gonzo
Форумчанин
 
Аватар для Gonzo
 
Регистрация: 07.03.2009
Сообщений: 123
По умолчанию

На мой взгляд, алгоритм Хафа не очень подходит, поскольку всё равно придётся для сегментации выделять область с символами, а остальное отбрасывать.
А на области с символами алгоритм не очень-то и поможет, поскольку выделит линии, относящиеся и к символам.
--
В приложенном мною примере программа вполне справляется с шумами.
Не говорите что мне делать, и я не скажу куда Вам идти.
Пишу программы на заказ на Delphi и Pascal
Форум разработчиков Pascal и Delphi
Gonzo вне форума Ответить с цитированием
Старый 18.01.2012, 14:07   #5
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

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

...а Хаф для задачи такого класса и на самом деле слишком жирный алгоритм
Благодарить в репутацию. Проклинать — туда же
Luuzuk вне форума Ответить с цитированием
Старый 18.01.2012, 14:14   #6
Gonzo
Форумчанин
 
Аватар для Gonzo
 
Регистрация: 07.03.2009
Сообщений: 123
По умолчанию

Этот пример ценен только как пример!
Безусловно, его использовать в том варианте как есть - не стоит,
но идея автора хорошая.
Не говорите что мне делать, и я не скажу куда Вам идти.
Пишу программы на заказ на Delphi и Pascal
Форум разработчиков Pascal и Delphi
Gonzo вне форума Ответить с цитированием
Старый 18.01.2012, 14:21   #7
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

Другое дело, что для распознавания данной конкретной капчи чистка шумов и хитрая сегментация не нужны.
Достаточно выделить весь блок с цифрами (считать число черных пикселей в строке/столбце) и разбить его на 4 равных части. После этой нехитрой операции каждую часть уже можно сравнивать с шаблонами. Точность распознавания не пострадает
Благодарить в репутацию. Проклинать — туда же
Luuzuk вне форума Ответить с цитированием
Старый 18.01.2012, 14:33   #8
Gonzo
Форумчанин
 
Аватар для Gonzo
 
Регистрация: 07.03.2009
Сообщений: 123
По умолчанию

Цитата:
Сообщение от Luuzuk Посмотреть сообщение
Другое дело, что для распознавания данной конкретной капчи чистка шумов и хитрая сегментация не нужны.
Достаточно выделить весь блок с цифрами (считать число черных пикселей в строке/столбце) и разбить его на 4 равных части. После этой нехитрой операции каждую часть уже можно сравнивать с шаблонами. Точность распознавания не пострадает
Абсолютно согласен. В данном случае подразумевал для сегментации примерно то же.
Не говорите что мне делать, и я не скажу куда Вам идти.
Пишу программы на заказ на Delphi и Pascal
Форум разработчиков Pascal и Delphi
Gonzo вне форума Ответить с цитированием
Старый 18.01.2012, 17:43   #9
Arsenx777
Delphi, c++, php
Форумчанин
 
Аватар для Arsenx777
 
Регистрация: 14.03.2011
Сообщений: 288
По умолчанию

Всем спасибо, я просто хотел понять как избовляются от шумов и решил привести в пример простенькую капчу, пробовал не получается(
Мудр тот, кто знает нужное, а не многое.


Последний раз редактировалось Arsenx777; 18.01.2012 в 17:49.
Arsenx777 вне форума Ответить с цитированием
Старый 18.01.2012, 17:53   #10
Luuzuk
Форумчанин
 
Аватар для Luuzuk
 
Регистрация: 18.01.2012
Сообщений: 975
По умолчанию

Arsenx777, в сторону математической морфологии смотри. В первую очередь на эрозию. Именно с её помощью я избавлялся от шума на капче пару месяцев назад
Благодарить в репутацию. Проклинать — туда же
Luuzuk вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
избавление от for,copy и delete Work Group Помощь студентам 0 08.12.2009 13:42
Избавление от неприятных звуков БуреВестник Microsoft Office Word 2 24.10.2009 15:06
Довольны ли вы уровнем шума своего ПК? _dx Компьютерное железо 31 04.07.2009 23:02
ГСЧ на основе шума. RomanIgorevi4 Общие вопросы C/C++ 0 04.06.2009 22:16