OCR z wykorzystaniem wizji komputerowej (przykładowy samouczek)
Optyczne rozpoznawanie znaków (OCR) za pomocą IronOCR
Optyczne rozpoznawanie znaków (OCR) to technologia, która umożliwia maszynom odczytywanie i interpretowanie tekstu z obrazów, dzięki czemu przetwarzanie danych i automatyzacja przebiegają szybciej i wydajniej. W tym artykułe przedstawiono wytyczne dotyczące korzystania z OCR przy użyciu biblioteki IronOCR oraz sposobów, w jakie może ona usprawnić rozpoznawanie tekstu, automatyzując ten proces.
Dłączego OCR jest ważne?
OCR w połączeniu z wizją komputerową to zaawansowana forma optycznego rozpoznawania znaków (OCR), która wykorzystuje możliwości sztucznej inteligencji i algorytmów uczenia maszynowego do dokładniejszego i wydajniejszego rozpoznawania znaków tekstowych na obrazach.
Algorytmy przetwarzania obrazu oparte na wizji komputerowej pozwalają systemom OCR zrozumieć kontekst i układ tekstu na obrazie oraz rozpoznawać znaki na podstawie ich kształtu i struktury. OCR w połączeniu z wizją komputerową pozwala wyodrębniać tekst ze złożonych obrazów zawierających wiele czcionek, stylów i rozmiarów, co czyni go cennym narzędziem w digitalizacji dokumentów, ekstrakcji danych i automatyzacji.
IronOCR: biblioteka OCR dla języka C
IronOCR to popularna biblioteka OCR, która wykorzystuje techniki wizji komputerowej do wyodrębniania tekstu z obrazów i dokumentów. Jest łatwy w użyciu i integruje się z wieloma językami programowania, w tym C# i VB.NET. IronOCR jest dostępny zarówno w wersji lokalnej, jak i w chmurze i oferuje szereg funkcji do przetwarzania i wyodrębniania tekstu z obrazów.
Instalacja IronOCR
Aby zainstalować IronOCR, użyj następującego polecenia w konsoli NuGet Package Manager Console:
Install-Package IronOcr
System OCR z IronOCR
Poniższy obrazek służy do testowania systemu OCR z wykorzystaniem wizji komputerowej przy użyciu IronOCR.
Przykładowy obraz użyty do wykrywania OCR
Metoda FindTextRegion
Metoda FindTextRegion służy do identyfikacji pojedynczego obszaru tekstowego w obrębie obrazu. Metoda przyjmuje kilka opcjonalnych parametrów, w tym Scałe, DilationAmount, Binarize oraz Invert:
Scałedostosowuje rozmiar obrazu w celu lepszego rozpoznawania tekstu.DilationAmountzwiększa grubość tekstu, aby poprawić jego widoczność.Binarizekonwertuje obraz na czarno-biały, poprawiając kontrast.Invertodwraca kolory obrazu, co może być przydatne w przypadku niektórych rodzajów obrazów.
using IronOcr;
using System;
// Initialize the IronTesseract OCR engine
var ocr = new IronTesseract();
// Create an OcrInput object for the image
using (var inputOCR = new OcrInput("test.jpg"))
{
// Identify a text region within the image
inputOCR.FindTextRegion();
// Perform OCR on the identified text region
OcrResult result = ocr.Read(inputOCR);
// Extract and print the recognized text
string resultText = result.Text;
Console.WriteLine(resultText);
}
using IronOcr;
using System;
// Initialize the IronTesseract OCR engine
var ocr = new IronTesseract();
// Create an OcrInput object for the image
using (var inputOCR = new OcrInput("test.jpg"))
{
// Identify a text region within the image
inputOCR.FindTextRegion();
// Perform OCR on the identified text region
OcrResult result = ocr.Read(inputOCR);
// Extract and print the recognized text
string resultText = result.Text;
Console.WriteLine(resultText);
}
Imports IronOcr
Imports System
' Initialize the IronTesseract OCR engine
Private ocr = New IronTesseract()
' Create an OcrInput object for the image
Using inputOCR = New OcrInput("test.jpg")
' Identify a text region within the image
inputOCR.FindTextRegion()
' Perform OCR on the identified text region
Dim result As OcrResult = ocr.Read(inputOCR)
' Extract and print the recognized text
Dim resultText As String = result.Text
Console.WriteLine(resultText)
End Using
Uwaga: Po uruchomieniu kodu zobaczysz, że wyodrębnia on tekst z regionu tekstowego przy użyciu procesu uczenia maszynowego. Wynik pojawia się w konsoli z wysoką dokładnością rozpoznawania tekstu.
Konsola jest wynikiem procesu ekstrakcji tekstu
Metoda FindMultipleTextRegions
Metoda FindMultipleTextRegions jest podobna do FindTextRegion, ale stosuje się ją, gdy na obrazie znajduje się wiele obszarów tekstowych. Zwraca listę obiektów CropRectangle, które definiują położenie każdego regionu tekstowego. Ta metoda jest przydatna, gdy chcesz wyodrębnić tekst z obrazu zawierającego wiele fragmentów tekstu.
using IronOcr;
// Initialize the IronTesseract OCR engine
var ocr = new IronTesseract();
// Create an OcrInput object for the image
using (var input = new OcrInput("test.jpg"))
{
// Identify multiple text regions within the image
input.FindMultipleTextRegions(Scale: 2.0, DilationAmount: -1, Binarize: true, Invert: false);
// Perform OCR on the pre-processed image
OcrResult result = ocr.Read(input);
// Extract and print the recognized text
string resultText = result.Text;
Console.WriteLine(resultText);
}
using IronOcr;
// Initialize the IronTesseract OCR engine
var ocr = new IronTesseract();
// Create an OcrInput object for the image
using (var input = new OcrInput("test.jpg"))
{
// Identify multiple text regions within the image
input.FindMultipleTextRegions(Scale: 2.0, DilationAmount: -1, Binarize: true, Invert: false);
// Perform OCR on the pre-processed image
OcrResult result = ocr.Read(input);
// Extract and print the recognized text
string resultText = result.Text;
Console.WriteLine(resultText);
}
Imports IronOcr
' Initialize the IronTesseract OCR engine
Private ocr = New IronTesseract()
' Create an OcrInput object for the image
Using input = New OcrInput("test.jpg")
' Identify multiple text regions within the image
input.FindMultipleTextRegions(Scale:= 2.0, DilationAmount:= -1, Binarize:= True, Invert:= False)
' Perform OCR on the pre-processed image
Dim result As OcrResult = ocr.Read(input)
' Extract and print the recognized text
Dim resultText As String = result.Text
Console.WriteLine(resultText)
End Using
Wyjaśnienie: Powyższy fragment kodu stanowi przykład wykorzystania biblioteki IronOCR do przeprowadzenia rozpoznawania optycznego (OCR) pliku graficznego. Najpierw importuje bibliotekę IronOCR, a następnie tworzy nową instancję klasy
IronTesseract. Następnie inicjuje obiektOcrInputze ścieżką do pliku obrazu wejściowego i stosuje pewne techniki przetwarzania wstępnego w celu korekcji obrazu przy użyciu metodyFindMultipleTextRegions.
Wynik działania IronOCR
Wyniki działania IronOCR są bardzo dokładne, nawet w przypadku złożonych obrazów zawierających wiele czcionek, rozmiarów i stylów tekstu.
Dokładność OCR ma kluczowe znaczenie podczas wyodrębniania danych z obrazów, ponieważ wyodrębniony tekst jest często wykorzystywany do dalszego przetwarzania, takiego jak analiza danych, ręczne wprowadzanie danych, uczenie maszynowe lub przetwarzanie języka naturalnego. Jeśli wyodrębniony tekst zawiera błędy, może to spowodować problemy na dalszych etapach. Dodatkowo IronOCR umożliwia analizę obiektów wynikowych w celu sprawdzenia poziomów pewności.
Przykłady zastosowań OCR i wizji komputerowej
Technologia optycznego rozpoznawania znaków (OCR) zrewolucjonizowała sposób przetwarzania tekstu drukowanego. Narzędzia OCR stały się nieodzowną częścią przetwarzania dokumentów i pozyskiwania danych. Oto kilka przykładów zastosowań oprogramowania do optycznego rozpoznawania znaków:
Rozpoznawanie tablic rejestracyjnych za pomocą OCR
Rozpoznawanie tablic rejestracyjnych odgrywa znaczącą rolę w automatyzacji zarządzania ruchem, systemów parkingowych oraz działań organów ścigania. Dzięki wdrożeniu technologii OCR w języku C# programiści mogą tworzyć aplikacje, które szybko i dokładnie identyfikują tablice rejestracyjne na podstawie obrazów lub strumieni wideo na żywo. Technologia ta może być wykorzystywana do:
- Monitorowanie wykroczeń drogowych i identyfikacja pojazdów biorących udział w działalności przestępczej.
- Zautomatyzuj systemy parkingowe, ułatwiając zarządzanie wjazdem i wyjazdem oraz usprawniając proces rozliczeniowy.
- Zwiększ środki bezpieczeństwa poprzez śledzenie i monitorowanie ruchu pojazdów w obszarach o ograniczonym dostępie.
Pobieranie tekstu z faktur
Wykorzystanie technologii OCR w języku C# pozwala tworzyć aplikacje OCR, które automatyzują proces pozyskiwania tekstu z faktur i innych dokumentów finansowych. Proces ten może radykalnie ograniczyć błędy związane z ręcznym wprowadzaniem danych oraz usprawnić zadania księgowe. Główne zalety to:
- Zwiększona wydajność dzięki automatyzacji procesu wprowadzania danych.
- Zwiększona dokładność, ponieważ OCR zmniejsza prawdopodobieństwo wystąpienia błędów ludzkich.
- Płynna integracja z oprogramowaniem i systemami księgowymi w celu efektywnego zarządzania danymi.
Generowanie napisów za pomocą OCR
Tworzenie napisów do filmów może być czasochłonne i pracochłonne. Technologia OCR w języku C# może uprościć ten proces poprzez automatyczne wykrywanie i transkrypcję tekstu wyświetlanego na ekranie, umożliwiając programistom:
- Twórz dokładne napisy do filmów, programów telewizyjnych i filmów online.
- Zwiększ dostępność dla osób z wadami słuchu lub posługujących się innymi językami.
- Zwiększ skuteczność działań SEO, dostarczając treści, które można przeszukiwać i indeksować na platformie wideo
Przetwarzanie plików PDF za pomocą OCR
Pliki PDF są powszechnie używane do udostępniania i przechowywania dokumentów, ale wyodrębnianie z nich tekstu może stanowić wyzwanie. Wykorzystanie OCR w C# może pomóc programistom w tworzeniu aplikacji OCR, które bez wysiłku przetwarzają pliki PDF i wyodrębniają ich zawartość, ułatwiając:
- Łatwa konwersja plików PDF do edytowalnych formatów, takich jak WORD, Excel lub zwykły tekst.
- Efektywne pozyskiwanie danych do analizy, indeksowania lub dalszego przetwarzania.
- Poprawiona dostępność dzięki konwersji zeskanowanych plików PDF na tekst z możliwością wyszukiwania i czytania.
Digitalizacja tekstu drukowanego
Oprogramowanie OCR jest szeroko stosowane do digitalizacji tekstu drukowanego z obrazów dokumentów. Narzędzia OCR mogą wyodrębniać tekst ze skanowanych dokumentów cyfrowych, plików PDF i obrazów w różnych formatach. Jest to szczególnie przydatne w zarządzaniu dokumentami, gdzie można łatwo wyszukiwać, przechowywać i udostępniać dokumenty tekstowe.
Pobieranie danych
Technologia OCR jest szeroko stosowana do pozyskiwania danych z dokumentów wejściowych, takich jak faktury, paragony i formularze. Modele OCR potrafią rozpoznawać i wyodrębniać kluczowe pola danych, takie jak nazwiska, adresy, daty i kwoty. Eliminuje to konieczność ręcznego wprowadzania danych i zmniejsza liczbę błędów w przetwarzaniu danych.
Wyszukiwanie obrazów
Technologia OCR jest również wykorzystywana do wyszukiwania obrazów, gdzie można wyszukiwać obrazy na podstawie zawartego w nich tekstu. Jest to szczególnie przydatne w przypadku dużych bibliotek obrazów, gdzie ręczne wyszukiwanie byłoby czasochłonne.
Tłumaczenie
OCR może służyć do wyodrębniania tekstu z dokumentów w jednym języku i tłumaczenia go na inny język. Jest to szczególnie przydatne dla międzynarodowych firm, w których dokumenty muszą być tłumaczone szybko i dokładnie.
Podsumowanie
Optyczne rozpoznawanie znaków (OCR) to technologia, która umożliwia komputerom odczytywanie tekstu z obrazów. OCR wraz z wizją komputerową jest ważne, ponieważ pozwala maszynom rozumieć i interpretować świat wizualny, co jest niezbędne w zastosowaniach takich jak samochody autonomiczne, robotyka i automatyczne przetwarzanie dokumentów.
IronOCR to potężny silnik OCR, który można wykorzystać do zastosowania OCR z wykorzystaniem wizji komputerowej w celu dokładnego rozpoznawania tekstu i wyodrębniania tekstu z obrazów. Zapewnia szereg metod wyszukiwania i wyodrębniania fragmentów tekstu, w tym FindTextRegion, FindMultipleTextRegions oraz GetTextRegions. Każda metoda ma własny zestaw parametrów, które można wykorzystać do precyzyjnego dostosowania procesu OCR i zapewnienia wysokiej dokładności rozpoznawania.
Korzystając z IronOCR, można szybko i dokładnie wyodrębnić zeskanowany tekst z obrazów wejściowych, wykorzystując współbieżność i dostosowaną konfigurację, co pozwala zaoszczędzić czas i wysiłek podczas pracy z dużymi ilościami danych obrazówych. Niezależnie od tego, czy pracujesz ze skanami dokumentów, zdjęciami czy zrzutami ekranu, IronOCR pomoże Ci odczytać zawarty w nich tekst.
IronOCR oferuje bezpłatną wersję próbną dla użytkowników, którzy chcą przetestować oprogramowanie przed podjęciem decyzji o zakupie. Licencja na IronOCR zaczyna się od $799 i obejmuje wsparcie techniczne oraz aktualizacje przez okres jednego roku. Dzięki solidnym funkcjom i rozsądnej cenie IronOCR to świetna opcja dla każdego, kto szuka niezawodnego rozwiązania OCR o wysokiej dokładności.
Często Zadawane Pytania
Jak przekonwertować obraz na tekst za pomocą języka C#?
Możesz użyć funkcji OCR IronOCR do konwersji obrazów na tekst w języku C#. Wykorzystując metody takie jak Read i ReadAsync, możesz przetwarzać obrazy w celu wydajnego wyodrębniania tekstu.
Jakie są zalety korzystania z OCR w połączeniu z wizją komputerową?
Wykorzystanie OCR w połączeniu z wizją komputerową pozwala na dokładniejsze rozpoznawanie tekstu w złożonych układach graficznych, czcionkach i stylach. IronOCR wykorzystuje sztuczną inteligencję i uczenie maszynowe w celu usprawnienia ekstrakcji tekstu i automatyzacji przetwarzania danych.
Jak poprawić dokładność OCR w języku C#?
IronOCR oferuje różne metody poprawy dokładności OCR, w tym dostosowywanie ustawień konfiguracyjnych, wykorzystanie współbieżności oraz sprawdzanie obiektów wynikowych pod kątem poziomów pewności. Pomaga to w precyzyjnym dostrojeniu procesu OCR w celu uzyskania lepszych wyników.
Jak wygląda proces wyodrębniania tekstu z wielu obszarów obrazu?
Aby wyodrębnić tekst z wielu obszarów obrazu za pomocą IronOCR, można użyć metody FindMultipleTextRegions. Metoda ta zwraca listę obiektów CropRectangle wskazujących lokalizację każdego obszaru tekstowego.
Czy technologia OCR może być wykorzystywana do rozpoznawania tablic rejestracyjnych?
Tak, technologia OCR, taka jak ta oferowana przez IronOCR, może być stosowana do rozpoznawania tablic rejestracyjnych. Przetwarzając obrazy tablic rejestracyjnych, IronOCR może wyodrębnić tekst do różnych zastosowań.
Jak zainstalować IronOCR w projekcie C#?
Możesz zainstalować IronOCR w swoim projekcie C# za pomocą konsoli NuGet Package Manager Console. Wprowadź polecenie Install-Package IronOcr, aby dodać bibliotekę IronOCR do swojego projektu.
Czy jest dostępna wersja próbna biblioteki OCR dla języka C#?
Tak, IronOCR oferuje bezpłatną wersję próbną, umożliwiającą użytkownikom przetestowanie możliwości biblioteki IronOCR przed podjęciem decyzji o zakupie licencji.
Jakie opcje licencyjne są dostępne dla biblioteki OCR w języku C#?
IronOCR oferuje różne opcje licencyjne, począwszy od licencji $liteLicense, która obejmuje wsparcie techniczne i aktualizacje przez rok, dostosowane do różnych potrzeb projektowych i budżetów.



