Passer au contenu du pied de page
UTILISATION D'IRONOCR

SDK OCR pour passeport (Tutoriel pour développeurs)

Un passeport est l'identité d'un individu ; nous utilisons des passeports pour voyager et enregistrer des aspects essentiels de nos vies. Cependant, le format du passeport n'est pas toujours facile à lire. Imaginez de nombreux voyageurs apparaissant soudainement pendant la saison des vacances pour voyager et se détendre. Comment les agents d'immigration peuvent-ils gérer cette grande quantité de données avec une saisie manuelle et récupérer manuellement les informations correctes ?

Ainsi, de nombreuses applications et entreprises se tournent vers la reconnaissance optique de caractères (OCR), qui permet aux développeurs d'extraire rapidement du texte imprimé et des images numériques.

De même, l'OCR des passeports est une technologie qui utilise un logiciel de reconnaissance optique de caractères (OCR) pour extraire des informations significatives des passeports ; elle utilise également la zone à lecture machine pour tous les passeports pour récupérer des informations afin d'identifier rapidement la personne essayant de passer l'immigration. Dans les scénarios où vous devez reconnaître rapidement les informations d'un passeport ou dans un processus impliquant l'automatisation de l'extraction de données de passeport, l'OCR des passeports est essentiel et est la pierre angulaire de l'efficacité et de la rapidité dans les aéroports et aux frontières d'immigration.

Bien que le logiciel et la technologie de l'OCR des passeports se soient davantage développés au fil des ans, divers facteurs peuvent affecter le processus de numérisation des documents. Les images numériques avec du bruit ou des bavures sur le passeport peuvent fortement affecter la précision du passeport. En outre, les bibliothèques OCR peuvent parfois être déroutantes lorsqu'elles opèrent sur un passeport, car la zone à lecture machine est un ensemble de données structurées unique. Les développeurs peuvent être en mesure d'extraire les données mais doivent trier les paramètres de manière indépendante. Cependant, avec IronOCR, des méthodes spécialisées sont optimisées pour la lecture des passeports ; ses résultats permettent aux développeurs d'obtenir et de manipuler rapidement l'information, ce qui est idéal pour la numérisation à haut volume et l'automatisation.

Dans cet article, nous discuterons brièvement de l'utilisation d'IronOCR pour obtenir et manipuler les informations de passeport afin d'automatiser l'extraction de données et de fournir plus de détails sur la façon dont IronOCR interagit avec le passeport.

IronOCR : Une bibliothèque OCR pour C#

SDK OCR de Passeport (Tutoriel pour Développeurs) : Figure 1 - IronOCR : Une bibliothèque OCR pour C#

IronOCR est une bibliothèque C# qui offre des méthodes faciles à utiliser et une fonctionnalité flexible pour tous les besoins liés à l'OCR. En plus des techniques standards, IronOCR permet aux développeurs de pleinement utiliser et personnaliser une version de Tesseract pour accomplir toutes les tâches associées.

Voici un résumé rapide de ses caractéristiques les plus remarquables ci-dessous :

  1. Compatibilité croisée : IronOCR est compatible avec la plupart des plateformes .NET, y compris .NET 8, 7, 6 et 5, et supporte .NET Framework 4.6.2 et supérieurs. Avec cette bibliothèque, les développeurs n'ont pas à se soucier de la compatibilité croisée car elle prend également en charge tous les systèmes d'exploitation, allant de Windows, macOS à Azure, et même Linux.
  2. Flexibilité : L'entrée OCR se présente sous de nombreux formats, donc une bibliothèque doit gérer toutes sortes de formats pour être véritablement flexible. IronOCR accepte tous les formats d'image populaires (jpg, png, et gif) tout en prenant en charge les "System.Drawing.Objects" natifs de C#, permettant une intégration plus facile dans les bases de code existantes.
  3. Soutien et facilité d'utilisation : IronOCR est bien documenté, avec une API étendue et des tutoriels indiquant toutes les formes de fonctionnalité. En outre, il y a un support 24/5, garantissant que les développeurs sont toujours soutenus.
  4. Soutien de plusieurs langues : IronOCR supporte jusqu'à 125 langues et supporte également les langues personnalisées, ce qui le rend polyvalent pour tout traitement international de documents.

Lire le Passeport avec IronOCR

Clé de licence

Veuillez vous souvenir qu'IronOCR nécessite une clé de licence pour fonctionner. Vous pouvez obtenir une clé dans le cadre d'un essai gratuit en visitant ce lien.

// 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"
$vbLabelText   $csharpLabel

Après avoir reçu une clé d'essai, définissez cette variable dans votre projet.

Exemple de code

Le code ci-dessous montre comment IronOCR prend une image de passeport et extrait toutes les informations pertinentes en utilisant le SDK OCR du passeport de la bibliothèque.

Image d'entrée

SDK OCR de Passeport (Tutoriel pour Développeurs) : Figure 2 - Image d'entrée

using IronOcr;
using System;

class Program {
    public static void Main() {
        // Instantiate OCR engine
        var ocr = new IronTesseract();
        using var inputPassport = new OcrInput();
        inputPassport.AddImage("Passport.jpg");

        // Perform OCR to read the passport
        OcrResult result = ocr.Read(inputPassport);

        // Output passport information
        Console.WriteLine("Given Names: " + result.Passport?.GivenNames);
        Console.WriteLine("Country: " + result.Passport?.Country);
        Console.WriteLine("Passport Number: " + result.Passport?.PassportNumber);
        Console.WriteLine("Surname: " + result.Passport?.Surname);
        Console.WriteLine("Date of Birth: " + result.Passport?.DateOfBirth.ToString("yyyy-MM-dd"));
        Console.WriteLine("Date of Expiry: " + result.Passport?.DateOfExpiry.ToString("yyyy-MM-dd"));
    }
}
using IronOcr;
using System;

class Program {
    public static void Main() {
        // Instantiate OCR engine
        var ocr = new IronTesseract();
        using var inputPassport = new OcrInput();
        inputPassport.AddImage("Passport.jpg");

        // Perform OCR to read the passport
        OcrResult result = ocr.Read(inputPassport);

        // Output passport information
        Console.WriteLine("Given Names: " + result.Passport?.GivenNames);
        Console.WriteLine("Country: " + result.Passport?.Country);
        Console.WriteLine("Passport Number: " + result.Passport?.PassportNumber);
        Console.WriteLine("Surname: " + result.Passport?.Surname);
        Console.WriteLine("Date of Birth: " + result.Passport?.DateOfBirth.ToString("yyyy-MM-dd"));
        Console.WriteLine("Date of Expiry: " + result.Passport?.DateOfExpiry.ToString("yyyy-MM-dd"));
    }
}
Imports IronOcr
Imports System

Friend Class Program
	Public Shared Sub Main()
		' Instantiate OCR engine
		Dim ocr = New IronTesseract()
		Dim inputPassport = New OcrInput()
		inputPassport.AddImage("Passport.jpg")

		' Perform OCR to read the passport
		Dim result As OcrResult = ocr.Read(inputPassport)

		' Output passport information
		Console.WriteLine("Given Names: " & result.Passport?.GivenNames)
		Console.WriteLine("Country: " & result.Passport?.Country)
		Console.WriteLine("Passport Number: " & result.Passport?.PassportNumber)
		Console.WriteLine("Surname: " & result.Passport?.Surname)
		Console.WriteLine("Date of Birth: " & result.Passport?.DateOfBirth.ToString("yyyy-MM-dd"))
		Console.WriteLine("Date of Expiry: " & result.Passport?.DateOfExpiry.ToString("yyyy-MM-dd"))
	End Sub
End Class
$vbLabelText   $csharpLabel

Explication du code

  1. Importer les bibliothèques : Nous importons d'abord IronOCR dans la base de code et d'autres bibliothèques nécessaires.
  2. Instancie le moteur OCR : Nous créons un nouvel objet IronTesseract pour initialiser le moteur OCR.
  3. Charger l'image du passeport : Nous créons ensuite un nouveau OcrInput et chargeons l'image contenant le passeport en utilisant AddImage().
  4. Lire le passeport en utilisant l'OCR : Nous utilisons la méthode Read() pour effectuer l'opération OCR sur l'image d'entrée et enregistrer le résultat.
  5. Résultats de sortie : Nous affichons les informations extraites du passeport telles que les prénoms, le pays, le numéro de passeport, le nom de famille, la date de naissance et la date d'expiration.

Sortie console

SDK OCR de Passeport (Tutoriel pour Développeurs) : Figure 3 - Sortie de la console

Zone à lecture machine

IronOCR peut extraire les informations de la zone à lecture machine (MRZ) à partir des deux lignes du bas de tout passeport conformément à la norme de l'Organisation de l'aviation civile internationale (ICAO). Les données MRZ comprennent deux lignes, chacune contenant des informations uniques.

Voici un tableau succinct à ce sujet :

SDK OCR de Passeport (Tutoriel pour Développeurs) : Figure 4 - Tableau de MRZ

Défis pour l'OCR de Passeport et Débogage

La qualité de l'image est toujours un problème lors de la numérisation d'images numériques. Une qualité d'image déformée obscurcirait l'information et rendrait plus difficile la confirmation de la précision des données. En outre, les développeurs doivent prendre en compte la sécurité des données et la conformité lorsqu'ils traitent des informations cruciales pour la mission telles qu'un passeport.

IronOCR fournit également un moyen de déboguer et de montrer le concept d'interaction des informations. Ces méthodes permettent aux développeurs de résoudre les problèmes et d'avoir confiance dans les données extraites.

Voici un bref exemple :

using IronOcr;
using System;

class DebugExample {
    public static void Main() {
        // Instantiate OCR engine
        var ocr = new IronTesseract();
        using var inputPassport = new OcrInput();
        inputPassport.AddImage("Passport.jpg");

        // Perform OCR
        OcrResult result = ocr.Read(inputPassport);

        // Output Confidence level and raw extracted text
        Console.WriteLine("OCR Confidence: " + result.Confidence);
        Console.WriteLine("Extracted Text: ");
        Console.WriteLine(result.Text);
    }
}
using IronOcr;
using System;

class DebugExample {
    public static void Main() {
        // Instantiate OCR engine
        var ocr = new IronTesseract();
        using var inputPassport = new OcrInput();
        inputPassport.AddImage("Passport.jpg");

        // Perform OCR
        OcrResult result = ocr.Read(inputPassport);

        // Output Confidence level and raw extracted text
        Console.WriteLine("OCR Confidence: " + result.Confidence);
        Console.WriteLine("Extracted Text: ");
        Console.WriteLine(result.Text);
    }
}
Imports IronOcr
Imports System

Friend Class DebugExample
	Public Shared Sub Main()
		' Instantiate OCR engine
		Dim ocr = New IronTesseract()
		Dim inputPassport = New OcrInput()
		inputPassport.AddImage("Passport.jpg")

		' Perform OCR
		Dim result As OcrResult = ocr.Read(inputPassport)

		' Output Confidence level and raw extracted text
		Console.WriteLine("OCR Confidence: " & result.Confidence)
		Console.WriteLine("Extracted Text: ")
		Console.WriteLine(result.Text)
	End Sub
End Class
$vbLabelText   $csharpLabel

Explication du code de débogage

  1. Confiance : La propriété Confidence dans le OcrResult est un nombre flottant représentant la confiance dans l'exactitude statistique de l'OCR, calculée comme une moyenne de chaque caractère. Une valeur plus basse indique que l'image du passeport peut être floue ou contenir des informations supplémentaires. Un indique le niveau de confiance le plus élevé, tandis que zéro représente le plus bas.
  2. Texte : La propriété Text dans le OcrResult contient le texte non traité extrait de l'image du passeport. Les développeurs peuvent l'utiliser dans des tests unitaires pour valider le texte extrait de l'image du passeport en effectuant des assertions égales.

Conclusion

SDK OCR de Passeport (Tutoriel pour Développeurs) : Figure 5 - IronOCR

La technologie OCR de passeport améliore considérablement le traitement des documents en automatisant l'extraction des données et en améliorant l'efficacité opérationnelle. Elle rationalise les processus de vérification d'identité et KYC, garantissant une grande précision tout en manipulant des informations personnelles sensibles. Les frontières d'immigration et les aéroports peuvent réduire le temps de traitement et améliorer l'efficacité du flux de travail en choisissant IronOCR comme leur API OCR de Passeport.

IronOCR offre aux développeurs flexibilité et évolutivité grâce à ses méthodes faciles à utiliser. Elle permet aux développeurs de trier rapidement les informations grâce à l'objet OcrResult. En outre, IronOCR fournit des outils de débogage, y compris des niveaux de confiance et du texte brut non analysé, pour que les développeurs l'utilisent dans les tests unitaires des produits. IronOCR minimise également le bruit numérique manuellement pour un usage plus avancé en supprimant l'image d'entrée du passeport avant de la passer par la méthode.

N'hésitez pas à profiter de la page de licence d'essai gratuite d'IronOCR.

Questions Fréquemment Posées

Comment puis-je utiliser l'OCR pour extraire les informations des passeports en C# ?

Vous pouvez utiliser IronOCR pour extraire les informations de passeport en traitant les images de passeports et en extrayant les données de la zone lisible par machine grâce à ses capacités OCR puissantes.

Quels sont les avantages de l'utilisation de l'OCR pour le traitement des données de passeport ?

L'OCR pour le traitement des données de passeport automatise l'extraction d'informations, augmentant considérablement l'efficacité et la précision dans les zones à fort trafic comme les aéroports et les contrôles frontaliers.

Est-il possible de traiter plusieurs langues avec la technologie OCR ?

Oui, IronOCR prend en charge jusqu'à 125 langues et permet l'ajout de langues personnalisées, ce qui le rend polyvalent pour le traitement de documents internationaux.

Comment IronOCR assure-t-il une extraction précise des données des passeports ?

IronOCR offre une propriété 'Confidence' dans OcrResult permettant de vérifier la fiabilité des données extraites.

Quels formats d'image sont pris en charge par IronOCR pour la numérisation des passeports ?

IronOCR prend en charge tous les formats d'image populaires, y compris jpg, png et gif, et il peut également fonctionner avec les objets System.Drawing.Objects natifs de C# pour une intégration facile.

Quels défis les développeurs pourraient-ils rencontrer avec la mise en œuvre de l'OCR de passeport ?

Les défis incluent la gestion des images de mauvaise qualité, la garantie de la sécurité des données et la conformité avec le traitement des informations sensibles des passeports.

Comment les développeurs peuvent-ils commencer à utiliser IronOCR pour l'OCR de passeport ?

Les développeurs peuvent commencer à utiliser IronOCR en obtenant une clé de licence d'essai sur le site Web du fournisseur et en suivant la documentation détaillée pour l'intégrer dans leurs applications C#.

Quelles plateformes sont compatibles avec IronOCR ?

IronOCR est compatible avec la plupart des plateformes .NET, y compris .NET 8, 7, 6 et 5, ainsi que .NET Framework 4.6.2 et plus, et prend en charge les principaux systèmes d'exploitation comme Windows, macOS, Azure et Linux.

Kannaopat Udonpant
Ingénieur logiciel
Avant de devenir ingénieur logiciel, Kannapat a obtenu un doctorat en ressources environnementales à l'université d'Hokkaido au Japon. Pendant qu'il poursuivait son diplôme, Kannapat est également devenu membre du laboratoire de robotique de véhicules, qui fait partie du département de bioproduction. En 2022, il a utilisé ses compé...
Lire la suite