2017-06-16 3 views
0

Je suis en train de convertir un fichier image en texte en utilisant la dépendance de tess4j maven.
Dépendance à pom.xml: -Format d'image non pris en charge. Peut-être besoin d'installer le paquet d'E/S Image JAI

<!-- OCR dependency --> 
    <dependency> 
     <groupId>net.sourceforge.tess4j</groupId> 
     <artifactId>tess4j</artifactId> 
     <version>3.4.0</version> 
     <exclusions> 
      <exclusion> 
       <groupId>net.java.dev.jna</groupId> 
       <artifactId>jna</artifactId> 
      </exclusion> 
      <exclusion> 
       <groupId>net.sourceforge.lept4j</groupId> 
       <artifactId>lept4j</artifactId> 
      </exclusion> 
     </exclusions> 
    </dependency> 
    <dependency> 
     <groupId>net.java.dev.jna</groupId> 
     <artifactId>jna</artifactId> 
     <version>4.4.0</version> 
    </dependency> 
    <dependency> 
     <groupId>net.sourceforge.lept4j</groupId> 
     <artifactId>lept4j</artifactId> 
     <version>1.5.0</version> 
    </dependency> 

Mon code: -

public String convertImageToText(String imageFilePath) throws TesseractException { 

    File imageFile = new File("imageFilePath"); 
    ITesseract iTesseract = new Tesseract(); 
    ImageIO.scanForPlugins(); 
    String result = iTesseract.doOCR(imageFile); 
    System.out.println("Converted text is: "+result); 
    return result; 
} 

Cependant, lorsque je tente d'exécuter mon programme, je rencontre toujours au-dessous exception:

Exception in thread "main" net.sourceforge.tess4j.TesseractException: java.lang.RuntimeException: Unsupported image format. May need to install JAI Image I/O package. 
https://java.net/projects/jai-imageio/ 
at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:215) 
at utilities.HelperMethods.convertImageToText(HelperMethods.java:218) 
at net.sourceforge.tess4j.util.ImageIOHelper.getIIOImageList(ImageIOHelper.java:408) 
at utilities.HelperMethods.main(HelperMethods.java:250) 
at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:212) 
at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:196) 
Caused by: java.lang.RuntimeException: Unsupported image format. May need to install JAI Image I/O package. 
https://java.net/projects/jai-imageio/ 
at utilities.HelperMethods.convertImageToText(HelperMethods.java:218) 
at net.sourceforge.tess4j.util.ImageIOHelper.getIIOImageList(ImageIOHelper.java:408) 
at utilities.HelperMethods.main(HelperMethods.java:250) 
at net.sourceforge.tess4j.Tesseract.doOCR(Tesseract.java:212) 

Tous les dépendances requises comme jai, lept4j etc sont présentes dans mon dépôt. J'ai également essayé toutes les solutions proposées sur ce forum mais je suis incapable de résoudre cette erreur.
Toute aide serait appréciée.

Merci
Mise à jour: Fixation du fichier ici - Jpg file

+1

Et quel type de fichier d'image essayez-vous de lire? – VGR

+0

J'ai essayé avec les fichiers jpg et png. obtenir la même erreur avec les deux formats. – Anuja

+0

Pouvez-vous envoyer un fichier image problématique à imgur, alors nous pouvons essayer de le charger avec ImageIO? – VGR

Répondre

0

Il ne peut pas déterminer un ImageReader approprié pour le format de fichier donné. Donc, c'est probablement 1) le format de fichier ne peut pas être déterminé correctement (extension de fichier bizarre?) Ou 2) il n'y a pas de lecteur d'image enregistré pour le format que vous essayez d'utiliser.

Voir ImageIO.getImageReaderByFormatName.