Skip to content

REMitchell/pytesseract

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

95 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python Tesseract

Python-tesseract is an optical character recognition (OCR) tool for python. That is, it will recognize and "read" the text embedded in images.

Python-tesseract is a wrapper for Google's Tesseract-OCR Engine. It is also useful as a stand-alone invocation script to tesseract, as it can read all image types supported by the Python Imaging Library, including jpeg, png, gif, bmp, tiff, and others, whereas tesseract-ocr by default only supports tiff and bmp. Additionally, if used as a script, Python-tesseract will print the recognized text instead of writing it to a file.

USAGE

Quickstart

try:
    import Image
except ImportError:
    from PIL import Image
import 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'

# Simple image to string
print(pytesseract.image_to_string(Image.open('test.png')))

# French text image to string
print(pytesseract.image_to_string(Image.open('test-european.jpg'), lang='fra'))

# Get bounding box estimates
print(pytesseract.image_to_boxes(Image.open('test.png')))

# Get verbose data including boxes, confidences, line and page numbers
print(pytesseract.image_to_data(Image.open('test.png')))

Support for OpenCV image/NumPy array objects

import cv2

img = cv2.imread('/**path_to_image**/digits.png')
print(pytesseract.image_to_string(img))
# OR explicit beforehand converting
print(pytesseract.image_to_string(Image.fromarray(img))

Add the following config, if you have tessdata error like: "Error opening data file..."

tessdata_dir_config = '--tessdata-dir "<replace_with_your_tessdata_dir_path>"'
# Example config: '--tessdata-dir "C:\\Program Files (x86)\\Tesseract-OCR\\tessdata"'
# It's important to add double quotes around the dir path.

pytesseract.image_to_string(image, lang='chi_sim', config=tessdata_dir_config)

Functions

  • image_to_string Returns the result of a Tesseract OCR run on the image to string
  • image_to_boxes Returns string output containing recognized characters and their box boundaries
  • image_to_data Returns string output containing box boundaries, confidences, and other information. Requires Tesseract 3.05+. See Tesseract TSV documentation for more information:

Parameters

image_to_data(image, lang=None, config='', nice=0, dict_output=False)

  • image PIL image file for the image to be processed by Tesseract
  • lang Tesseract language code string
  • config Any additional configurations as a string, ex: config="-psm 6"
  • nice Boolean, modifies the processor priority for the Tesseract run. Not supported on Windows. Nice adjusts the niceness of unix-like processes.
  • dict_output Boolean, if True will return dictionary containing headers pointing to list columns of data. Used for image_to_boxes and image_to_data only

INSTALLATION

Prerequisites:

  • Python-tesseract requires python 2.5+ or python 3.x
  • You will need the Python Imaging Library (PIL) (or the Pillow fork). Under Debian/Ubuntu, this is the package python-imaging or python3-imaging.
  • Install Google Tesseract OCR (additional info how to install the engine on Linux, Mac OSX and Windows). You must be able to invoke the tesseract command as tesseract. If this isn't the case, for example because tesseract isn't in your PATH, you will have to change the "tesseract_cmd" variable at the top of tesseract.py. Under Debian/Ubuntu you can use the package tesseract-ocr. For Mac OS users. please install homebrew package tesseract.
Installing via pip:

See the pytesseract package page for more information.

$ (env)> pip install pytesseract
Or if you have git installed:
$ (env)> pip install git+https://github.com/madmaze/pytesseract.git
Installing from source:
$> git clone https://github.com/madmaze/pytesseract.git
$ (env)> cd pytesseract && pip install .

LICENSE

Python-tesseract is released under the GPL v3.

CONTRIBUTERS

About

A Python wrapper for Google Tesseract

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%