IRONSOFTWAREHOME

Szybka konfiguracja OCR w języku C# dla optymalnej wydajności

Curtis Chau
Curtis Chau
Updated: 9 maja 2026

Szybka konfiguracja IronOCR umożliwia do 17% szybsze prędkości przetwarzania OCR bez utraty dokładności poprzez użycie trybu językowego EnglishFast i wyłączanie niepotrzebnych funkcji, takich jak odczyt kodów kreskowych. Ta optymalizacja jest idealna do przetwarzania dużych ilości danych, gdzie czas ma kluczowe znaczenie.

IronOCR działa skutecznie od razu po uruchomieniu. Gdy szybkość ma pierwszeństwo przed absolutną dokładnością, IronOCR oferuje szybką konfigurację. To ustawienie zapewnia znaczny wzrost wydajności skanowania przy minimalnym wpływie na dokładność, dzięki czemu jest znacznie szybsze niż standardowa konfiguracja OCR.

W tym artykułe pokazano, jak skonfigurować tryb szybki, oraz porównano wyniki testów porównawczych między konfiguracjami IronOCR w trybie szybkim i standardowym. Niezależnie od tego, czy przetwarzasz zeskanowane dokumenty, pliki PDF czy obrazy, te optymalizacje mogą znacznie poprawić wydajność Twojej aplikacji.


Szybki start: Konfiguracja funkcji Fast OCR w języku C#

Głównym komponentem szybkiej konfiguracji jest właściwość Language. Ustawienie właściwości Language na OcrLanguage.EnglishFast priorytetuje szybkość kosztem małej potencjalnej utraty dokładności. Dzięki temu IronOCR może znacznie szybciej odczytywać duże ilości danych, co jest szczególnie przydatne w aplikacjach o znaczeniu krytycznym, gdzie czas ma kluczowe znaczenie.

Oprócz ustawienia szybkiego języka, możesz uzyskać dalszą prędkość, wyłączając niepotrzebne konfiguracje, takie jak ReadBarCodes. Pozwól IronOCR automatycznie wykryć podział strony, aby konfiguracja była prosta. Aby uzyskać informacje na temat bardziej zaawansowanych opcji konfiguracyjnych, zapoznaj się z naszym szczegółowym przewodnikiem konfiguracji Tesseract.

Poniższy przykład kodu przetwarza następujący obraz wejściowy:

Jakiego formatu pliku użyć?

Tekst otwierający powieść "Moby Dick" wyświetlony na białym tle na ciemnym tle, przedstawiający wprowadzenie Ishmaela

Jakiego kodu potrzebuję do szybkiej konfiguracji?

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. 2Skopiuj i uruchom ten fragment kodu.

    /* :path=/static-assets/ocr/content-code-examples/how-to/ocr-fast-configuration.cs */
    using IronOcr;
    using System;
    
    var ocrTesseract = new IronTesseract();
    
    // Fast Dictionary
    ocrTesseract.Language = OcrLanguage.EnglishFast;
    
    // Turn off unneeded options
    ocrTesseract.Configuration.ReadBarCodes = false;
    
    // Assume text is laid out neatly in an orthogonal document
    ocrTesseract.Configuration.PageSegmentationTryb = TesseractPageSegmentationTryb.Auto;
    
    using var ocrInput = new OcrInput();
    ocrInput.LoadImage("image.png");
    
    var ocrResult = ocrTesseract.Read(ocrInput);
    Console.WriteLine(ocrResult.Text);
    C#
  3. 3Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronOCR w swoim projekcie już dziś z darmową wersją próbną
    arrow pointer

Jakiego wyniku mogę się spodziewać?

Edytor Visual Studio wyświetlający początkowy fragment powieści "Moby Dick"

Poniżej znajduje się tekst wyodrębniony z powyższego fragmentu. Silnik OCR dokładnie przechwytuje tekst literacki, zachowując oryginalne formatowanie i strukturę. Szybka konfiguracja zapewnia doskonałe wyniki w przypadku wyraźnego tekstu o wysokim kontraście, takiego jak w tym przykładzie.


Czym różni się konfiguracja szybka od standardowej?

Aby zademonstrować rzeczywisty wpływ, porównujemy wydajność konfiguracji standardowej z konfiguracją szybką. Używamy zestawu 10 przykładowych obrazów, z których każdy zawiera kilka akapitów, aby porównać wydajność i zwizualizować kompromisy związane z użyciem szybkiej konfiguracji.

Dla standardowej konfiguracji, inicjalizujemy IronTesseract z domyślnymi ustawieniami, bez stosowania jakichkolwiek właściwości zorientowanych na szybkość. To podejście oparte na benchmarkach jest podobne do naszego przewodnika po monitorowaniu wydajności, który pokazuje, jak monitorować operacje OCR w czasie rzeczywistym.

Oto przykładowe dane wejściowe, których używamy do przeprowadzenia testu. Obrazy te przedstawiają typowe scenariusze dokumentów, z którymi można się spotkać podczas przetwarzania dokumentów wielostronicowych lub operacji wsadowych.

Jak uruchomić test porównawczy?

using IronOcr;
using System;
using System.Diagnostics;
using System.IO;

// --- Tesseract Engine Setup ---
var ocrTesseract = new IronTesseract();
ocrTesseract.Language = OcrLanguage.EnglishFast;
ocrTesseract.Configuration.ReadBarCodes = false;
ocrTesseract.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.Auto;

// --- 1. Define folder and get files ---
string folderPath = @"images"; // IMPORTANT: Set this to your image directory
string filePattern = "*.png";    // Change to "*.jpg", "*.bmp", etc. as needed
string outputFilePath = "ocr_results.txt"; // The new results file

// Get all image files in the directory
var imageFiles = Directory.GetFiles(folderPath, filePattern);

Console.WriteLine($"Found {imageFiles.Length} total images to process...");
Console.WriteLine($"Results will be written to: {outputFilePath}");

// --- 2. Start timer and process images, writing to file ---
// Open the output file *before* the loop for efficiency
using (StreamWriter writer = new StreamWriter(outputFilePath))
{
    var stopwatch = Stopwatch.StartNew();

    foreach (var file in imageFiles)
    {
        string fileName = Path.GetFileName(file);

        using var ocrInput = new OcrInput();
        ocrInput.LoadImage(file);

        var ocrResult = ocrTesseract.Read(ocrInput);

        // Check if any text was actually found
        if (!string.IsNullOrEmpty(ocrResult.Text))
        {
            // Write to Console
            Console.WriteLine($"--- Text found in: {fileName} ---");
            Console.WriteLine(ocrResult.Text.Trim());
            Console.WriteLine("------------------------------------------");

            // Write to File
            writer.WriteLine($"--- Text found in: {fileName} ---");
            writer.WriteLine(ocrResult.Text.Trim());
            writer.WriteLine("------------------------------------------");
            writer.WriteLine(); // Add a blank line for readability
        }
        else
        {
            // Write to Console
            Console.WriteLine($"No text found in: {fileName}");

            // Write to File
            writer.WriteLine($"No text found in: {fileName}");
            writer.WriteLine();
        }
    }

    stopwatch.Stop();

    // --- 3. Print and write final benchmark summary ---
    string lineSeparator = "\n========================================";
    string title = "Batch OCR Processing Complete";
    string summary = $"Fast configuration took {stopwatch.Elapsed.TotalSeconds:F2} seconds";

    // Write summary to Console
    Console.WriteLine(lineSeparator);
    Console.WriteLine(title);
    Console.WriteLine("========================================");
    Console.WriteLine(summary);

    // Write summary to File
    writer.WriteLine(lineSeparator);
    writer.WriteLine(title);
    writer.WriteLine("========================================");
    writer.WriteLine(summary);

    if (imageFiles.Length > 0)
    {
        string avgTime = $"Average time per image: {(stopwatch.Elapsed.TotalSeconds / (double)imageFiles.Length):F3} seconds";
        Console.WriteLine(avgTime);
        writer.WriteLine(avgTime);
    }
}

Console.WriteLine($"\nSuccessfully saved results to {outputFilePath}");

Ten kod testowy ilustruje kilka ważnych koncepcji:

  1. Przetwarzanie wsadowe: Kod przetwarza wiele obrazów w ramach jednej operacji, podobnie jak w naszym przykładzie wielowątkowego OCR, który pokazuje, jak wykorzystać przetwarzanie równoległe w celu uzyskania jeszcze większego przyspieszenia.

  2. Pomiar wydajności: Korzystanie z klasy Stopwatch zapewnia dokładne pomiary czasu aż do milisekund, które są niezbędne do porównywania różnych konfiguracji.

  3. Rejestrowanie wyników: Zarówno wyjście konsolowe, jak i plikówe zapewniają możliwość późniejszej analizy wyników i weryfikacji różnic w dokładności między konfiguracjami.

Jakiego wzrostu wydajności mogę się spodziewać?

TrybCałkowity czasŚredni czas / ObrazOszczędność czasu w porównaniu ze standardemZysk dokładności w porównaniu ze standardem
Standardowy10,40 s1,040 sBaselineBaseline
Szybko8,60 s0,860 s+17,31% (szybciej)+0% (Identyczne)

Porównanie wydajności między konfiguracją standardową a szybką wykazuje znaczną przewagę wydajnościową konfiguracji szybkiej. Przyjmując tryb standardowy jako punkt odniesienia (łączny czas 10,40 sekundy), konfiguracja szybka przetworzyła tę samą partię 10 obrazów w zaledwie 8,60 sekundy. Oznacza to znaczną oszczędność czasu wynoszącą 17,31%. Co najważniejsze, ta poprawa szybkości nie wpłynęła negatywnie na jakość; dokładność była identyczna w obu trybach, a obie konfiguracje generowały ten sam tekst wyjściowy.

Aby zweryfikować wyniki, można pobrać zarówno szybką wersję tekstową, jak i standardową wersję tekstową.

Kiedy należy używać funkcji szybkiej konfiguracji?

Szybka konfiguracja jest szczególnie korzystna dla:

  • Przetwarzanie dokumentów o dużej objętości, gdzie tysiące stron wymagają szybkiego przetworzenia
  • Aplikacje działające w czasie rzeczywistym, w których czas odpowiedzi ma kluczowe znaczenie
  • Aplikacje internetowe, które muszą zapewniać responsywne doświadczenia użytkownika
  • Systemy przetwarzania wsadowego działające zgodnie z napiętym harmonogramem

W przypadku bardziej złożonych scenariuszy obejmujących wiele języków, skany niskiej jakości lub specjalistyczne typy dokumentów, takie jak tablice rejestracyjne lub paszporty, warto skorzystać ze standardowej konfiguracji, aby zapewnić maksymalną dokładność.

IronOCR ułatwia przełączanie się między konfiguracjami — wystarczy zmienić kilka właściwości, a aplikacja dostosuje się do różnych wymagań dotyczących wydajności bez konieczności wprowadzania większych zmian w kodzie.

Często Zadawane Pytania

O ile szybsza jest szybka konfiguracja OCR w porównaniu do standardowych ustawień?

Szybka konfiguracja IronOCR może osiągnąć do 17% szybsze prędkości przetwarzania w porównaniu do standardowych ustawień OCR, z minimalnym wpływem na dokładność. Zysk wydajności osiąga się dzięki trybowi językowemu EnglishFast oraz wyłączeniu niepotrzebnych funkcji.

Jaka jest główna ustawienie umożliwiające szybkie przetwarzanie OCR?

Głównym komponentem dla szybkiej konfiguracji w IronOCR jest ustawienie właściwości Language na OcrLanguage.EnglishFast. To priorytetyzuje prędkość kosztem małego potencjalnego spadku dokładności, co czyni tę opcję idealną do przetwarzania masowego i aplikacji krytycznych czasowo.

Jak mogę jeszcze bardziej zoptymalizować prędkość OCR poza użyciiem trybu EnglishFast?

Możesz uzyskać dodatkowe ulepszenia prędkości wyłączając niepotrzebne funkcje w IronOCR, takie jak ustawienie ReadBarCodes na false, jeśli nie potrzebujesz detekcji kodów kreskowych. Ponadto, pozwól IronOCR automatycznie wykrywać segmentację stron za pomocą TesseractPageSegmentationMode.Auto.

Kiedy powinienem używać szybkiej konfiguracji OCR zamiast standardowych ustawień?

Szybka konfiguracja OCR w IronOCR jest idealna w scenariuszach przetwarzania dużych wolumenów, gdzie czas jest kluczowy i akceptowalny jest drobny koszt w dokładności. Jest szczególnie przydatna w aplikacjach krytycznych misji, które potrzebują szybko przetwarzać skanowane dokumenty, PDF-y lub obrazy.

Czy szybka konfiguracja działa ze wszystkimi typami dokumentów?

Tak, szybka konfiguracja IronOCR działa skutecznie z różnymi typami dokumentów, w tym ze skanowanymi dokumentami, PDF-ami i obrazami. Korzyści z optymalizacji mają zastosowanie niezależnie od formatu wejściowego, który przetwarzasz.

Czy następuje jakikolwiek spadek dokładności przy używaniu szybkiego trybu OCR?

Szybka konfiguracja IronOCR zapewnia znaczące zyski w wydajności skanowania przy minimalnym wpływie na dokładność. Chociaż może wystąpić mały potencjalny koszt w dokładności przy używaniu trybu EnglishFast, kompromis ten jest często opłacalny dla aplikacji, które priorytetyzują szybkość.

Can IronOCR's fast configuration handle batch processing efficiently?

Yes, IronOCR's fast configuration is designed for efficient batch processing, allowing multiple images to be processed in a single operation with enhanced speed due to reduced computational load per image.

How does benchmark testing demonstrate the performance of fast configuration?

Benchmark testing with a set of sample images revealed that fast configuration can process images 17% quicker than the standard mode, demonstrating its superior speed without compromising text output accuracy.

When should the standard OCR configuration be preferred over fast configuration?

The standard OCR configuration should be used in scenarios requiring high accuracy, such as processing low-quality scans, recognizing multiple languages, or handling specialized documents like passports or license plates.

Is it easy to switch between fast and standard configurations in IronOCR?

Yes, IronOCR allows easy switching between configurations by changing a few properties, enabling swift adaptation to varying performance needs without complex code adjustments.

Curtis Chau
Autor tekstów technicznych

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,236,385Wersja:2026.9właśnie wydany

Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta
Biblioteka C# NuGet dla plików PDF
Zainstaluj za pomocą NuGet

Wersja: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. W Eksploratorze Rozwiązań, kliknij prawym przyciskiem Myszy na Odwołania, Zarządzaj pakietami NuGet
  2. Wybierz Przeglądaj i szukaj „IronOCR”
  3. Wybierz pakiet i zainstaluj
DLL PDF dla C#
Pobierz DLL

Wersja: 2026.9

lub pobierz Instalator Windows tutaj.

  1. Pobierz i rozpakuj IronOCR do lokalizacji, takiej jak ~/Libs w katalogu Solution
  2. W Eksploratorze rozwiązań Visual Studio kliknij prawym przyciskiem myszy Odwołania. Wybierz Przeglądaj, „IronOCR.dll”

Licencje od 749 USD

Key in blue circle

Uzyskaj natychmiast swój darmowy 30-dniowy Klucz Testowy.

Your trial license will be sent to your email address

Brak ograniczeń. 100% dostępności. Bez karty kredytowej.

bullet_checkedNie wymaga karty kredytowej ani tworzenia kontaBrak ograniczeń. 100% dostępności. Bez karty kredytowej.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Otrzymaj swoją Konsultację Bez Zobowiązań
Wypełnij poniższy formularz lub wyślij e-mail na sales@ironsoftware.com
Twoje dane zawsze będą utrzymywane w tajemnicy.
Zaufane przez miliony inżynierów na całym świecie
Logotypy klientów Iron Software
Otrzymaj swój darmowy Klucz Próbny na 30 dni natychmiast.
Nie wymaga karty kredytowej ani tworzenia konta