Przejdź do treści stopki
NARZęDZIA OCR

Biblioteka OCR do rozpoznawania paragonów (lista dla programistów)

W środowisku programistycznym .NET usprawnienie ręcznego wprowadzania danych, zwłaszcza w przypadku paragonów i faktur, od dawna stanowi cel dla firm dążących do wydajności i dokładności. Wraz z pojawieniem się bibliotek OCR (Optical Character Recognition) do skanowania paragonów, dostosowanych do środowisk .NET, cel ten stał się bardziej osiągalny niż kiedykolwiek wcześniej. Te biblioteki API OCR paragonów umożliwiają programistom płynną integrację zaawansowanych funkcji związanych z paragonami z ich aplikacjami .NET, rewolucjonizując procesy zarządzania danymi.

Efektywne wyodrębnianie danych z paragonów można przeprowadzić przy użyciu usług Document Intelligence platformy Microsoft Azure. Więcej informacji można znaleźć w artykułe Wyodrębnianie danych z paragonów — Microsoft Azure Document Intelligence.

Zrozumienie biblioteki API Receipt i OCR w .NET

Paragon to dokument zawierający kluczowe dane z transakcji, często przedstawiony w formacie danych nieustrukturyzowanych, który można przetworzyć za pomocą algorytmów uczenia maszynowego w celu wyodrębnienia danych ustrukturyzowanych do analizy. Obrazy paragonów zawierają cały tekst dokumentu, co ułatwia przekształcanie informacji nieustrukturyzowanych w dane ustrukturyzowane, ale budzi też obawy dotyczące prywatności danych.

Biblioteki API do rozpoznawania optycznego (OCR) paragonów, zaprojektowane dla platformy .NET Framework, oferują kompleksową Suite narzędzi i funkcji do wyodrębniania danych lub istotnych informacji ze zeskanowanych lub sfotografowanych paragonów. Wykorzystując zaawansowane algorytmy uczenia maszynowego i techniki wizji komputerowej, biblioteki te mogą dokładnie identyfikować tekst, liczby i kluczowe punkty danych, takie jak data, nazwa sprzedawcy, łączna kwota i inne.

Najważniejsze cechy i zalety

  1. Dokładność i szybkość: Jedną z głównych zalet bibliotek OCR do skanowania paragonów w środowisku .NET jest ich zdolność do dokładnego wyodrębniania danych z paragonów z dużą precyzją i szybkością. Dzięki automatyzacji procesu wprowadzania danych biblioteki te eliminują konieczność ręcznego wprowadzania lub przepisywania danych, co zmniejsza liczbę błędów i pozwala zaoszczędzić cenny czas.
  2. Elastyczność integracji: Biblioteki OCR do rozpoznawania paragonów w środowisku .NET zostały zaprojektowane tak, aby płynnie integrować się z istniejącymi aplikacjami .NET, ułatwiając programistom włączanie funkcji technologii OCR do ich rozwiązań programowych. Niezależnie od tego, czy chodzi o aplikację księgową, system zarządzania wydatkami, czy niestandardowe oprogramowanie biznesowe, biblioteki te można płynnie zintegrować w celu zwiększenia możliwości zarządzania danymi.
  3. Obsługa języków i walut: Nowoczesne biblioteki OCR paragonów w .NET są przystosowane do obsługi pól paragonów w wielu językach i walutach. Zapewnia to wszechstronność i elastyczność dla firm działających w różnych regionach lub współpracujących z międzynarodowymi klientami i dostawcami.
  4. Dostosowywanie i rozszerzalność: Programiści korzystający z bibliotek API OCR dla paragonów lub faktur w środowisku .NET mają swobodę dostosowywania i rozszerzania funkcjonalności zgodnie ze swoimi konkretnymi wymaganiami. Niezależnie od tego, czy chodzi o dodanie obsługi nowych formatów danych, czy o zwiększenie dokładności rozpoznawania określonych pól, biblioteki te oferują szerokie możliwości dostosowania.
  5. Bezpieczeństwo i zgodność z przepisami: Wiodące biblioteki OCR do obsługi paragonów w środowisku .NET stawiają na pierwszym miejscu bezpieczeństwo danych oraz zgodność z przepisami branżowymi, takimi jak RODO i HIPAA. Solidne protokoły szyfrowania i rygorystyczne środki ochrony danych gwarantują, że poufne informacje pozyskane z paragonów są przetwarzane w sposób bezpieczny i zgodny z wymógąmi regulacyjnymi.

Biblioteki OCR do rozpoznawania paragonów – oprogramowanie open source

1. Tesseract

Tesseract jest jednym z najbardziej znanych silników OCR typu open source, cieszącym się popularnością i aktywną obsługą techniczną. Jego atrakcyjność polega na elastyczności, umożliwiającej dostosowanie poprzez szkolenie na niestandardowych zestawach danych. W przypadku zadań związanych z OCR paragonów, Tesseract może być realną opcją, szczególnie jeśli dysponujesz znaczną ilością danych szkoleniowych dotyczących konkretnie paragonów. Warto jednak zauważyć, że proces szkolenia może być skomplikówany i czasochłonny, wymagając specjalistycznej wiedzy w zakresie adnotacji danych i optymalizacji modeli. Niemniej jednak otwarty charakter Tesseract sprzyja tworzeniu się prężnej społeczności, oferującej obszerną dokumentację i zasoby wsparcia, które pomagają programistom w poruszaniu się po jego złożonościach.

2. EasyOCR

Jako przyjazna dla użytkownika nakładka na Tesseract, EasyOCR stanowi bardziej dostępną opcję dla programistów poszukujących prostoty w integracji funkcji OCR z ich projektami. Dzięki wstępnie wytrenowanym modelom dostępnym dla różnych języków, w tym angielskiego, EasyOCR usprawnia proces wdrażania, dzięki czemu szczególnie nadaje się do podstawowych zadań związanych z OCR paragonów. Ukrywając zawiłości podstawowej funkcjonalności Tesseract, EasyOCR upraszcza proces integracji, pozwalając programistom skupić się na logice aplikacji bez zagłębiania się w niuanse konfiguracji silnika OCR.

Receipt OCR API — biblioteki komercyjne

1. Google Cloud Vision API

Google Cloud Vision API, pozycjonowane jako usługa OCR w chmurze rozliczana zgodnie z rzeczywistym zużyciem, oferuje solidne rozwiązanie dla firm poszukujących wysokiej dokładności i skalowalności w swoich procesach OCR paragonów. Dzięki wstępnie wytrenowanym modelom zoptymalizowanym specjalnie pod kątem danych z paragonów, to API zapewnia imponującą wydajność w zakresie wyodrębniania tekstu z obrazów. Jednak korzystanie z infrastruktury chmurowej wymaga połączenia z Internetem, a koszty użytkowania mogą rosnąć w zależności od liczby żądań OCR. Niemniej jednak wygoda usługi zarządzanej w połączeniu z doświadczeniem Google w zakresie uczenia maszynowego sprawia, że Google Cloud Vision API jest atrakcyjnym wyborem dla firm o zróżnicowanych potrzebach w zakresie OCR, takich jak zarządzanie łańcuchem dostaw.

2. Interfejs API Microsoft Azure Computer Vision

Podobnie jak Google Cloud Vision API, Microsoft Azure Computer Vision API oferuje opartą na chmurze usługę OCR z wstępnie wytrenowanymi modelami dostosowanymi do rozpoznawania paragonów. Dzięki modelowi rozliczeń pay-as-you-go to API zapewnia firmom elastyczność w zarządzaniu kosztami OCR w oparciu o rzeczywiste wykorzystanie. Wykorzystując rozbudowane możliwości sztucznej inteligencji firmy Microsoft, interfejs API Azure Computer Vision zapewnia niezawodną wydajność podczas wyodrębniania istotnych informacji ze zdjęć paragonów. Ponadto płynna integracja z innymi usługami platformy Azure ułatwia tworzenie kompleksowych rozwiązań do przetwarzania dokumentów, zwiększając wydajność przepływu pracy i skalowalność.

3. Silnik ABBYY FineReader

ABBYY FineReader Engine, pozycjonowany jako komercyjny silnik OCR, słynie z wyjątkowej dokładności i wszechstronnych funkcji dostosowanych specjalnie do zadań związanych z przetwarzaniem dokumentów, w tym OCR paragonów. Chociaż może to wiązać się z koniecznością zakupu licencji komercyjnej, ABBYY FineReader Engine oferuje niezrównaną wydajność i niezawodność, co czyni go preferowanym wyborem dla firm o rygorystycznych wymaganiach dotyczących OCR. Jednak koszty związane z ABBYY FineReader Engine mogą stanowić barierę dla mniejszych projektów, co wymaga starannego rozważenia ograniczeń budżetowych.

4. AnyOCR

AnyOCR to wszechstronna biblioteka OCR, która zapewnia wysoką dokładność w przypadku różnych typów dokumentów, w tym paragonów. Dzięki opcjom wdrożenia zarówno lokalnego, jak i w chmurze, AnyOCR zapewnia firmom elastyczność w wyborze modelu wdrożenia, który najlepiej odpowiada ich wymaganiom. Chociaż może to wymagać licencji komercyjnej, AnyOCR zapewnia stałą wydajność i niezawodność w różnych zastosowaniach. Obsługa paragonów w połączeniu z możliwością dostosowania do różnych formatów dokumentów sprawia, że AnyOCR jest kompleksowym rozwiązaniem OCR dla firm poszukujących dokładności i wszechstronności w procesach przetwarzania dokumentów.

Wdrożenie i integracja

Wdrożenie biblioteki OCR w środowisku .NET zazwyczaj wiąże się z integracją interfejsów API lub zestawów SDK biblioteki z istniejącą architekturą aplikacji. Programiści mogą korzystać z obszernej dokumentacji, przykładowych fragmentów kodu oraz wsparcia technicznego, aby usprawnić proces integracji i zoptymalizować funkcjonalność OCR w swoich aplikacjach w celu pozyskiwania dokładnych danych.

Jednym z przykładów biblioteki OCR do rozpoznawania paragonów w .NET jest biblioteka Tesseract, która jest silnikiem OCR typu open source utrzymywanym przez Google. Tesseract zapewnia solidne możliwości OCR i obsługuje wiele języków. Oto prosty przykład wykorzystania OCR Tesseract w aplikacji .NET:

Najpierw należy zainstalować pakiet opakowujący Tesseract.NET za pomocą menedżera pakietów NuGet:

Install-Package Tesseract

Biblioteka OCR do rozpoznawania paragonów (lista dla programistów): Rysunek 1 – Instalacja Tesseract

Będziemy również musieli pobrać dane szkoleniowe specyficzne dla danego języka z następującego repozytorium: https://github.com/tesseract-ocr/tessdata/. Umieść ten folder tessdata w dowolnym katalogu i upewnij się, że odwołujesz się do niego poprawnie.

Poniższy obrazek zostanie wykorzystany w celach demonstracyjnych:

Biblioteka OCR paragonów (lista dla programistów): Rysunek 2 – Wprowadzanie paragonów

Następnie można użyć poniższego fragmentu kodu, aby przeprowadzić OCR na obrazie paragonu:

using System;
using Tesseract;

namespace ReceiptOCR
{
    class Program
    {
        static void Main(string[] args)
        {
            // Path to the image file
            string imagePath = "path/to/your/receipt/image.jpg";

            // Initialize Tesseract engine
            using (var engine = new TesseractEngine(@"./tessdata", "eng", EngineMode.Default))
            {
                using (var img = Pix.LoadFromFile(imagePath))
                {
                    // Set the image for OCR
                    using (var page = engine.Process(img))
                    {
                        // Get the text recognized by Tesseract
                        string recognizedText = page.GetText();

                        // Output the recognized text
                        Console.WriteLine("Recognized Text:");
                        Console.WriteLine(recognizedText);
                    }
                }
            }
        }
    }
}
using System;
using Tesseract;

namespace ReceiptOCR
{
    class Program
    {
        static void Main(string[] args)
        {
            // Path to the image file
            string imagePath = "path/to/your/receipt/image.jpg";

            // Initialize Tesseract engine
            using (var engine = new TesseractEngine(@"./tessdata", "eng", EngineMode.Default))
            {
                using (var img = Pix.LoadFromFile(imagePath))
                {
                    // Set the image for OCR
                    using (var page = engine.Process(img))
                    {
                        // Get the text recognized by Tesseract
                        string recognizedText = page.GetText();

                        // Output the recognized text
                        Console.WriteLine("Recognized Text:");
                        Console.WriteLine(recognizedText);
                    }
                }
            }
        }
    }
}
Imports System
Imports Tesseract

Namespace ReceiptOCR
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Path to the image file
			Dim imagePath As String = "path/to/your/receipt/image.jpg"

			' Initialize Tesseract engine
			Using engine = New TesseractEngine("./tessdata", "eng", EngineMode.Default)
				Using img = Pix.LoadFromFile(imagePath)
					' Set the image for OCR
					Using page = engine.Process(img)
						' Get the text recognized by Tesseract
						Dim recognizedText As String = page.GetText()

						' Output the recognized text
						Console.WriteLine("Recognized Text:")
						Console.WriteLine(recognizedText)
					End Using
				End Using
			End Using
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

W tym kodzie:

  • Zastąp "path/to/your/receipt/image.jpg" rzeczywistą ścieżką do pliku obrazu paragonu.
  • TesseractEngine jest inicjowany z językiem (w tym przypadku "eng" dla języka angielskiego) oraz ścieżką do katalogu tessdata, w którym zostały pobrane pliki danych językowych Tesseract.
  • Pix.LoadFromFile(imagePath) ładuje obraz z podanej ścieżki pliku.
  • engine.Process(img) wykonuje OCR na obrazie.
  • page.GetText() pobiera rozpoznany tekst z wyniku OCR.

Oto wynik działania powyższego kodu:

Biblioteka OCR do rozpoznawania paragonów (lista dla programistów): Rysunek 3 – Wynik OCR

Ten przykład pokazuje podstawowe zastosowanie OCR Tesseract w aplikacji .NET do wyodrębniania całego tekstu dokumentu z obrazu paragonu. W zależności od wymagań może być konieczne dalsze przetwarzanie rozpoznanego tekstu w celu wyodrębnienia określonych pól paragonu, takich jak data, nazwa sprzedawcy i kwota całkowita.

Najlepsza biblioteka OCR do rozpoznawania paragonów: biblioteka IronOCR – biblioteka OCR dla języka C#

IronOCR: krótki przegląd

IronOCR to kompleksowa biblioteka OCR zaprojektowana specjalnie dla programistów .NET, oferująca zaawansowane możliwości wyodrębniania tekstu i danych z obrazów oraz dokumentów PDF. Opracowana przez Iron Software biblioteka wykorzystuje najnowsze algorytmy uczenia maszynowego i techniki wizji komputerowej, aby zapewnić niezrównaną dokładność i wydajność w zadaniach OCR.

Biblioteka IronOCR do rozpoznawania paragonów (lista dla programistów): Rysunek 4 — IronOCR

Najważniejsze cechy i zalety

IronOCR zawiera wszystkie kluczowe funkcje, które musi posiadać API do OCR paragonów. Oto kluczowe funkcje i zalety IronOCR:

  1. Dokładność i niezawodność: IronOCR wykorzystuje najnowocześniejsze algorytmy OCR, które zapewniają wysoką dokładność rozpoznawania tekstu z paragonów i faktur. Niezależnie od tego, czy mamy do czynienia z drukowanym tekstem, zniekształconymi obrazami, czy różnymi czcionkami i językami, IronOCR konsekwentnie zapewnia niezawodne wyniki, minimalizując błędy podczas ekstrakcji danych.
  2. Wszechstronność i elastyczność: IronOCR obsługuje szeroki zakres formatów obrazów, w tym JPEG, PNG, TIFF i PDF, dzięki czemu jest wszechstronnym narzędziem do przetwarzania paragonów w różnych typach plików. Ponadto oferuje obsługę wielu języków, umożliwiając firmom płynne przetwarzanie paragonów z różnych regionów i w różnych językach.
  3. Łatwa integracja z .NET: Jako natywna biblioteka .NET, IronOCR płynnie integruje się z istniejącymi aplikacjami .NET, co sprawia, że wdrożenie jest proste dla programistów. Niezależnie od tego, czy tworzą aplikacje internetowe, oprogramowanie desktopowe czy rozwiązania w chmurze, programiści mogą bez trudu wykorzystywać interfejsy API i zestawy SDK IronOCR w swoich projektach .NET.
  4. Ulepszone pozyskiwanie danych: IronOCR wykracza poza proste rozpoznawanie tekstu, oferując zaawansowane możliwości pozyskiwania danych. Programiści mogą definiować własne obszary zainteresowania na paragonach, aby wyodrębnić konkretne pola, takie jak data, nazwa sprzedawcy, kwota całkowita i pozycje. Ta szczegółowa kontrola zapewnia precyzyjne pozyskiwanie danych dostosowane do wymagań biznesowych.
  5. Skalowalność i wydajność: IronOCR został zaprojektowany jako rozwiązanie skalowalne, zdolne do wydajnego przetwarzania dużych ilości paragonów i faktur. Niezależnie od tego, czy przetwarzasz partie dokumentów w czasie rzeczywistym, czy asynchronicznie, IronOCR zapewnia optymalną wydajność bez utraty dokładności, dzięki czemu nadaje się do zastosowań na poziomie Enterprise.

Proces instalacji

Oto kroki, które należy wykonać, aby zainstalować IronOCR przy użyciu menedżera pakietów NuGet dla swoich rozwiązań:

  1. Otwórz program Visual Studio i otwórz swoje rozwiązanie.
  2. W oknie Solution Explorer kliknij prawym przyciskiem myszy na swoje rozwiązanie (najwyższy węzeł) i wybierz opcję "Manage NuGet Packages for Solution...".
  3. W oknie "NuGet Package Manager for Solution" upewnij się, że po lewej stronie zaznaczona jest zakładka "Browse".
  4. W polu wyszukiwania w prawym górnym rogu wpisz "IronOCR" i naciśnij Enter.

Biblioteka OCR do rozpoznawania paragonów (lista dla programistów): Rysunek 5 — Instalacja IronOCR

  1. Kliknij przycisk "Zainstaluj", aby rozpocząć proces instalacji.
  2. Po zakończeniu instalacji powinien pojawić się komunikat informujący o pomyślnym zakończeniu instalacji.

Przykład implementacji z wykorzystaniem IronOCR – skanowanie paragonów

Oto prosty przykład ilustrujący pełny proces wyodrębniania paragonu za pomocą IronOCR i efektywnego wyświetlania danych z paragonu.

using IronOcr;

namespace ReceiptOCR
{
    class Program
    {
        static void Main(string[] args)
        {
            // Perform OCR on the receipt image
            string text = new IronTesseract().Read(@"assets\receipt.jpg").Text;

            // Output the recognized text
            Console.WriteLine("Recognized Text:");
            Console.WriteLine(text);
        }
    }
}
using IronOcr;

namespace ReceiptOCR
{
    class Program
    {
        static void Main(string[] args)
        {
            // Perform OCR on the receipt image
            string text = new IronTesseract().Read(@"assets\receipt.jpg").Text;

            // Output the recognized text
            Console.WriteLine("Recognized Text:");
            Console.WriteLine(text);
        }
    }
}
Imports IronOcr

Namespace ReceiptOCR
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Perform OCR on the receipt image
			Dim text As String = (New IronTesseract()).Read("assets\receipt.jpg").Text

			' Output the recognized text
			Console.WriteLine("Recognized Text:")
			Console.WriteLine(text)
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Szczegółowe wskazówki dotyczące ekstrakcji danych z paragonów za pomocą OCR przy użyciu IronOCR można znaleźć na stronie: Korzystanie z IronOCR do ekstrakcji danych z paragonów. Oto wynik działania powyższego przykładowego kodu:

Biblioteka OCR paragonów (lista dla programistów): Rysunek 6 – Wynik OCR paragonów

Aby uzyskać bardziej szczegółowe informacje i zapoznać się z dodatkowymi funkcjami OCR, odwiedź stronę z dokumentacją i przykładami kodu.

Wnioski

Biblioteki OCR do rozpoznawania paragonów dostosowane do platformy .NET stanowią potężne rozwiązanie dla firm pragnących usprawnić zarządzanie danymi i zoptymalizować procesy administracyjne. Dzięki automatyzacji pozyskiwania informacji z paragonów i faktur biblioteki te umożliwiają programistom tworzenie solidnych, wydajnych aplikacji, które zapewniają najwyższą dokładność i produktywność. Dzięki elastyczności umożliwiającej płynną integrację z istniejącymi środowiskami .NET oraz obsłudze wielu języków i walut, biblioteki Receipt OCR w .NET mają szansę zrewolucjonizować procesy wprowadzania danych i zapewnić doskonałość operacyjną w firmach każdej wielkości.

IronOCR staje się najlepszym wyborem dla firm poszukujących niezawodnej i wydajnej biblioteki IronOCR do rozpoznawania paragonów w środowiskach .NET. Dzięki niezrównanej dokładności, wszechstronności i płynnej integracji z aplikacjami .NET, IronOCR umożliwia programistom usprawnienie procesów wprowadzania danych, zwiększenie produktywności i osiągnięcie doskonałości operacyjnej. Niezależnie od tego, czy chodzi o automatyzację przetwarzania paragonów w systemach księgowych, platformach do zarządzania wydatkami, czy niestandardowych aplikacjach biznesowych, IronOCR okazuje się cennym atutem w optymalizacji procesów zarządzania danymi i osiąganiu większej wydajności w nowoczesnych przedsiębiorstwach.

Wybierając IronOCR, firmy mogą w pełni wykorzystać potencjał technologii OCR i przyspieszyć swoją transformację cyfrową, zmierzając ku sukcesowi. W tym celu IronOCR oferuje bezpłatną wersję próbną, aby przetestować pełną funkcjonalność. Its Lite License begins at $799 without any recurring fees. Pobierz bibliotekę ze strony pobierania i wypróbuj ją.

Kannaopat Udonpant
Inżynier oprogramowania
Zanim stał się inżynierem oprogramowania, Kannapat ukończył doktorat z zasobów środowiskowych na Uniwersytecie Hokkaido w Japonii. W czasie studiowania, Kannapat również został członkiem Laboratorium Robotyki Pojazdów, które jest częścią Wydziału Inżynierii Bioprodukcji. W 2022 roku wykorzystał swoje umiejętności w ...
Czytaj więcej

Zespol wsparcia Iron

Jestesmy online 24 godziny, 5 dni w tygodniu.
Czat
Email
Zadzwon do mnie