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 à l'aide d'IronOCR change la donne pour les entreprises comme pour les particuliers. Le processus permet d'extraire des informations importantes des reçus physiques et de les convertir en données numériques. Cet article vous guidera pas à pas dans l'utilisation d'IronOcr pour tirer le meilleur parti de vos reçus.

Une introduction rapide à l'OCR

La reconnaissance optique de caractères (ROC) est une technologie qui permet aux ordinateurs de lire et de comprendre du texte à partir d'images ou de documents scannés. En convertissant un texte imprimé en texte lisible par une machine, l'OCR vous permet de stocker, de traiter et d'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. It enables developers to extract text from images, PDFs, and other document formats. IronOCR est construit sur la base du populaire moteur OCR de Tesseract et ajoute des fonctionnalités supplémentaires, ce qui en fait un choix idéal pour diverses applications, notamment 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 de reçus par OCR :

  • Haute précision : IronOcr offre une excellente précision de l'API OCR, garantissant une extraction fiable des données des reçus et autres documents.
  • Support multilingue : IronOCR prend en charge 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 permet aux développeurs d'implémenter facilement la fonctionnalité OCR dans leurs projets.
  • Personnalisable : IronOCR fournit diverses options pour affiner les résultats de l'OCR, garantissant une extraction de données optimale pour votre cas d'utilisation spécifique.

4. le fonctionnement d'IronOCR

IronOCR utilise des algorithmes OCR avancés pour reconnaître et extraire du texte à partir d'images et de documents. Elle peut traiter différents formats, notamment JPEG, PNG, TIFF et PDF. La bibliothèque lit le fichier d'entrée, reconnaît le texte qu'il contient et produit le texte extrait sous la forme d'une chaîne, qui peut ensuite être traitée ou stockée selon les besoins. IronOcr utilise également computer vision pour obtenir les meilleurs résultats.

5. Conditions préalables à l'utilisation d'IronOCR

Pour commencer à utiliser IronOcr pour l'extraction de données de reçus, vous devrez d'abord installer le package IronOCR. Cette traduction peut être réalisée facilement par l'intermédiaire de NuGet, le gestionnaire de paquets pour .NET. Il vous suffit d'ouvrir votre projet dans Visual Studio et de suivre les étapes suivantes :

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

    OCR Receipt Data Extraction (Step-By-Step Tutorial), Figure 1 : Recherche du package IronOcr dans l'interface utilisateur du gestionnaire de packages NuGet Recherche du package IronOcr dans l'interface utilisateur du gestionnaire de packages NuGet

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

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

  1. Utilisez un document scanné. Vous pouvez utiliser un scanner haute résolution pour numériser les reçus.
  2. Veillez à ce que le reçu soit bien éclairé et sans ombres.
  3. Redressez les plis du reçu afin de ne pas cacher d'informations essentielles.
  4. Veillez à ce que le texte du reçu soit clair et non maculé, afin d'améliorer le traitement du reçu.

    OCR Receipt Data Extraction (Step-By-Step Tutorial), 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. effectuer une reconnaissance optique de caractères sur l'image du reçu

Une fois IronOCR installé et votre image de reçu prête, il est temps d'effectuer le processus d'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 for .NET dans votre application .NET, ce qui vous permet 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 d'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, qui représente l'image d'entrée pour le processus OCR. Le @"path/to/your/receipt/image.png" doit être remplacé par le chemin d'accès réel à l'image de votre reçu. La déclaration using garantit que les ressources allouées à l'instance OcrInput sont correctement libérées une fois l'opération d'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 en 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. Elle amorcera le processus de reconnaissance des reçus.

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

Enfin, cette ligne affiche 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.

OCR Receipt Data Extraction (Step-By-Step Tutorial), Figure 3 : Sortie des textes extraits Sortie des textes extraits

Affiner les résultats de l'OCR

IronOcr propose plusieurs options pour améliorer la précision et les performances de l'OCR. Pour ce faire, il faut notamment prétraiter l'image, ajuster les paramètres du moteur d'OCR et choisir la langue appropriée pour votre reçu.

Traitement préalable des images

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

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

Voici un exemple d'application de 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 fait de choisir la bonne langue pour votre reçu peut améliorer considérablement les résultats de l'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 de données à partir de résultats d'OCR

Une fois le processus d'OCR terminé, il est temps d'extraire des informations spécifiques du texte. En fonction de vos besoins, vous pouvez extraire des données telles que :

  1. Nom et adresse du magasin.
  2. Date et heure d'achat.
  3. Noms et prix des articles.
  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 de l'OCR à l'aide de 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 éléments d'information 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 fichier tels que CSV, JSON ou Excel.

Conclusion

En conclusion, l'OCR de reçus à l'aide d'IronOcr est une solution innovante et efficace pour la numérisation et la gestion de 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 votre suivi des dépenses et l'analyse des données. Le plus intéressant, c'est qu'IronOcr propose une essai gratuit, ce qui vous permet d'expérimenter ses capacités sans aucun engagement.

Après la période d'essai, si vous décidez de continuer à utiliser IronOcr, la licence démarre à partir de $799, ce qui constitue 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