Coordonnées de rectangle pour la détection de région OCR

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

Plusieurs méthodes IronOCR acceptent un Rectangle afin que vous puissiez exécuter l'OCR sur une seule partie d'une image plutôt que sur l'ensemble. Les quatre valeurs dont il a besoin, x, y, width et height, peuvent être directement lues depuis Microsoft Paint.

Le constructeur ressemble à ceci :

Rectangle(int x, int y, int width, int height, MeasurementUnits units = MeasurementUnits.Pixels)
Rectangle(int x, int y, int width, int height, MeasurementUnits units = MeasurementUnits.Pixels)
Rectangle(x As Integer, y As Integer, width As Integer, height As Integer, Optional units As MeasurementUnits = MeasurementUnits.Pixels)
$vbLabelText   $csharpLabel

Chaque paramètre correspond à une mesure :

  • x : distance entre le bord gauche de l'image et le début de votre région.
  • y : distance entre le bord supérieur de l'image et le début de votre région.
  • width : largeur de la région que vous souhaitez lire.
  • height : hauteur de la région que vous souhaitez lire.
  • MeasurementUnits.Pixels : indique à IronOCR que les valeurs sont en pixels.

Les coordonnées commencent à l'angle supérieur gauche de l'image : x s'accroît vers la droite, y s'accroît vers le bas.

Système de coordonnées montrant l'origine en haut à gauche avec X croissant vers la droite et Y croissant vers le bas

Avant de commencer, vous avez besoin de Microsoft Paint (ou tout éditeur qui montre la position du curseur et la taille de la sélection en pixels), de l'image que vous souhaitez lire et d'IronOCR ajouté à votre projet.

Solution

1. Lire le point de départ X et Y

Ouvrez l'image dans Microsoft Paint, puis déplacez le curseur vers le coin supérieur gauche de la région que vous souhaitez lire. La position du curseur s'affiche dans le coin inférieur gauche de la fenêtre. Un relevé de 2403, 1653px vous donne le début de la région :

Barre d'état de Microsoft Paint montrant les coordonnées du curseur 2403, 1653px en haut à gauche de la région OCR

X = 2403
Y = 1653

2. Lire la largeur et la hauteur

Passez à l'outil Sélection et tracez un carré sur le texte cible. Paint indique la taille de la sélection dans le coin inférieur gauche. Un relevé de 1031 × 214px correspond aux dimensions de votre région :

Sélection de Microsoft Paint autour du texte Testing123 avec barre d'état montrant la taille de la sélection 1031 x 214px

Width = 1031
Height = 214

3. Construire le rectangle

Avec les quatre valeurs en main, construisez le Rectangle. Pour la région de Testing123 ci-dessus :

var rectangle = new Rectangle(2403, 1653, 1031, 214, MeasurementUnits.Pixels);
var rectangle = new Rectangle(2403, 1653, 1031, 214, MeasurementUnits.Pixels);
Dim rectangle = New Rectangle(2403, 1653, 1031, 214, MeasurementUnits.Pixels)
$vbLabelText   $csharpLabel

4. Passez-le à IronOCR

Remettez le rectangle à LoadImage pour recadrer l'entrée à cette région avant d'exécuter l'OCR :

var rectangle = new Rectangle(2403, 1653, 1031, 214, MeasurementUnits.Pixels);
ocrInput.LoadImage(frame, rectangle);
var rectangle = new Rectangle(2403, 1653, 1031, 214, MeasurementUnits.Pixels);
ocrInput.LoadImage(frame, rectangle);
Dim rectangle = New Rectangle(2403, 1653, 1031, 214, MeasurementUnits.Pixels)
ocrInput.LoadImage(frame, rectangle)
$vbLabelText   $csharpLabel

Conseils de débogage

  • La valeur 1031 × 214px dans la barre d'état est la largeur et la hauteur de la sélection, pas une coordonnée.
  • Le relevé du curseur 2403, 1653px est le point de départ X et Y, c'est-à-dire le coin supérieur gauche de la région.
  • Paint indique en pixels, alors passez MeasurementUnits.Pixels pour correspondre.
  • Lire les valeurs à l'œil les laisse en décalage de quelques pixels. Si la découpe coupe une partie du texte, élargissez légèrement width ou height, ou abaissez x ou y.

PrudenceN'utilisez pas la taille totale de l'image, telle que 4960 × 7014px, comme taille du rectangle. Cela sélectionne l'ensemble de l'image au lieu de votre région.

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 6,136,090 | Version : 2026.7 vient de sortir
Still Scrolling Icon

Vous faites encore défiler ?

Vous voulez une preuve rapidement ? PM > Install-Package IronOcr
lancez un échantillon regardez votre image se transformer en texte consultable.