Comment utiliser l'assistant de filtre en C## ; pour une meilleure OCR

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

L'assistant de filtre IronOCR teste automatiquement toutes les combinaisons de filtres de prétraitement sur votre image pour trouver les paramètres d'OCR optimaux, renvoyant à la fois le score de confiance le plus élevé et le code C# exact nécessaire pour reproduire les résultats.

Le prétraitement des images pour l'OCR peut s'avérer difficile. Plusieurs filtres peuvent améliorer la reconnaissance, mais trouver la bonne combinaison nécessite de nombreux essais et erreurs. Chaque image présente des défis uniques, ce qui rend les tests manuels fastidieux. Cela est particulièrement vrai lorsque l'on travaille avec des scans de mauvaise qualité ou des images avec des niveaux de bruit et de distorsion variables.

L'OcrInputFilterWizard d'IronOcr résout ce problème. L'assistant de filtrage évalue automatiquement les combinaisons de filtres pour maximiser la confiance et la précision de l'OCR. Elle effectue des tests exhaustifs pour trouver les paramètres optimaux et renvoie la meilleure combinaison de filtres sous la forme d'un extrait de code, ce qui permet de reproduire facilement les résultats. Cette fonctionnalité s'intègre parfaitement à la classe OcrInput, ce qui simplifie l'application du filtre à vos images.

Ce guide explique le fonctionnement de l'assistant de filtrage et présente les extraits de code et les paramètres qu'il utilise. Pour optimiser davantage le flux de travail de l'OCR, consultez notre guide sur la correction de la qualité de l'image.

Démarrage rapide : découvrez automatiquement votre chaîne de filtres d'image idéale

Utilisez l'assistant de filtre d'IronOcr pour tester toutes les combinaisons de filtres de prétraitement et obtenir l'extrait de code le plus performant. Une ligne renvoie votre score de confiance le plus élevé et la chaîne de filtrage C# exacte pour les images similaires.

```cs :title=Get Best OCR Filters Instantly string code = OcrInputFilterWizard.Run("image.png", out double confidence, new IronTesseract()) ;


<div class="hsg-featured-snippet">
    <h3>Flux de travail minimal (5 étapes)</h3>
    <ol>
        <li>Téléchargez une bibliothèque C# pour utiliser l&#39;assistant de filtrage.</li>
        <li>Instancier le moteur IronTesseract</li>
        <li>Chargez l&#39;image d&#39;entrée dans l&#39; <code>OcrInputFilterWizard</code></li>
        <li><code>Run</code> l&#39;assistant de filtrage et examinez les résultats, tels que le niveau de confiance.</li>
        <li>Utilisez le code fourni et appliquez-le à l&#39;image d&#39;entrée, puis vérifiez les résultats.</li>
    </ol>
</div>

## Comment fonctionne l'assistant de filtrage?

La méthode `OcrInputFilterWizard.Run` prend trois paramètres : l'image d'entrée, un paramètre de sortie pour le niveau de confiance résultant, et l'instance du moteur Tesseract. Pour un contrôle avancé du moteur, consultez notre guide sur [la configuration détaillée de Tesseract](https://ironsoftware.com/csharp/ocr/examples/csharp-configure-setup-tesseract/).

Elle teste plusieurs combinaisons de filtres de prétraitement afin d'obtenir le meilleur score de confiance. Le score de confiance le plus élevé détermine le jeu de filtres à appliquer à votre image d'entrée. Cette approche est efficace pour les images difficiles nécessitant une [correction de l'orientation de l'image](https://ironsoftware.com/csharp/ocr/how-to/image-orientation-correction/) ou d'autres étapes de prétraitement complexes.

L'assistant de filtrage n'a pas de préréglages ni de limites de combinaisons. L'objectif est d'obtenir la meilleure note de confiance possible grâce à des tests de filtrage complets. Pour un retour d'information en temps réel pendant le traitement, mettez en place un [suivi de progression](https://ironsoftware.com/csharp/ocr/how-to/progress-tracking/) pour surveiller les opérations de l'assistant.

Filtres disponibles en test de combinaison :

- `input.Contrast()` - Ajuste le contraste pour la clarté du texte
- `input.Sharpen()` - Améliore la définition des bords
- `input.Binarize()` - Convertit en noir et blanc
- `input.ToGrayScale()` - Supprime les informations de couleur
- `input.Invert()` - Inverse les couleurs
- `input.Deskew()` - Corrige le texte en biais
- `input.Scale(...)` - Redimensionne aux dimensions optimales
- `input.Denoise()` - Supprime le bruit des pixels
- `input.DeepCleanBackgroundNoise()` - Suppression avancée du bruit
- `input.EnhanceResolution()` - Améliore la résolution de faible qualité
- `input.Dilate()`, `input.Erode()` - Opérations de raffinement du texte

Pour des informations détaillées sur les filtres, consultez ce [tutoriel sur les filtres d'image](https://ironsoftware.com/csharp/ocr/tutorials/c-sharp-ocr-image-filters/). D'autres techniques de prétraitement sont disponibles dans le guide [filtres de correction d'image](https://ironsoftware.com/csharp/ocr/how-to/image-correction-filters/).

Cette méthode de test exhaustive nécessite un temps de traitement. Pour les opérations à grande échelle, utilisez [la prise en charge du multithreading](https://ironsoftware.com/csharp/ocr/how-to/async/) pour traiter plusieurs images simultanément.

<h3>Quel type d'image dois-je utiliser pour les tests ?

Cet exemple utilise une capture d'écran avec un bruit artificiel important pour démontrer la fonctionnalité de l'assistant de filtrage. L'assistant de filtrage traite efficacement différents types d'images, des [documents numérisés](https://ironsoftware.com/csharp/ocr/how-to/read-scanned-document/) aux [photos avec texte](https://ironsoftware.com/csharp/ocr/how-to/read-photo/).

<div class="content-img-align-center">
    <div class="center-image-wrapper" style="width=50%">
         <img src="/static-assets/ocr/how-to/filter-wizard/filter-wizard-sample.webp" alt="Image test fortement corrompue avec motif de bruit montrant un texte dégradé pour la démonstration de l'assistant de filtre" class="img-responsive add-shadow">
    </div>
</div>

Lors de la sélection des images de test, tenez compte des facteurs suivants :
- **Résolution de l'image** : Les images avec un DPI élevé donnent généralement de meilleurs résultats. Consultez notre guide sur les [paramètresDPI](https://ironsoftware.com/csharp/ocr/how-to/dpi-setting/) pour obtenir des conseils d'optimisation.
- **Type de document** : Différents types de documents bénéficient de combinaisons de filtres spécifiques. [Les documents d'identité](https://ironsoftware.com/csharp/ocr/troubleshooting/identity-documents/) peuvent nécessiter un prétraitement différent de celui des documents textuels standard.
- **Qualité de la source** : L'assistant de filtrage excelle avec les images problématiques mais commence par la source de la plus haute qualité disponible lorsque cela est possible.

### Comment exécuter l'assistant de filtrage dans mon code?

```csharp
:path=/static-assets/ocr/content-code-examples/how-to/filter-wizard-process.cs

L'assistant de filtrage traite différents formats d'entrée. Pour obtenir des informations sur les formats pris en charge, consultez notre guide sur les images d'entrée. Vous pouvez également traiter des fichiers PDF ou travailler directement avec des streams pour les sources d'images dynamiques.

Pour les scénarios de traitement par lots, considérez cet exemple élargi :

/* :path=/static-assets/ocr/content-code-examples/how-to/filter-wizard-batch.cs */
using IronOcr;
using System;
using System.IO;

// Process multiple similar images
var ocr = new IronTesseract();
string[] imageFiles = Directory.GetFiles(@"C:\Images", "*.png");

// Run Filter Wizard on first image to discover optimal settings
string optimalCode = OcrInputFilterWizard.Run(imageFiles[0], out double baselineConfidence, ocr);
Console.WriteLine($"Baseline confidence: {baselineConfidence:P2}");
Console.WriteLine($"Optimal filter sequence discovered");

// Apply discovered filters to all images
foreach (string imagePath in imageFiles)
{
    using (var input = new OcrImageInput(imagePath))
    {
        // Apply the filter sequence discovered by the wizard
        // The actual filters would be applied here based on the wizard output
        var result = ocr.Read(input);
        Console.WriteLine($"Processed: {Path.GetFileName(imagePath)} - Confidence: {result.Confidence:P2}");
    }
}
/* :path=/static-assets/ocr/content-code-examples/how-to/filter-wizard-batch.cs */
using IronOcr;
using System;
using System.IO;

// Process multiple similar images
var ocr = new IronTesseract();
string[] imageFiles = Directory.GetFiles(@"C:\Images", "*.png");

// Run Filter Wizard on first image to discover optimal settings
string optimalCode = OcrInputFilterWizard.Run(imageFiles[0], out double baselineConfidence, ocr);
Console.WriteLine($"Baseline confidence: {baselineConfidence:P2}");
Console.WriteLine($"Optimal filter sequence discovered");

// Apply discovered filters to all images
foreach (string imagePath in imageFiles)
{
    using (var input = new OcrImageInput(imagePath))
    {
        // Apply the filter sequence discovered by the wizard
        // The actual filters would be applied here based on the wizard output
        var result = ocr.Read(input);
        Console.WriteLine($"Processed: {Path.GetFileName(imagePath)} - Confidence: {result.Confidence:P2}");
    }
}
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Quels sont les résultats obtenus par l'assistant de filtrage ?
Sortie de la console de l'assistant de filtrage montrant un score de confiance de 65% et le code C# généré avec les méthodes de traitement d'image
Le résultat de l'assistant de filtrage indique que 65 % de confiance est le meilleur résultat possible pour cette image spécifique. Les indices de confiance sont des mesures cruciales pour évaluer la précision de l'OCR. Pour en savoir plus sur la [confiance dans les résultats](https://ironsoftware.com/csharp/ocr/how-to/tesseract-result-confidence/), consultez notre guide dédié. L'image d'entrée contient une distorsion extrême et du bruit artificiel. Cela démontre les capacités de l'assistant de filtre dans des scénarios difficiles. Pour une utilisation en production, commencez par des images sources de meilleure qualité si possible. L'extrait de code généré fournit : - **Séquence de filtrage exacte** : l'ordre des opérations est important pour obtenir des résultats optimaux - **Chaînage de méthodes** : Un code propre, lisible et facile à mettre en œuvre - **Pas de paramètres à deviner** : chaque filtre est configuré pour des performances optimales ### Comment appliquer la combinaison de filtres recommandée? Après avoir exécuté l'assistant de filtrage, appliquez les paramètres de l'extrait de code fourni à votre image d'entrée pour vérifier les résultats et la confiance. Cela garantit des résultats reproductibles pour des images similaires dans votre pipeline de traitement de documents. #### Comment mettre en œuvre le code recommandé ? ```csharp :path=/static-assets/ocr/content-code-examples/how-to/filter-wizard-best-combination.cs ``` L'ordre de l'application du filtre a une grande importance. L'assistant de filtrage détermine à la fois les filtres à utiliser et leur ordre optimal. Ce séquençage intelligent rend l'assistant de filtrage très utile pour les scénarios de prétraitement complexes. Pour mieux contrôler le processus d'OCR, envisagez de mettre en œuvre la gestion et la validation des erreurs : ```csharp /* :path=/static-assets/ocr/content-code-examples/how-to/filter-wizard-validation.cs */ using IronOcr; using System; var ocrEngine = new IronTesseract(); try { using (var input = new OcrImageInput(@"C:\Images\document.png")) { // Apply Filter Wizard recommended sequence input.Invert(); input.DeNoise(); input.Contrast(); input.AdaptiveThreshold(); // Configure additional OCR settings ocrEngine.Configuration.ReadBarCodes = false; ocrEngine.Configuration.RenderSearchablePdf = true; // Perform OCR with timeout protection var result = ocrEngine.Read(input); // Validate results if (result.Confidence >= 0.6) { Console.WriteLine("OCR successful with high confidence"); // Process the extracted text } else { Console.WriteLine("Low confidence result - consider manual review"); } } } catch (Exception ex) { Console.WriteLine($"OCR processing error: {ex.Message}"); } ```

Quels sont les résultats finaux de l'OCR après application des filtres ?
Terminal montrant les résultats de l'OCR : texte extrait 'Testing : Testin' avec 65,61% de confiance après application de l'assistant de filtrage
IronOcr extrait la majeure partie du texte, même dans des conditions de forte distorsion. Le niveau de confiance correspond au rapport de l'assistant de filtrage. Pour une gestion détaillée des résultats de l'OCR, consultez notre guide sur la [sortie des données](https://ironsoftware.com/csharp/ocr/how-to/read-results/).

Quels sont les conseils d'utilisation avancés à prendre en compte ? Tenez compte de ces bonnes pratiques lorsque vous utilisez l'assistant de filtrage en production : 1. **Traitement par lots** : Testez sur des échantillons représentatifs, puis appliquez la chaîne de filtrage à des images similaires. 2. **Optimisation des performances** : l'assistant de filtrage est minutieux mais prend beaucoup de temps. Pour une OCR plus rapide, voir [configuration OCR rapide](https://ironsoftware.com/csharp/ocr/examples/tune-tesseract-for-speed-in-dotnet/). 3. : Pour les textes qui ne sont pas en anglais, explorez [plusieurs langues](https://ironsoftware.com/csharp/ocr/how-to/ocr-multiple-languages/) pour optimiser la reconnaissance. 4. **Intégration API** : Consultez notre [référence API](https://ironsoftware.com/csharp/ocr/object-reference/api/) pour obtenir une documentation complète. 5. **Optimisation spécifique au document** : Différents types de documents bénéficient d'approches spécialisées : - Pour les formulaires, pensez à [lire des tableaux](https://ironsoftware.com/csharp/ocr/how-to/read-table-in-document/) - Pour les contenus mixtes, activez [la lecture des codes-barres](https://ironsoftware.com/csharp/ocr/how-to/barcodes/) - Pour les documents de plusieurs pages, explorez [Traitement TIFF](https://ironsoftware.com/csharp/ocr/how-to/input-tiff-gif/) 6. **Gestion de la mémoire** : Disposez correctement des objets `OcrInput` en utilisant l'instruction `using`. 7. **Recouvrement des erreurs** : mettre en œuvre des stratégies de repli pour les résultats peu fiables. Envisagez une révision manuelle pour les documents critiques. L'assistant de filtrage permet une découverte automatisée et puissante du prétraitement pour des résultats d'OCR optimaux. En trouvant automatiquement le meilleur pipeline de prétraitement pour vos images spécifiques, il élimine les incertitudes liées à la préparation des images et garantit une extraction de texte cohérente et de haute qualité dans toutes vos applications.

Questions Fréquemment Posées

Qu'est-ce que l'assistant de filtrage OCR et comment contribue-t-il au prétraitement des images ?

L'assistant de filtre IronOcr est un outil automatisé qui teste toutes les combinaisons de filtres de prétraitement possibles sur votre image afin de trouver les paramètres optimaux d'OCR. Il élimine le processus manuel d'essais et d'erreurs en évaluant automatiquement diverses combinaisons de filtres pour maximiser la confiance et la précision de l'OCR, puis renvoie la meilleure combinaison de filtres sous la forme d'un extrait de code C# prêt à l'emploi.

Comment utiliser l'assistant de filtrage dans mon application C# ?

L'utilisation de l'assistant de filtrage d'IronOcr est simple - il suffit d'appeler OcrInputFilterWizard.Run() avec le chemin d'accès à l'image, un paramètre out pour le score de confiance et une instance d'IronTesseract. Par exemple : string code = OcrInputFilterWizard.Run("image.png", out double confidence, new IronTesseract()) ;

Quels sont les paramètres acceptés par la méthode OcrInputFilterWizard.Run ?

La méthode OcrInputFilterWizard.Run dans IronOcr prend trois paramètres : l'image d'entrée (sous forme de chemin de fichier), un paramètre out qui renvoie le niveau de confiance résultant, et une instance du moteur IronTesseract pour le traitement.

Pourquoi devrais-je utiliser l'assistant de filtrage au lieu de tester manuellement les filtres ?

Le test manuel des filtres de prétraitement prend du temps et représente un défi, en particulier avec des scans de faible qualité ou des images présentant des niveaux de bruit variables. L'assistant de filtre d'IronOcr automatise ce processus en testant de manière exhaustive les combinaisons de filtres et en renvoyant le score de confiance le plus élevé avec le code C# exact nécessaire, ce qui permet de gagner un temps de développement considérable.

Comment l'assistant de filtrage détermine-t-il la meilleure combinaison de filtres ?

L'assistant de filtre d'IronOcr teste plusieurs combinaisons de filtres de prétraitement sur votre image et mesure le score de confiance de l'OCR pour chaque combinaison. Il sélectionne ensuite l'ensemble de filtres qui obtient le score de confiance le plus élevé et renvoie cette combinaison optimale sous forme de code C# exécutable.

L'assistant de filtrage peut-il fonctionner avec des images de faible qualité ou bruitées ?

Oui, l'assistant de filtrage d'IronOcr est particulièrement efficace avec les images difficiles, notamment les numérisations de faible qualité et les images présentant des niveaux de bruit et de distorsion variables. Il trouve automatiquement la combinaison optimale de prétraitement pour maximiser la précision de l'OCR, même avec un matériel source difficile.

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
Prêt à commencer?
Nuget Téléchargements 5,246,844 | Version : 2025.12 vient de sortir