IRONSOFTWAREHOME

Jak znalezc tekst za pomoca widzenia komputerowego w C#

Curtis Chau
Curtis Chau
Updated: 4 czerwca 2026

IronOCR wykorzystuje widzenie komputerowe OpenCV do automatycznego wykrywania obszarow tekstu na obrazach przed przetwarzaniem OCR. To poprawia dokładność dla zaszumionego, wieloobszarowego lub znieksztalconego tekstu, skupiajac rozpoznawanie Tesseract tylko na zidentyfikowanych obszarach tekstowych, znacznie poprawiajac wyniki ekstrakcji w porownaniu z przetwarzaniem calych obrazów.

Szybki start: Wykryj i przeprowadz OCR na głównym obszarze tekstowym

Ten przykład demonstruje natychmiastowe wyodrębnianie tekstu: załaduj obraz, użyj Wizyjnji Komputerowej IronOCR, aby automatycznie wykryć główny obszar tekstu za pomocą FindTextRegion(), następnie uruchom .Read(...), aby wyodrębnić tekst w jednej linii.

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. 2Skopiuj i uruchom ten fragment kodu.

    using var result = new IronTesseract().Read(new OcrInput().LoadImage("image.png").FindTextRegion());
    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

Jak zainstalować IronOcr.ComputerVision poprzez pakiet NuGet?

Metody OpenCV, ktore realizuja widzenie komputerowe w IronOCR, sa widoczne w zwyklym pakiecie NuGet IronOCR. Aby uzyskać dokładne wskazowki dotyczące instalacji, zapoznaj sie z naszym przewodnikiem instalacji NuGet.

Dlaczego IronOCR wymaga osobnego pakietu widzenia komputerowego?

Wykorzystanie tych metod wymaga instalacji IronOcr.ComputerVision za pomocą NuGet w rozwiązaniu. Zostaniesz poproszony o jego pobranie, jeśli nie jest zainstalowany. Funkcjonalnosc widzenia komputerowego wykorzystuje algorytmy OpenCV, ktore znacznie poprawiaja dokładność wykrywania tekstu, podobnie jak techniki stosowane w naszych funkcjach rozpoznawania tablic rejestracyjnych i skanowania paszportow.

Jaki pakiet specyficzny dla platformy powinienem zainstalować?

Jak zainstalować używając konsoli menedzera pakietow?

Zainstaluj używając Menedzera Pakietów NuGet lub wklej poniższe w Konsoli Menedzera Pakietów:

PM > Install-Package IronOcr.ComputerVision.Windows

To zapewnia niezbędne zestawy do używania widzenia komputerowego IronOCR z naszym plikiem modelu.

Jakie metody widzenia komputerowego sa dostępne w IronOCR?

Przyklady kodu znajduja sie dalej w tym samouczku. Oto ogolny przegląd metod obecnie dostępnych:

MetodaObjasnienie
FindTextRegionWykryj obszary zawierające elementy tekstowe i nakazuj Tesseractowi wyszukiwanie tekstu wyłącznie w obszarze, w którym został on wykryty.
FindMultipleTextRegionsWykryj obszary zawierające elementy tekstowe i podziel stronę na oddzielne obrazy w oparciu o regiony tekstowe.
GetTextRegionsScans the image and returns a list of text regions as List<CropRectangle>.

Jak używać FindTextRegion do wykrywania obszarów tekstowych?

FindTextRegion używa wizji komputerowej do wykrywania regionów zawierających elementy tekstowe na każdej stronie obiektu OcrInput. Ta metoda jest szczególnie przydatna podczas przetwarzania obrazów z rozproszonym tekstem lub gdy trzeba poprawić wydajność, skupiając się wyłącznie na obszarach zawierających tekst.

Jakie jest podstawowe zastosowanie FindTextRegion?

using IronOcr;

var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadImage("/path/file.png");

input.FindTextRegion();
OcrResult result = ocr.Read(input);
string resultText = result.Text;
Uwaga: Ta przeciążona metoda jest obecnie przestarzała w IronOcr 2025.6.x i nie przyjmuje niestandardowych parametrów.

Jak mogę dostosować parametry FindTextRegion?

Wywołaj tę metodę z niestandardowymi parametrami, aby precyzyjnie dostosować wykrywanie tekstu. Te parametry działają podobnie do naszych konfiguracji filtrów obrazów:

using IronOcr;

var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadImage("/path/file.png");

input.FindTextRegion();
OcrResult result = ocr.Read(input);
string resultText = result.Text;

Jak wygląda FindTextRegion w praktyce?

W tym przykładzie używam poniższego obrazka dla metody, która wymaga przycięcia do obszarów zawierających tekst, ale w obrazach wejściowych położenie tekstu może się różnić. Używam FindTextRegion, aby zawęzić skanowanie do obszaru, gdzie wizja komputerowa wykryła tekst. Podejście to jest podobne do technik stosowanych w naszym samouczku dotyczącym obszarów treści i regionów przycięcia. Oto przykładowy obrazek:

Statystyki firmy Iron Software 2022 pokazujące metryki deweloperów i dane o wynikach biznesowych
using IronOcr;
using IronSoftware.Drawing;
using System;
using System.Linq;

var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadImage("wh-words-sign.jpg");

// Find the text region using Computer Vision
Rectangle textCropArea = input.GetPages().First().FindTextRegion();

// For debugging and demonstration purposes, lets see what region it found:
input.StampCropRectangleAndSaveAs(textCropArea, Color.Red, "image_text_area", AnyBitmap.ImageFormat.Png);

// Looks good, so let us apply this region to hasten the read:
var ocrResult = ocr.Read("wh-words-sign.jpg", textCropArea);
Console.WriteLine(ocrResult.Text);

Jak debugować i weryfikować wykrywanie regionów tekstu?

Ten kod ma dwa wyniki. Pierwszy to plik .png zapisany przez StampCropRectangleAndSaveAs używany do debugowania. Technika ta została również omówiona w naszym przewodniku dotyczącym tekstów wyróżnionych służących do debugowania. Widzimy, gdzie IronCV (Computer Vision) wykryło tekst:

Statystyki Iron Software 2022 z czerwonym polem granicznym pokazujące funkcje wykrywania tekstu FindTextRegion

Wykrywanie dokładnie identyfikuje obszar tekstowy. Drugim wynikiem jest sam tekst:

IRONSOFTWARE

50,000+

Developers in our active community

10,777,061 19,313
NuGet downloads Support tickets resolved
50%+ 80%+
Engineering Team growth Support Team growth
$25,000+

Raised with #TEAMSEAS to clean our beaches & waterways
Text

Jak korzystać z funkcji FindMultipleTextRegions w przypadku wielu obszarów tekstowych?

FindMultipleTextRegions zajmuje się wszystkimi stronami obiektu OcrInput i używa wizji komputerowej do wykrywania obszarów zawierających elementy tekstowe, następnie dzieli wejście na osobne obrazy na podstawie regionów tekstowych. Jest to szczególnie przydatne w przypadku przetwarzania dokumentów zawierających wiele odrębnych obszarów tekstowych, podobnie jak w przypadku naszej funkcji odczytu tabeli w dokumencie:

Jakie jest podstawowe zastosowanie funkcji FindMultipleTextRegions?

using IronOcr;

var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadImage("/path/file.png");

input.FindMultipleTextRegions();
OcrResult result = ocr.Read(input);
string resultText = result.Text;
Uwaga: Od IronOCR v2025.6.x, metoda FindMultipleTextRegions nie wspiera już niestandardowych parametrów.

Jak mogę dostosować parametry FindMultipleTextRegions?

Wywołaj tę metodę z niestandardowymi parametrami, aby kontrolować sposób wykrywania i rozdzielania regionów:

using IronOcr;

var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadImage("/path/file.png");

input.FindMultipleTextRegions();
OcrResult result = ocr.Read(input);
string resultText = result.Text;

Jak przetwarzać poszczególne strony za pomocą FindMultipleTextRegions?

Inna przeciążona metoda FindMultipleTextRegions przyjmuje stronę OCR i zwraca listę stron OCR, jedną dla każdego regionu tekstowego na niej. Takie podejście jest pomocne w przypadku złożonych układów, podobnie jak techniki opisane w naszym przewodniku dotyczącym przetwarzania wielostronicowych plików TIFF:

using IronOcr;
using System.Collections.Generic;
using System.Linq;

int pageIndex = 0;
using var input = new OcrInput();
input.LoadImage("/path/file.png");

var selectedPage = input.GetPages().ElementAt(pageIndex);
List<OcrInputPage> textRegionsOnPage = selectedPage.FindMultipleTextRegions();

Jak używać GetTextRegions do uzyskania współrzędnych regionów tekstu?

GetTextRegions zwraca listę obszarów przycięcia, gdzie wykryto tekst na stronie. Ta metoda jest szczególnie przydatna, gdy potrzebujesz współrzędnych obszarów tekstu do dalszego przetwarzania lub podczas wdrażania niestandardowych procesów OCR. Więcej szczegółów na temat pracy z wynikami można znaleźć w dokumentacji klasy OcrResult:

Kiedy należy używać GetTextRegions zamiast FindTextRegion?

/* :path=/static-assets/ocr/content-code-examples/how-to/computer-vision-gettextregions.cs */
using IronOcr;
using IronSoftware.Drawing;
using System;
using System.Collections.Generic;
using System.Linq;

// Create a new IronTesseract object for OCR
var ocr = new IronTesseract();

// Load an image into OcrInput
using var input = new OcrInput();
input.LoadImage("/path/file.png");

// Get the first page from the input
var firstPage = input.GetPages().First();

// Get all text regions detected on this page
List<Rectangle> textRegions = firstPage.GetTextRegions();

// Display information about each detected region
Console.WriteLine($"Found {textRegions.Count} text regions:");
foreach (var region in textRegions)
{
    Console.WriteLine($"Region at X:{region.X}, Y:{region.Y}, Width:{region.Width}, Height:{region.Height}");
}

// You can also process each region individually
foreach (var region in textRegions)
{
    var regionResult = ocr.Read(input, region);
    Console.WriteLine($"Text in region: {regionResult.Text}");
}

Jakie są typowe zastosowania wizji komputerowej w OCR?

Wizja komputerowa znacznie poprawia dokładność OCR w trudnych sytuacjach. Oto praktyczne zastosowania:

  1. Analiza układu dokumentu: automatyczne identyfikowanie i przetwarzanie różnych sekcji złożonych dokumentów. Szczególnie przydatne w przypadku dokumentów zeskanowanych.
  2. Tekst wielokolumnowy: Rozdziel i czytaj kolumny niezależnie w przypadku gazet lub czasopism. Aby uzyskać szybsze wyniki, należy używać przetwarzania wielowątkowego.
  3. Treści mieszane: Należy rozróżniać obszary tekstowe od graficznych w dokumentach. Przydatne podczas przetwarzania zdjęć z osadzonym tekstem.
  4. Optymalizacja wydajności: Skoncentruj przetwarzanie OCR wyłącznie na obszarach zawierających tekst. Zobacz nasz przewodnik po szybkiej konfiguracji OCR.
  5. Kontrola jakości: Sprawdź wykrywanie tekstu przed pełnym przetwarzaniem OCR. Nasza funkcja śledzenia postępów monitoruje każdy etap.

Przy odpowiednich ustawieniach i plikach wejściowych OCR może osiągnąć zdolność czytania zbliżoną do ludzkiej. Aby uzyskać optymalne wyniki, połącz wizję komputerową z naszymi filtrami optymalizacji obrazu, aby osiągnąć najlepszą możliwą dokładność OCR. W przypadku pracy z obrazami o niskiej jakości nasz przewodnik dotyczący poprawiania skanów o niskiej jakości zawiera cenne techniki przetwarzania wstępnego.

Zaawansowane techniki wizji komputerowej

Programiści, którzy chcą przesuwać granice dokładności OCR, powinni rozważyć następujące zaawansowane podejścia:

Często Zadawane Pytania

Co to jest wizja komputerowa w OCR i jak poprawia ekstrakcję tekstu?

Wizja komputerowa w IronOCR używa algorytmów OpenCV do automatycznego wykrywania obszarów tekstu na obrazach przed przetwarzaniem OCR. To znacznie poprawia dokładność dla tekstu z szumami, wieloma obszarami lub zniekształconym tekstem, skupiając rozpoznawanie Tesseract wyłącznie na zidentyfikowanych obszarach tekstu, zamiast przetwarzać całe obrazy.

Jak mogę szybko zaimplementować OCR wizji komputerowej w C#?

IronOCR pozwala na wdrożenie OCR wizji komputerowej w zaledwie jednej linii kodu: użyj IronTesseract z metodą FindTextRegion(), aby automatycznie wykryć główny obszar tekstu, następnie uruchom .Read(), aby natychmiast wyodrębnić tekst.

Dlaczego muszę zainstalować osobny pakiet wizji komputerowej?

IronOCR wymaga osobnego pakietu IronOcr.ComputerVision NuGet, ponieważ funkcjonalność wizji komputerowej wykorzystuje algorytmy OpenCV. Te algorytmy znacznie poprawiają dokładność wykrywania tekstu i są niezbędne do funkcji takich jak rozpoznawanie tablic rejestracyjnych i skanowanie paszportów.

Który specjalistyczny pakiet wizji komputerowej powinienem zainstalować?

IronOCR oferuje pakiety specyficzne dla platform: IronOcr.ComputerVision.Windows dla systemów Windows, IronOcr.ComputerVision.Linux dla dystrybucji Linux i IronOcr.ComputerVision.MacOS dla środowisk macOS.

Jak mogę wykryć wiele obszarów tekstu na obrazie?

IronOCR zapewnia metodę FindMultipleTextRegions do oddzielenia oryginalnego obrazu na wiele obrazów na podstawie wykrytych obszarów tekstu. Możesz również użyć GetTextRegions, aby uzyskać listę obszarów przycięcia, gdzie wykryto tekst.

Czy mogę zweryfikować, które obszary tekstu zostały wykryte przed przetwarzaniem?

Tak, IronOCR obejmuje metodę StampCropRectangleAndSaveAs, która pozwala sprawdzić, które obszary tekstu zostały wykryte przez algorytmy wizji komputerowej przed uruchomieniem rzeczywistego procesu OCR.

What is the use of the GetTextRegions method in IronOCR?

The GetTextRegions method in IronOCR provides a list of detected text regions as coordinates, useful for further processing or implementing custom OCR workflows.

How can IronOCR assist in processing documents with multiple text areas?

IronOCR uses the FindMultipleTextRegions method to detect and process documents with multiple distinct text areas by automatically separating them into individual sections for better OCR performance.

Why might IronOCR require a separate Computer Vision package?

The separate Computer Vision package for IronOCR, available via NuGet, is necessary to utilize advanced text detection features powered by OpenCV algorithms, enhancing OCR accuracy beyond standard capabilities.

What common uses does computer vision in IronOCR support?

Computer vision in IronOCR can be used for document layout analysis, multi-column text recognition, distinguishing mixed content, performance optimizations, and quality control in OCR processes.

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

Odbierz swój BEZPŁATNY

30-dniowy klucz próbny natychmiast.

bullet_checkedNie wymaga karty kredytowej ani tworzenia konta
test_punktorówTestuj w produkcji
bez znaków wodnych
kalendarz_punktorów30 dni w pełni
funkcjonalny produkt
wsparcie_punktorów24/5 wsparcie techniczne
w trakcie okresu próbnego
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