Comments 11
Капчи с вопросами из кроссвордов! Сразу показывает количество букв. После нескольких адекватных попыток может сжалиться и начать открывать буквы. Можно попросить заменить вопрос. Пройдут только эрудированные.
Видел на каком-то форуме капчи просят решать квадратные уравнения, задачки по физике и такого рода.
На специализорованных технических форумах видел капчи, которые по тематике форуме. Заодно и фильтр от бесполезных.
Все что связанно с вопросами, кроссвордами и тд., является выборкой не очень большого размера и в итоге все ответы можно собрать и это будет не юзер френдли.
Много лет назад подобные капчи с вопросами использовались, когда они получили распространение, то боты легко их начали обходить.
Тот же CRAFT умеет очень хорошо детектить символы, даже для irregular text. Почему бы просто не научить распознавать эти символы?
![](https://habrastorage.org/getpro/habr/upload_files/d63/fcc/94d/d63fcc94df88d1a89c21c0fad63d3546.gif)
В контексте яндекс капчи, думаю стоило добавить для сравнения и этот подход.
Но сеть CNN+LSTM хорошо справляется с распознаванием слова целиком. Я хотел рассказать общий подход к распознаванию, не только яндекс капчи, а в случае детектора отдельных букв в капчах с упором на сложность сегментации, типа старых капчей гугла
![](https://habrastorage.org/getpro/habr/upload_files/878/a14/723/878a14723fe2f4191246a0ca488385f5.jpg)
CRAFT может хорошо и не сработать, а вот сеть CNN+LSTM сработает на все 100, мы получим уровень распознавания близкий, или лучше человеческого. К тому же, после крафта нам надо вырезать символы, собрать базу, почистить, обучить классификатор, а в случае CNN+LSTM просто пьем кофе и ничего не делаем.
Делал распознавание капч на CNN+LSTM с точностью практически 100%, рассказывал о своем опыте год назад. Но там было фиксированное количество символов, с реальными словами все гораздо сложнее. По идее распознаванию поможет классификация с подключенным словарем, тогда следующим шагом усложнения капчи будут слова с ошибками.
>>Но там было фиксированное количество символов, с реальными словами все гораздо >>сложнее.
Не совсем понял в чем сложность с распознаванием реальных слов, даже без словаря. Есть выборка капч, исходя из нее мы находим параметры для модели в том числе и количество классов - используемые символы, максимальная длина текста на капче. Дальше как раз не самому распознавать капчи, а отдать в сервис, где люди руками вам разметят выборку. Все ингредиенты есть, начинаем обучать, получаем модель с неплохими показателями правильных ответов, хочется больше, берем выборку побольше.
Скорее хочется услышать, как должна выглядеть текстовая капча, которая будет сложна в распознавании, таким простым методом(CNN+LSTM) в том числе. В статье я обозначил ограничения, на чем эта сеть спотыкается.
Согласен, со сложностью распознавания реальных слов я погорячился - в моём случае все ошибки распознавания были связаны с потерей символа, результаты дополнялись до фиксированной длины и я ошибочно решил, что переменная длина увеличит сложность.
Предполагаю, что на капче не должно быть цепочек символов - пусть они будут расположены в случайном порядке, иметь разный размер, цвет, угол поворота, пересекаться. Увеличим количество классов - для разгадывания нужно ввести например только согласные, или гласные а потом цифры. Тогда на вход нейросети нужно будет подавать дополнительную информацию, не содержащуюся в самой картинке.
А есть люди, которые даже капчу в глаза не видели)
Текстовая CAPTCHA в 2022