Comment fixer les couleurs des images pour la lecture
La correction des couleurs d'une image fait appel à plusieurs techniques pour améliorer la lisibilité et la qualité d'une image. IronOCR propose des méthodes de binarisation, d'échelle de gris, d'inversion et de remplacement des couleurs pour rendre le texte et le contenu d'une image plus lisibles et plus esthétiques, ce qui est particulièrement important lorsque l'on travaille avec l'OCR (Reconnaissance optique de caractères) pour extraire le texte des images. Il est également possible de ne lire que la couleur du texte sélectionné.
Comment fixer les couleurs des images pour la lecture
- Télécharger une bibliothèque C# pour corriger les couleurs des images
- Importer le document PDF et les images pour la lecture
- Appliquer les effets de couleur souhaités, tels que la binarisation, les niveaux de gris, l'inversion et le remplacement des couleurs
- Exporter l'image corrigée pour la visualiser
- Lire des couleurs de texte spécifiques à l'aide de la fonction
SelectTextColor
méthode
Installer avec NuGet
Install-Package IronOcr
Télécharger DLL
Installation manuelle dans votre projet
Installer avec NuGet
Install-Package IronOcr
Télécharger DLL
Installation manuelle dans votre projet
Commencez à utiliser IronPDF dans votre projet dès aujourd'hui avec un essai gratuit.
Découvrez IronOCR sur NuGet pour une installation rapide et un déploiement facile. Avec plus de 8 millions de téléchargements, il transforme OCR avec C#.
Install-Package IronOcr
Envisagez d'installer le IronOCR DLL directement. Téléchargez et installez-le manuellement pour votre projet ou sous forme de GAC : {{lienDllAfficher}}
Installation manuelle dans votre projet
Télécharger la DLLExemple de binarisation d'une image
Ce processus convertit l'image en un format bicolore, généralement en noir et blanc. Il 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.
Pour appliquer l'effet de binarisation à l'image, utilisez la méthode Binarize
. Étant donné que les processus d'OCR fonctionnent mieux avec l'image la plus contrastée, qui présente un texte noir sur un fond blanc, cette méthode s'avère importante pour faire en sorte que le fond se distingue nettement des caractères.
:path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-binarize-image.cs
using IronOcr;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Apply binarize affect
imageInput.Binarize();
// Export the modified image
imageInput.SaveAsImages("binarize");
Imports IronOcr
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Add image
Private imageInput = New OcrImageInput("sample.jpg")
' Apply binarize affect
imageInput.Binarize()
' Export the modified image
imageInput.SaveAsImages("binarize")
Pour plus de facilité, vous pouvez exporter l'image modifiée en utilisant la méthode SaveAsImages
. Vous trouverez ci-dessous une comparaison de l'image avant et après la binarisation.
Avant
Après
Exemple d'image en niveaux de gris
La conversion de l'image en différentes nuances de gris peut la rendre moins distrayante et plus facile à lire. Cette fonction est particulièrement utile lorsque les couleurs originales de l'image provoquent un encombrement visuel.
Pour appliquer l'effet d'échelle de gris à l'image, utilisez la méthode ToGrayScale
. Le processus d'échelle de gris consiste à prendre la moyenne des valeurs R, V et B.
:path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-grayscale-image.cs
// Apply grayscale affect
imageInput.ToGrayScale();
' Apply grayscale affect
imageInput.ToGrayScale()
Avant
Après
Exemple d'inversion d'image
L'inversion des couleurs peut renforcer le contraste. Par exemple, transformer un texte blanc sur fond noir en un texte noir sur fond blanc peut améliorer la lisibilité.
Utilisez la méthode Invert
pour inverser la couleur de l'image. La méthode accepte facultativement une valeur booléenne, qui est utilisée pour supprimer tous les canaux de couleur et renvoyer une image en niveaux de gris.
:path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-invert-image.cs
// Apply invert affect
imageInput.Invert();
' Apply invert affect
imageInput.Invert()
Les images ci-dessous montrent la méthode Invert avec et sans l'option niveaux de gris.
Inversé
Inversé & Grayscaled
Exemple de remplacement de couleur
Cette technique permet de remplacer des couleurs spécifiques de l'image par d'autres couleurs, ce qui peut contribuer à mettre en évidence ou à atténuer certains éléments. Il est souvent utilisé pour faire ressortir le texte ou pour corriger des contrastes de couleurs problématiques.
Pour utiliser la méthode ReplaceColor
, spécifiez la couleur actuelle à remplacer ainsi que la nouvelle couleur. Le troisième paramètre de la méthode, qui correspond à la valeur de la tolérance, est également important. Une plus grande tolérance est nécessaire pour les images floues afin d'obtenir le résultat souhaité.
:path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-replace-color.cs
using IronOcr;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Add image
using var imageInput = new OcrImageInput("sample.jpg");
IronSoftware.Drawing.Color currentColor = new IronSoftware.Drawing.Color("#DB645C");
IronSoftware.Drawing.Color newColor = IronSoftware.Drawing.Color.DarkCyan;
// Replace color
imageInput.ReplaceColor(currentColor, newColor, 80);
// Export the modified image
imageInput.SaveAsImages("replaceColor");
Imports IronOcr
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Add image
Private imageInput = New OcrImageInput("sample.jpg")
Private currentColor As New IronSoftware.Drawing.Color("#DB645C")
Private newColor As IronSoftware.Drawing.Color = IronSoftware.Drawing.Color.DarkCyan
' Replace color
imageInput.ReplaceColor(currentColor, newColor, 80)
' Export the modified image
imageInput.SaveAsImages("replaceColor")
Avant
Après
Exemple de couleur de texte spécifique à la lecture
Cette fonction permet de lire uniquement la couleur de texte spécifiée. Utilisez la méthode SelectTextColor
pour spécifier la couleur sur laquelle IronOCR doit se concentrer, ainsi que la valeur de tolérance. La valeur de tolérance accepte une plage de 0 à 255, qui représente la différence autorisée entre la couleur du pixel et la couleur sélectionnée pour chaque valeur R, V et B de l'espace colorimétrique.
:path=/static-assets/ocr/content-code-examples/how-to/image-color-correction-select-text-color.cs
using IronOcr;
using System;
// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();
// Add image
using var imageInput = new OcrImageInput("sample.jpg");
// Text color to focus on
IronSoftware.Drawing.Color focusColor = new IronSoftware.Drawing.Color("#DB645C");
// Specify which text color to read
imageInput.SelectTextColor(focusColor, 60);
// Perform OCR
OcrResult ocrResult = ocrTesseract.Read(imageInput);
// Output result to console
Console.WriteLine(ocrResult.Text);
Imports IronOcr
Imports System
' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()
' Add image
Private imageInput = New OcrImageInput("sample.jpg")
' Text color to focus on
Private focusColor As New IronSoftware.Drawing.Color("#DB645C")
' Specify which text color to read
imageInput.SelectTextColor(focusColor, 60)
' Perform OCR
Dim ocrResult As OcrResult = ocrTesseract.Read(imageInput)
' Output result to console
Console.WriteLine(ocrResult.Text)
Ci-dessous, vous trouverez le résultat de l'OCR, qui est destiné à lire uniquement le texte dans une couleur orangée.