Comment corriger l'orientation de l'image pour la lecture

Chaknith related to Comment corriger l'orientation de l'image pour la lecture
Chaknith Bin
octobre 31, 2023
Mise à jour décembre 10, 2024
Partager:
This article was translated from English: Does it need improvement?
Translated
View the article in English

Dans le contexte du traitement d'images, la correction de l'orientation d'une image consiste à apporter des ajustements à une image pour s'assurer qu'elle est correctement alignée à des fins spécifiques, telles que la reconnaissance de texte. IronOCR prend en charge la fixation de l'orientation de l'image, y compris la rotation, le désalignement et la mise à l'échelle.

Ces techniques sont essentielles pour préparer les images à une reconnaissance précise du texte, car elles garantissent que le texte est correctement orienté, aligné et de taille appropriée pour l'extraction.

Commencez avec IronOCR

Commencez à utiliser IronOCR dans votre projet dès aujourd'hui avec un essai gratuit.

Première étape :
green arrow pointer



Exemple de rotation d'une image

Faire pivoter une image implique de changer son orientation d'un angle spécifique (par exemple, 90 degrés dans le sens des aiguilles d'une montre ou dans le sens inverse) pour s'assurer que le texte ou le contenu de l'image est à l'endroit et correctement aligné.

Passez une valeur en degrés à la méthode Rotate pour effectuer la rotation. Une valeur de degré positive fait pivoter l'image dans le sens des aiguilles d'une montre, tandis qu'une valeur de degré négative fait pivoter l'image dans le sens inverse des aiguilles d'une montre.

:path=/static-assets/ocr/content-code-examples/how-to/image-orientation-correction-rotate-image.cs
using IronOcr;

// Instantiate IronTesseract
IronTesseract ocrTesseract = new IronTesseract();

// Add image
using var imageInput = new OcrImageInput("paragraph_skewed.png");

// Rotate the image 180 degrees clockwise
imageInput.Rotate(180);

// Export the modified image
imageInput.SaveAsImages("rotate");
Imports IronOcr

' Instantiate IronTesseract
Private ocrTesseract As New IronTesseract()

' Add image
Private imageInput = New OcrImageInput("paragraph_skewed.png")

' Rotate the image 180 degrees clockwise
imageInput.Rotate(180)

' Export the modified image
imageInput.SaveAsImages("rotate")
$vbLabelText   $csharpLabel

Pour plus de commodité, 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 rotation.

Exemple d'image
Rotation de l'image

Exemple de redressement d'une image

Le redressement est le processus qui consiste à redresser une image qui peut être légèrement inclinée ou de travers. Il corrige toute inclinaison ou tout défaut d'alignement, en veillant à ce que le texte ou le contenu soit aligné horizontalement.

Pour appliquer le redressement à l'image, utilisez la méthode Deskew. Cette méthode accepte une valeur entière qui spécifie l'angle maximal d'inclinaison à corriger. Des valeurs plus élevées peuvent offrir plus de possibilités de correction, mais elles peuvent entraîner un traitement plus lent et un risque accru d'erreurs, y compris des pages à l'envers.

:path=/static-assets/ocr/content-code-examples/how-to/image-orientation-correction-deskew-image.cs
// Apply deskew
imageInput.Deskew();
' Apply deskew
imageInput.Deskew()
$vbLabelText   $csharpLabel
Exemple d'image
image tronquée

Exemple d'image à l'échelle

La mise à l'échelle consiste à redimensionner une image en fonction d'une dimension ou d'un rapport d'aspect spécifique. Cela peut être utile pour normaliser la taille des images afin d'obtenir une reconnaissance de texte plus cohérente.

Pour appliquer une mise à l'échelle à l'image, utilisez la méthode Scale. La méthode Scale prend une valeur en pourcentage, 100 % signifiant aucun effet. Le deuxième paramètre est le ScaleCropArea, qui détermine si les zones de recadrage associées doivent également être mises à l'échelle proportionnellement (recommandé comme 'true').

:path=/static-assets/ocr/content-code-examples/how-to/image-orientation-correction-scale-image.cs
// Apply scale
imageInput.Scale(70);
' Apply scale
imageInput.Scale(70)
$vbLabelText   $csharpLabel

Comparaison des tailles

Comparaison des tailles
Comparaison des tailles
Chaknith related to Comparaison des tailles
Ingénieur logiciel
Chaknith est le Sherlock Holmes des développeurs. C'est en s'amusant à relever des défis de code qu'il s'est rendu compte pour la première fois qu'il pourrait avoir un avenir dans le domaine de l'ingénierie logicielle. Il se concentre sur IronXL et IronBarcode, mais il est fier d'aider les clients avec chaque produit. Chaknith tire parti des connaissances qu'il a acquises en discutant directement avec les clients pour améliorer les produits eux-mêmes. Ses commentaires anecdotiques vont au-delà des tickets Jira et soutiennent le développement de produits, la documentation et le marketing, afin d'améliorer l'expérience globale des clients.Quand il n'est pas au bureau, on peut le trouver en train d'apprendre sur l'apprentissage automatique, le codage et la randonnée.