ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Капча
  #1  
Старый 29.09.2008, 00:36
Аватар для Zabuldon
Zabuldon
Участник форума
Регистрация: 06.04.2008
Сообщений: 102
Провел на форуме:
162579

Репутация: 28
По умолчанию Капча

Народ вот подскажите ка пишуться распознователи капч =) мот у кого нить пример есть?
 
Ответить с цитированием

  #2  
Старый 29.09.2008, 00:42
Аватар для rushter
rushter
Reservists Of Antichat - Level 6
Регистрация: 23.05.2008
Сообщений: 756
Провел на форуме:
9257858

Репутация: 979


Отправить сообщение для rushter с помощью ICQ
По умолчанию

PHP код:
<?php 
    $rand 
rand(10000,99999); 
    for(
$i 0$i 5$i++) 
    { 
        
$arr[$i] = substr($rand$i1); 
    } 
    
$im imagecreate(89,20); 
    
imagecolorallocate($im343434); 
    
$a 0
    for(
$i 0$i 5;$i++) 
    { 
        
$color imagecolorallocate($im255255255); 
        
imagestring($im3$a += 144$arr[$i], $color); 
    } 
    
header("Content-type: image/jpeg"); 
    
imagejpeg($im''100); 
?>
вот пример,вроде isis писал его.
 
Ответить с цитированием

  #3  
Старый 29.09.2008, 00:54
Аватар для Zabuldon
Zabuldon
Участник форума
Регистрация: 06.04.2008
Сообщений: 102
Провел на форуме:
162579

Репутация: 28
По умолчанию

Цитата:
Сообщение от rushter  
PHP код:
<?php 
    $rand 
rand(10000,99999); 
    for(
$i 0$i 5$i++) 
    { 
        
$arr[$i] = substr($rand$i1); 
    } 
    
$im imagecreate(89,20); 
    
imagecolorallocate($im343434); 
    
$a 0
    for(
$i 0$i 5;$i++) 
    { 
        
$color imagecolorallocate($im255255255); 
        
imagestring($im3$a += 144$arr[$i], $color); 
    } 
    
header("Content-type: image/jpeg"); 
    
imagejpeg($im''100); 
?>
вот пример,вроде isis писал его.
эмм... а это разве не сама капча?? О_о

а если к примеру на капче нелинейные искажения есть? тогда что делать?

Последний раз редактировалось Zabuldon; 29.09.2008 в 00:57..
 
Ответить с цитированием

  #4  
Старый 29.09.2008, 01:00
Аватар для DIAgen
DIAgen
Познавший АНТИЧАТ
Регистрация: 02.05.2006
Сообщений: 1,191
Провел на форуме:
7364332

Репутация: 1276


По умолчанию

Цитата:
Сообщение от Zabuldon  
Народ вот подскажите ка пишуться распознователи капч =) мот у кого нить пример есть?
Смотри раздел статьи там было про распознование...
 
Ответить с цитированием

  #5  
Старый 29.09.2008, 07:49
Аватар для Chaak
Chaak
Познавший АНТИЧАТ
Регистрация: 01.06.2008
Сообщений: 1,047
Провел на форуме:
5321514

Репутация: 3313


Отправить сообщение для Chaak с помощью ICQ
По умолчанию

Там только на перле. Очень интересует php.
 
Ответить с цитированием

  #6  
Старый 29.09.2008, 08:00
Аватар для GreenBear
GreenBear
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме:
19975136

Репутация: 4536


Отправить сообщение для GreenBear с помощью ICQ
По умолчанию

принцип то не меняется.
 
Ответить с цитированием

  #7  
Старый 29.09.2008, 08:55
Аватар для .:nbd:.
.:nbd:.
Познающий
Регистрация: 27.07.2008
Сообщений: 98
Провел на форуме:
405792

Репутация: 86
По умолчанию

Есть рабочий пример на С++ http://libcaca.zoy.org/wiki/PWNtcha сам юзал. Если есть хотя бы поверхностные знания С разобраться в коде и переписать на пыхе не проблема.
 
Ответить с цитированием

  #8  
Старый 29.09.2008, 17:56
Аватар для Shadow_p1raT
Shadow_p1raT
Участник форума
Регистрация: 09.03.2008
Сообщений: 193
Провел на форуме:
2140897

Репутация: 267
Отправить сообщение для Shadow_p1raT с помощью ICQ
По умолчанию

Цитата:
Там только на перле. Очень интересует php.
Вот хорошая статейка от NOmeR1 (php)
Код:
http://forum.antichat.ru/thread60049.html
 
Ответить с цитированием

  #9  
Старый 29.09.2008, 20:49
Аватар для Zabuldon
Zabuldon
Участник форума
Регистрация: 06.04.2008
Сообщений: 102
Провел на форуме:
162579

Репутация: 28
По умолчанию

Ребят просмотрел все статейки, но нигде нет ответа на вопрос:
Что делать если на картинку наложены нелинейные искажения??

З.Ы. язык программирования не важен важен алгоритм...
 
Ответить с цитированием

  #10  
Старый 29.09.2008, 21:14
Аватар для KillDead
KillDead
Новичок
Регистрация: 15.09.2008
Сообщений: 19
Провел на форуме:
102324

Репутация: 1
По умолчанию

Надо копать в сторону нейройных цепей, т.е. когда производится обучение системы.
Один из алгоритмов
Цитата:
1) Бьем наш рисунок на одинаковые прямоугольные области, в каждом из которых находится строго 1 символ + возможно какой-то мусор. Это легко сделать для капч из PHPBB - там символы всегда на одних и тех же местах, просто повернуты под углом.

2) В каждом прямоугольном участке находится один символ, нам надо его распознать. Для этого мы проходим по всем пикселям этого участка, цвет каждого пикселя умножаем на определенное число Wi, и потом все вместе складываем. Это и есть нейронная сеть в простейшем виде. Вопрос только в этих числах Wi, которые называются весовые коэффициенты - и показывают "вклад" каждого пиксела в общую сумму. Нам надо подобрать эти числа так, чтоб итоговая сумма для разных символов капчи всегда попадала в разные диапазоны. То есть если на картинке цифра 1, то как бы она ни была повернута мы должны на выходе получить сумму всех пикселов, к примеру, от 30000 до 40000, а если на картинке цифра 2, то у нас сумма всегда должна попадать в другой диапазон (например от 10000 до 12000).

Таким образом мы по сумме пикселов всегда гарантрованно определяем символ, изображенный на картинке. Теперь дело за малым - найти все эти весовые коэффициенты, то есть ОБУЧИТЬ нашу нейронную сеть.

Способов обучения есть много, но все они подразумевают, что вы будете показывать вашей сети картинку и говорить, что на ней изображено - и так много раз. Так что без своего генератора капчей не обойтись.

Возьмем изначально для каждого пиксела весовой коэффициент равный единице. То есть мы тупо складываем все пиксели на картинке и получаем какое-то число. Даже на данном этапе уже нетрудно заметить, что для восьмерки это число будет получаться всегда больше, чем для единицы, так как в восьмерке больше закрашенных пикселов. Но вот к примеру 8 от 0 отличается не так сильно. Чтоб она попала в "старший" диапазон, нам надо тем пикселам, которые образуют центральную перегородку, придать бОльший вес по сравнению с остальными. Тогда как только на картинке в этом месте оказывается группа закрашенных пикселов - у нас автоматически сумма сильно вырастает, и 8 от 0 мы легко можем отличить. Но проблема в том, что в этой же области находятся и пикселы на цифрах "3" и "5" - соответственно их суммы тоже вырастут. Значит надо калибровать дальше. Посмотрим, сколько сейчас получаются суммы для 3 и для 5. Допустим, получаются примерно одинаковые. Как их отличить? Опять же, придать бОльший вес тем пикселам, которые отличают 3 от 5 (и в идеале от всех других цифр). Ну и так далее.

При наличии генератора капчей процесс этот полностью автоматизируется - мы сгенерили картинку, подсунули ее сети, сеть нам выдала посчитанное число, мы сравнили с "загаданным" - тем, что рисовали на каптче, подкрутили весовые коэффициенты, вернулись в начало цикла. И так до бесконечности.
Есть уже реализованная прога http://www.cap-cap.ru/- всё что надо- сохранить все цифры-буквы в папку с прогой и запустить её с опр параметрами.

Если не страшно, можно почитать теорию http://www.intuit.ru/catalog/human/expert/
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Капча... Зачем? Defrion PHP, PERL, MySQL, JavaScript 13 20.08.2008 19:25
Регер акков на Google - бесплатно! (капча - руками) Zuzlan Разное - Покупка, продажа, обмен 0 12.08.2008 20:54
Капча в ЛС ВКонтакте. etc Болталка 13 20.07.2008 14:44
Опять капча Prototype С/С++, C#, Delphi, .NET, Asm 3 18.07.2008 06:52
Новая капча Chupa-Chups Мировые новости 10 06.05.2008 00:02



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ