Azure OCR a Google OCR (porównanie funkcji OCR)
W dzisiejszym cyfrowym środowisku technologia rozpoznawania optycznego znaków (OCR) stała się niezbędna dla firm poszukujących wydajnego wyodrębniania tekstu z obrazów, PDF-ów i innych dokumentów. Spośród dostępnych rozwiązań OCR, Microsoft Azure OCR, Google OCR i IronOCR wyróżniają się jako czołowi pretendenci, z każdym oferującym unikalne funkcje i możliwości. W niniejszym artykule omawiamy te usługi OCR, ich cechy i który z nich wybrać.
1. Wprowadzenie do usług OCR
Usługa OCR to platforma oparta na chmurze, wykorzystująca zaawansowane algorytmy uczenia maszynowego do wyodrębniania tekstu z obrazów i dokumentów. Azure OCR, Google OCR i IronOCR to powszechnie używane usługi OCR, każda z własnymi mocnymi stronami i zastosowaniami.
2. Azure OCR
The Azure OCR tool, as part of the Microsoft Azure Cognitive Services suite, offers a reliable and scalable solution for text recognition tasks. Obsługuje szeroki zakres języków i formatów dokumentów, co czyni go odpowiednim do różnych zastosowań. Microsoft Azure OCR wykorzystuje modele głębokiego uczenia do osiągnięcia wysokiej dokładności w wyodrębnianiu tekstu, umożliwiając firmom sprawne przetwarzanie przepływów pracy z dokumentami. Azure jest bardziej jak usługa wizji komputerowej.
2.1 Kluczowe funkcje Azure OCR
- Wsparcie językowe: Microsoft Azure OCR obsługuje ponad 70 języków, w tym skomplikowane znaki, takie jak arabski i chiński.
- Formaty dokumentów: Może przetwarzać różne formaty dokumentów, w tym obrazy, pliki PDF i zeskanowane dokumenty.
- Skalowalność: Azure OCR skaluje się bezproblemowo, obsługując duże ilości żądań wyodrębniania tekstu, co czyni go odpowiednim dla aplikacji na poziomie korporacyjnym.
2.2 Przykład kodu (C#)
using Microsoft.Azure.CognitiveServices.Vision.ComputerVision;
using Microsoft.Azure.CognitiveServices.Vision.ComputerVision.Models;
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
// Create an instance of the ComputerVisionClient
ComputerVisionClient client = new ComputerVisionClient(new ApiKeyServiceClientCredentials("YOUR_API_KEY"))
{
Endpoint = "https://YOUR_REGION.api.cognitive.microsoft.com/"
};
// Specify the image URL
string imageUrl = "https://example.com/image.jpg";
// Perform OCR on the image
OcrResult result = await client.RecognizePrintedTextAsync(true, imageUrl);
// Display the extracted text
foreach (var region in result.Regions)
{
foreach (var line in region.Lines)
{
foreach (var word in line.Words)
{
Console.Write(word.Text + " ");
}
Console.WriteLine();
}
}
}
}
using Microsoft.Azure.CognitiveServices.Vision.ComputerVision;
using Microsoft.Azure.CognitiveServices.Vision.ComputerVision.Models;
using System;
using System.Threading.Tasks;
class Program
{
static async Task Main(string[] args)
{
// Create an instance of the ComputerVisionClient
ComputerVisionClient client = new ComputerVisionClient(new ApiKeyServiceClientCredentials("YOUR_API_KEY"))
{
Endpoint = "https://YOUR_REGION.api.cognitive.microsoft.com/"
};
// Specify the image URL
string imageUrl = "https://example.com/image.jpg";
// Perform OCR on the image
OcrResult result = await client.RecognizePrintedTextAsync(true, imageUrl);
// Display the extracted text
foreach (var region in result.Regions)
{
foreach (var line in region.Lines)
{
foreach (var word in line.Words)
{
Console.Write(word.Text + " ");
}
Console.WriteLine();
}
}
}
}
Imports Microsoft.Azure.CognitiveServices.Vision.ComputerVision
Imports Microsoft.Azure.CognitiveServices.Vision.ComputerVision.Models
Imports System
Imports System.Threading.Tasks
Friend Class Program
Shared Async Function Main(ByVal args() As String) As Task
' Create an instance of the ComputerVisionClient
Dim client As New ComputerVisionClient(New ApiKeyServiceClientCredentials("YOUR_API_KEY")) With {.Endpoint = "https://YOUR_REGION.api.cognitive.microsoft.com/"}
' Specify the image URL
Dim imageUrl As String = "https://example.com/image.jpg"
' Perform OCR on the image
Dim result As OcrResult = Await client.RecognizePrintedTextAsync(True, imageUrl)
' Display the extracted text
For Each region In result.Regions
For Each line In region.Lines
For Each word In line.Words
Console.Write(word.Text & " ")
Next word
Console.WriteLine()
Next line
Next region
End Function
End Class
2.2.1 Wynik

3. Google OCR
Google OCR jako część dostawcy usług Google Cloud, oferuje potężną platformę do rozpoznawania tekstu i analizy dokumentów. Wykorzystując zaawansowane algorytmy uczenia maszynowego Google, zapewnia dokładne możliwości wyodrębniania tekstu z dodatkowymi funkcjami, takimi jak etykietowanie obrazów i wykrywanie przedmiotów za pomocą chmury obliczeniowej. Platforma OCR Google Cloud jest szeroko stosowana w różnych gałęziach przemysłu do zadań, takich jak przetwarzanie faktur, rozpoznawanie formularzy i digitalizacja treści.
3.1 Kluczowe funkcje Google OCR
- Wsparcie wielojęzyczne: Google OCR obsługuje ponad 200 języków i potrafi rozpoznać tekst w wielu skryptach, w tym łacińskim, cyrylickim i znaki Han.
- Analiza obrazów: Oferuje zaawansowane możliwości analizy obrazów, takie jak wykrywanie etykiet, wykrywanie twarzy i rozpoznawanie punktów orientacyjnych.
- Integracja z usługami w chmurze Google: Google OCR bezproblemowo integruje się z innymi usługami API wizji Google Cloud, umożliwiając deweloperom budowanie kompleksowych rozwiązań do zarządzania dokumentami i analizy.
3.2 Przykład kodu (C#)
using System;
using Google.Cloud.Vision.V1;
class Program
{
static void Main(string[] args)
{
// Configure the ImageAnnotator client with credentials
var clientBuilder = new ImageAnnotatorClientBuilder { CredentialsPath = "path-to-credentials.json" };
var client = clientBuilder.Build();
// Load the image from file
var image = Image.FromFile("path-to-your-image.jpg");
// Perform text detection on the image
var response = client.DetectText(image);
// Display the detected text
foreach (var annotation in response)
{
Console.WriteLine(annotation.Description);
}
}
}
using System;
using Google.Cloud.Vision.V1;
class Program
{
static void Main(string[] args)
{
// Configure the ImageAnnotator client with credentials
var clientBuilder = new ImageAnnotatorClientBuilder { CredentialsPath = "path-to-credentials.json" };
var client = clientBuilder.Build();
// Load the image from file
var image = Image.FromFile("path-to-your-image.jpg");
// Perform text detection on the image
var response = client.DetectText(image);
// Display the detected text
foreach (var annotation in response)
{
Console.WriteLine(annotation.Description);
}
}
}
Imports System
Imports Google.Cloud.Vision.V1
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Configure the ImageAnnotator client with credentials
Dim clientBuilder = New ImageAnnotatorClientBuilder With {.CredentialsPath = "path-to-credentials.json"}
Dim client = clientBuilder.Build()
' Load the image from file
Dim image As System.Drawing.Image = System.Drawing.Image.FromFile("path-to-your-image.jpg")
' Perform text detection on the image
Dim response = client.DetectText(image)
' Display the detected text
For Each annotation In response
Console.WriteLine(annotation.Description)
Next annotation
End Sub
End Class
3.2.1 Wynik

4. IronOCR
IronOCR, opracowane przez Iron Software, jest wszechstronną biblioteką OCR dla aplikacji .NET, oferującą wiodącą w branży dokładność i wydajność OCR. W przeciwieństwie do usług OCR opartych na chmurze, IronOCR zapewnia możliwości wyodrębniania tekstu na miejscu, co czyni go odpowiednim dla aplikacji wymagających ochrony danych i bezpieczeństwa. IronOCR wyróżnia się dokładnością, szczególnie w przypadkach złożonych układów i głośnych obrazów, co czyni go preferowanym wyborem dla firm poszukujących niezawodnej funkcjonalności OCR.
4.1 Kluczowe funkcje IronOCR
- Wysoka dokładność: IronOCR dostarcza wyjątkową dokładność w rozpoznawaniu tekstu, zapewniając wiarygodne wyniki we wszystkich typach dokumentów i języków.
- OCR na miejscu: Oferuje możliwości wyodrębniania tekstu na miejscu, pozwalając firmom przetwarzać poufne dokumenty lokalnie bez polegania na zewnętrznych usługach.
- Wszechstronne wsparcie językowe: IronOCR obsługuje ponad 125 języków i zapewnia kompleksowe pakiety językowe dla płynnego rozpoznawania tekstów w różnych językach.
4.2 Installing IronOCR
IronOCR można zainstalować za pomocą Konsoli Menedżera Pakietów NuGet. Wystarczy uruchomić następujące polecenie.
- Otwórz Visual Studio i utwórz nowy projekt lub otwórz istniejący.
- W pasku narzędzi przejdź do Narzędzia i wybierz Menedżera Pakietów NuGet.

- Teraz wybierz Konsolę Menedżera Pakietów z nowo wyświetlonej listy.
- Teraz pojawi się Konsola, uruchom następujące polecenie i naciśnij enter.
Install-Package IronOcr
Zajmie to kilka chwil, aby zainstalować IronOCR, ale po jego zakończeniu możemy przejść do przykładu kodu.
4.3 Przykład kodu (C#)
using IronOcr;
using System;
class Program
{
static void Main(string[] args)
{
// Specify the path to the image file
string imagePath = "path-to-your-image.jpg";
// Instantiate the IronTesseract OCR engine
var ocr = new IronTesseract
{
// Set the language for text recognition
Language = OcrLanguage.English
};
// Perform text recognition on the image
var result = ocr.Read(imagePath);
// Display the extracted text
Console.WriteLine("Extracted Text:");
Console.WriteLine(result.Text);
}
}
using IronOcr;
using System;
class Program
{
static void Main(string[] args)
{
// Specify the path to the image file
string imagePath = "path-to-your-image.jpg";
// Instantiate the IronTesseract OCR engine
var ocr = new IronTesseract
{
// Set the language for text recognition
Language = OcrLanguage.English
};
// Perform text recognition on the image
var result = ocr.Read(imagePath);
// Display the extracted text
Console.WriteLine("Extracted Text:");
Console.WriteLine(result.Text);
}
}
Imports IronOcr
Imports System
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Specify the path to the image file
Dim imagePath As String = "path-to-your-image.jpg"
' Instantiate the IronTesseract OCR engine
Dim ocr = New IronTesseract With {.Language = OcrLanguage.English}
' Perform text recognition on the image
Dim result = ocr.Read(imagePath)
' Display the extracted text
Console.WriteLine("Extracted Text:")
Console.WriteLine(result.Text)
End Sub
End Class
4.3.1 Wynik

5. Ocena porównawcza
5.1 Dokładność i wydajność
- Microsoft Azure OCR i Google OCR dostarczają wysoką dokładność w wyodrębnianiu tekstu, odpowiednią dla szerokiego zakresu zastosowań.
- IronOCR wyróżnia się dokładnością, szczególnie w przypadkach złożonych układów i głośnych obrazów.
5.2 Łatwość integracji
- Rozwiązania chmurowe Microsoft Azure OCR i Google oferują usługi OCR oparte na chmurze, zapewniając łatwą integrację z aplikacjami i usługami w chmurze.
- IronOCR dostarcza funkcjonalność OCR na miejscu i płynną integrację z aplikacjami .NET, z intuicyjnymi interfejsami API i obszerną dokumentacją.
5.3 Skalowalność
- Microsoft Azure OCR i Google OCR skaluje się bezproblemowo, obsługując duże ilości żądań wyodrębniania tekstu, co czyni je odpowiednim dla aplikacji na poziomie korporacyjnym.
- Skalowalność IronOCR zależy od infrastruktury aplikacji, ponieważ działa na miejscu.
6. Podsumowanie
Spośród wszystkich narzędzi OCR, Azure OCR, Google Vision API i IronOCR są znane jako potężne rozwiązania OCR, oferujące wysoką dokładność i wydajność dla zadań wyodrębniania tekstu. Podczas gdy Azure OCR i Google OCR zapewniają usługi OCR w chmurze z infrastrukturą skalowalną i szerokim wsparciem językowym, IronOCR wyróżnia się jako najdokładniejsze rozwiązanie.
IronOCR wyróżnia się, szczególnie dla aplikacji wymagających wyodrębniania tekstu na miejscu i wyższej dokładności. Poprzez wykorzystanie IronOCR, firmy mogą usprawnić przepływy pracy związane z przetwarzaniem dokumentów, zwiększyć dokładność wyodrębniania danych i uzyskać cenne informacje ze zeskanowanych dokumentów i obrazów, co czyni go preferowanym wyborem.
Aby dowiedzieć się więcej o IronOCR i jego usługach, uprzejmie odwiedź stronę Dokumentacji IronOCR aby rozpocząć transformację sposobu, w jaki obsługujesz obrazy.




