summaryrefslogtreecommitdiff
path: root/vendor/gregwar/captcha/demo/ocr.php
blob: 3d745f65f2a4d869356de9eec7532c8fc1e77039 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?php

include(__DIR__.'/../CaptchaBuilderInterface.php');
include(__DIR__.'/../PhraseBuilderInterface.php');
include(__DIR__.'/../CaptchaBuilder.php');
include(__DIR__.'/../PhraseBuilder.php');

use Gregwar\Captcha\CaptchaBuilder;

/**
 * Generates 1000 captchas and try to read their code with the
 * ocrad OCR
 */

$tests = 10000;
$passed = 0;

shell_exec('rm passed*.jpg');

for ($i=0; $i<$tests; $i++) {
    echo "Captcha $i/$tests... ";

    $captcha = new CaptchaBuilder;

    $captcha
        ->setDistortion(false)
        ->build()
    ;

    if ($captcha->isOCRReadable()) {
        $passed++;
        $captcha->save("passed$passed.jpg");
        echo "passed at ocr... ";
    } else {
        echo "failed... ";
    }

    echo "pass rate: ".round(100*$passed/($i+1),2)."%\n";
}

echo "\n";
echo "Over, $passed/$tests readed with OCR\n";