Maison  >  Article  >  Java  >  Tesseract OCR utilisant Java et ses exemples

Tesseract OCR utilisant Java et ses exemples

PHPz
PHPzavant
2023-09-19 23:33:03937parcourir

使用Java的Tesseract OCR及其示例

Présentation

La reconnaissance optique de caractères (OCR) joue un rôle important dans la numérisation du texte imprimé, le rendant plus compact pour l'édition, la recherche et le stockage. L'un des outils OCR les plus puissants est Tesseract OCR. Cet article explique comment utiliser Java avec Tesseract OCR, en fournissant des exemples détaillés pour améliorer votre compréhension.

Qu'est-ce que Tesseract OCR ?

Tesseract OCR est un moteur OCR open source sponsorisé par Google qui peut reconnaître directement plus de 100 langues. Il est largement apprécié pour sa précision et son adaptabilité, ce qui en fait un choix populaire parmi divers développeurs d'applications.

Intégrer Tesseract OCR avec Java

Pour intégrer Tesseract OCR à Java, nous devons utiliser Tess4J, communément appelé Tesseract API pour Java. Tess4J fournit un wrapper Java JNA pour l'API Tesseract OCR, comblant le fossé entre le moteur Tesseract et les applications Java.

Étape 1 : Configurer l'environnement

Tout d’abord, nous devons installer Tesseract OCR et Tess4J. Tesseract peut être installé sur Windows, Linux et MacOS à l'aide de leurs gestionnaires de packages respectifs. Pour inclure Tess4J dans votre projet Java, vous pouvez l'ajouter en tant que dépendance Maven -

<dependency>
   <groupId>net.sourceforge.tess4j</groupId>
   <artifactId>tess4j</artifactId>
   <version>4.5.4 </version> <!-- or whatever the latest version is -->
</dependency>

Étape 2 : Effectuer le traitement OCR sur l'image

Vous trouverez ci-dessous un simple extrait de code Java pour effectuer l'OCR sur un fichier image -

import net.sourceforge.tess4j.*;

public class OCRExample {
   public static void main(String[] args) {
     File imageFile = new File("path_to_your_image_file");
     ITesseract instance = new Tesseract();  // JNA Interface Mapping
     instance.setDatapath("path_to_tessdata"); // replace with your tessdata path

     try {
         String result = instance.doOCR(imageFile);
         System.out.println(result);
      } catch (TesseractException e) {
         System.err.println(e.getMessage());
      }
   }
}

Dans cet exemple, nous instancions un objet Tesseract et définissons le chemin d'accès au répertoire tessdata, qui contient les fichiers de données de langue. Nous appelons ensuite doOCR() sur le fichier image, qui renvoie une chaîne contenant le texte reconnu.

Étape 3 : Gérer plusieurs langues

Tesseract OCR prend en charge plus de 100 langues. Pour effectuer l'OCR dans une autre langue, définissez simplement la langue sur votre instance Tesseract -

instance.setLanguage("fra"); // for French

Ensuite, appelez la fonction doOCR() comme d'habitude −

try {
   String result = instance.doOCR(imageFile);
   System.out.println(result);
} catch (TesseractException e) {
   System.err.println(e.getMessage());
}

Les images seront désormais OCRed en utilisant des données françaises.

Conclusion

Tesseract OCR, combiné à Java, fournit un ensemble d'outils puissants pour les développeurs qui doivent implémenter la fonctionnalité OCR dans leurs applications. La flexibilité, la précision et la large prise en charge linguistique de Tesseract en font un excellent choix pour un large éventail de tâches OCR.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer