Passer au contenu du pied de page
UTILISATION D'IRONOCR

Extraction de données de reçus OCR (Tutoriel étape par étape)

L'OCR de reçus avec IronOCR change la donne pour les entreprises et les particuliers. Le processus vous permet d'extraire des informations importantes des reçus physiques et de les convertir en données numériques. Cet article vous emmènera à travers un parcours étape par étape sur l'utilisation d'IronOCR pour tirer le meilleur parti de vos reçus.

Introduction rapide à la reconnaissance optique de caractères (OCR)

La reconnaissance optique de caractères, ou OCR, est une technologie qui permet aux ordinateurs de lire et de comprendre le texte à partir d'images ou de documents scannés. En convertissant le texte imprimé en texte lisible par machine, l'OCR vous permet de stocker, traiter et analyser les informations contenues dans les documents physiques.

2. Introduction à IronOCR

IronOCR est une bibliothèque OCR (Reconnaissance Optique de Caractères) pour les développeurs C# et .NET. Elle permet aux développeurs d'extraire du texte à partir d'images, de PDFs et d'autres formats de documents. IronOCR est construit sur le populaire moteur Tesseract OCR et ajoute des fonctionnalités supplémentaires, en faisant un choix idéal pour diverses applications, y compris l'OCR de reçus.

3. Avantages de l'utilisation d'IronOCR pour l'extraction de données

Voici quelques avantages clés de l'utilisation d'IronOCR pour l'extraction de données OCR de reçus :

  • Haute précision : IronOCR offre une excellente précision de l'API OCR, garantissant une extraction fiable des données des reçus et d'autres documents.
  • Support multilingue : IronOCR supporte plus de 125 langues, ce qui le rend adapté aux applications mondiales.
  • Facile à utiliser : La bibliothèque offre une API simple et intuitive, ce qui facilite l'implémentation de la fonctionnalité OCR dans leurs projets par les développeurs.
  • Personnalisable : IronOCR offre diverses options pour l'ajustement des résultats OCR, garantissant une extraction optimale des données pour votre cas d'utilisation spécifique.

4. Fonctionnement d'IronOCR

IronOCR utilise des algorithmes OCR avancés pour reconnaître et extraire le texte des images et des documents. Il peut traiter divers formats, y compris JPEG, PNG, TIFF, et PDF. La bibliothèque lit le fichier d'entrée, reconnaît le texte à l'intérieur, et produit le texte extrait sous forme de chaîne, qui peut ensuite être traité ou stocké selon les besoins. IronOCR utilise également la vision par ordinateur pour obtenir les meilleurs résultats.

5. Prérequis pour l'utilisation d'IronOCR

Pour commencer à utiliser IronOCR pour l'extraction de données de reçus, vous devez d'abord installer le package IronOCR. Cela peut être fait facilement via NuGet, le gestionnaire de packages pour .NET. Ouvrez simplement votre projet dans Visual Studio et suivez ces étapes :

  1. Cliquez avec le bouton droit sur votre projet dans l'Explorateur de solutions et sélectionnez "Gérer les packages NuGet".
  2. Dans la fenêtre du Gestionnaire de packages NuGet, recherchez "IronOCR".
  3. Sélectionnez le package IronOcr et cliquez sur "Installer".

Extraction de données de reçus OCR (Tutoriel pas à pas), Figure 1 : Rechercher le package IronOCR dans l'interface utilisateur du Gestionnaire de packages NuGet Rechercher le package IronOcr dans l'interface utilisateur du Gestionnaire de packages NuGet

6. Préparation de l'image du reçu

Avant d'extraire des données du reçu, vous devrez vous assurer que les images du reçu sont de haute qualité pour améliorer la précision du processus API OCR. Voici quelques conseils pour capturer une bonne image de votre reçu :

  1. Utilisez un document scanné. Vous pouvez utiliser un scanner haute résolution pour la numérisation des reçus.
  2. Assurez-vous que le reçu est bien éclairé et exempt d'ombres.
  3. Redressez les plis ou plis sur le reçu, pour qu'aucune information clé ne soit cachée.
  4. Assurez-vous que le texte sur le reçu est clair et non taché, pour améliorer le traitement du reçu.

Extraction de données de reçus OCR (Tutoriel pas à pas), Figure 2 : Exemple d'image de reçu pour l'extraction de texte Exemple d'image de reçu pour l'extraction de texte

7. Réaliser une reconnaissance optique de caractères (OCR) sur l'image du reçu

Avec IronOCR installé et votre image de reçu prête, il est temps d'effectuer le processus OCR. Dans votre application .NET, utilisez l'extrait de code suivant :

using IronOcr;

// Initialize the IronTesseract class, which is responsible for OCR operations
var ocr = new IronTesseract();

// Use the OcrInput class to load the image of your receipt.
// Replace @"path/to/your/receipt/image.png" with the actual file path.
using (var ocrInput = new OcrInput(@"path/to/your/receipt/image.png"))
{
    // Read the content of the image and perform OCR recognition
    var result = ocr.Read(ocrInput);

    // Output the recognized text to the console
    Console.WriteLine(result.Text);
}
using IronOcr;

// Initialize the IronTesseract class, which is responsible for OCR operations
var ocr = new IronTesseract();

// Use the OcrInput class to load the image of your receipt.
// Replace @"path/to/your/receipt/image.png" with the actual file path.
using (var ocrInput = new OcrInput(@"path/to/your/receipt/image.png"))
{
    // Read the content of the image and perform OCR recognition
    var result = ocr.Read(ocrInput);

    // Output the recognized text to the console
    Console.WriteLine(result.Text);
}
Imports IronOcr

' Initialize the IronTesseract class, which is responsible for OCR operations
Private ocr = New IronTesseract()

' Use the OcrInput class to load the image of your receipt.
' Replace @"path/to/your/receipt/image.png" with the actual file path.
Using ocrInput As New OcrInput("path/to/your/receipt/image.png")
	' Read the content of the image and perform OCR recognition
	Dim result = ocr.Read(ocrInput)

	' Output the recognized text to the console
	Console.WriteLine(result.Text)
End Using
$vbLabelText   $csharpLabel

Explication du code

using IronOcr;
using IronOcr;
Imports IronOcr
$vbLabelText   $csharpLabel

Cette ligne importe la bibliothèque IronOCR dans votre application .NET, vous permettant d'accéder à ses fonctionnalités.

var ocr = new IronTesseract();
var ocr = new IronTesseract();
Dim ocr = New IronTesseract()
$vbLabelText   $csharpLabel

Cette ligne crée une nouvelle instance de la classe IronTesseract, la classe principale responsable des opérations OCR dans IronOCR.

using (var ocrInput = new OcrInput(@"path/to/your/receipt/image.png"))
using (var ocrInput = new OcrInput(@"path/to/your/receipt/image.png"))
Using ocrInput As New OcrInput("path/to/your/receipt/image.png")
$vbLabelText   $csharpLabel

Ici, une nouvelle instance de la classe OcrInput est créée, représentant l'image d'entrée pour le processus OCR. Le "path/to/your/receipt/image.png" doit être remplacé par le chemin réel de votre image de reçu. L'instruction using assure que les ressources allouées à l'instance OcrInput sont correctement libérées une fois l'opération OCR terminée.

var result = ocr.Read(ocrInput);
var result = ocr.Read(ocrInput);
Dim result = ocr.Read(ocrInput)
$vbLabelText   $csharpLabel

Cette ligne appelle la méthode Read de l'instance IronTesseract, en passant l'objet OcrInput comme paramètre. La méthode Read traite l'image d'entrée et effectue l'opération OCR, reconnaissant et extrayant le texte de l'image. Cela commencera le processus de reconnaissance du reçu.

Console.WriteLine(result.Text);
Console.WriteLine(result.Text);
Console.WriteLine(result.Text)
$vbLabelText   $csharpLabel

Enfin, cette ligne produit le texte extrait sur la console. L'objet result, qui est une instance de la classe OcrResult, contient le texte reconnu et des informations supplémentaires sur le processus OCR. Le texte extrait peut être affiché en accédant à la propriété Text de l'objet result.

Extraction de données de reçus OCR (Tutoriel pas à pas), Figure 3 : Sortie des textes extraits Sortie des textes extraits

Optimisation des résultats de la reconnaissance optique de caractères (OCR)

IronOCR offre plusieurs options pour améliorer la précision et les performances de l'OCR. Celles-ci incluent le prétraitement de l'image, l'ajustement des paramètres du moteur OCR, et le choix de la langue appropriée pour votre reçu.

Prétraitement d'images

Vous pouvez améliorer les résultats OCR en appliquant des techniques de prétraitement de l'image telles que :

  1. Désinclinaison : Corrigez toute rotation ou inclinaison de l'image.
  2. Débruitage : Améliorez la lisibilité du texte en supprimant le bruit des images.

Voici un exemple de manière d'appliquer ces techniques :

using IronOcr;

// Initialize the IronTesseract class
var ocr = new IronTesseract();

// Load the image of your receipt and apply preprocessing techniques
using (var input = new OcrInput(@"path/to/your/receipt/image.png"))
{
    input.DeNoise(); // Remove noise from the image
    input.DeSkew();  // Correct any skewing in the image

    // Perform OCR and extract the recognized text
    var result = ocr.Read(input);
    Console.WriteLine(result.Text);
}
using IronOcr;

// Initialize the IronTesseract class
var ocr = new IronTesseract();

// Load the image of your receipt and apply preprocessing techniques
using (var input = new OcrInput(@"path/to/your/receipt/image.png"))
{
    input.DeNoise(); // Remove noise from the image
    input.DeSkew();  // Correct any skewing in the image

    // Perform OCR and extract the recognized text
    var result = ocr.Read(input);
    Console.WriteLine(result.Text);
}
Imports IronOcr

' Initialize the IronTesseract class
Private ocr = New IronTesseract()

' Load the image of your receipt and apply preprocessing techniques
Using input = New OcrInput("path/to/your/receipt/image.png")
	input.DeNoise() ' Remove noise from the image
	input.DeSkew() ' Correct any skewing in the image

	' Perform OCR and extract the recognized text
	Dim result = ocr.Read(input)
	Console.WriteLine(result.Text)
End Using
$vbLabelText   $csharpLabel

Sélection de la langue

IronOCR prend en charge plus de 125 langues, et le choix de la langue correcte pour votre reçu peut améliorer considérablement les résultats OCR. Pour spécifier la langue, ajoutez la ligne suivante à votre code :

ocr.Configuration.Language = OcrLanguage.English;
ocr.Configuration.Language = OcrLanguage.English;
ocr.Configuration.Language = OcrLanguage.English
$vbLabelText   $csharpLabel

Extraction des données à partir des résultats de la reconnaissance optique de caractères (OCR)

Avec le processus OCR terminé, il est temps d'extraire des informations spécifiques du texte. Selon vos besoins, vous pouvez vouloir extraire des données telles que :

  1. Nom et adresse du magasin.
  2. Date et heure de l'achat.
  3. Noms des articles et prix.
  4. Sous-total, taxe et montant total.

Pour ce faire, vous pouvez utiliser des expressions régulières ou des techniques de manipulation de chaînes dans votre application .NET. Par exemple, vous pouvez extraire la date du résultat OCR en utilisant l'extrait de code suivant :

using System;
using System.Text.RegularExpressions;

// Define a regular expression pattern for matching dates
var datePattern = @"\d{1,2}\/\d{1,2}\/\d{2,4}";

// Search for a date in the OCR result text
var dateMatch = Regex.Match(result.Text, datePattern);
if (dateMatch.Success)
{
    // Parse the matched date string into a DateTime object
    var dateValue = DateTime.Parse(dateMatch.Value);
    Console.WriteLine("Date: " + dateValue);
}
using System;
using System.Text.RegularExpressions;

// Define a regular expression pattern for matching dates
var datePattern = @"\d{1,2}\/\d{1,2}\/\d{2,4}";

// Search for a date in the OCR result text
var dateMatch = Regex.Match(result.Text, datePattern);
if (dateMatch.Success)
{
    // Parse the matched date string into a DateTime object
    var dateValue = DateTime.Parse(dateMatch.Value);
    Console.WriteLine("Date: " + dateValue);
}
Imports System
Imports System.Text.RegularExpressions

' Define a regular expression pattern for matching dates
Private datePattern = "\d{1,2}\/\d{1,2}\/\d{2,4}"

' Search for a date in the OCR result text
Private dateMatch = Regex.Match(result.Text, datePattern)
If dateMatch.Success Then
	' Parse the matched date string into a DateTime object
	Dim dateValue = DateTime.Parse(dateMatch.Value)
	Console.WriteLine("Date: " & dateValue)
End If
$vbLabelText   $csharpLabel

Vous pouvez créer des modèles similaires pour d'autres informations que vous devez extraire du reçu.

Stockage et analyse des données extraites

Maintenant que vous avez extrait les informations pertinentes de votre reçu, vous pouvez les stocker dans une base de données, les analyser, ou les exporter vers d'autres formats de fichiers tels que CSV, JSON ou Excel.

Conclusion

En conclusion, l'OCR de reçus avec IronOCR est une solution innovante et efficace pour numériser et gérer vos données financières. Avec IronOCR, vous pouvez remplacer la saisie manuelle des données. En suivant ce guide étape par étape, vous pouvez exploiter la puissance d'IronOCR pour améliorer le suivi de vos dépenses et l'analyse des données. Le mieux est qu'IronOCR offre un essai gratuit, vous permettant de découvrir ses capacités sans aucun engagement.

Après la période d'essai, si vous décidez de continuer à utiliser IronOCR, la licence commence à partir de $799, offrant un moyen rentable de tirer parti des avantages de la technologie OCR dans vos applications.

Questions Fréquemment Posées

Comment convertir une image de reçu en texte numérique en utilisant C#?

Vous pouvez convertir une image de reçu en texte numérique en utilisant IronOCR en initialisant la classe IronTesseract, en chargeant l'image avec OcrInput et en appelant la méthode Read pour extraire le texte.

Qu'est-ce que la reconnaissance optique de caractères et comment fonctionne-t-elle pour les reçus?

La reconnaissance optique de caractères (OCR) est une technologie qui transforme le texte des images ou des documents numérisés en données lisibles par machine. Elle fonctionne pour les reçus en scannant le matériel imprimé et en le convertissant en texte pouvant être stocké et analysé à l'aide d'IronOCR.

Comment puis-je améliorer la qualité des résultats OCR pour les images de reçus?

Améliorer les résultats de l'OCR peut être réalisé en s'assurant que les images des reçus sont de haute qualité, en utilisant des techniques de prétraitement d'image comme le redressement et la débruitage, et en sélectionnant les bons paramètres de langue dans IronOCR.

Quels sont les avantages d'utiliser une bibliothèque OCR C# pour l'extraction de données de reçus?

Utiliser une bibliothèque OCR C# comme IronOCR améliore l'extraction de données de reçus en fournissant une haute précision, un support pour plus de 125 langues et des options de personnalisation, facilitant son intégration dans des projets .NET.

Comment les données de reçus extraites peuvent-elles être utilisées pour des rapports et des analyses?

Les données de reçus extraites peuvent être stockées dans des bases de données ou exportées vers des formats tels que CSV, JSON ou Excel, permettant un traitement, un rapport et une analyse ultérieurs.

Quelle est la procédure d'installation d'une bibliothèque OCR dans un environnement .NET?

Pour installer IronOCR dans un environnement .NET, ouvrez Visual Studio, naviguez vers 'Gérer les packages NuGet', recherchez 'IronOCR', puis installez-le dans votre projet.

Comment des données spécifiques peuvent-elles être extraites des sorties OCR pour les reçus?

Des données spécifiques peuvent être extraites des sorties OCR en utilisant des expressions régulières ou la manipulation de chaînes pour analyser des informations telles que les noms de magasins, les dates d'achat et les prix des articles.

Quels sont les défis courants de l'OCR de données de reçus et comment peuvent-ils être surmontés?

Les défis courants incluent la mauvaise qualité des images et des mises en page complexes des reçus. Ceux-ci peuvent être surmontés en améliorant la qualité de l'image, en utilisant des techniques de prétraitement et en exploitant les options de personnalisation dans IronOCR.

IronOCR fournit-il un support multilingue pour l'OCR de reçus?

Oui, IronOCR fournit un support multilingue pour l'OCR de reçus, lui permettant de reconnaître et traiter le texte dans plus de 125 langues, améliorant son utilité pour les applications globales.

Existe-t-il une version d'essai disponible pour la bibliothèque OCR C#, et quelles sont les options de licence?

IronOCR propose une version d'essai gratuite permettant aux utilisateurs d'explorer ses fonctionnalités. Après l'essai, diverses options de licence sont disponibles, en commençant par une version allégée et économique.

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