Добрый день. Подскажите как распознать данный вид капчи Пробую преобразую сначала в негатив. Потом повышаю резкость и перевожу в чб. Получается вот такие Подскажите что делать дальше для распознавания капчи? Так понимаю что надо перевести в один диапазон цветов чтобы фон был белый а цифры черные. Но вот если изначально фон темный то потом он получается светлый и наоборот. С этим думаю как нибудь разберусь а вот как дальше распознать?
Боюсь это не то) Больно просто там никакого искажения. Никакого шума. Никаких изменений наклона цифр...
Искажения как раз там еще большие, но используется сторонний сервис. В вашем случае лучше почитать принцип распознавания, который у вас в лс.
Мне кажется вы не капли не разобрались что там. Первое там никакого искажения. ReCaptcha там заполнено вручную. А распознается только текст в самом низу. Именно по этому там предлагают систему сравнения с оттисками)) Для ReCaptcha таких оттисков надо делать не сколько сотен гигов для одной только буквы.
Шум есть и неплохой. От которого изначально надо полностью избавиться, и потом уже только начинать сравнивать по шаблону. Но в том примере явно ничего такого нет. И как по мне там можно было бы проще сделать. Разрезаем картинку на составные и по каждой берем средний цвет. И по нему уже определяем что там)
С дельфи меня ничего не связывает, но на php можно что-нибудь придумать. Для начала нужно выделить самые тёмные пиксели, исключить полосы по краям и пройтись эталоном используя наклон.
А зачем переводить в ч.б.? Лучше сразу в двухцветное. Что-то наподобие такого: Большой плюс этой капчи, то что цифры не пересекаются и их количество постоянно.
Подскажите в итоге имею 2 точки по ширине с которых надо обрезать часть картинки. pix_a = 10 pix_b = 21 пробую так in_img.Canvas.CopyRect(Rect(0,0,pix_b-pix_a,in_img.Height),in_img.Canvas,Rect(pix_a,0,pix_b-pix_a,in_img.Height)); но выходит непонятно что
in_img.Canvas.CopyRect(Rect(0,0,pix_b-pix_a,in_img.Height),in_img.Canvas,Rect(pix_a,0,pix_b,in_img.Height)); Во время выполнения этого куска возникает ошибка?
Эта проблема решена. Осталась единственная проблема. Т.к. нету полноценного очертания у каждой вырезанной цифры и каждая цифра нарисована под разными углами. То количество белых и черных пикселей у некоторых картинок одинаково. Как дальше быть? Как сравнивать то картинки?
В общем получилось преобразовать картинку вот в такой текст. Code: X XXXX XXXXXXXX XX XXXX XX XX XX XXXXXXX XXXXXXXX XXX XX XX XX XX XX XX XX XX XX XXX XX XXXXXXXX XXXX Кто знает как теперь его преобразовать в цифру ? Такой текст почти всегда под углом
Используйте ИНС. Хотя лучше сначала провести обратный поворот символов, а затем инс. PS: Есть библиотека компонентов реализующая многослоюную нейронную сеть - NeuralBase.
Это конечно все хорошо. Я его поставил. Но вот как им пользоваться? Как вообще это дело обучать я если честно не понимаю Можете хоть минимальный пример привести? Демо конечно я их открывал. Но понятнее если честно мне от этого не стало. Кстати очень хорошо определяет уже существующие шаблоны что я сделал Kamos из IrfanView. Очень прощу помощи по данной теме.