Ik probeer een eenvoudige en zeer eenvoudige code in python uit te voeren.
from PIL import Image
import pytesseract
im = Image.open("sample1.jpg")
text = pytesseract.image_to_string(im, lang = 'eng')
print(text)
Zo ziet het eruit: ik heb tesseract voor Windows geïnstalleerd via het installatieprogramma. Ik ben erg nieuw in Python en ik weet niet zeker hoe ik verder moet?
Elke begeleiding hier zou zeer nuttig zijn. Ik heb geprobeerd mijn Spyder-toepassing opnieuw op te starten, maar het mocht niet baten.
Antwoord 1, autoriteit 100%
Ik zie dat stappen verspreid zijn over verschillende antwoorden. Op basis van mijn recente ervaring met deze pytesseract-fout op Windows, waarbij ik verschillende stappen achter elkaar schrijf om het oplossen van de fout gemakkelijker te maken:
1. Installeer tesseract met het Windows-installatieprogramma dat beschikbaar is op: https://github.com/UB-Mannheim/tesseract/wiki
2. Let op het tesseract-pad van de installatie. Het standaard installatiepad op het moment van deze bewerking was: C:\Users\USER\AppData\Local\Tesseract-OCR
. Het kan veranderen, dus controleer het installatiepad.
3. pip install pytesseract
4. Stel het tesseract-pad in het script in voordat u image_to_string
aanroept:
pytesseract.pytesseract.tesseract_cmd = r'C:\Users\USER\AppData\Local\Tesseract-OCR\tesseract.exe'
Antwoord 2, autoriteit 42%
Eerst moet u binair installeren:
Op Linux
sudo apt-get update
sudo apt-get install libleptonica-dev
sudo apt-get install tesseract-ocr tesseract-ocr-dev
sudo apt-get install libtesseract-dev
Op Mac
brew install tesseract
Op Windows
download binair bestand van https://github.com/UB-Mannheim/tesseract/wiki. voeg dan pytesseract.pytesseract.tesseract_cmd = 'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'
toe aan je script.
Dan moet je het python-pakket installeren met pip:
pip install tesseract
pip install tesseract-ocr
referenties:
https://pypi.org/project/pytesseract/(sectie INSTALLATIE) en
https://github.com/tesseract-ocr/tesseract/wiki#installation
Antwoord 3, autoriteit 11%
Alleen voor Windows
1 – U moet Tesseract OCR op uw computer hebben geïnstalleerd.
haal het hier vandaan.
https://github.com/UB-Mannheim/tesseract/wikiDownload de geschikte versie.
2 – Voeg het Tesseract-pad toe aan uw systeemomgeving. d.w.z. systeemvariabelen bewerken.
3 – Voer pip install pytesseract
en pip install tesseract
uit
4 – Voeg deze regel elke keer toe aan je python-script
pytesseract.pytesseract.tesseract_cmd = 'C:/OCR/Tesseract-OCR/tesseract.exe' # your path may be different
5 – Voer de code uit.
Antwoord 4, autoriteit 6%
Deze fout is omdat tesseract niet op uw computer is geïnstalleerd.
Als u Ubuntu gebruikt, installeer dan tesseract met de volgende opdracht:
sudo apt-get install tesseract-ocr
Voor mac:
brew install tesseract
Antwoord 5, autoriteit 6%
Van https://pypi.org/project/pytesseract/:
pytesseract.pytesseract.tesseract_cmd = '<full_path_to_your_tesseract_executable>'
# Include the above line, if you don't have tesseract executable in your PATH
# Example tesseract_cmd: 'C:\\Program Files (x86)\\Tesseract-OCR\\tesseract'
Antwoord 6, autoriteit 4%
In vensters:
pip install tesseract
pip install tesseract-ocr
en controleer het bestand dat is opgeslagen in uw systeem usr/appdata/local/programs/site-pakages/python/python36/lib/pytesseract/pytesseract.py
en compileer het bestand
Antwoord 7, autoriteit 3%
Op Mac kunt u het installeren zoals hieronder wordt weergegeven. Dit werkt voor mij.
brew install tesseract
Antwoord 8, autoriteit 2%
u kunt dit pakket installeren…
https://github.com/UB-Mannheim/tesseract/wiki
daarna moet je dit pad volgen C:\Program Files (x86)\Tesseract-OCR\ tesseract.exe
voer vervolgens het tesseract-bestand uit.
Ik denk dat dit je zal helpen…
Antwoord 9, autoriteit 2%
Op Windows 64-bits voegt u gewoon het volgende toe aan de omgevingsvariabele PATH:
"C:\Program Files\Tesseract-OCR"
en het zal werken.
Antwoord 10, autoriteit 2%
Ik kan het oplossen door de variabele tesseract_cmd bij te werken met het bin/tesseract-pad in het bestand pytesseract.py
Antwoord 11
Stap 1:
Installeer tesseract op uw systeem volgens het besturingssysteem.
De nieuwste installatieprogramma’s zijn te vinden op https://github.com/UB-Mannheim/tesseract/wiki
Stap 2:
Installeer de volgende afhankelijkheidsbibliotheken met:
pip installeer pytesseract
pip installeer opencv-python
pip install numpy
Stap 3:
Voorbeeldcode
import cv2
import numpy as np
import pytesseract
from PIL import Image
from pytesseract import image_to_string
# Path of working folder on Disk Replace with your working folder
src_path = "C:\\Users\\<user>\\PycharmProjects\\ImageToText\\input\\"
# If you don't have tesseract executable in your PATH, include the
following:
pytesseract.pytesseract.tesseract_cmd = 'C:/Program Files (x86)/Tesseract-
OCR/tesseract'
TESSDATA_PREFIX = 'C:/Program Files (x86)/Tesseract-OCR'
def get_string(img_path):
# Read image with opencv
img = cv2.imread(img_path)
# Convert to gray
img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
# Apply dilation and erosion to remove some noise
kernel = np.ones((1, 1), np.uint8)
img = cv2.dilate(img, kernel, iterations=1)
img = cv2.erode(img, kernel, iterations=1)
# Write image after removed noise
cv2.imwrite(src_path + "removed_noise.png", img)
# Apply threshold to get image with only black and white
#img = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_GAUSSIAN_C, cv2.THRESH_BINARY, 31, 2)
# Write the image after apply opencv to do some ...
cv2.imwrite(src_path + "thres.png", img)
# Recognize text with tesseract for python
result = pytesseract.image_to_string(Image.open(src_path + "thres.png"))
# Remove template file
#os.remove(temp)
return result
print('--- Start recognize text from image ---')
print(get_string(src_path + "image.png") )
print("------ Done -------")
Antwoord 12
Ik had hetzelfde probleem op Windows.
Ik heb geprobeerd de omgevingsvariabelen voor het pad van tesseract bij te werken, wat niet werkte.
Wat voor mij werkte, was het wijzigen van de pytesseract.py die te vinden is op het pad C:\Program Files\Python37\Lib\site-packages\pytesseract
of meestal in de C:\Users\YOUR USER\APPDATA\Python
Ik heb één regel gewijzigd zoals hieronder:
#tesseract_cmd = 'tesseract'
#tesseract_cmd = 'C:\Program Files\Tesseract-OCR\\tesseract.exe'
Opmerking: ik moest een extra \
plaatsen voordat tesseract, omdat Python hetzelfde interpreteerde als \t
en je krijgt de onderstaande foutmelding:
pytesseract.pytesseract.TesseractNotFoundError: C:\Program Files\Tesseract-OCR esseract.exe is niet geïnstalleerd of staat niet op uw pad
Antwoord 13
Je zou tesseract moeten installeren.
Bekijk de bovenstaande documentatie over de installatie.
Antwoord 14
In Windows moet het opdrachtpad worden omgeleid voor een standaard Windows tesseract-installatie.
- In 32-bits systeem, voeg deze regel toe na importcommando’s.
pytesseract.pytesseract.tesseract_cmd = 'C:\Program Files (x86)\Tesseract-OCR\tesseract.exe'
- In 64-bits systeem, voeg in plaats daarvan deze regel toe.
pytesseract.pytesseract.tesseract_cmd = 'C:\Program Files\Tesseract-OCR\tesseract.exe'
Antwoord 15
Misschien gebeurt dit omdat, zelfs als Tesseract correct is geïnstalleerd, u uw taal niet hebt geïnstalleerd, zoals bij mij het geval was. Gelukkig is dit heel eenvoudig op te lossen, en ik hoefde niet eens te knoeien met tesseract_cmd
.
sudo apt-get install tesseract-ocr -y
sudo apt-get install tesseract-ocr-spa -y
tesseract --list-langs
Merk op dat we in de tweede regel -spa
voor Spaans hebben gespecificeerd.
Als de installatie is gelukt, zou u een lijst met uw beschikbare talen moeten krijgen, zoals:
List of available languages (3):
eng
osd
spa
Ik vond dit in deze blogpost(Spaans). Er is ook een post voor installatie van de Spaanse taal in Windows(niet zo eenvoudig blijkbaar).
Opmerking: aangezien de vraag lang = 'eng'
gebruikt, is het waarschijnlijk dat dit in dat specifieke geval niet het antwoord is. Maar dezelfde fout kan optreden in deze andere situatie, daarom heb ik het antwoord hier geplaatst.
Antwoord 16
Alleen voor Windows-gebruikers:
Installeer tesseract met:
pip install tesseract
en voeg dan deze regel toe aan je code, let op de “\”
pytesseract.pytesseract.tesseract_cmd = "C:\Program Files (x86)\Tesseract-OCR\\tesseract.exe"
Antwoord 17
Het werkte voor mij gewoon door tesseract
te installeren met conda
.
conda install -c conda-forge tesseract
Antwoord 18
Voor Linux-distributie (Ubuntu)
probeer
sudo apt install tesseract-ocr
sudo apt install libtesseract-dev
Antwoord 19
Gebruik de volgende opdracht om tesseract te installeren
pip install tesseract
Antwoord 20
# {Windows 10 instructions}
# before you use the script you need to install the dependence
# 1. download the tesseract from the official link:
# https://github.com/UB-Mannheim/tesseract/wiki
# 2. install the tesseract
# i chosed this path
# *replace the user string in the below path with you name of user that you are using in your current machine
# C:\Users\user\AppData\Local\Tesseract-OCR\
# 3. Install the pillow for your python version
# * the best way for me is to install is this form(i'am using python3.7 version and in my CMD i run this version of python by typing py -3.7):
# * if you are using another version of python first look how you start the python from you CMD
# * for some machine the run of python from the CMD is different
# [examples]
# =================================
# PYTHON VERSION 3.7
# python
# python3.7
# python -3.7
# python 3.7
# python3
# python -3
# python 3
# py3.7
# py -3.7
# py 3.7
# py3
# py -3
# py 3
# PYTHON VERSION 3.6
# python
# python3.6
# python -3.6
# python 3.6
# python3
# python -3
# python 3
# py3.6
# py -3.6
# py 3.6
# py3
# py -3
# py 3
# PYTHON VERSION 2.7
# python
# python2.7
# python -2.7
# python 2.7
# python2
# python -2
# python 2
# py2.7
# py -2.7
# py 2.7
# py2
# py -2
# py 2
# ================================
# we are using pip to install the dependences
# because for me i start the python version 3.7 with the following line
# py -3.7
# open the CMD in windows machine and type the following line:
# py -3.7 -m pip install pillow
# 4. Install the pytesseract and tesseract for your python version
# * the best way for me is to install is this form(i'am using python3.7 version and in my CMD i run this version of python by typing py -3.7):
# we are using pip to install the dependences
# open the CMD in windows machine and type the following lines:
# py -3.7 -m pip install pytesseract
# py -3.7 -m pip install tesseract
#!/usr/bin/python
from PIL import Image
import pytesseract
import os
import getpass
def extract_text_from_image(image_file_name_arg):
# IMPORTANT
# if you have followed my instructions to install this dependence in above text explanatin
# for my machine is
# if you don't put the right path for tesseract.exe the script will not work
username = getpass.getuser()
# here above line get the username for your machine automatically
tesseract_exe_path_installation="C:\\Users\\"+username+"\\AppData\\Local\\Tesseract-OCR\\tesseract.exe"
pytesseract.pytesseract.tesseract_cmd=tesseract_exe_path_installation
# specify the direction of your image files manually or use line bellow if the images are in the script directory in folder images
# image_dir="D:\\GIT\\ai_example\\extract_text_from_image\\images"
image_dir=os.getcwd()+"\\images"
dir_seperator="\\"
image_file_name=image_file_name_arg
# if your image are in different format change the extension(ex. ".png")
image_ext=".jpg"
image_path_dir=image_dir+dir_seperator+image_file_name+image_ext
print("=============================================================================")
print("image used is in the following path dir:")
print("\t"+image_path_dir)
print("=============================================================================")
img=Image.open(image_path_dir)
text=pytesseract.image_to_string(img, lang="eng")
print(text)
# change the name "image_1" whith the name without extension for your image name
# image_file_name_arg="image_1"
image_file_name_arg="image_2"
# image_file_name_arg="image_3"
# image_file_name_arg="image_4"
# image_file_name_arg="image_5"
extract_text_from_image(image_file_name_arg)
# ==================================
# CREATED BY: SHERIFI
# e-mail: [email protected]
# git-link for script: https://github.com/sherifi/ai_example.git
# ==================================
Antwoord 21
For Ubuntu 18.04
Als je een foutmelding krijgt zoals
tesseract is not installed or it's not in your path
and
OSError: [Errno 12] Cannot allocate memory
Dat kan een probleem zijn met het probleem met de geheugentoewijzing van de swap
Je kunt dit antwoord aanvinken door meer swapgeheugen toe te wijzen. Hoop dat dat helpt 🙂
Antwoord 22
Er zijn al veel leuke antwoorden op dit probleem, maar ik wil graag een prachtige site delen die ik tegenkwam toen ik de ‘TesseractNotFound-fout: tesseract is niet geïnstalleerd of staat het niet in de weg’ niet kon oplossen. Raadpleeg deze site: https://www.thetopsites.net/article/50655738.shtml
Ik realiseerde me dat ik deze fout kreeg omdat ik pytesseractmet pip had geïnstalleerd, maar ik was vergeten het binaire bestand te installeren.
U mist waarschijnlijk tesseract-ocr op uw computer. Bekijk hier de installatie-instructies: https://github.com/tesseract-ocr/tesseract/wiki
Op een Mackun je gewoon installeren met homebrew:
brew install tesseract
Het zou daarna goed moeten werken!
Onder Windows 10 OS-omgevingwerkt de volgende methode voor mij:
-
Ga naar deze linken download tesseract en installeer het. Windows-versie is hier beschikbaar: https://github.com/UB-Mannheim/tesseract/wiki
-
Zoek het scriptbestand pytesseract.py van C:\Users\User\Anaconda3\Lib\site-packages\pytesseract en open het. Wijzig de volgende code van tesseract_cmd = ‘tesseract’in: tesseract_cmd = ‘C:/Program Files (x86)/Tesseract-OCR/tesseract.exe’
(Dit is het pad waar je Tesseract-OCR installeert, dus controleer waar je het installeert en werk het pad dienovereenkomstig bij) -
Mogelijk moet u ook omgevingsvariabele C:/Program Files (x86)/Tesseract-OCR/
toevoegen
Ik hoop dat het voor u werkt!
Antwoord 23
Oplossing voor UBUNTU werkte voor mij:
Tesseract in ubuntu geïnstalleerd door onderstaande link te volgen
https://medium.com /quatrium-tech/installeren-tesseract-4-on-ubuntu-18-04-b6fcd0cbd78f
Later treindata-taal toegevoegd aan tessdata door onderstaande link te volgen
Antwoord 24
Er lijkt een probleem te zijn met de nieuwste versie van de pip-module pytesseract=0.3.7.
Ik heb het gedowngraded naar pytesseract=0.3.6 en zie de fout niet.
Antwoord 25
Voor Windows in eenvoudige stappen:
-
Download Windows-versie van https://github.com/UB-Mannheim/ tesseract/wiki
-
Installeren
-
Schrijf het volgende in uw .py-bestand (controleer de geïnstalleerde locatie)
pytesseract.pytesseract.tesseract_cmd = r"C:\Program Files\Tesseract-OCR\tesseract.exe" img_text = pytesseract.image_to_string(Image.open(filename))
Antwoord 26
voor mij werkte het door een enkel aanhalingsteken te plaatsen
pytesseract.pytesseract.tesseract_cmd =r'C:/Program Files/Tesseract-OCR/tesseract.exe'
het plaatsen van dubbele aanhalingstekens was automatisch het invoegen van ongewenste tekens
Antwoord 27
De bovenstaande tips hebben me niet geholpen het probleem op te lossen, omdat de in de sectie gespecificeerde fout optrad bij het installeren van pytesseract (pycharm, python 2.7). De eigenaardigheid was ook dat tesseract vanaf de opdrachtregel werkte, dus de installatie was correct uitgevoerd.
Ik heb dit probleem kunnen oplossen door deze stappen te volgen:
- download pytesseract.py uit de kluis https://github.com/madmaze/pytesseract
- verwijder alle syntaxisfouten gerelateerd aan het verschil in de interpreters (2.7 en 3.*), inclusief de try-catch-methoden
- importeer het bewerkte script in uw programma als een zelfgeschreven script en configureer de variabele tesseract_cmd volgens de aanbevelingen in de repository.
Daarna werkte de functie voor het vertalen van afbeeldingen naar tekst in python 2.7