Obsluga CAPTCHA z IronOCR

Curtis Chau
Curtis Chau
Updated: 29 czerwca 2026

Czy IronOCR odczyta kody CAPTCHA?

Jest to możliwe, ale nie gwarantowane.

Wiekszosc generatorow CAPTCHA jest celowo zaprojektowana, aby zmylic oprogramowanie OCR, a niektore nawet używają "Niepowodzenie w odczytaniu przez oprogramowanie OCR" takie jak Tesseract jako test jednostkowy.

Kody CAPTCHA z definicji sa bardzo trudne do odczytania przez silniki OCR. Rozdzielczosc jest bardzo niska, a kazdy znak jest specjalnie uporzadkowany pod różnymi katami i odstepami od innych, wraz z uwzglednieniem różnego szumu tła.

Obrazy w skali szarosci z usunietym szumem tła sa bardziej skuteczne niz obrazy kolorowe, ale nadal mogą okazac sie wyzwaniem:

Poniżej znajduje się przykładowy kod w C#, który próbuje usunąć szum i przekształcić obraz CAPTCHA na skale szarosci, aby poprawić wyniki OCR:

using IronOcr;

class CaptchaReader
{
    static void Main(string[] args)
    {
        // Initialize the IronOCR engine
        var Ocr = new IronTesseract();

        // Create an OCR input object
        var Input = new OcrInput("captcha-image.jpg");

        // Apply noise reduction to improve OCR accuracy
        // This removes background noise while preserving text
        Input.DeNoise();

        // Optionally apply a deep clean for more aggressive noise removal
        Input.DeepCleanBackgroundNoise();

        // Convert the image to grayscale 
        // OCR works better on grayscale images compared to colored ones
        Input.ToGrayScale();

        // Perform OCR to extract text from the image
        var Result = Ocr.Read(Input);

        // Output the recognized text to the console
        Console.WriteLine(Result.Text);
    }
}

Wyjaśnienie:

  • IronOcr: Ta biblioteka sluzy do odczytywania tekstu z obrazow.
  • OcrInput: Ta klasa reprezentuje dane wejsciowe obrazu do przetwarzania OCR.
  • DeNoise: Ta metoda sluzy do redukcji szumow tła na obrazie.
  • DeepCleanBackgroundNoise: Ta metoda jest stosowana do bardziej agresywnej redukcji szumow, jesli podstawowa DeNoise jest niewystarczajaca.
  • ToGrayScale: To przeksztalca obraz na skale szarosci, aby zwiekszyc dokladnosc rozpoznawania.
  • Read: Ta metoda jest wywolywana w celu wyodrebnienia tekstu z przetworzonego obrazu.

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podręczników.

Czytaj więcej

Gotowy, aby rozpocząć?

Nuget Downloads 6,357,159Wersja:2026.11właśnie wydany