Saltar al pie de página
COMPARAR CON OTROS COMPONENTES

Comparación entre IronOCR y AWS Textract OCR

¿Qué es OCR?

El procedimiento utilizado para transformar una imagen de texto en un formato de texto legible por máquina se conoce como Reconocimiento Óptico de Caracteres (OCR). Por ejemplo, si escaneas un formulario, facturas o un recibo, tu computadora guarda el escaneo como un archivo de imagen. Los datos en el archivo de imagen no pueden ser editados, buscados ni contados usando un editor de texto. Sin embargo, puedes usar soluciones de OCR para convertir el archivo de imagen en un documento de texto con su contenido almacenado como datos de texto.

En esta era moderna, la mayoría de los flujos de trabajo empresariales involucran recibir información de medios impresos. Diferentes documentos como formularios en papel, facturas, documentos legales escaneados, extracción de tablas y texto impreso o contratos son parte de los procesos empresariales. Además, digitalizar el contenido de dicha documentación crea imágenes con el texto oculto dentro de ella. El texto en imágenes no puede ser procesado por herramientas de procesamiento de texto de la misma manera que los documentos de texto. La tecnología de OCR resuelve el problema al convertir imágenes de texto en datos de texto que pueden ser analizados por otros software de negocios.

¿Cómo funciona el OCR?

El motor de OCR funciona usando los siguientes pasos:

Adquisición de imágenes

En este proceso, un escáner lee documentos y los convierte a datos binarios. El software de OCR identifica la imagen escaneada y clasifica las áreas claras como fondo y las áreas oscuras como texto.

Preprocesamiento

El software de OCR primero limpia la imagen y elimina errores para preparar sus datos para la lectura.

Reconocimiento de texto

Los dos tipos principales de algoritmos de OCR para el reconocimiento de texto son la coincidencia de patrones y la extracción de características.

Coincidencia de patrones

Una imagen de carácter, o glifo, se aísla durante el proceso de coincidencia de patrones y se compara con un glifo registrado previamente.

Extracción de características

A través del proceso de extracción de características, los glifos se dividen en características como líneas, bucles cerrados, dirección de línea y uniones de línea.

Posprocesamiento

La tecnología transforma los datos de texto recuperados en un archivo digital tras el análisis. Algunos sistemas de OCR pueden crear documentos PDF anotados que incluyen tanto las versiones anteriores como posteriores del documento escaneado.

Este artículo discutirá la comparación entre dos de las aplicaciones y bibliotecas de documentos más prevalentes para OCR:

  • IronOCR
  • AWS OCR Textract

Biblioteca IronOCR

IronOCR es una biblioteca C# .NET que ofrece servicios para escanear, buscar, leer imágenes y PDFs. Viene con más de 125 paquetes de idiomas globales. El resultado se logra como texto, datos estructurados o PDFs que se pueden buscar. Soporta versiones de .NET como 6, 5, Core, Standard y Framework.

IronOCR es único en su capacidad para detectar y extraer datos automáticamente de imágenes y documentos escaneados imperfectamente. La Clase 'IronTesseract' tiene la API más sencilla. Proporciona la construcción más avanzada de Tesseract conocida en cualquier lugar, en cualquier plataforma, con mayor velocidad, precisión y un DLL y API nativos.

IronOCR también puede escanear códigos de barras y códigos QR de todos los formatos de imagen, y lee texto y realiza escaneo de PDFs utilizando el último motor Tesseract 5.

Características

  • Está hecho puramente para aplicaciones .NET.
  • Puede soportar 125 idiomas diferentes. IronOCR soporta árabe, chino, inglés, finlandés, francés, alemán, japonés y muchos otros idiomas.
  • Puede corregir la posición de una imagen inclinada y eliminar el ruido de una imagen para un resultado preciso.
  • Desempeña excepcionalmente bien en imágenes de baja resolución con bajo DPI.
  • Puede leer múltiples tipos de códigos QR y códigos de barras.
  • También soporta los formatos Gif y Tiff.
  • Permite muchos hilos a la vez. Es una característica destacada que no está presente en otras bibliotecas de OCR. Hace que los procesos sean más suaves.
  • Puede realizar fácilmente OCR en archivos PDF y exportar documentos PDF que se puedan buscar utilizando OCR.

Ahora, echemos un vistazo a AWS OCR.

Extracto de texto de AWS OCR

AWS Textract de Amazon es un servicio de aprendizaje automático (ML) que extrae automáticamente texto y datos de documentos escaneados. Va más allá del simple reconocimiento óptico de caracteres (OCR) para identificar, entender y extraer datos de formularios y tablas utilizando tecnología de aprendizaje profundo.

AWS OCR Textract utiliza aprendizaje automático para leer y procesar cualquier tipo de documento, extrayendo con precisión texto, datos tabulares y otros datos sin esfuerzo manual. En lugar de tomar horas o días para extraer los datos, Textract puede hacerlo rápidamente. Además, puedes añadir revisiones humanas con Amazon Augmented Artificial Intelligence (AI) para proporcionar supervisión de tus modelos y verificar datos sensibles.

Características

  • Detecta texto en una variedad de documentos, incluidos informes financieros, registros médicos, tablas y formularios fiscales.
  • Extrae texto, formularios y datos de tablas de documentos con datos estructurados, utilizando la API de Análisis de Documentos.
  • Especifica y extrae información de documentos utilizando la función de Consultas dentro de la API Analizar Documento.
  • Procesa facturas y recibos con la API Analizar Gastos.
  • Procesa documentos de identificación como licencias y pasaportes de EE.UU. usando la API Analizar ID. - Análisis de documentos escalable que acelera decisiones.
    1. Creando Proyecto en Visual Studio

El resto del artículo es el siguiente:

  1. Instalando IronOCR
  2. Instalando AWS OCR Textract
  3. PDF a Texto
  4. Imagen a Texto
  5. Imagen a Texto
  6. Conclusión
  7. Licenciamiento

5.1. Usando IronOCR

1. Creación de un proyecto de Visual Studio

  • Abre Visual Studio 2022.

  • Crea un nuevo proyecto .NET Core y selecciona Aplicación de Consola.
    Aws Ocr Alternatives 1 related to 1. Creación de un proyecto de Visual Studio

    class="content__image-caption">Aplicación de Consola

Aws Ocr Alternatives 1 related to 1. Creación de un proyecto de Visual Studio

Aplicación de consola

  • Dé un nombre al proyecto. - Usaremos la versión 6.0 más estable del framework .NET. .NET Framework

.NET Framework A continuación, instalaremos las bibliotecas para nuestro uso una por una.

2. Instalando IronOCR

2. Instalación de IronOCR

La biblioteca IronOCR se puede descargar e instalar de cuatro maneras. Estos son los siguientes:

  1. Descarga directa vía el sitio web de NuGet.
  2. Descarga directa vía la página web de IronOCR.
  3. Usando la Línea de Comandos en Visual Studio.

    2.1. Usando el Administrador de NuGet de Visual Studio

2.1. Uso del Administrador NuGet de Visual Studio

  1. Expande Herramientas o haz clic derecho en el explorador de soluciones.

  2. Extiende el Administrador de Paquetes NuGet.
  3. Haz clic en Administrar Paquetes NuGet para Soluciones o en el explorador de soluciones.
    ![Administrar Paquete NuGet](/static-assets/ocr/blog/aws-ocr-alternatives/aws-ocr-alternatives-3.webp)
Manage NuGet Package

Administrar paquetes NuGet

Marca la casilla del proyecto en el lado derecho y haz clic en Instalar. Marca la casilla del proyecto en el lado derecho y haz clic en Instalar.

Explorar IronOCR

Explorar IronOCR

2.2. Descarga directa vía el sitio web de NuGet

2.2. Descarga directa desde el sitio web de NuGet

  1. Navega al enlace "https://www.nuget.org/packages/IronOcr/".

  2. Navega al enlace "https://www.nuget.org/packages/IronOcr/".
  3. Haz doble clic en el paquete de descarga.
  4. Recarga la solución y empieza a usarla en el proyecto. Se instalará automáticamente.

2.3. Descarga directa vía la página web de IronOCR

2.3. Descarga directa desde la página web de IronOCR

Los desarrolladores pueden descargar la biblioteca IronOCR directamente desde el sitio web utilizando este enlace.

  1. Haz clic derecho en el proyecto en la ventana de solución.
  2. Luego, haz clic en OK para añadir la referencia.

2.4. Usando la Línea de Comandos en Visual Studio

2.4. Uso de la línea de comandos en Visual Studio

  1. Ingresa la siguiente línea en la pestaña de la consola del administrador de paquetes: El paquete ahora se descargará/instalará en el proyecto actual y está listo para usar.
Install-Package IronOcr
![Consola del Administrador de Paquetes](/static-assets/ocr/blog/aws-ocr-alternatives/aws-ocr-alternatives-4.webp)
Package Manager Console

Aplicación de consola

Install IronOCR

Aplicación de consola

### 2.5. Añadir Espacio de Nombres IronOCR ### 2.5. Adición del espacio de nombres IronOCR Ahora instalemos AWS Textract. ```csharp using IronOcr; ``` ## 3. Instalando AWS Textract OCR ## 3. Instalación de AWS Textract OCR 1. Regístrate en los servicios de AWS. 2. Crea un Usuario IAM. Una vez registrado y creado el usuario IAM, configura las claves de acceso en la consola de AWS para acceder a la API usando C#. Necesitarás: - SecretAccessKey - SecretAccessKey - RegionEndPoint (Tu área de acceso) - Ejemplo: AFSouth1 ### 3.1. Usando el Administrador de Paquetes NuGet ### 3.1. Uso del Administrador de paquetes NuGet
![Administrador de Paquetes NuGet](/static-assets/ocr/blog/aws-ocr-alternatives/aws-ocr-alternatives-6.webp)
Administrador de Paquetes NuGet

Administrador de Paquetes NuGet

- Haz clic en Examinar y busca AWS Textract:
AWS Textract

AWS Textract

### 3.2. Agregar espacios de nombres de AWS OCR ## 4. Archivo PDF a Texto ```csharp using Amazon.Textract; using Amazon.Textract.Model; ``` ## 4. Archivo PDF a texto Echemos un vistazo al código uno por uno. ### 4.1. Usando IronOCR ### 4.1. Uso de IronOCR El siguiente código simple se utiliza para extraer información: El código es simple, limpio y muy fácil de entender y usar. ```csharp var Ocr = new IronTesseract(); using (var input = new OcrInput()) { input.AddPdf("example.pdf", "password"); // We can also select specific PDF page numbers to OCR var Result = Ocr.Read(input); Console.WriteLine(Result.Text); Console.WriteLine($"{Result.Pages.Count()} Pages"); // Read every page of the PDF } ``` #### Archivo PDF de Entrada #### Archivo PDF de entrada
Ejemplo de PDF

Ejemplo de PDF

#### Resultado
Salida de IronOCR

Salida de IronOCR

### 4.2. AWS Textract El siguiente código se usa para leer PDF y se pasa el mismo PDF: El código es un poco complicado, largo y necesita atención al pasar y recuperar objetos. ```csharp public static async void ReturnResult() { AmazonTextractClient client = new AmazonTextractClient("your_access_key_id", "your_secret_access_key", Amazon.RegionEndpoint.AFSouth1); var request = new StartDocumentTextDetectionRequest(); request.DocumentLocation = new DocumentLocation { S3Object = new S3Object { Bucket = "your_bucket_name", Name = "your_bucket_key" } }; var id = await client.StartDocumentTextDetectionAsync(request); var jobId = id.JobId; var response = client.GetDocumentTextDetectionAsync(new GetDocumentTextDetectionRequest{ JobId = jobId }); response.Wait(); if (response.Result.JobStatus.Equals("SUCCEEDED")) { foreach (var block in response.Result.Blocks) { if (block.BlockType == "WORD" || block.BlockType == "PAGE" || block.BlockType == "LINE") { Console.WriteLine(block.Text); } } } } static void Main(String[] args) { ReturnResult(); } ``` Debemos crear un objeto `AmazonTextractClient` con tres parámetros: `AccessKeyId`, `SecretAccessKey` y `Region`. Luego tenemos que iniciar una solicitud usando el método `StartDocumentTextDetectionRequest()`. El objeto de solicitud luego establece la `DocumentLocation` usando el nombre del bucket y la clave. Esta solicitud luego se pasa al método `StartDocumentTextDetectionAsync()`. La solicitud se pasa al método `StartDocumentTextDetectionAsync()`. Como es un método asíncrono, tenemos que usar la palabra clave `await` y hacer que la función `ReturnResult` sea asíncrona. El jobId se pasa a `GetDocumentTextDetectionAsync()` y espera respuesta `SUCCEEDED`. El bucle `foreach` se utiliza para recorrer cada bloque y verificar si es "WORD", "PAGE" o "LINE", luego imprime el reconocimiento de texto. Por último, llama a este método en el método `Main` para el procesamiento del documento. Por último, llama a este método en el método `Main` para el procesamiento de documentos. #### Resultado La salida es bastante similar a IronOCR.
Salida de AWS Textract

Salida de AWS Textract

## 5. Imágenes a texto Ambas bibliotecas proporcionan la facilidad para extraer texto. Aquí utilizaremos archivos png. ### 5.1. Usando IronOCR ### 5.1. Uso de IronOCR El código es casi igual al anterior. Aquí, el método `AddPDF` se reemplaza por `AddImage`. ```csharp var Ocr = new IronTesseract(); using (var Input = new OcrInput()) { Input.AddImage("test-files/redacted-employmentapp.png"); //... you can add any number of images var Result = Ocr.Read(Input); Console.WriteLine(Result.Text); } ``` #### Imagen de entrada
Datos redactados de empleados

Datos redactados de empleados

#### Resultado
![Salida de Imagen](/static-assets/ocr/blog/aws-ocr-alternatives/aws-ocr-alternatives-11.webp)
Salida de imagen

Salida de imagen

### 5.2. Uso de AWS Textract De nuevo, el código es casi similar al anterior. ```csharp public static async void ReturnResult() { AmazonTextractClient client = new AmazonTextractClient("your_access_key_id", "your_secret_access_key", Amazon.RegionEndpoint.AFSouth1); var request = new DetectDocumentTextRequest(); request.Document = new Document { Bytes = new MemoryStream(File.ReadAllBytes(@"test-files/redacted-employmentapp.png")) }; var result = await client.DetectDocumentTextAsync(request); foreach (var block in result.Blocks) { if (block.BlockType == "WORD") { Console.WriteLine(block.Text); } } } static void Main(String[] args) { ReturnResult(); } ``` Este código ayuda a detectar texto en imágenes: Aquí, tenemos que iniciar una solicitud utilizando el método `DetectDocumentTextRequest()`. Esta solicitud luego se pasa al método `DetectDocumentTextAsync()`. Esta solicitud se pasa luego al método `DetectDocumentTextAsync()`. Como es un método asíncrono, tenemos que usar la palabra clave `await` y hacer que la función `ReturnResult` sea asíncrona. De nuevo, el código es casi igual al anterior. El bucle `foreach` se utiliza para iterar a través de cada bloque y verificar si es "WORD", luego imprimir el reconocimiento de texto. Por último, llama a este método en el método `Main` para el procesamiento de documentos. ## 6. Código de barras y código QR a Texto ## 6. Código de barras y código QR a texto Las instancias de la clase `OcrResult.OcrBarcode` brindan al desarrollador información detallada sobre cada código de barras escaneado. Las instancias de la clase `OcrResult.OcrBarcode` proporcionan al desarrollador información detallada sobre cada código de barras escaneado. El código para IronOCR se proporciona a continuación: El código es autoexplicativo y fácil de entender. ```csharp var Ocr = new IronTesseract(); Ocr.Configuration.ReadBarCodes = true; using (var input = new OcrInput()) { input.AddImage("test-files/Barcode.png"); var Result = Ocr.Read(input); foreach (var Barcode in Result.Barcodes) { Console.WriteLine(Barcode.Value); // type and location properties also exposed } } ``` **IronOCR** es una biblioteca que proporciona una licencia de desarrollador de forma gratuita. ## 7. Licencias **IronOCR** es una biblioteca que proporciona una licencia para desarrolladores de forma gratuita. el paquete Lite comienza en $799 sin tarifas ocultas. el paquete Lite comienza en $799 sin tarifas ocultas. La redistribución de productos SaaS y OEM también es posible. Todas las licencias vienen con una garantía de devolución de dinero de 30 días, un año de soporte y actualizaciones de software, validez en desarrollo/pruebas/producción y una licencia perpetua (compra única).
![Plan de Precios de IronOCR](/static-assets/ocr/blog/aws-ocr-alternatives/aws-ocr-alternatives-12.webp)
Plan de precios de IronOCR

Plan de precios de IronOCR

Amazon Textract usa tecnología de aprendizaje profundo de Amazon para analizar miles de millones de imágenes y videos.
Servicio SAAS

Servicio SAAS

La **AWS Textract API** proporciona a los desarrolladores el servicio de AWS Free Tier. Puedes comenzar con Amazon Textract de forma gratuita. ![Lista de Precios](/static-assets/ocr/blog/aws-ocr-alternatives/aws-ocr-alternatives-16.webp)
![Lista de Precios](/static-assets/ocr/blog/aws-ocr-alternatives/aws-ocr-alternatives-14.webp)
Lista de precios

Lista de precios

You can have a look at the pricing details from this link. IronOCR proporciona a los desarrolladores C# la API de Tesseract [más avanzada](/csharp/ocr/) que conocemos, en cualquier plataforma. ## 8. Conclusión IronOCR se puede implementar en Windows, Linux, Mac, Azure, AWS, Lambda y soporta proyectos *.NET Framework* así como *.NET Standard* y *.NET Core*. IronOCR se puede implementar en Windows, Linux, Mac, Azure, AWS, Lambda y es compatible con proyectos de *.NET Framework*, así como *.NET Standard* y *.NET Core*. El código es similar al anterior. El siguiente código se usa para leer PDF y se pasa el mismo PDF: No necesitas experiencia en aprendizaje automático para usarlo. Amazon Textract incluye APIs simples y fáciles de usar que pueden analizar archivos de imagen y archivos PDF. Amazon Textract siempre está aprendiendo de nuevos datos, y Amazon está continuamente añadiendo nuevas características al servicio. Las licencias de IronOCR se basan en desarrolladores, lo que significa que siempre debes comprar una licencia basada en el número de desarrolladores que usarán el producto. Las licencias de AWS Textract se basan en el número de páginas del documento para extraer información y analizar los datos. Las licencias son mensuales y los precios suben mucho para un gran número de páginas en comparación con la licencia de IronOCR. Además, la licencia de IronOCR es una compra única y se puede usar por vida y soporta la distribución OME y SaaS. En la comparación general, tanto IronOCR como AWS OCR tienen capacidades de aprendizaje automático para detectar texto de un documento o imagen. IronOCR tiene una pequeña ventaja sobre AWS OCR ya que es rápido y ahorra tiempo. El código es simple y es directo al detectar texto de documentos. La tarea se logra en pocos métodos. Por otro lado, AWS Textract usa muchos métodos para lograr la misma tarea. Esto incrementa la respuesta del servidor y, a veces, consume tiempo. Esto aumenta la respuesta del servidor y a veces puede ser lento. La velocidad es vertiginosa: IronOCR.2020+ es hasta 10 veces más rápido y comete más del 250% menos de errores que las construcciones anteriores. Por favor visita este enlace para explorar el [Iron Suite](/csharp/barcode/licensing/). Además, Iron Software actualmente está ofreciendo un paquete de cinco herramientas por el precio de solo dos. Las herramientas incluidas en el Iron Suite son: - IronBarcode - IronXL - IronOCR - IronPDF - IronWebScraper Visita este enlace para explorar [IRONSUITE](/csharp/barcode/licensing/) .

Preguntas Frecuentes

¿Qué es el Reconocimiento Óptico de Caracteres (OCR)?

El Reconocimiento Óptico de Caracteres (OCR) es una tecnología que convierte diferentes tipos de documentos, como documentos en papel escaneados, PDFs o imágenes capturadas por una cámara digital, en datos editables y buscables. IronOCR es una poderosa biblioteca C# .NET que mejora este proceso utilizando algoritmos avanzados.

¿Cómo puedo convertir imágenes de texto en texto legible por máquinas usando C#?

Puede usar IronOCR, una biblioteca C# .NET, para convertir imágenes de texto en texto legible por máquinas. Procesa imágenes mediante algoritmos avanzados de OCR y produce el texto reconocido en formatos que pueden ser fácilmente manipulados programáticamente.

¿Cómo maneja IronOCR las imágenes escaneadas imperfectamente?

IronOCR está diseñado para gestionar y procesar eficazmente imágenes escaneadas imperfectamente. Incluye capacidades de preprocesamiento que corrigen la inclinación, mejoran el contraste del texto y refinan la calidad de la imagen para mejorar la precisión del OCR.

¿Puedo utilizar IronOCR para procesamiento en múltiples hilos?

Sí, IronOCR admite varios hilos, lo que permite el procesamiento simultáneo de múltiples documentos, mejorando significativamente el rendimiento y el rendimiento en aplicaciones con muchos documentos.

¿Qué idiomas admite IronOCR para tareas de OCR?

IronOCR admite más de 125 idiomas, lo que lo convierte en una herramienta versátil para aplicaciones globales donde se necesita procesar y convertir documentos en varios idiomas a texto.

¿Cómo se instala IronOCR en un proyecto de Visual Studio?

IronOCR se puede instalar en un proyecto de Visual Studio a través del Administrador de Paquetes de NuGet. Puede buscar 'IronOCR' en la consola de NuGet e instalarlo, permitiéndole integrar funcionalidad OCR en sus aplicaciones .NET.

¿Cuál es el modelo de precios para IronOCR?

IronOCR ofrece un modelo de licencia de pago único. Esto incluye licencias perpetuas que vienen con una garantía de devolución de dinero de 30 días, ofreciendo flexibilidad y tranquilidad para los desarrolladores.

¿Cómo difiere AWS Textract de IronOCR en términos de tecnología?

AWS Textract utiliza tecnologías de aprendizaje automático y aprendizaje profundo para extraer texto y datos, proporcionando un análisis detallado del contenido del documento. En contraste, IronOCR se centra en la facilidad de uso y la integración en proyectos .NET, ofreciendo una solución OCR robusta con un soporte extensivo de idiomas.

¿Puede IronOCR leer y procesar códigos de barras y códigos QR?

Sí, IronOCR puede leer y procesar tanto códigos de barras como códigos QR. Extrae información detallada sobre cada código mientras escanea simultáneamente texto, lo que lo convierte en una herramienta integral para el procesamiento de documentos.

¿Qué plataformas y entornos son compatibles con IronOCR?

IronOCR es compatible con una amplia gama de entornos, incluyendo Windows, Linux, Mac, Azure, AWS y Lambda. Soporta proyectos .NET Framework, .NET Standard y .NET Core, asegurando flexibilidad en diferentes ecosistemas de desarrollo.

Kannaopat Udonpant
Ingeniero de Software
Antes de convertirse en Ingeniero de Software, Kannapat completó un doctorado en Recursos Ambientales de la Universidad de Hokkaido en Japón. Mientras perseguía su grado, Kannapat también se convirtió en miembro del Laboratorio de Robótica de Vehículos, que es parte del Departamento de Ingeniería ...
Leer más