OCR chinois en C# et .NET

This article was translated from English: Does it need improvement?
Translated
View the article in English

Autres versions de ce document :

IronOCR est un composant logiciel C# qui permet aux développeurs .NET de lire du texte à partir d'images et de documents PDF dans 126 langues, dont le chinois. Le pack de langue chinoise contient à la fois les caractères chinois simplifiés et les caractères chinois traditionnels.

Il s'agit d'une version avancée de Tesseract, conçue exclusivement pour les développeurs .NET, et qui surpasse régulièrement les autres moteurs Tesseract en termes de vitesse et de précision. La bibliothèque permet la reconnaissance d'images et de documents de différents formats dans diverses langues, dont le chinois. Le logiciel prend en charge plus de 126 langues et offre un niveau élevé de précision de reconnaissance par rapport à la concurrence. L'API d'IronOCR a été conçue dans un souci d'extensibilité et de personnalisation. Vous pouvez améliorer les performances d'IronOCR en ajoutant vos données de réglage ou vos fonctionnalités au tracker. IronOCR utilise de nombreuses techniques de reconnaissance optique de caractères et peut être utilisé sur un PC Windows, Linux, macOS et d'autres plateformes bien connues.

Contenu de IronOcr.Languages.Chinese

Ce package contient 126 langues OCR pour .NET :

  • Chinois simplifié
  • Chinois simplifié Meilleur
  • Chinois simplifié rapide
  • Chinois simplifiéVertical
  • Chinois simplifiéVerticalBest
  • Chinois simplifiéVerticalFast
  • ChineseTraditional
  • ChineseTraditionalBest
  • Repas traditionnel chinois
  • Verticale traditionnelle chinoise
  • Verticale traditionnelle chinoiseBest
  • Chinois traditionnel vertical rapide

Télécharger

Nous pouvons télécharger le pack de langue chinoise [中文 (Zhōngwén)] à partir des liens suivants :

  • Télécharger au format ZIP
  • Installer avec NuGet

Utilisation d'IronOCR pour la langue chinoise

Créer ou ouvrir un projet C

Pour commencer avec IronOCR, vous devez créer un projet C# .NET. Nous utilisons Visual Studio 2022 à cette fin. Vous pouvez choisir une version en fonction de vos besoins, la dernière version de Visual Studio étant recommandée pour une expérience optimale. Nous allons créer une interface graphique pour sélectionner l'image. IronOCR peut également être utilisé dans une application console en fournissant le chemin direct de l'image. Pour créer un projet C# dans Visual Studio 2022, suivez les étapes suivantes :

  • Ouvrez Visual Studio 2022.
  • Cliquez sur le bouton "Créer un nouveau projet".

Image 1

  • Saisissez " Windows " dans la barre de recherche, sélectionnez l'application " Windows Forms " dans les résultats de la recherche, puis cliquez sur le bouton " Suivant ".

Image 2

  • Donnez un nom au projet. J'attribue le nom " ChineseOCR " au projet. Après avoir saisi le nom, cliquez sur le bouton " Suivant ".

Image 3

  • Sélectionnez le framework .NET sur l'écran suivant. Choisissez le framework .NET en fonction des besoins de votre projet. Nous avons sélectionné la version .NET 5.0 pour ce tutoriel.

Image 4

Après avoir effectué votre sélection, cliquez sur le bouton " Créer ". Cela créera le projet C# Windows Forms dans Visual Studio.

Le projet a été créé et est maintenant prêt à être utilisé avec la bibliothèque IronOCR. Vous pouvez également utiliser un projet C# existant. Ouvrez le projet et procédez à l'installation de la bibliothèque IronOCR. La section suivante explique comment installer la bibliothèque IronOCR dans les projets C#.

Installation

Utilisation du gestionnaire de packages NuGet

Pour installer la bibliothèque IronOCR avec le gestionnaire de packages NuGet, il faut ouvrir l'interface de ce dernier. Suivez ces étapes pour installer la bibliothèque IronOCR :

  • Cliquez sur " Outils " dans le menu principal, survolez " Gestionnaire de packages NuGet " et sélectionnez " Gérer les packages NuGet pour la solution ".

Image 5

Cela ouvrira l'interface du gestionnaire de packages NuGet. Rendez-vous dans l'onglet " Parcourir " et recherchez IronOCR Chinese. Sélectionnez le package approprié dans les résultats de recherche et cliquez sur le bouton " Installer " pour l'installer.

Image 6

L'installation de la bibliothèque va commencer. Après l'installation, vous pourrez utiliser la bibliothèque IronOCR dans votre projet.

Utilisation de la console du gestionnaire de packages

Utiliser une console est toujours une option facile. Nous pouvons également installer la bibliothèque IronOCR à l'aide de la console du gestionnaire de packages. Suivez ces étapes pour installer la bibliothèque IronOCR :

  • Ouvrez la console du gestionnaire de packages dans Visual Studio. Il se trouve généralement en bas de Visual Studio.
  • Exécutez la commande suivante dans la console :

    Install-Package IronOcr.Languages.Chinese
  • Vous pourrez suivre la progression de l'installation de la bibliothèque dans la console. La bibliothèque sera installée automatiquement. Après l'installation, le projet sera prêt pour la bibliothèque IronOCR.

Exemple de code : OCR pour la langue chinoise

Il est maintenant temps d'écrire le code pour implémenter la bibliothèque IronOCR pour la langue chinoise. Tout d'abord, nous devons développer l'interface permettant de sélectionner le fichier image. Voyons comment procéder.

Développement du frontend

Nous allons utiliser les éléments 'Toolbox' pour concevoir le devant. Nous allons créer un bouton, une zone d'image, une zone de texte enrichi et deux étiquettes. Nous allons glisser-déposer ces éléments depuis la boîte à outils et les placer dans le formulaire Windows. Disposez ces éléments selon vos besoins.

Le bouton servira à sélectionner le fichier image sur l'ordinateur, la zone d'image chargera l'image sélectionnée et la zone de texte enrichi affichera le texte de sortie. Vous pouvez ajuster la taille de chaque élément selon vos besoins. Le design final de l'interface utilisateur ressemblera à ceci :

Image 7

Cette fenêtre apparaîtra lorsque vous exécuterez le projet. Nous avons configuré l'alignement du formulaire Windows pour qu'il apparaisse au centre de l'écran.

Notre interface utilisateur est prête. Ajoutons maintenant la fonctionnalité backend au bouton.

Code backend pour IronOCR

Tout d'abord, importez l'espace de noms IronOCR pour l'utiliser dans notre code en écrivant la ligne suivante en haut du fichier :

using IronOCR;
using IronOCR;
Imports IronOCR
$vbLabelText   $csharpLabel

Nous utiliserons le bouton " Sélectionner une image " pour sélectionner et charger l'image dans la zone d'image. IronOCR traitera l'image du texte chinois simplifié et affichera le texte de sortie dans la zone de texte enrichi. Ajoutons la fonctionnalité au bouton en double-cliquant dessus et en saisissant le code suivant :

private void btn_image_Click(object sender, EventArgs e)
{
    OpenFileDialog open = new OpenFileDialog();
    if (open.ShowDialog() == DialogResult.OK)
    {
        // Display image in picture box  
        img_image.Image = new Bitmap(open.FileName);

        var Ocr = new IronTesseract();

        // Set OCR language to Chinese Traditional
        Ocr.Language = OcrLanguage.ChineseTraditional;

        using (var Input = new OcrInput(open.FileName))
        {
            // Perform OCR on the image input
            var Result = Ocr.Read(Input);

            // Output the recognized text
            txt_output.Text = Result.Text;
        }
    }
}
private void btn_image_Click(object sender, EventArgs e)
{
    OpenFileDialog open = new OpenFileDialog();
    if (open.ShowDialog() == DialogResult.OK)
    {
        // Display image in picture box  
        img_image.Image = new Bitmap(open.FileName);

        var Ocr = new IronTesseract();

        // Set OCR language to Chinese Traditional
        Ocr.Language = OcrLanguage.ChineseTraditional;

        using (var Input = new OcrInput(open.FileName))
        {
            // Perform OCR on the image input
            var Result = Ocr.Read(Input);

            // Output the recognized text
            txt_output.Text = Result.Text;
        }
    }
}
Private Sub btn_image_Click(ByVal sender As Object, ByVal e As EventArgs)
	Dim open As New OpenFileDialog()
	If open.ShowDialog() = DialogResult.OK Then
		' Display image in picture box  
		img_image.Image = New Bitmap(open.FileName)

		Dim Ocr = New IronTesseract()

		' Set OCR language to Chinese Traditional
		Ocr.Language = OcrLanguage.ChineseTraditional

		Using Input = New OcrInput(open.FileName)
			' Perform OCR on the image input
			Dim Result = Ocr.Read(Input)

			' Output the recognized text
			txt_output.Text = Result.Text
		End Using
	End If
End Sub
$vbLabelText   $csharpLabel

Lorsqu'un utilisateur clique sur le bouton, une boîte de dialogue apparaît pour sélectionner l'image. Lorsque l'utilisateur sélectionne l'image, celle-ci se charge automatiquement dans la zone d'image. Nous utilisons Bitmap pour afficher l'image dans la zone d'image. Ensuite, IronOCR convertit l'image en texte chinois. Nous avons configuré la langue de l'OCR sur Chinois traditionnel pour la reconnaissance de texte en chinois traditionnel. La fonction Ocr.Read traite et stocke le résultat de la reconnaissance optique de caractères (OCR) dans la variable Result . Si nécessaire, vous pouvez enregistrer le texte au format PDF, texte ou HTML en utilisant la fonction SaveAs pour enregistrer des fichiers dans différents formats de sortie pris en charge par IronOCR.

Exécuter le projet

Il est maintenant temps de lancer le projet. Cliquez sur le bouton Exécuter dans Visual Studio. Vous devriez voir cet écran :

Image 8

Cliquez sur le bouton " Sélectionner une image ". Cela ouvrira la boîte de dialogue Sélectionner des fichiers. Sélectionnez un fichier image et appuyez sur Entrée.

Image 9

Il chargera l'image dans la zone d'image, la scannera automatiquement et affichera le résultat dans la zone de texte.

Image 10

Voici le résultat obtenu à partir de l'image que nous avons sélectionnée. IronOCR prend également en charge la lecture et la numérisation des fichiers PDF. Vous pouvez utiliser le format modifiable des fichiers PDF pour numériser et reconnaître du texte à l'aide d'IronOCR, et ce dans différentes langues. IronOCR peut également transformer un document PDF existant en un PDF consultable. Il utilise différents filtres d'image pour améliorer la netteté des images. Voici quelques-uns des filtres :

  • Input.Binarize()
  • Input.Contrast()
  • Input.Deskew()
  • Input.DeNoise()
  • Input.Dilate()
  • Input.EnhanceResolution(300)

Toutes ces fonctions améliorent la visibilité des caractères. IronOCR utilise ces fonctions pour créer un PDF consultable. Voici un exemple :

using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    Input.AddPdf("scan.pdf");
    // Clean up twisted pages
    Input.Deskew();
    var Result = Ocr.Read(Input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}
using IronOcr;
var Ocr = new IronTesseract();
using (var Input = new OcrInput())
{
    Input.AddPdf("scan.pdf");
    // Clean up twisted pages
    Input.Deskew();
    var Result = Ocr.Read(Input);
    Result.SaveAsSearchablePdf("searchable.pdf");
}
Imports IronOcr
Private Ocr = New IronTesseract()
Using Input = New OcrInput()
	Input.AddPdf("scan.pdf")
	' Clean up twisted pages
	Input.Deskew()
	Dim Result = Ocr.Read(Input)
	Result.SaveAsSearchablePdf("searchable.pdf")
End Using
$vbLabelText   $csharpLabel

Licences

IronOCR est gratuit pour le développement. Vous pouvez utiliser gratuitement toutes ses fonctionnalités. IronOCR propose également un essai gratuit pour la production, sans aucun paiement requis. Iron Software propose une offre très intéressante : une suite de cinq logiciels pour le prix de deux seulement. Il vous suffit de payer une seule fois le prix de deux logiciels pour obtenir les cinq produits, y compris IronPDF et IronXL. Vous trouverez plus d'informations sur les licences ici .