Comment corriger les couleurs d'image pour la lecture en C# | IronOCR

Comment fixer les couleurs d'une image pour la lecture en C#35;

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

Corrigez les couleurs des images en C# à l'aide des méthodes de binarisation, d'échelle de gris, d'inversion et de remplacement des couleurs d'IronOCR pour améliorer la lisibilité du texte et la précision de l'OCR. Lisez les couleurs de texte spécifiques pour une extraction ciblée.

Démarrage rapide : Isoler des couleurs de texte spécifiques

Utilisez la méthode SelectTextColor d'IronOcr pour concentrer l'OCR sur des couleurs de texte spécifiques - aucune manipulation d'image complexe n'est nécessaire. Chargez une image, choisissez la couleur et la tolérance du texte, et extrayez uniquement ce texte pour obtenir des résultats d'OCR précis.

```cs:title=Fixer la couleur du texte rapidement avec IronOCR new IronTesseract().Read(new IronOcr.OcrImageInput("sample.jpg").SelectTextColor(new IronSoftware.Drawing.Color("#DB645C")), 60)) ;


<div class="hsg-featured-snippet">
    <h3>Flux de travail minimal (5 étapes)</h3>
    <ol>
        <li><a class="js-modal-open" data-modal-id="trial-license-after-download" href="https://nuget.org/packages/IronOcr/">Téléchargez une bibliothèque C# pour corriger les couleurs des images</a></li>
        <li>Importez le document PDF et les images pour la lecture</li>
        <li>Appliquer des effets de couleur : binarisation, niveaux de gris, inversion et remplacement des couleurs</li>
        <li>Exportez l'image corrigée pour la visionner</li>
        <li>Lire des couleurs de texte spécifiques à l'aide de <code>SelectTextColor</code></li>
    </ol>
</div>

<br class="clear">

## Comment binariser une image pour améliorer l'OCR?

La binarisation convertit les images en format bicolore, généralement en noir et blanc. Cela permet de séparer le texte de l'arrière-plan et de réduire le bruit, ce qui rend le texte plus distinct et plus facile à lire.

<h3>Pourquoi la binarisation améliore-t-elle la précision de l'OCR ?

Appliquez la binarisation à l'aide de la méthode `Binarize`. L'OCR fonctionne mieux avec des images très contrastées comportant du texte noir sur fond blanc. Cette méthode permet d'établir une distinction claire entre l'arrière-plan et les caractères.

La binarisation donne d'excellents résultats avec les documents numérisés présentant un éclairage inégal ou un bruit de fond. L'algorithme analyse les images et détermine les seuils optimaux pour séparer le texte de premier plan de l'arrière-plan. Pour les techniques de prétraitement avancées, voir le guide [OCR Image Optimization Filters](https://ironsoftware.com/csharp/ocr/examples/ocr-image-filters-for-net-tesseract/).

<h3>Quel est le code d'implémentation de la binarisation ?

```csharp
:path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-binarize-image.cs

Pour le traitement par lots, combinez la binarisation avec d'autres filtres. Utilisez l'Assistant de filtrage pour déterminer la meilleure combinaison de filtres pour vos images.

Comment exporter et comparer les résultats?

Exportez les images modifiées à l'aide de la méthode SaveAsImages. Comparez les images avant et après la binarisation ci-dessous.

Sample image with red and black text on blue-gray background showing OCR challenges before binarization
Binarized version showing clear black text on pure white background for optimal OCR processing

Comment convertir des images en niveaux de gris pour une meilleure lecture ? La conversion des images en niveaux de gris réduit l'encombrement visuel et améliore la lisibilité. Cela est utile lorsque les couleurs originales détournent l'attention du contenu. ### Quand devrais-je utiliser les niveaux de gris plutôt que d'autres méthodes? Appliquez les niveaux de gris à l'aide de la méthode `ToGrayScale`. Le processus calcule la moyenne des valeurs R, G et B. Les niveaux de gris conviennent bien aux arrière-plans colorés ou aux filigranes qui interfèrent avec la reconnaissance du texte. Contrairement à la binarisation, les niveaux de gris préservent les détails des images présentant des variations subtiles. Utilisez-le pour les photographies comportant du texte intégré ou des mises en page complexes. Pour les scans de mauvaise qualité, voir [Réparation de scans et d'images de mauvaise qualité](https://ironsoftware.com/csharp/ocr/examples/ocr-low-quality-scans-tesseract/). ### Quel est le code simple pour la conversion en niveaux de gris? ```csharp :path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-grayscale-image.cs ``` Pour des qualités d'image variées, combinez les niveaux de gris avec d'autres étapes de prétraitement. La documentation [Classe OcrInput](https://ironsoftware.com/csharp/ocr/examples/csharp-ocr-input-for-iron-tesseract/) explique le chaînage de plusieurs filtres. ### Comment l'échelle de gris se compare-t-elle à l'original ?
Sample text with red headers and black body text showing multiple colors before grayscale conversion
Grayscale document with clear text about tech executives, demonstrating improved readability after conversion

## Quand devrais-je inverser les couleurs d'une image? L'inversion des couleurs renforce le contraste. Convertir un texte blanc sur fond noir en un texte noir sur fond blanc améliore la lisibilité. ### Comment mettre en œuvre l'inversion des couleurs? Utilisez la méthode `Invert` pour inverser les couleurs. Passez une valeur booléenne pour supprimer les canaux de couleur et retourner les niveaux de gris. L'inversion des couleurs permet de traiter les images négatives ou les captures d'écran à thème sombre. Les applications modernes utilisent des interfaces en mode sombre qui défient l'OCR traditionnel. L'inversion de ces images garantit une reconnaissance optimale. Pour différents types d'images, voir le [Guide de configuration de l'OCR rapide](https://ironsoftware.com/csharp/ocr/examples/tune-tesseract-for-speed-in-dotnet/). ```csharp :path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-invert-image.cs ``` Pour le traitement par lots avec des types de documents mixtes, mettez en œuvre la détection automatique de l'arrière-plan sombre. [Les fonctionnalités de vision par ordinateur](https://ironsoftware.com/csharp/ocr/how-to/computer-vision/) dans IronOcr identifient le moment où une inversion est nécessaire.

Quelle est la différence entre les options d'inversion ? Comparez la méthode `Invert` avec et sans niveaux de gris :
Color-inverted document maintaining original color channels with reversed values
Business text with inverted colors showing white text on dark background demonstrating color inversion effect

## Comment remplacer des couleurs spécifiques dans une image? Remplacez les couleurs spécifiques pour mettre en évidence ou atténuer certains éléments. Utilisez ceci pour améliorer la mise en évidence du texte ou corriger les contrastes problématiques.

Pourquoi la tolérance est-elle importante dans le remplacement des couleurs ? La méthode `ReplaceColor` requiert la couleur actuelle, la nouvelle couleur et la valeur de tolérance. Une tolérance plus élevée permet de mieux gérer les images floues. La tolérance détermine à quel point les pixels doivent correspondre à la couleur cible. Les valeurs faibles (0-50) conviennent aux couleurs uniformes. Des valeurs plus élevées (100-200) permettent de traiter le texte anticrénelé ou les artefacts de compression. Ceci est utile pour les documents scannés où les taches d'encre ou la texture du papier créent des variations. ### Comment mettre en œuvre le remplacement des couleurs? ```csharp :path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-replace-color.cs ``` ### Comment gérer les scénarios de remplacement de couleur avancés? Enchaînez plusieurs remplacements pour des scénarios complexes : ```cs /* :path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-multiple-replacements.cs */ // Replace multiple colors in sequence using var imageInput = new OcrImageInput("multi-color-document.jpg"); // Replace red text with black imageInput.ReplaceColor(IronSoftware.Drawing.Color.Red, IronSoftware.Drawing.Color.Black, 70); // Replace blue headers with dark gray imageInput.ReplaceColor(IronSoftware.Drawing.Color.Blue, IronSoftware.Drawing.Color.DarkGray, 60); // Replace light yellow background with white imageInput.ReplaceColor(new IronSoftware.Drawing.Color("#FFFACD"), IronSoftware.Drawing.Color.White, 40); // Perform OCR on the cleaned image var result = ocrTesseract.Read(imageInput); ``` Pour les remplacements de couleurs complexes, voir [Filtres de correction d'image](https://ironsoftware.com/csharp/ocr/how-to/image-quality-correction/) pour des techniques de prétraitement supplémentaires.

Quels sont les résultats visuels du remplacement des couleurs ?
Text sample with orange-red colored names and content on blue background showing original colors before replacement
Document after color replacement showing dark cyan headers replacing original orange-red text

## Comment lire uniquement des couleurs de texte spécifiques? Lire des couleurs de texte spécifiques à l'aide de la méthode `SelectTextColor`. Spécifiez la couleur cible et la tolérance (0-255). La tolérance représente les différences admissibles entre le pixel et la couleur sélectionnée pour les valeurs R, G et B.

Comment la tolérance aux couleurs affecte-t-elle les résultats ? ```csharp :path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-select-text-color.cs ``` Utilisez la lecture sélective des couleurs pour les formulaires comportant des sections codées en couleur, pour extraire le texte surligné ou pour lire des messages d'avertissement spécifiques. Pour l'extraction de données structurées, voir [OcrResult Class](https://ironsoftware.com/csharp/ocr/examples/results-objects/) pour le traitement avancé.

Quel résultat puis-je attendre de la sélection des couleurs ? Le résultat de l'OCR ne lit que le texte de couleur orange :
Debug console showing OCR extracted orange text : MASAYOSHI SON et YASUMITSU SHIGETA à partir d'un document commercial
## Comment sauvegarder des PDF modifiés avec des filtres appliqués? IronOCR enregistre les PDF modifiés avec ou sans filtres. Le deuxième paramètre de la méthode `SaveAsSearchablePdf` indique s'il faut enregistrer avec des filtres.

Quelle est la mise en œuvre des PDF consultables ? ```cs :path=/static-assets/ocr/content-code-examples/how-to/image-quality-correction-searchable-pdf.cs ``` ### Quand dois-je appliquer des filtres au PDF enregistré? Appliquez des filtres pour créer des documents plus propres et plus lisibles. Cela permet d'archiver ou de partager des documents sur différents appareils. Voir [Créer des PDF consultables par OCR](https://ironsoftware.com/csharp/ocr/examples/tesseract-create-searchable-pdf/) pour plus d'informations. Pour les documents complexes contenant des tableaux, explorez [Lire le tableau dans le document](https://ironsoftware.com/csharp/ocr/examples/read-table-in-document/) pour une extraction spécialisée. Pour le traitement de gros volumes, voir [Multithreaded Tesseract OCR](https://ironsoftware.com/csharp/ocr/examples/csharp-tesseract-multithreading-for-speed/) pour optimiser l'application du filtre sur plusieurs documents.

Questions Fréquemment Posées

Comment puis-je corriger des couleurs d'image médiocres qui affectent la précision de l'OCR ?

IronOcr propose plusieurs méthodes de correction des couleurs, notamment la binarisation, la conversion des niveaux de gris, l'inversion et le remplacement des couleurs. Ces filtres permettent d'améliorer la lisibilité du texte en renforçant le contraste entre le texte et l'arrière-plan, ce qui permet au moteur OCR d'extraire plus facilement du texte à partir d'images dont la qualité des couleurs est médiocre.

Qu'est-ce que la binarisation et quand dois-je l'utiliser pour l'OCR ?

La binarisation convertit les images au format bicolore (généralement en noir et blanc) à l'aide de la méthode Binarize d'IronOcr. Elle est particulièrement efficace pour les documents numérisés avec un éclairage inégal ou un bruit de fond, car elle crée une distinction claire entre le texte et le fond en analysant l'image et en déterminant les seuils optimaux de séparation.

Comment extraire d'une image un texte de couleur spécifique ?

La méthode SelectTextColor d'IronOcr permet de focaliser l'OCR sur des couleurs de texte spécifiques sans manipulation complexe de l'image. Il suffit de spécifier la couleur cible et le niveau de tolérance - par exemple, SelectTextColor(new IronSoftware.Drawing.Color("#DB645C")), 60) - pour n'extraire que le texte dans cette gamme de couleurs.

Quand dois-je convertir des images en niveaux de gris au lieu d'utiliser la binarisation ?

Utilisez la méthode ToGrayScale d'IronOcr lorsque vous avez affaire à des arrière-plans colorés ou à des filigranes qui interfèrent avec la reconnaissance de texte. Contrairement à la binarisation, l'échelle de gris préserve les détails des images avec des variations subtiles, ce qui la rend idéale lorsque vous devez maintenir la qualité de l'image tout en réduisant l'encombrement visuel.

Puis-je exporter des images corrigées pour visualiser les résultats des filtres de couleur ?

Oui, IronOCR propose la méthode SaveAsImages pour exporter des images modifiées après application de corrections colorimétriques. Cela vous permet de comparer les résultats avant et après, vous aidant à déterminer quelles méthodes de correction des couleurs fonctionnent le mieux pour vos images spécifiques.

Comment puis-je déterminer le meilleur filtre de correction des couleurs pour mes images ?

IronOCR comprend un outil d'assistant de filtre qui aide à déterminer la combinaison de filtres optimale pour vos images. Pour le traitement par lots, vous pouvez combiner plusieurs filtres comme la binarisation avec d'autres techniques de prétraitement afin d'obtenir les meilleurs résultats d'OCR pour votre type de document.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite
Revu par
Jeff Fritz
Jeffrey T. Fritz
Responsable principal du programme - Équipe de la communauté .NET
Jeff est également responsable principal du programme pour les équipes .NET et Visual Studio. Il est le producteur exécutif de la série de conférences virtuelles .NET Conf et anime 'Fritz and Friends', une diffusion en direct pour développeurs qui est diffusée deux fois par semaine où il parle de technologie et écrit du code avec les téléspectateurs. Jeff écrit des ateliers, des présentations et prévoit du contenu pour les plus grands événements de développement Microsoft, y compris Microsoft Build, Microsoft Ignite, .NET Conf et le sommet Microsoft MVP
Prêt à commencer?
Nuget Téléchargements 5,246,844 | Version : 2025.12 vient de sortir