IRONSOFTWAREHOME

Jak korzystać z Custom Language z Tesseract w C#

Curtis Chau
Curtis Chau
Updated: 8 maja 2026

IronOCR umożliwia OCR dla języków niestandardowych, specjalistycznych skryptów lub szyfrów, ładując pliki .traineddata Tesseract przez metodę UseCustomTesseractLanguageFile, pozwalając na wyodrębnienie tekstu z dowolnego modelu językowego trenowanego niestandardowo.

Szybki start: Załaduj niestandardowy język dla OCR
  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. 2Skopiuj i uruchom ten fragment kodu.

    using IronOcr;
    
    // Initialize OCR engine
    var ocr = new IronTesseract();
    
    // Load custom language file
    ocr.UseCustomTesseractLanguageFile("custom.traineddata");
    
    // Process document
    using var input = new OcrInput();
    input.LoadImage("document.png");
    
    // Extract text
    var result = ocr.Read(input);
    Console.WriteLine(result.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
  1. Zainstaluj IronOcr przez Menedżera Pakietów NuGet
  2. Załaduj swoje niestandardowe pliki .traineddata za pomocą UseCustomTesseractLanguageFile
  3. Utwórz OcrInput i załaduj swój dokument
  4. Wywołaj metodę Read(), aby wyodrębnić tekst w swoim niestandardowym języku
  5. Zapisz lub przetwórz wyciągnięty tekst

Optyczne rozpoznawanie znaków (OCR) wymaga czasem obsługi niestandardowych języków, specjalistycznych alfabetów lub szyfrów. Aby odczytać obraz wejściowy zawierający niestandardowy język, silnik Tesseract musi otrzymać dane szkoleniowe dla tego konkretnego języka. Te dane są przechowywane w specjalnym pliku .traineddata.

Chociaż złożony proces tworzenia (szkolenia) tego pliku odbywa się przy użyciu własnych narzędzi Tesseract, IronOCR w pełni obsługuje korzystanie z tych niestandardowych plików językowych. Dzięki temu możesz zastosować swój wyszkolony model do rozszyfrowania i odczytania tekstu z dowolnego źródła. Ten przewodnik pokazuje, jak ładować i używać niestandardowego pliku .traineddata z IronOCR.


Jak wdrożyć niestandardowe OCR językowe za pomocą Tesseract?

Aby użyć języka niestandardowego z Tesseract, najpierw załaduj swój plik .traineddata, wywołując metodę UseCustomTesseractLanguageFile. Jest to niezbędny krok, ponieważ plik ten zawiera wszystkie dane szkoleniowe, które pozwalają Tesseract rozpoznawać unikalne znaki danego języka.

Obsługa niestandardowych języków w IronOCR wykracza poza standardowe języki. Niezależnie od tego, czy pracujesz ze skryptami historycznymi, językami wymyślonymi czy specjalistycznymi systemami notacji, proces jest taki sam. W przypadku projektów wymagających obsługi wielu języków zapoznaj się z naszym przewodnikiem dotyczącym odczytu wielu języków lub dowiedz się więcej o 125 międzynarodowych językach OCR obsługiwanych od razu po uruchomieniu.

Następnie załaduj dokument źródłowy tak samo, jak w przypadku zwykłej operacji OCR. Ładujemy PDF zawierający akapity w języku niestandardowym za pomocą LoadPdf. IronOCR obsługuje różne formaty wejściowe, w tym obrazy (jpg, png, gif, tiff, bmp) i pliki PDF.

Na koniec użyj metody Read, aby wyodrębnić tekst z wejścia. Wynik można następnie wydrukować w konsoli lub zapisać w pliku tekstowym w celach referencyjnych.

Jakie dane szkoleniowe są potrzebne dla języków niestandardowych?

Jako dane wejściowe wykorzystamy ten przykładowy plik PDF, który zawiera tekst w naszym niestandardowym języku.

Będziemy używać tego niestandardowego języka .traindata dla naszego przykładu.

Jakość i kompleksowość twojego materiału treningowego bezpośrednio wpływa na dokładność OCR. Podczas przygotowywania niestandardowych danych szkoleniowych dotyczących języka:

  1. Pokrycie znaków: Upewnij się, że twój materiał szkoleniowy zawiera wszystkie znaki i symbole
  2. Wariacje pisma: Uwzględnij wiele stylów czcionki, jeśli twoje dokumenty różnią się typografią
  3. Jakość obrazu: Szkol z obrazami podobnymi do tych, które będziesz przetwarzać w produkcji
  4. Wzorce kontekstu: Uwzględnij powszechne kombinacje słów i frazy

Aby uzyskać informacje na temat zaawansowanych opcji konfiguracyjnych, zapoznaj się z naszym szczegółowym przewodnikiem konfiguracji Tesseract.

Jak załadować i przetworzyć dokumenty w niestandardowym języku?

using IronOcr;
using System;
using System.IO;

var ocrTesseract = new IronTesseract();

// Load the traineddata file for the custom language
ocrTesseract.UseCustomTesseractLanguageFile("AMGDT.traineddata");

using var ocrInput = new OcrInput();
// Load the PDF containing text in the custom language
ocrInput.LoadPdf("custom.pdf");

var ocrResult = ocrTesseract.Read(ocrInput);

// Print text to the console
Console.WriteLine("--- OCR Result ---");
Console.WriteLine(ocrResult.Text);
Console.WriteLine("------------------");

// Pipe text to a .txt file
string outputFilePath = "ocr_output.txt";
File.WriteAllText(outputFilePath, ocrResult.Text);

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

Powyższy kod ilustruje podstawowy przebieg pracy w przypadku niestandardowego OCR językowego. W przypadku bardziej złożonych scenariuszy warto rozważyć następujące ulepszenia:

Optymalizacja wydajności: W przypadku dużych dokumentów lub przetwarzania wsadowego należy wdrożyć obsługę wielowątkowości i asynchroniczności w celu poprawy wydajności.

Wstępne przetwarzanie obrazów: Jeśli dokumenty źródłowe mają problemy z jakością, przed przetwarzaniem OCR zastosuj filtry korekcji obrazu. Kreator filtrów pomoże Ci znaleźć optymalne ustawienia przetwarzania wstępnego.

OCR specyficzne dla regionu: W przypadku dokumentów o mieszanej treści należy użyć techniki OCR regionu obrazu, aby skupić się na konkretnych obszarach zawierających wybrany język.

Jakich rezultatów mogę oczekiwać od niestandardowego OCR językowego?

Wynik działania OCR Tesseract przedstawiający wyodrębniony tekst dotyczący funkcji gry Apex Legends w interfejsie terminala

Poniższy wynik przedstawia rezultat działania naszego niestandardowego modelu językowego. Dzięki dostarczeniu prawidłowych danych szkoleniowych IronOCR z powodzeniem rozszyfrował tekst, a wynik jest w prostym języku angielskim. Dodatkowo, oto plik txt wygenerowany przez kod.

Dokładność niestandardowego OCR językowego zależy od kilku czynników:

  • Jakość danych treningowych: Lepsze dane szkoleniowe dają lepsze wyniki
  • Spójność dokumentów: Dokumenty pasujące do danych treningowych działają najlepiej
  • Rozdzielczość obrazu: Obrazy o wyższym DPI dają dokładniejsze wyniki — zapoznaj się z naszym przewodnikiem dotyczącym ustawień DPI

Najlepsze praktyki dotyczące wdrażania niestandardowych języków

Wdrażając niestandardowe OCR językowe w środowiskach produkcyjnych, należy wziąć pod uwagę następujące najlepsze praktyki:

Obsługa błędów i walidacja: Zawsze sprawdzaj, czy plik .traineddata istnieje i jest dostępny, zanim spróbujesz go załadować. Należy wdrożyć odpowiednią obsługę błędów na wypadek, gdyby plik językowy był niekompletny lub uszkodzony.

Optymalizacja wydajności: Niestandardowe modele językowe mogą być większe niż standardowe pakiety językowe. Dla optymalnej wydajności:

  • Buforuj załadowany model językowy podczas przetwarzania wielu dokumentów
  • Użyj śledzenia postępu, aby monitorować długo trwające operacje OCR
  • Rozważ wdrożenie czasów zakończenia dla przetwarzania dużych dokumentów

Łączenie z językami standardowymi: Jeśli dokumenty zawierają zarówno języki niestandardowe, jak i standardowe, można załadować wiele języków jednocześnie. Jest to szczególnie przydatne w przypadku dokumentów o zróżnicowanej treści.

Testowanie i walidacja: Należy ustanowić strukturę testową w celu sprawdzenia dokładności OCR:

Zaawansowane przypadki użycia

Niestandardowe OCR językowe otwiera wiele możliwości:

Ochrona dokumentów historycznych: digitalizacja starożytnych rękopisów lub tekstów napisanych w przestarzałych alfabetach
Specjalistyczne systemy notacji: równania matematyczne, notacja muzyczna lub diagramy techniczne — zapoznaj się z naszym przewodnikiem dotyczącym rozwiązywania problemów z równaniami
Aplikacje bezpieczeństwa: Dekodowanie zastrzeżonych systemów kodowania lub szyfrów
Dostępność: Konwersja specjalistycznych systemów pisma brajlowskiego lub dotykowego na standardowy tekst

W przypadku bardziej zaawansowanych scenariuszy zapoznaj się z naszymi obszernymi przykładami kodu, które pokazują różne możliwości IronOCR z wykorzystaniem Tesseract 5.

Często Zadawane Pytania

Jak przeprowadzic OCR na dokumentach z niestandardowymi językami lub skryptami?

IronOCR umożliwia OCR dla niestandardowych językow poprzez zaladowanie plikow Tesseract .traineddata za pomoca metody UseCustomTesseractLanguageFile. Pozwala to na wyciagniecie tekstu z dowolnego modelu języka niestandardowego, w tym specjalistycznych skryptow, tekstow historycznych lub szyfrow.

Jaki format pliku jest potrzebny do rozpoznania języka niestandardowego?

IronOCR wymaga pliku .traineddata zawierajacego dane szkoleniowe dla twojego niestandardowego języka. Ten plik jest zaladowywany za pomoca metody UseCustomTesseractLanguageFile i zawiera wszystkie niezbedne informacje dla Tesseract, aby rozpoznac unikalne znaki twojego języka niestandardowego.

Czy moge uzyc kilku niestandardowych językow w jednej operacji OCR?

Tak, IronOCR obsługuje rozpoznawanie kilku językow. Mozesz zaladowac kilka plikow językow niestandardowych lub polaczyc jezyki niestandardowe z dowolnym z 125 językow miedzynarodowych obslugiwanych domyslnie przez IronOCR.

Jakie typy niestandardowych skryptow moga byc rozpoznane?

IronOCR moze rozpoznawac kazdy niestandardowy skrypt, ktory zostal prawidlowo wyszkolony do pliku .traineddata, w tym skrypty historyczne, języki wymyslone, specjalistyczne systemy notacji i szyfry. Elastycznosc rozciaga sie na kazdy system pisma, ktory moze byc wyszkolony przy uzyciu narzedzi Tesseract.

Jak zaimplementowac OCR dla niestandardowych językow w mojej aplikacji C#?

Aby zaimplementowac OCR dla niestandardowych językow z IronOCR: 1) Zainicjuj instancje IronTesseract, 2) Zaladuj swoj plik .traineddata przy uzyciu UseCustomTesseractLanguageFile, 3) Utworz obiekt OcrInput i zaladuj swoj dokument, 4) Wywolaj metode Read(), aby wyciagnac tekst, 5) Przetworz wyciagniety tekst w razie potrzeby.

What are some best practices for using custom language models in IronOCR?

Best practices for using custom language models in IronOCR include validating the accessibility of `.traineddata` files, optimizing performance by caching the language model, using progress tracking, and combining custom languages with standard languages if needed.

How can IronOCR handle large documents or batch processing?

For large documents or batch processing, IronOCR supports multithreading and async operations to optimize performance. This way, you can handle more data concurrently, improving the processing efficiency.

Can IronOCR be used for historical document preservation?

Yes, IronOCR can be utilized for historical document preservation by digitizing and recognizing texts from ancient manuscripts or obsolete scripts. Providing accurate training data for these scripts will enhance recognition quality.

What should I include in my custom language training data?

Your custom language training data should cover all relevant characters, symbols, font variations, and common word patterns or phrases. This ensures that the OCR engine can accurately recognize and extract text from your input documents.

How do IronOCR's advanced configuration options enhance custom language OCR?

IronOCR's advanced configuration options include image preprocessing filters, region-specific OCR techniques, and progress-tracking methods that help optimize performance and accuracy when processing custom language documents.

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