web-dev-qa-db-fra.com

Résultat OCR très contradictoire pour tesseract

 enter image description here

Ceci est la capture d'écran originale et j'ai recadré l'image en 4 parties et effacé l'arrière-plan de l'image dans la mesure du possible, mais tesseract ne détecte que la dernière colonne ici et ignore le reste.

 enter image description here

La sortie du tesseract est montrée car il y a des espaces que je supprime lors du traitement du résultat

  Femme—Fatale.



  DaRkLoRdEIa
  aChineseN1gg4

  Noob_Diablo_

 enter image description here

La sortie du tesseract est montrée car il y a des espaces que je supprime lors du traitement du résultat

Kicked.

NosNoel
ChikiZD
Death_Eag|e_42

Chai—.

 enter image description here

3579 10 1 7 148

2962 3 O 7 101

2214 2 2 7 99

2205 1 3 6 78

 enter image description here

8212

7198

6307

5640

4884

15

40

40

6O

80

80

Je ne fais que vider la sortie de 

result = `pytesseract.image_to_string(Image.open("D:/newapproach/B&W"+str(i)+".jpg"),lang="New_Language")`

Mais je ne sais pas comment procéder à partir de là pour obtenir un résultat cohérent. Y at-il quand même pour que je puisse forcer le tesseract à reconnaître la zone de texte et à le faire scanner.Parce dans le formateur (SunnyPage), tesseract sur la reconnaissance par défaut le scanner ne parvient pas à reconnaître certaines zones, mais une fois sélectionné manuellement, tout est détecté et traduit correctement en texte

Code

7
codefreaK

Essayé avec la ligne de commande qui nous donne la possibilité de décider quelle psm valeur à utiliser. 

Pouvez-vous essayer avec ceci:

pytesseract.image_to_string(image, config='-psm 6')

Essayé avec l'image fournie par vous et ci-dessous est le résultat:

Texte extrait de l'image

Le seul problème auquel je suis confronté est que mon dictionnaire tesseract interprète "1" fourni dans votre image en "" I ".

Vous trouverez ci-dessous la liste des options psm disponibles:

les valeurs de pagesegmode sont: 0 = Détection d’orientation et de script (OSD) uniquement.

1 = Segmentation automatique des pages avec OSD.

2 = segmentation automatique de la page, mais pas de menu OSD ni d'OCR

3 = Segmentation de page entièrement automatique, mais pas de menu OSD. (Défaut)

4 = Supposons une seule colonne de texte de taille variable.

5 = Supposons un seul bloc uniforme de texte aligné verticalement.

6 = Supposons un seul bloc de texte uniforme.

7 = Traite l'image comme une seule ligne de texte.

8 = Traite l'image comme un seul mot.

9 = Traitez l'image comme un seul mot dans un cercle.

10 = Traite l'image comme un seul caractère.

2
Manoj

J'ai utilisé ce lien

https://www.howtoforge.com/tutorial/tesseract-ocr-installation-and-usage-on-ubuntu-16-04/

Utilisez juste les commandes ci-dessous qui peuvent augmenter la précision jusqu’à 50% `

Sudo apt update

Sudo apt install tesseract-ocr

Sudo apt-get install tesseract-ocr-eng

Sudo apt-get install tesseract-ocr-all

Sudo apt install imagemagick

convert -h

tesseract [image_path] [file_name]

convert -resize 150% [input_file_path] [output_file_path]

convert [input_file_path] -type Grayscale [output_file_path]

tesseract [image_path] [file_name]

Il ne montrera que des lettres en gras

Merci

1
akshat dashore