Passer au contenu du pied de page
OUTILS OCR

Comment construire un OCR en Python

Le monde est inondé d'une immense quantité d'informations textuelles. Il existe une richesse de contenu précieux qui pourrait être extrêmement utile s'il était juste un peu plus accessible.

C'est là que la technologie de Reconnaissance Optique de Caractères (OCR) entre en jeu. Imaginez un ordinateur capable de "lire" du texte à partir des images comme le fait un humain, sauf que ceci concerne la vision par ordinateur, qui représente une section de l'informatique où nous pouvons entraîner les ordinateurs à reconnaître et identifier différents sujets dans une image.

Dans ce tutoriel, nous vous guiderons à travers le processus de création de votre propre système OCR en utilisant Python, un langage de programmation connu pour sa simplicité et sa polyvalence. Avec l'aide de bibliothèques comme Tesseract, IronOCR, et OpenCV, vous pourrez bientôt libérer le potentiel de l'extraction, de la manipulation et du travail avec le texte des images de documents.

Prérequis pour le Moteur OCR (Reconnaissance Optique de Caractères)

Avant de plonger dans les détails de la construction de notre système OCR, il y a quelques éléments dont vous aurez besoin :

  1. Python : Assurez-vous d'avoir Python installé sur votre ordinateur. Vous pouvez le télécharger depuis le site officiel de Python.
  2. Installer Tesseract OCR : Tesseract OCR est un moteur OCR open-source développé par Google. C'est un outil puissant que nous allons utiliser dans notre projet. Vous pouvez télécharger la bibliothèque Tesseract depuis GitHub et lire le processus d'installation de Tesseract OCR.
  3. Bibliothèques Python : Nous utiliserons deux bibliothèques Python importantes pour ce projet : pytesseract et la bibliothèque opencv-python. Vous pouvez les installer en utilisant la commande suivante dans votre invite de commande ou terminal :

    pip install pytesseract opencv-python
    pip install pytesseract opencv-python
    SHELL

Comment Construire un OCR en Python : Figure 1

Étapes pour Construire le Système OCR

Vous pouvez facilement construire un OCR en utilisant du code Python avec l'aide de Bibliothèques OCR Python et d'un script Python simple.

Étape 1 : Importer les Bibliothèques

Avant tout, vous devrez importer les bibliothèques nécessaires :

import cv2  # OpenCV library for computer vision
import pytesseract  # Tesseract library for OCR
import cv2  # OpenCV library for computer vision
import pytesseract  # Tesseract library for OCR
PYTHON

Étape 2 : Lire et Traiter une Image

Chargez l'image en utilisant OpenCV et pré-traitez-la pour améliorer la précision de l'OCR :

# Load the image using OpenCV
image = cv2.imread('sample_image.png') 

# Convert the image to grayscale
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) 

# Apply thresholding or other preprocessing techniques if needed
# This step helps in enhancing the quality for better OCR results
# Load the image using OpenCV
image = cv2.imread('sample_image.png') 

# Convert the image to grayscale
gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) 

# Apply thresholding or other preprocessing techniques if needed
# This step helps in enhancing the quality for better OCR results
PYTHON

Étape 3 : Utiliser Tesseract pour l'OCR

Il est maintenant temps d'utiliser le moteur Tesseract OCR pour effectuer l'OCR sur l'image traitée :

# Set the path to the Tesseract executable
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'

# Use pytesseract to perform OCR on the grayscale image
text = pytesseract.image_to_string(gray_image)
# Set the path to the Tesseract executable
pytesseract.pytesseract.tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'

# Use pytesseract to perform OCR on the grayscale image
text = pytesseract.image_to_string(gray_image)
PYTHON

Étape 4 : Afficher les Résultats

Si vous souhaitez visualiser l'image originale et le texte extrait, vous pouvez utiliser OpenCV pour les afficher :

# Display the original image using OpenCV
cv2.imshow('Original Image', image) 
cv2.waitKey(0) 

# Print the extracted text to the console
print("Extracted Text:", text) 

cv2.destroyAllWindows()  # Close the OpenCV window
# Display the original image using OpenCV
cv2.imshow('Original Image', image) 
cv2.waitKey(0) 

# Print the extracted text to the console
print("Extracted Text:", text) 

cv2.destroyAllWindows()  # Close the OpenCV window
PYTHON

Image Originale

Comment Construire un OCR en Python : Figure 2

Texte Extrait

Comment Construire un OCR en Python : Figure 3

Comme vous pouvez le voir, le résultat peut varier en fonction de la qualité et de la complexité de l'image, et dans certains cas, un entraînement supplémentaire (similaire à l'entraînement en apprentissage machine) pourrait être nécessaire pour les images avec des structures complexes, comme contenant des tableaux.

IronOCR

Dans un monde inondé de données, la capacité à convertir sans effort du texte imprimé en contenu lisible par machine est une capacité transformatrice.

Entrez IronOCR – une technologie de pointe qui permet aux développeurs d'intégrer facilement des capacités robustes de Reconnaissance Optique de Caractères (OCR) dans leurs applications.

Que vous extrayiez des données de documents numérisés, automatisiez la saisie de données ou amélioriez l'accessibilité, IronOCR offre une solution complète qui transcende les limites de la reconnaissance de texte traditionnelle.

Dans cette exploration, nous plongeons dans le domaine d'IronOCR, découvrant ses fonctionnalités polyvalentes et soulignant son potentiel à combler le fossé entre les mondes physique et numérique.

Installation d'IronOCR

Vous pouvez facilement installer IronOCR en utilisant la console du Gestionnaire de Packages NuGet, simplement en exécutant la commande suivante.

Install-Package IronOcr

IronOCR est également disponible en téléchargement sur le site officiel de NuGet.

Extraction de Texte à Partir d'Image en Utilisant IronOCR

Dans cette section, nous verrons comment vous pouvez facilement extraire du texte des images en utilisant IronOCR. Ci-dessous se trouve le code source qui extrait le texte de l'image.

using IronOcr;
using System;

var ocr = new IronTesseract();

using (var input = new OcrInput())
{
    input.AddImage("r3.png");
    OcrResult result = ocr.Read(input);
    string text = result.Text;
    Console.WriteLine(result.Text);
}
using IronOcr;
using System;

var ocr = new IronTesseract();

using (var input = new OcrInput())
{
    input.AddImage("r3.png");
    OcrResult result = ocr.Read(input);
    string text = result.Text;
    Console.WriteLine(result.Text);
}
Imports IronOcr
Imports System

Private ocr = New IronTesseract()

Using input = New OcrInput()
	input.AddImage("r3.png")
	Dim result As OcrResult = ocr.Read(input)
	Dim text As String = result.Text
	Console.WriteLine(result.Text)
End Using
$vbLabelText   $csharpLabel

Sortir

Comment Construire un OCR en Python : Figure 4

Conclusion

Dans ce tutoriel, nous avons exploré le processus de construction d'un système de Reconnaissance Optique de Caractères (OCR) en Python, révélant la capacité à extraire du texte à partir des images avec une remarquable facilité.

En tirant parti de bibliothèques comme Tesseract et OpenCV, nous avons exploré les étapes essentielles, de la charge et du prétraitement des images à l'utilisation du moteur Tesseract OCR pour l'extraction de texte.

Nous avons également abordé les défis potentiels comme les limitations de précision, que des solutions avancées comme IronOCR visent à résoudre.

Que vous choisissiez la voie DIY ou que vous adoptiez des outils sophistiqués, le monde de l'OCR vous appelle avec la promesse de transformer les images en texte exploitable, de rationaliser la saisie de données et d'amplifier l'accessibilité. Avec ce nouveau savoir, vous êtes prêt à vous lancer dans un voyage qui fusionne harmonieusement les mondes visuel et numérique.

Pour commencer avec IronOCR rendez-vous sur le lien suivant. Pour voir le tutoriel entier sur comment extraire le texte des images, visitez ici.

Si vous voulez essayer IronOCR gratuitement aujourd'hui, n'oubliez pas d'opter pour l'essai offert par IronOCR pour explorer toutes ses utilisations et son potentiel dans un environnement commercial sans le filigrane. Pour continuer à l'utiliser une fois que les 15 jours sont écoulés, il vous suffit d'acheter une licence.

Kannaopat Udonpant
Ingénieur logiciel
Avant de devenir ingénieur logiciel, Kannapat a obtenu un doctorat en ressources environnementales à l'université d'Hokkaido au Japon. Pendant qu'il poursuivait son diplôme, Kannapat est également devenu membre du laboratoire de robotique de véhicules, qui fait partie du département de bioproduction. En 2022, il a utilisé ses compé...
Lire la suite