Задать вопрос
Fiamma
@Fiamma

Как расшифровать такую капчу?

Добрый день друзья!
Задался целью расшифровать капчу 5d7f5d6f553a2718588615.jpeg
И вот как я это делаю:
1. Конвертим в бинарный вид приводя все к 1 и 0 (grayscale конечно же да)
2. Убираем фот
3. Делим по буквам - здесь у меня и начинается проблемка. Сейчас я бегаю по матрице и смотрю есть ли единицы в столбце, если нет то добавляю новую букву в массив. Этот метод был бы хорош, если бы не было шумов.
4. Дальше с помощью библиотеки PHP-ML я все это обрабатываю и получаю результат.

Дело в том, что у капчи этой есть шумы и из-за них несколько букв сливаются в одну. Для этого изображения (rf6c) я получаю результат "rf". И это не единственный минус. Для определения буква это или шум мне приходится брать среднее количество единиц в массиве и выкидывать все что меньше или больше этого количества.

Подскажите какими методами можно убрать штрихи на изображении или может есть другие варианты разбить по буквам это изображения?
  • Вопрос задан
  • 271 просмотр
Подписаться 2 Средний Комментировать
Пригласить эксперта
Ответы на вопрос 2
samodum
@samodum
Какой вопрос - такой и ответ
antigate, captchabot, deathbycaptcha, pixodrom, ripcaptcha...
Куча сервисов для обхода есть
Ответ написан
Cheloved
@Cheloved
Good man
Ну вообще можно использовать функцию из библиотеки OpenCV - findContours(), она выделит связные группы пикселей, состоящие из одного цвета (то есть у вас будет 4 картинки), потом просто создать обычную свертучную нейросеть используя Conv2d слои и определять что за буква или цифра на картинке. Для определения цифр существует набор данных mnist, когда я делал что то подобное, точность определения цифры составляла 95%.
P.S не забудьте преобразовать изображение в бинарное
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы