USO DE IRONOCR

SDK de OCR de Passport (Tutorial para desarrolladores)

Publicado en 15 de diciembre, 2024
Compartir:

Apasaportees la identidad de un individuo; utilizamos pasaportes para viajar y registrar aspectos esenciales de nuestras vidas. Sin embargo, el formato de pasaporte no siempre es fácil de leer. Imagina a muchos viajeros apareciendo de repente durante la temporada de vacaciones para viajar y disfrutar. ¿Cómo pueden los agentes de inmigración manejar esa gran cantidad de valor con la entrada de datos manual y recuperar la información correcta manualmente?

Por lo tanto, muchas aplicaciones y empresas están recurriendo al reconocimiento óptico de caracteres.(OCR), que permite a los desarrolladores extraer rápidamente texto impreso o manuscrito e imágenes digitales.

De manera similar, Passport OCR es una tecnología que utilizareconocimiento óptico de caracteres (OCR)software para extraer información significativa de los pasaportes; también utiliza la zona legible por máquina de todos los pasaportes para recuperar información y identificar rápidamente al individuo que intenta pasar por la fantasía. En escenarios donde necesitas reconocer información de pasaportes rápidamente o en un proceso que involucra la automatización de la extracción de datos de pasaportes, Passport OCR es vital y es la piedra angular de la eficiencia y la velocidad en aeropuertos y fronteras de inmigración.

Aunque el software y la tecnología de OCR para pasaportes se han desarrollado cada vez más a lo largo de los años, hay muchos factores a considerar al escanear el documento. Las imágenes digitales con ruido o manchas en el pasaporte pueden afectar gravemente la precisión del pasaporte. Además, las bibliotecas OCR pueden ser a veces confusas al operar con un pasaporte, ya que la zona legible por máquina es un conjunto de datos estructurado único. Los desarrolladores podrían ser capaces de extraer datos, pero deben ordenar los parámetros de forma independiente. Sin embargo, conIronOCR, los métodos especializados están optimizados para leer pasaportes; sus resultados permiten a los desarrolladores obtener y manipular la información rápidamente, lo cual es ideal para el escaneo de gran volumen y la automatización.

En este artículo, discutiremos brevemente el uso de IronOCR para obtener y manipular información de pasaportes con el fin de automatizar la extracción de datos y proporcionar más detalles sobre cómo interactúa IronOCR con el pasaporte.

IronOCR: Una biblioteca OCR de C#

SDK de OCR de Pasaportes (Tutorial para Desarrolladores): Figura 1 - IronOCR: Una Biblioteca OCR para C#

IronOCRes una biblioteca de C# que ofrece métodos fáciles de usar y funcionalidad flexible para todas las necesidades relacionadas con OCR. Además de las técnicas estándar, IronOCR permite a los desarrolladores utilizar y personalizar completamente una versión personalizada de Tesseract para lograr todas las tareas relacionadas.

A continuación, se presenta un resumen rápido de sus características más notables:

  1. Compatibilidad cruzada: IronOCR es compatible con la mayoría de las plataformas .NET, incluyendo .NET 8, 7, 6 y 5, y soporta .NET Framework 4.6.2 en adelante. Con esta biblioteca, los desarrolladores no tienen que preocuparse por la compatibilidad cruzada, ya que también admite todas las formas de sistemas operativos. Desde Windows, macOS hasta Azure e incluso Linux:

  2. Flexibilidad: La entrada de OCR viene en muchos formatos, por lo que una biblioteca debe manejar todo tipo de formatos para ser realmente flexible. IronOCR acepta todos los formatos de imagen populares(jpg, png y gif)mientras admite los "System.Drawings.Objects" nativos de C#, lo que permite una integración más sencilla en bases de código existentes.

  3. Soporte y facilidad de uso: IronOCR está bien documentado, con una API extensa y tutoriales que indican todas las formas de funcionalidad. Además, hay soporte 24/5, asegurando que los desarrolladores siempre estén respaldados.

    1. Compatibilidad con múltiples idiomas: IronOCR también admite hasta 125 idiomas y también soporta idiomas personalizados, lo que lo hace versátil para todo el procesamiento de documentos internacionales.

Leyendo el pasaporte con IronOCR

Clave de licencia

Recuerda que IronOCR requiere una clave de licencia para su funcionamiento. Puede obtener una clave como parte de una prueba gratuita visitando este enlaceenlace.

//Replace the license key variable with the trial key you obtained
IronOCr.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
//Replace the license key variable with the trial key you obtained
IronOCr.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
'Replace the license key variable with the trial key you obtained
IronOCr.License.LicenseKey = "REPLACE-WITH-YOUR-KEY"
VB   C#

Tras recibir una clave de prueba, establezca esta variable en su proyecto.

Ejemplo de código

El siguiente código demuestra cómo IronOCR toma una imagen de pasaporte y extrae toda la información relevante utilizando el SDK de OCR para pasaportes de la biblioteca.

Imagen de entrada

SDK de OCR de pasaportes (Tutorial para desarrolladores): Figura 2 - Imagen de entrada

using IronOcr;
using System;
// Instantiate OCR engine
var ocr = new IronTesseract();
using var inputPassport = new OcrInput();
inputPassport.LoadImage("Passport.jpg");
// Perform OCR
OcrPassportResult result = ocr.ReadPassport(inputPassport);
// Output passport information
Console.WriteLine(result.PassportInfo.GivenNames);
Console.WriteLine(result.PassportInfo.Country);
Console.WriteLine(result.PassportInfo.PassportNumber);
Console.WriteLine(result.PassportInfo.Surname);
Console.WriteLine(result.PassportInfo.DateOfBirth);
Console.WriteLine(result.PassportInfo.DateOfExpiry);
using IronOcr;
using System;
// Instantiate OCR engine
var ocr = new IronTesseract();
using var inputPassport = new OcrInput();
inputPassport.LoadImage("Passport.jpg");
// Perform OCR
OcrPassportResult result = ocr.ReadPassport(inputPassport);
// Output passport information
Console.WriteLine(result.PassportInfo.GivenNames);
Console.WriteLine(result.PassportInfo.Country);
Console.WriteLine(result.PassportInfo.PassportNumber);
Console.WriteLine(result.PassportInfo.Surname);
Console.WriteLine(result.PassportInfo.DateOfBirth);
Console.WriteLine(result.PassportInfo.DateOfExpiry);
Imports IronOcr
Imports System
' Instantiate OCR engine
Private ocr = New IronTesseract()
Private inputPassport = New OcrInput()
inputPassport.LoadImage("Passport.jpg")
' Perform OCR
Dim result As OcrPassportResult = ocr.ReadPassport(inputPassport)
' Output passport information
Console.WriteLine(result.PassportInfo.GivenNames)
Console.WriteLine(result.PassportInfo.Country)
Console.WriteLine(result.PassportInfo.PassportNumber)
Console.WriteLine(result.PassportInfo.Surname)
Console.WriteLine(result.PassportInfo.DateOfBirth)
Console.WriteLine(result.PassportInfo.DateOfExpiry)
VB   C#

Explicación del código

  1. Primero importamos IronOCR a la base de código.

  2. Luego creamos un nuevo `OCrInput` y lo asignamos como `inputPassport.`

  3. Luego leemos la imagen proporcionando la ruta de la imagen.

  4. Luego utilizamos el método especializado para leer el pasaporte, `ReadPassport,` y pasamos el pasaporte ingresado.

  5. Luego podemos manipular e imprimir el resultado de los datos extraídos.

Salida de la consola

SDK de OCR de Pasaportes (Tutorial para Desarrolladores): Figura 3 - Salida de consola

Zona de Lectura Mecánica

IronOCR puede extraer la Zona de Lectura Mecánica(MRZ)información de las dos últimas filas de cualquier pasaporte según la Organización de Aviación Civil Internacional(ICAO)estándar. Los datos MRZ comprenden dos filas, cada una con información única. Para obtener información detallada sobre a qué corresponde cada posición en las filas y para cualquier excepción e identificador único, por favor consulte el ICAOestándares de documentación.

Aquí tienes una breve tabla sobre ello:

Kit de desarrollo de software (SDK) de OCR de pasaportes (tutorial para desarrolladores): Figura 4 - Tabla de MDZ

Desafíos para el OCR de pasaportes y depuración

La calidad de la imagen siempre es un problema al escanear imágenes digitales. Una calidad de imagen distorsionada ocultaría la información y haría más difícil confirmar la precisión de los datos. Además, los desarrolladores deben considerar la seguridad de los datos y el cumplimiento normativo al tratar con información crucial como un pasaporte.

IronOCR también ofrece una forma de depurar brevemente y mostrar el concepto para la información de interacción de iones. Estos métodos permiten a los desarrolladores solucionar problemas y tener confianza en los datos extraídos.

Aquí tienes un breve ejemplo de ello:

using IronOcr;
using System;
// Instantiate OCR engine
var ocr = new IronTesseract();
using var inputPassport = new OcrInput();
inputPassport.LoadImage("Passport.jpg");
// Perform OCR
OcrPassportResult result = ocr.ReadPassport(inputPassport);
// Output Confidence level and raw extracted text
Console.WriteLine(result.Confidence);
Console.WriteLine(result.Text);
using IronOcr;
using System;
// Instantiate OCR engine
var ocr = new IronTesseract();
using var inputPassport = new OcrInput();
inputPassport.LoadImage("Passport.jpg");
// Perform OCR
OcrPassportResult result = ocr.ReadPassport(inputPassport);
// Output Confidence level and raw extracted text
Console.WriteLine(result.Confidence);
Console.WriteLine(result.Text);
Imports IronOcr
Imports System
' Instantiate OCR engine
Private ocr = New IronTesseract()
Private inputPassport = New OcrInput()
inputPassport.LoadImage("Passport.jpg")
' Perform OCR
Dim result As OcrPassportResult = ocr.ReadPassport(inputPassport)
' Output Confidence level and raw extracted text
Console.WriteLine(result.Confidence)
Console.WriteLine(result.Text)
VB   C#

De manera similar, el código en el ejemplo anterior sigue siendo el mismo; sin embargo, la salida de la consola difiere ya que accedemos directamente a las propiedades `Text` y `Confidence` en lugar de los miembros individuales del pasaporte.

  1. Confianza: La propiedad `Confidence` en `OcrPassportResult` es un número de punto flotante que representa la confianza estadística en la precisión del OCR, calculada como un promedio de cada carácter. Un valor más bajo indica que la imagen del pasaporte puede estar borrosa o contener información adicional. Uno representa el nivel de confianza más alto, mientras que 0 representa el más bajo.

  2. Texto: La propiedad `Text` en `OcrPassportResult` contiene el texto sin procesar extraído de la imagen del pasaporte. Los desarrolladores pueden usarlo en pruebas unitarias para validar el texto extraído de la imagen del pasaporte haciendo afirmaciones de igualdad.

Conclusión

SDK de OCR de Pasaportes (Tutorial para Desarrolladores): Figura 5 - IronOCR

La tecnología OCR de pasaportes mejora significativamente el procesamiento de documentos al automatizar la extracción de datos y mejorar la eficiencia operativa. Optimiza los procesos de verificación de identidad y KYC, garantizando alta precisión al manejar información personal sensible. Las fronteras de inmigración y los aeropuertos pueden reducir el tiempo de procesamiento y mejorar la eficiencia del flujo de trabajo eligiendo IronOCR como su API de OCR de pasaportes.

IronOCR ofrece a los desarrolladores flexibilidad y escalabilidad a través de sus métodos fáciles de usar. Permite a los desarrolladores ordenar información rápidamente a través del objeto `OcrPassportResult`. Además, IronOCR proporciona herramientas de depuración, que incluyen niveles de confianza y texto sin procesar no analizado, para que los desarrolladores las utilicen en las pruebas unitarias del producto. IronOCR también minimiza el ruido digital manualmente para un uso más avanzado al limpiar la imagen del pasaporte antes de pasarla por el método.

Siéntase libre de aprovechar IronOCR'slicencia de prueba gratuita página.

< ANTERIOR
Tutorial de Desarrollador: OCR de Recibos de Supermercado en C#
SIGUIENTE >
Tesseract OCR para múltiples idiomas (Tutorial para desarrolladores)