Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
En el panorama digital actual, el reconocimiento óptico de caracteres (OCR) se ha convertido en indispensable para las empresas que buscan una extracción eficaz de texto de imágenes, PDF y otros documentos. Entre la plétora de capacidades de soluciones de OCR disponibles, Microsoft Azure OCR frente a Google OCR, y IronOCR destacan entre los principales contendientes, cada uno de los cuales ofrece características y capacidades únicas. En este artículo analizamos estos servicios de OCR, sus características y cuál elegir.
Los servicios de OCR son plataformas basadas en la nube que utilizan algoritmos avanzados de aprendizaje automático para extraer texto de imágenes y documentos. Ofrecen toda una serie de funcionalidades, como soporte multilingüe, detección de diseños y reconocimiento de escritura a mano. Azure OCR, Google OCR e IronOCR son servicios de OCR muy utilizados, cada uno con sus puntos fuertes y aplicaciones.
En Azure OCR que forma parte de la suite Microsoft Azure Cognitive Services, ofrece una solución fiable y escalable para tareas de reconocimiento de texto. Es compatible con una amplia gama de idiomas y formatos de documento, lo que la hace adecuada para diversos casos de uso. Microsoft Azure OCR aprovecha los modelos de aprendizaje profundo para lograr una alta precisión en la extracción de texto, lo que permite a las empresas agilizar los flujos de trabajo de procesamiento de documentos de manera eficiente Azure es más como un servicio de visión por ordenador.
using Microsoft.Azure.CognitiveServices.Vision.ComputerVision;
using Microsoft.Azure.CognitiveServices.Vision.ComputerVision.Models;
using System;
class Program
{
static async Task Main(string [] args)
{
// Crear una instancia de ComputerVisionClient
ComputerVisionClient client = new ComputerVisionClient(new ApiKeyServiceClientCredentials("YOUR_API_KEY"))
{
Endpoint = "https://YOUR_REGION.api.cognitive.microsoft.com/"
};
// Especifique la URL de la imagen
string imageUrl = "https://ejemplo.com/imagen.jpg";
// Realizar OCR en la imagen
OcrResult result = await client.RecognizePrintedTextAsync(true, imageUrl);
// Mostrar el texto extraído
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;
class Program
{
static async Task Main(string [] args)
{
// Crear una instancia de ComputerVisionClient
ComputerVisionClient client = new ComputerVisionClient(new ApiKeyServiceClientCredentials("YOUR_API_KEY"))
{
Endpoint = "https://YOUR_REGION.api.cognitive.microsoft.com/"
};
// Especifique la URL de la imagen
string imageUrl = "https://ejemplo.com/imagen.jpg";
// Realizar OCR en la imagen
OcrResult result = await client.RecognizePrintedTextAsync(true, imageUrl);
// Mostrar el texto extraído
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
Friend Class Program
Shared Async Function Main(ByVal args() As String) As Task
' Crear una instancia de ComputerVisionClient
Dim client As New ComputerVisionClient(New ApiKeyServiceClientCredentials("YOUR_API_KEY")) With {.Endpoint = "https://YOUR_REGION.api.cognitive.microsoft.com/"}
' Especifique la URL de la imagen
Dim imageUrl As String = "https://ejemplo.com/imagen.jpg"
' Realizar OCR en la imagen
Dim result As OcrResult = Await client.RecognizePrintedTextAsync(True, imageUrl)
' Mostrar el texto extraído
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
Google OCR como parte del proveedor de servicios Google Cloud, ofrece una potente plataforma para el reconocimiento de textos y el análisis de documentos. Aprovechando los avanzados algoritmos de aprendizaje automático de Google, proporciona capacidades precisas de extracción de texto, con funcionalidades adicionales como el etiquetado de imágenes y la detección de objetos a través de la computación en nube. El OCR de la plataforma en la nube de Google se utiliza ampliamente en diversos sectores para tareas como el procesamiento de facturas, el reconocimiento de formularios y la digitalización de contenidos.
using Google.Cloud.Vision.V1;
using Google.Protobuf;
using System.IO;
using Google.Apis.Auth.OAuth2;
var clientBuilder = new ImageAnnotatorClientBuilder { CredentialsPath = "path-to-credentials.json" };
var client = clientBuilder.Build();
var image = Image.FromFile("path-to-your-image.jpg");
var response = client.DetectText(image);
foreach (var annotation in response)
{
Console.WriteLine(annotation.Description);
}
using Google.Cloud.Vision.V1;
using Google.Protobuf;
using System.IO;
using Google.Apis.Auth.OAuth2;
var clientBuilder = new ImageAnnotatorClientBuilder { CredentialsPath = "path-to-credentials.json" };
var client = clientBuilder.Build();
var image = Image.FromFile("path-to-your-image.jpg");
var response = client.DetectText(image);
foreach (var annotation in response)
{
Console.WriteLine(annotation.Description);
}
Imports Google.Cloud.Vision.V1
Imports Google.Protobuf
Imports System.IO
Imports Google.Apis.Auth.OAuth2
Private clientBuilder = New ImageAnnotatorClientBuilder With {.CredentialsPath = "path-to-credentials.json"}
Private client = clientBuilder.Build()
Private image = System.Drawing.Image.FromFile("path-to-your-image.jpg")
Private response = client.DetectText(image)
For Each annotation In response
Console.WriteLine(annotation.Description)
Next annotation
IronOCR desarrollado por Iron Software, es una biblioteca de OCR versátil para aplicaciones .NET que ofrece una precisión y un rendimiento de OCR líderes en el sector. A diferencia de los servicios de OCR basados en la nube, IronOCR ofrece capacidades de extracción de texto in situ, lo que lo hace adecuado para aplicaciones que requieren privacidad y seguridad de los datos. IronOCR destaca por su precisión, especialmente en escenarios con diseños complejos, texto manuscrito e imágenes ruidosas, lo que lo convierte en la opción preferida de las empresas que buscan una funcionalidad de OCR fiable.
IronOCR se puede instalar utilizando NuGet Package Manager para consola Sólo tiene que ejecutar el siguiente comando.
Abra Visual Studio y cree un nuevo proyecto o abra uno existente.
Install-Package IronOcr
La instalación de IronOCR tardará unos instantes, pero una vez completada podremos pasar al ejemplo de codificación.
using IronOcr;
using System;
class Program
{
static void Main(string [] args)
{
// Especifique la ruta del archivo de imagen
string imagePath = "path-to-your-image.jpg";
// Instanciar el motor OCR IronTesseract
var ocr = new IronTesseract();
// Establecer el idioma para el reconocimiento de texto
ocr.Language = OcrLanguage.English;
// Realizar el reconocimiento de texto en la imagen
var result = ocr.Read(imagePath);
// Mostrar el texto extraído
Console.WriteLine("Extracted Text:");
Console.WriteLine(result.Text);
}
}
using IronOcr;
using System;
class Program
{
static void Main(string [] args)
{
// Especifique la ruta del archivo de imagen
string imagePath = "path-to-your-image.jpg";
// Instanciar el motor OCR IronTesseract
var ocr = new IronTesseract();
// Establecer el idioma para el reconocimiento de texto
ocr.Language = OcrLanguage.English;
// Realizar el reconocimiento de texto en la imagen
var result = ocr.Read(imagePath);
// Mostrar el texto extraído
Console.WriteLine("Extracted Text:");
Console.WriteLine(result.Text);
}
}
Imports IronOcr
Imports System
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Especifique la ruta del archivo de imagen
Dim imagePath As String = "path-to-your-image.jpg"
' Instanciar el motor OCR IronTesseract
Dim ocr = New IronTesseract()
' Establecer el idioma para el reconocimiento de texto
ocr.Language = OcrLanguage.English
' Realizar el reconocimiento de texto en la imagen
Dim result = ocr.Read(imagePath)
' Mostrar el texto extraído
Console.WriteLine("Extracted Text:")
Console.WriteLine(result.Text)
End Sub
End Class
De todas las herramientas de OCR, Azure OCR, Google Vision API y IronOCR son conocidas como potentes soluciones de OCR que ofrecen una gran precisión y rendimiento para tareas de extracción de texto. Aunque Azure OCR y Google OCR ofrecen servicios de OCR basados en la nube con una infraestructura escalable y una amplia compatibilidad lingüística, IronOCR destaca como la solución más precisa.
IronOCR destaca, sobre todo para aplicaciones que requieren extracción de texto in situ y una precisión superior. Al aprovechar IronOCR, las empresas pueden agilizar los flujos de trabajo de procesamiento de documentos, mejorar la precisión de la extracción de datos y obtener información valiosa de los documentos e imágenes escaneados, lo que la convierte en la opción preferida.
Para obtener más información sobre IronOCR y sus servicios, visite la página web **Página de documentación de IronOCR para que empieces a transformar tu forma de tratar las imágenes.
9 productos API .NET para sus documentos de oficina