Comment définir le DPI dans l'OCR en utilisant C#35;

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

Définissez la propriété TargetDPI dans le OcrInput d'IronOcr pour mettre à l'échelle les images à faible résolution afin d'améliorer la précision de l'OCR. Cette configuration permet d'améliorer considérablement la reconnaissance de texte sur des documents flous ou pixellisés, même avec des résolutions aussi faibles que 100 DPI.

Les points par pouce (DPI) mesurent la qualité de l'image et déterminent le niveau de détail des documents numérisés ou des photographies numériques. Bien que la numérisation de documents soit rapide et efficace, le processus aboutit souvent à des fichiers de faible résolution, en particulier lorsque l'on utilise les paramètres de numérisation par défaut ou rapide. Ce manque de détails rend le texte flou ou pixellisé, ce qui crée des obstacles à l'extraction des données.

Les performances de l'OCR dépendent de la qualité de l'image. Les moteurs OCR analysent les formes et les motifs des caractères pour les convertir en texte lisible par une machine. Lorsqu'une image a un faible DPI, il n'y a pas assez de pixels pour définir clairement chaque lettre, ce qui entraîne une perte de détails et des résultats imprécis. Pour les développeurs qui travaillent avec des documents numérisés ou d'anciens systèmes de numérisation, il est essentiel de comprendre l'optimisation de l'IAP pour une extraction de texte fiable.

IronOCR relève ces défis avec efficacité. Elle atteint une grande précision sur des scans dont la résolution ne dépasse pas 225 DPI. Les capacités de prétraitement d'images de la bibliothèque détectent et compensent automatiquement divers problèmes de qualité d'image, ce qui la rend adaptée au traitement de documents provenant de diverses sources. Qu'il s'agisse de mettre en œuvre un OCR simple en une ligne de code ou de construire des pipelines de traitement de documents complexes, l'optimisation de l'IAP reste un facteur essentiel.

Démarrage rapide : Définir la résolution cible pour des résultats OCR plus nets

Configurez IronOcr pour mettre à l'échelle des images de faible résolution en une seule ligne - améliorant la clarté du texte et la reconnaissance avec un minimum d'effort.

Nuget IconCommencez dès maintenant à créer des PDF avec NuGet :

  1. Installez IronOCR avec le gestionnaire de packages NuGet

    PM > Install-Package IronOcr

  2. Copiez et exécutez cet extrait de code.

    var result = new IronOcr.IronTesseract().Read(new IronOcr.OcrInput { TargetDPI = 300 }.LoadImage("low-res.png"));
  3. Déployez pour tester sur votre environnement de production.

    Commencez à utiliser IronOCR dans votre projet dès aujourd'hui grâce à un essai gratuit.
    arrow pointer

Comment régler le DPI pour obtenir de meilleurs résultats d'OCR?

Cet exemple utilise un échantillon d'image avec une faible résolution d'environ 100 DPI et ajoute du bruit artificiel pour démontrer l'efficacité de la fonction TargetDPI. Il est essentiel de comprendre comment configurer les paramètres DPI lorsque l'on travaille avec la classe OcrInput, qui offre un contrôle complet sur le prétraitement des images.

Le texte réel de l'image est : " Test test test texte flou exemple exemple exemple ".

Échantillon à faible résolution (100 DPI) montrant un texte flou et pixellisé qui témoigne d'une mauvaise qualité d'entrée OCR

Quel est le code dont j'ai besoin pour augmenter le DPI d'une image?

Dans cet exemple, nous allons définir le TargetDPI à 300 pour augmenter la résolution de l'image. Nous chargerons ensuite l'image d'entrée et imprimerons le texte extrait avec Text et le niveau de confiance avec Confidence. Le réglage optimal du DPI se situe généralement entre 250 et 400 DPI, en fonction de votre cas d'utilisation et de la qualité du matériel source. Pour les scénarios avancés impliquant plusieurs filtres d'image, reportez-vous à notre guide sur les filtres d'optimisation d'image OCR.

:path=/static-assets/ocr/content-code-examples/how-to/dpi-setting.cs
using IronOcr;
using System;

var ocrTesseract = new IronTesseract();

using var ocrInput = new OcrInput();
// Set the target DPI to 300 for better OCR accuracy
ocrInput.TargetDPI = 300;

ocrInput.LoadImage(@"images\image.png");

// Perform OCR on the image with the specified DPI
var ocrResult = ocrTesseract.Read(ocrInput);
// Display the text extracted from the image
Console.WriteLine(ocrResult.Text);
// Display the confidence level of the OCR result
Console.WriteLine(ocrResult.Confidence);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Quels résultats puis-je attendre avec Upscaled DPI?

Console de débogage montrant les résultats de l'OCR : texte extrait avec un score de confiance de 85% après optimisation DPI

Le résultat montre qu'IronOCR obtient un score de confiance de 85 %. Malgré un bruit important et le faible DPI initial de l'image source, le résultat est précis, ce qui démontre l'efficacité de la fonction de mise à l'échelle. Ce niveau de précision surpasse les solutions traditionnelles d'OCR qui se débattent avec des entrées de faible qualité. Pour les applications nécessitant une précision encore plus grande, envisagez de mettre en place un suivi de progression pour surveiller les niveaux de confiance en temps réel et ajuster les paramètres de manière dynamique.

IronOcr comprend des fonctionnalités intégrées qui améliorent automatiquement les images à faible résolution en les mettant à l'échelle au sein d'une bibliothèque unique. Cette approche élimine la nécessité d'utiliser des outils de traitement d'images externes, ce qui rationalise votre flux de travail et réduit les dépendances. Pour les développeurs qui commencent à utiliser IronOcr sur Windows, cette fonctionnalité fonctionne immédiatement sans configuration supplémentaire.

Comment les paramètres DPI influencent-ils la précision de l'OCR ? Pour illustrer la différence, voici le résultat du traitement de la même image basse résolution sans définir la propriété `TargetDPI`. Cette comparaison montre pourquoi une configuration DPI appropriée est cruciale pour une extraction de texte fiable. Trouver le bon DPI demande un certain équilibre. Un DPI élevé offre une plus grande précision mais un traitement plus lent ; Un faible DPI est plus rapide mais moins fiable. En cas de doute, laissez le prétraitement automatique d'IronTesseract déterminer les paramètres optimaux. Vous pouvez désactiver la mise à l'échelle automatique en définissant la propriété `TargetDPI` sur 0. Pour les applications spécialisées, consultez notre guide sur [l'optimisation DPI des images Tesseract](https://ironsoftware.com/csharp/ocr/examples/ocr-image-dpi-for-tesseract/). #### Qu'est-ce qui se passe sans mise à l'échelle DPI?
Debug console showing poor OCR results : garbled text with 79% confidence, demonstrating low DPI extraction quality (console de débogage montrant les mauvais résultats de l'OCR : texte brouillé avec 79% de confiance, démontrant la faible qualité de l'extraction DPI)
Sans mise à l'échelle, le score de confiance chute à 79 % et le texte extrait est nettement moins précis. Cette comparaison montre comment la définition d'un `TargetDPI` améliore les résultats de l'OCR sur les images de faible qualité. La différence s'accentue lorsqu'il s'agit de documents complexes contenant des tableaux, des formulaires ou des mises en page à plusieurs colonnes. #### Comment définir le DPI pour les documents PDF? Lors du traitement d'un PDF, IronOcr met à l'échelle l'ensemble du document au DPI cible, et pas seulement les images qu'il contient. Cette approche globale garantit une qualité constante dans l'ensemble du document, ce qui est important pour [l'extraction de texte OCR au format PDF](https://ironsoftware.com/csharp/ocr/examples/csharp-pdf-ocr/) dans les applications professionnelles. Pour le traitement avancé des PDF, tel que le travail avec des [PDF consultables](https://ironsoftware.com/csharp/ocr/how-to/searchable-pdf/), la configuration correcte du DPI devient encore plus critique. Bien qu'un DPI plus élevé conduise souvent à de meilleurs résultats d'OCR, le réglage optimal varie d'un PDF à l'autre. Si vous ne savez pas quelle valeur utiliser, laissez le DPI à sa valeur par défaut et laissez IronOcr déterminer automatiquement la meilleure configuration. Les algorithmes de la bibliothèque analysent les caractéristiques du document, telles que la taille de la police, la qualité de l'image et la densité du contenu, afin de sélectionner les paramètres de prétraitement appropriés. ```csharp // Example: Processing a PDF with custom DPI settings using IronOcr; var ocrTesseract = new IronTesseract(); using var ocrInput = new OcrInput(); // Configure DPI specifically for PDF processing ocrInput.TargetDPI = 250; // Lower DPI often works well for PDFs // Load a multi-page PDF document ocrInput.LoadPdf(@"documents\scanned-report.pdf"); // Optional: Process only specific pages // ocrInput.LoadPdf(@"documents\scanned-report.pdf", PageSelection: new int[] {1, 3, 5}); // Apply additional filters if needed ocrInput.DeNoise(); // Remove digital noise ocrInput.Sharpen(); // Enhance text edges // Perform OCR with confidence tracking var ocrResult = ocrTesseract.Read(ocrInput); // Process results page by page foreach (var page in ocrResult.Pages) { Console.WriteLine($"Page {page.PageNumber}: {page.Confidence}% confidence"); Console.WriteLine(page.Text); } ```
Avertissement La valeur maximale de `TargetDPI` est de 32 766. Définir une valeur DPI supérieure à cette limite entraînera une exception. Cela se produit car les dimensions de l'image résultante dépasseraient la taille maximale prise en charge par Tesseract, soit 32 767 x 32 767 pixels. Si la limite est dépassée, vous recevrez le message d'erreur suivant : 'La résolution cible est trop élevée et donnerait une image trop grande ({new_width} x {new_height}) pour Tesseract. La taille maximale de l'image pour Tesseract est de 32767 x 32767'
Pour les applications d'entreprise traitant de gros volumes de documents, envisagez de mettre en œuvre une stratégie d'ajustement dynamique de l'IAP. Commencez par un réglage modéré (300 DPI) et ajustez en fonction des scores de confiance. Cette approche permet d'équilibrer la vitesse de traitement et la précision, ce qui garantit des performances optimales pour divers types de documents. La combinaison de l'optimisation de l'IAP avec d'autres techniques de prétraitement peut donner de meilleurs résultats pour les documents difficiles. Lorsque vous travaillez avec des types de documents spécifiques, les exigences en matière de DPI peuvent varier. Par exemple, [la lecture des plaques d'immatriculation](https://ironsoftware.com/csharp/ocr/how-to/read-license-plate/) nécessite généralement des paramètres DPI plus élevés en raison de la petite taille des caractères et de la distorsion potentielle de l'image due aux angles de la caméra. De même, le traitement des chèques MICR bénéficie de configurations DPI spécifiques pour capturer avec précision les caractères spécialisés de la police MICR. Pour les développeurs qui intègrent l'OCR dans des applications web ou des services cloud, la compréhension de l'optimisation DPI devient cruciale pour gérer les temps de traitement et les ressources du serveur. La possibilité d'affiner les paramètres DPI vous permet d'optimiser l'équilibre entre la précision et la performance en fonction des exigences spécifiques de votre application et des contraintes de votre infrastructure.

Questions Fréquemment Posées

Qu'est-ce que le DPI et pourquoi est-il important pour la précision de l'OCR ?

Le DPI (Dots Per Inch) mesure la qualité de l'image et détermine le niveau de détail des documents numérisés. Pour la précision de l'OCR, un DPI plus élevé signifie des définitions de caractères plus claires. IronOcr peut traiter des images avec des résolutions aussi basses que 225 DPI tout en conservant une grande précision, grâce à ses capacités avancées de prétraitement d'images.

Comment puis-je améliorer les résultats de l'OCR sur des images à faible résolution ?

Définissez la propriété TargetDPI dans la classe OcrInput d'IronOcr pour mettre à l'échelle les images à faible résolution. Par exemple, en fixant la valeur de TargetDPI à 300, on peut améliorer de manière significative la reconnaissance de texte sur des documents flous ou pixellisés, même ceux dont la résolution n'excède pas 100 DPI.

Quel est le moyen le plus rapide de définir le DPI pour l'OCR dans C# ?

Vous pouvez configurer le DPI en une ligne de code à l'aide d'IronOCR : var result = new IronOcr.IronTesseract().Read(new IronOcr.OcrInput { TargetDPI = 300 }.LoadImage("low-res.png")). Cela permet d'augmenter automatiquement la taille de l'image pour une meilleure clarté du texte et une meilleure reconnaissance.

L'OCR peut-il fonctionner efficacement sur des documents numérisés à faible résolution ?

Oui, IronOCR est spécialement conçu pour traiter efficacement les documents numérisés à faible résolution. Il atteint une grande précision sur des numérisations dont la résolution ne dépasse pas 225 DPI et comprend des fonctions de prétraitement automatique des images qui détectent et compensent divers problèmes de qualité.

Quelles sont les étapes de base pour mettre en œuvre les paramètres DPI pour l'OCR ?

Le processus se déroule en cinq étapes : 1) Télécharger la bibliothèque IronOcr, 2) Instancier un nouvel objet OcrInput, 3) Définir la propriété TargetDPI à la valeur souhaitée, 4) Charger votre image à l'aide de la méthode LoadImage, et 5) Extraire le texte à l'aide de la méthode Read.

Pourquoi les paramètres de numérisation par défaut se traduisent-ils souvent par des performances médiocres en matière d'OCR ?

Les paramètres de numérisation par défaut ou rapide produisent généralement des fichiers à faible résolution afin d'économiser du temps et de l'espace de stockage. Il en résulte un texte flou ou pixellisé où les détails fins sont perdus, ce qui rend difficile l'identification précise des formes de caractères par les moteurs OCR. La fonction TargetDPI d'IronOCR permet de surmonter cette limitation.

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