A Python wrapper for Google Tesseract

Overview

Python Tesseract

Python versions Github release PyPI release Conda release Pre-commit CI status CI workflow status

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 Pillow and Leptonica imaging libraries, including jpeg, png, gif, bmp, tiff, and others. Additionally, if used as a script, Python-tesseract will print the recognized text instead of writing it to a file.

USAGE

Quickstart

Note: Test images are located in the tests/data folder of the Git repo.

Library usage:

try:
    from PIL import Image
except ImportError:
    import Image
import pytesseract

# If you don't have tesseract executable in your PATH, include the following:
pytesseract.pytesseract.tesseract_cmd = r'<full_path_to_your_tesseract_executable>'
# Example tesseract_cmd = r'C:\Program Files (x86)\Tesseract-OCR\tesseract'

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

# List of available languages
print(pytesseract.get_languages(config=''))

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

# In order to bypass the image conversions of pytesseract, just use relative or absolute image path
# NOTE: In this case you should provide tesseract supported images or tesseract will return error
print(pytesseract.image_to_string('test.png'))

# Batch processing with a single file containing the list of multiple image file paths
print(pytesseract.image_to_string('images.txt'))

# Timeout/terminate the tesseract job after a period of time
try:
    print(pytesseract.image_to_string('test.jpg', timeout=2)) # Timeout after 2 seconds
    print(pytesseract.image_to_string('test.jpg', timeout=0.5)) # Timeout after half a second
except RuntimeError as timeout_error:
    # Tesseract processing is terminated
    pass

# 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')))

# Get information about orientation and script detection
print(pytesseract.image_to_osd(Image.open('test.png')))

# Get a searchable PDF
pdf = pytesseract.image_to_pdf_or_hocr('test.png', extension='pdf')
with open('test.pdf', 'w+b') as f:
    f.write(pdf) # pdf type is bytes by default

# Get HOCR output
hocr = pytesseract.image_to_pdf_or_hocr('test.png', extension='hocr')

# Get ALTO XML output
xml = pytesseract.image_to_alto_xml('test.png')

Support for OpenCV image/NumPy array objects

import cv2

img_cv = cv2.imread(r'/<path_to_image>/digits.png')

# By default OpenCV stores images in BGR format and since pytesseract assumes RGB format,
# we need to convert from BGR to RGB format/mode:
img_rgb = cv2.cvtColor(img_cv, cv2.COLOR_BGR2RGB)
print(pytesseract.image_to_string(img_rgb))
# OR
img_rgb = Image.frombytes('RGB', img_cv.shape[:2], img_cv, 'raw', 'BGR', 0, 0)
print(pytesseract.image_to_string(img_rgb))

If you need custom configuration like oem/psm, use the config keyword.

# Example of adding any additional options
custom_oem_psm_config = r'--oem 3 --psm 6'
pytesseract.image_to_string(image, config=custom_oem_psm_config)

# Example of using pre-defined tesseract config file with options
cfg_filename = 'words'
pytesseract.run_and_get_output(image, extension='txt', config=cfg_filename)

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

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

Functions

  • get_languages Returns all currently supported languages by Tesseract OCR.
  • get_tesseract_version Returns the Tesseract version installed in the system.
  • image_to_string Returns unmodified output as string from Tesseract OCR processing
  • image_to_boxes Returns result containing recognized characters and their box boundaries
  • image_to_data Returns result containing box boundaries, confidences, and other information. Requires Tesseract 3.05+. For more information, please check the Tesseract TSV documentation
  • image_to_osd Returns result containing information about orientation and script detection.
  • image_to_alto_xml Returns result in the form of Tesseract's ALTO XML format.
  • run_and_get_output Returns the raw output from Tesseract OCR. Gives a bit more control over the parameters that are sent to tesseract.

Parameters

image_to_data(image, lang=None, config='', nice=0, output_type=Output.STRING, timeout=0, pandas_config=None)

  • image Object or String - PIL Image/NumPy array or file path of the image to be processed by Tesseract. If you pass object instead of file path, pytesseract will implicitly convert the image to RGB mode.
  • lang String - Tesseract language code string. Defaults to eng if not specified! Example for multiple languages: lang='eng+fra'
  • config String - Any additional custom configuration flags that are not available via the pytesseract function. For example: config='--psm 6'
  • nice Integer - modifies the processor priority for the Tesseract run. Not supported on Windows. Nice adjusts the niceness of unix-like processes.
  • output_type Class attribute - specifies the type of the output, defaults to string. For the full list of all supported types, please check the definition of pytesseract.Output class.
  • timeout Integer or Float - duration in seconds for the OCR processing, after which, pytesseract will terminate and raise RuntimeError.
  • pandas_config Dict - only for the Output.DATAFRAME type. Dictionary with custom arguments for pandas.read_csv. Allows you to customize the output of image_to_data.

CLI usage:

pytesseract [-l lang] image_file

INSTALLATION

Prerequisites:

  • Python-tesseract requires Python 2.7 or Python 3.6+

  • 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 pytesseract.pytesseract.tesseract_cmd. Under Debian/Ubuntu you can use the package tesseract-ocr. For Mac OS users. please install homebrew package tesseract.

    Note: Make sure that you also have installed tessconfigs and configs from tesseract-ocr/tessconfigs or via the OS package manager.

Installing via pip:

Check the pytesseract package page for more information.

pip install pytesseract
Or if you have git installed:
pip install -U git+https://github.com/madmaze/pytesseract.git
Installing from source:
git clone https://github.com/madmaze/pytesseract.git
cd pytesseract && pip install -U .
Install with conda (via conda-forge):
conda install -c conda-forge pytesseract

TESTING

To run this project's test suite, install and run tox. Ensure that you have tesseract installed and in your PATH.

pip install tox
tox

LICENSE

Check the LICENSE file included in the Python-tesseract repository/distribution. As of Python-tesseract 0.3.1 the license is Apache License Version 2.0

CONTRIBUTORS

Comments
  • Petition to change license to Apache 2.0 (to match tesseract-ocr)

    Petition to change license to Apache 2.0 (to match tesseract-ocr)

    I want to use tesseract, and in turn pytesseract, but I don't want to include a GPLv3-licensed package before I know what I plant to do with my project.

    Has any consideration been given to using a more permissive license such as MIT? Tesseract uses Apache 2.0, which is a fairly permissive license as well.

    opened by joshmcgrath08 32
  • cannot find tesseract file when using pytesseract

    cannot find tesseract file when using pytesseract

    I've installed tesseract and pytesseract, and I keep getting error messages <redacted_image_to_hide_username> even after I changed the path of "tesseract_cmd" in pytesseract.py, reinstalled tesseract using homebrew, and added the line "pytesseract.pytesseract.tesseract_cmd = '/usr/local/bin/tesseract'" in my python file. I can get the version of my pytesseract using line "print(pytesseract.get_tesseract_version())". Since I can acquire the version of pytesseract, I don't know why the path issue still exists. Thanks in advance for anyone who can help!

    opened by lordpeter003 28
  • image_to_data: Problem in temporary file

    image_to_data: Problem in temporary file

    Hi, I am using pytesseract 0.2.0, the version with the latest commit.

    I am getting the following error when using pytesseract.image_to_data

    Traceback (most recent call last): File "test.py", line 20, in image2text(images) File "test.py", line 9, in image2text data = pytesseract.image_to_data(image, lang=None, config='', nice=0, output_type=pytesseract.Output.DICT) File "/home/mehul/.virtualenvs/cv/local/lib/python2.7/site-packages/pytesseract/pytesseract.py", line 228, in image_to_data run_and_get_output(image, 'tsv', lang, config, nice), '\t', -1) File "/home/mehul/.virtualenvs/cv/local/lib/python2.7/site-packages/pytesseract/pytesseract.py", line 142, in run_and_get_output with open(filename, 'rb') as output_file: IOError: [Errno 2] No such file or directory: '/tmp/tess_OAlhmD_out.tsv'

    Either the temp file is not created or program is searching for wrong temp file.

    opened by MehulBhardwaj91 26
  • image_to_boxes crashing

    image_to_boxes crashing

    When I run image_to_string, it works great, but when I run either image_to_boxes or image_to_data, I get an error message like this:

    IOError: [Errno 2] No such file or directory: 'c:\users\tlcyr\appdata\local\temp\tess_kqx1fs_out.box'

    with some random text in place of 'kqx1fs' each time I run it.

    I have tesseract 3.05.01 installed on Windows.

    opened by tlcyr4 25
  • windows 10 :pytesseract.pytesseract.TesseractError: (1, 'Error opening data file \\Program Files (x86)\\Tesseract-OCR\\tessdata/chi_sim.traineddata')

    windows 10 :pytesseract.pytesseract.TesseractError: (1, 'Error opening data file \\Program Files (x86)\\Tesseract-OCR\\tessdata/chi_sim.traineddata')

    I am using pytesseract on windows 10 x64, and the python is 3.5.2 x64, Tesseract is 4.0 ,the code is as follow:

    # -*- coding: utf-8 -*-
    
    try:
        import Image
    except ImportError:
        from PIL import Image
    import pytesseract
    
    
    print(pytesseract.image_to_string(Image.open('d:/testimages/name.gif'), lang='chi_sim'))
    
    

    error:

    Traceback (most recent call last):
      File "D:/test.py", line 10, in <module>
        print(pytesseract.image_to_string(Image.open('d:/testimages/name.gif'), lang='chi_sim'))
      File "C:\Users\dell\AppData\Local\Programs\Python\Python35\lib\site-packages\pytesseract\pytesseract.py", line 165, in image_to_string
        raise TesseractError(status, errors)
    pytesseract.pytesseract.TesseractError: (1, 'Error opening data file \\Program Files (x86)\\Tesseract-OCR\\tessdata/chi_sim.traineddata')
    

    C:\Program Files (x86)\Tesseract-OCR\tessdata,like this:

    [enter image description here]1

    opened by zwl1619 25
  • image_to_data returns different results than image_to_string

    image_to_data returns different results than image_to_string

    I use image_to_string for single digits but additionally I want to obtain the confidence value. Therefore I replaced it with image_to_data like this:

    ocrResult = pytesseract.image_to_data(digitBinary, config='-psm 10 -c tessedit_char_whitelist=0123456789', output_type="dict")
    digitasNumber = ocrResult["text"][0]
    

    With image_to_string the results are reasonably good. With image_to_data every text dict entry is empty but for one case, where it returns two digits. the empty digits have conf -1 and the digit where text is filled the conf is 6.

    I don't think that this is intended behavior.

    opened by BSVogler 19
  • OSError: Too many files open

    OSError: Too many files open

    I have been using this python wrapper for tesseract on a video feed with opencv in order to extract time series data into csv files. I am trying to track 40 different windows. However, on the 201st frame of the test video I have, I get the following exception:

    Traceback (most recent call last):
      File "/usr/lib/python3.7/site-packages/pytesseract/pytesseract.py", line 219, in run_tesseract
        proc = subprocess.Popen(cmd_args, **subprocess_args())
      File "/usr/lib/python3.7/subprocess.py", line 775, in __init__
        restore_signals, start_new_session)
      File "/usr/lib/python3.7/subprocess.py", line 1412, in _execute_child
        errpipe_read, errpipe_write = os.pipe()
    OSError: [Errno 24] Too many open files
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "bars_and_windows.py", line 54, in <module>
        bar_text = pytesseract.image_to_string(tmp_img, lang='SF_Upper')
      File "/usr/lib/python3.7/site-packages/pytesseract/pytesseract.py", line 341, in image_to_string
        }[output_type]()
      File "/usr/lib/python3.7/site-packages/pytesseract/pytesseract.py", line 340, in <lambda>
        Output.STRING: lambda: run_and_get_output(*args),
      File "/usr/lib/python3.7/site-packages/pytesseract/pytesseract.py", line 249, in run_and_get_output
        run_tesseract(**kwargs)
      File "/usr/lib/python3.7/site-packages/pytesseract/pytesseract.py", line 221, in run_tesseract
        raise TesseractNotFoundError()
    pytesseract.pytesseract.TesseractNotFoundError: tesseract is not installed or it's not in your path
    

    I was originally writing to 40 different csv files simultaneously. After completely removing my file writing/reading code, this error still persisted and triggered on the exact same frame of the video every time. I also tested with a different video and ran into the same exception after only 25 frames. This leads me to believe this is a bug/limitation in pytesseract. Has anyone else run into a similar issue and been able to come up with a solution/work around?

    My setup: Linux Kernel: 5.1.16-arch1-1-ARCH python-pytesseract-git package installed from aur Python 3.7.3-2

    opened by cdyrssen 18
  • Method for adding config settings

    Method for adding config settings

    Look mama, no config files!

    I was wrestling with config files for some of the settings when I ran across this google group discussion about tesseract using java and it made my mouth water. Here's a code snippet from their discussion:

    tesseract = new Tesseract();                      
    tesseract.setOcrEngineMode(TessAPI.TessOcrEngineMode.OEM_TESSERACT_ONLY);
    tesseract.setPageSegMode(7);
    tesseract.setTessVariable("load_system_dawg", "0");
    tesseract.setTessVariable("load_freq_dawg", "0");
    tesseract.setTessVariable("load_punc_dawg", "0");
    tesseract.setTessVariable("load_number_dawg", "0");
    

    At first you may think, well that's cool I guess but you can really do the same thing by just defining a long string of configs and calling it whenever you need it. For example, '--psm 10 --oem 3 -c load_system_dawg=0 load_freq_dawg=0 load_punc_dawg=0 . . .'

    In the tesseract documentation, it mentions that you can't change 'init only' parameters with tesseract executable option -c. And those 'init only' parameters would include some of the ones I've been messing with. I think that most people would say that it would be nice to be able to set your variables for your config file directly in python using a set_config_variable method instead of having to go make a config file. Since some of the variables that are being set in the code above are in fact 'init only', the Java guys must be creating a config file (I did not sniff through their code to verify this, however) from java code.

    I haven't done it yet because I'm not too familiar with the code inside pytesseract, but right now making a temporary config file and letting it be loadable via a set_config_variable method doesn't seem very hard from my perspective. Here's the high level logic I'm thinking about:

    • When pytesseract is imported, check the config folder to see if a temp.txt file exists. If so, wipe it clean. If not, create one.
    • When someone calls the tsr.set_config_variable method, just write the variable, a space, and the value on a new line in the temp.txt file.
    • You could also have a method to delete the variable from the file and thus return tesseract to the default.
    • When any of the OCR functions are called, if the user does not manually supply another config file, use the temp.txt as the config file unless it's empty.

    Why this would be a good feature:

    • For me and others like me who wrote their first line of code 8 months ago, even little trips to the back-end of config files or source code can be confusing and take lot's of time.
    • There's a lot of super ridiculously lazy people out there just like me who would rather not know anything about how the programs and libraries work which they're using, but just want to use them to make other interesting applications.

    But maybe it's actually not very easy to implement. Is this actually possible?

    Feature Request 
    opened by Jeremiah-England 18
  • IOError for OSD (psm 0)

    IOError for OSD (psm 0)

    Running pytesseract on Raspbian, python 2.7, tesseract 4.00 (4.00.00dev-625-g9c2fa0d).

    My code is as follows:

    ret = image_to_string(im,lang='eng',boxes=False, config="-psm 0")
    

    Error:

    Traceback (most recent call last):
      File "/home/pi/Vocable/TESTING.py", line 114, in <module>
        ret = image_to_string(im,lang='eng',boxes=False, config="-psm 0")
      File "/usr/local/lib/python2.7/dist-packages/pytesseract/pytesseract.py", line 126, in image_to_string
        f = open(output_file_name, 'rb')
    IOError: [Errno 2] No such file or directory: '/tmp/tess_lN5JlN.txt'
    

    If I run code with psm 1 [Recognition with OSD], I receive no errors but the upside down text is simply treated as right-side-up text, producing garbage results. (This was tested on an inverted test.png)

    Essentially text recognition works but OSD does not.

    Feature Request 
    opened by movaid7 18
  • ModuleNotFoundError: No module named 'PIL'

    ModuleNotFoundError: No module named 'PIL'

    I am trying to get pytesseract to run on a Windows 10 system but unfortunately always get the following error log:

      File "C:\Users\Marc\PycharmProjects\test\venv\lib\site-packages\pytesseract\pytesseract.py", line 27, in <module>
        from PIL import Image
    ModuleNotFoundError: No module named 'PIL'
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "C:\Users\Marc\PycharmProjects\test\main.py", line 15, in <module>
        import pytesseract
      File "C:\Users\Marc\PycharmProjects\test\venv\lib\site-packages\pytesseract\__init__.py", line 2, in <module>
        from .pytesseract import ALTONotSupported
      File "C:\Users\Marc\PycharmProjects\test\venv\lib\site-packages\pytesseract\pytesseract.py", line 29, in <module>
        import Image
    ModuleNotFoundError: No module named 'Image'
    
    Process finished with exit code 1
    
    opened by liebig 16
  • Use pytesseract on other lang issue - more clue

    Use pytesseract on other lang issue - more clue

    Hello guys,

    Although I update to pytesseract v0.1.8, it cannot do ocr on JPN image still.
    However, if I manually set command to following, it can works.
    

    (but program will crash after that because I change the file path. It doesn't matter for now.)

    def run_tesseract(input_filename, ...):
        ...
        if not sys.platform.startswith('win32') and nice != 0:
            command  += ('nice', '-n', str(nice))
        +input_filename = "<my src img path>\\src.png"
        +output_filename_base = "<my src img path>\\output.log"
        command += (tesseract_cmd, input_filename, output_filename_base)
       ...
    

    I change src_img path to absolute path for my src file and save the log to absolute location.

    In the original code, I cannot get anything from tesseract ocr. If I change src_img to absolute path without modified output.log part, it will get part of result.(some jpn word have lost.)

    If I cange src_img and modified output together, all things work well. (but program will crash after that because I change the file path.)

    Please see my result in following drive:

    https://goo.gl/pej1Nz

    There are three output result, src image and jpn.traindata. The jpn.traindata need to place under tesseract tessdata directory.

    Regards, Moonlove

    opened by moonlovestar 16
  • Subprocess not working on iis server

    Subprocess not working on iis server

    hello,iam using subprocess,when i sent request through postman using local server ,subprocess is working,but when im sending request using iis server ,subprocess is not working

    opened by karthikchowkula 7
  • Improve issue reporting

    Improve issue reporting

    The issue reporting process currently seems to be suboptimal, as basic information is missing and there appear to be mostly reports about stuff which we cannot do anything about due to the failure being in Tesseract itself.

    For this reason I would like to propose to provide a template for reporting (possible) bugs, which at least requests the used Python version, OS, Tesseract version and the reproducing code example, accompanied with the actual and expected results.

    Additionally, it probably makes sense to provide easier access to cmd_args in run_tesseract, as we currently have to either monkey-patch subprocess.Popen or edit the installed module directly. One solution would be to just use debug logging for it, basically allowing the user to just set the log level for the pytesseract logger to test the command with plain Tesseract. This log level setting could be added as a remark inside the bug reporting template as well to avoid additional requests imposing an overhead for us.

    opened by stefan6419846 0
  • raise TesseractError(proc.returncode, get_errors(error_string)) pytesseract.pytesseract.TesseractError: (3221225477, '')

    raise TesseractError(proc.returncode, get_errors(error_string)) pytesseract.pytesseract.TesseractError: (3221225477, '')

    File "C:\Users\Castel\AppData\Roaming\Python\Python310\site-packages\pytesseract\pytesseract.py", line 264, in run_tesseract
        raise TesseractError(proc.returncode, get_errors(error_string))
    pytesseract.pytesseract.TesseractError: (3221225477, '')
    

    Print screen:

    image

    opened by me-suzy 8
  • FileNotFoundError tmp file

    FileNotFoundError tmp file

    Hi, I'm working on a Fedora 32 distro with tesseract 5.0.0-alpha-20201224 and pytesseract Version: 0.3.10.

    when I call this function image_to_string(image, lang="letsgodigital", config="--oem 4 --psm 100 -c tessedit_char_whitelist=.0123456789") I received this error:

    Traceback (most recent call last):
      File "main2.py", line 8, in <module>
        str_Res = digital_display_ocr.ocr_image(image)
      File "/home/fili/workspace/python/digit_recognition/digital_display_ocr.py", line 107, in ocr_image
        return image_to_string(otsu_thresh_image, lang="letsgodigital", config="--oem 4 --psm 100 -c tessedit_char_whitelist=.0123456789")
      File "/home/fili/.local/lib/python3.8/site-packages/pytesseract/pytesseract.py", line 423, in image_to_string
        return {
      File "/home/fili/.local/lib/python3.8/site-packages/pytesseract/pytesseract.py", line 426, in <lambda>
        Output.STRING: lambda: run_and_get_output(*args),
      File "/home/fili/.local/lib/python3.8/site-packages/pytesseract/pytesseract.py", line 290, in run_and_get_output
        with open(filename, 'rb') as output_file:
    FileNotFoundError: [Errno 2] File o directory non esistente: '/tmp/tess_4p1bawg8.txt'
    

    How can I resolve this?

    opened by filirnd 7
  • Error when trying to import pytesseract

    Error when trying to import pytesseract

    I am getting the following error when trying to import pytesseract:

    ModuleNotFoundError: No module named 'pytesseract'

    I am using windows 11 and I made sure to have tesseract in my path and it works when I call it directly from the command prompt. I am using python > 3.6 like it says in the instructions.

    opened by graham-eisele 3
Releases(v0.3.10)
Owner
Matthias A Lee
Principal Performance Engineer, Computer Science PhD. Interest span eHealth, NoSQL, cloud computing, GPUs and Software Performance
Matthias A Lee
Awesome Spectral Indices in Python.

Awesome Spectral Indices in Python: Numpy | Pandas | GeoPandas | Xarray | Earth Engine | Planetary Computer | Dask GitHub: https://github.com/davemlz/

David Montero Loaiza 98 Jan 02, 2023
Recognizing cropped text in natural images.

ASTER: Attentional Scene Text Recognizer with Flexible Rectification ASTER is an accurate scene text recognizer with flexible rectification mechanism.

Baoguang Shi 681 Jan 02, 2023
Toolbox for OCR post-correction

Ochre Ochre is a toolbox for OCR post-correction. Please note that this software is experimental and very much a work in progress! Overview of OCR pos

National Library of the Netherlands / Research 117 Nov 10, 2022
Repositório para registro de estudo da biblioteca opencv (Python)

OpenCV (Python) Objetivo do Repositório: Registrar avanços no estudo da biblioteca opencv. O repositório estará aberto a qualquer pessoa e há tambem u

1 Jun 14, 2022
A simple Digits Recogniser made in Python

⭐ Python Digit Recogniser A simple digit Recogniser made in Python Demo Run Locally Clone the project git clone https://github.com/yashraj-n/python-

Yashraj narke 4 Nov 29, 2021
This is a GUI for scrapping PDFs with the help of optical character recognition making easier than ever to scrape PDFs.

pdf-scraper-with-ocr With this tool I am aiming to facilitate the work of those who need to scrape PDFs either by hand or using tools that doesn't imp

Jacobo José Guijarro Villalba 75 Oct 21, 2022
Scale-aware Automatic Augmentation for Object Detection (CVPR 2021)

SA-AutoAug Scale-aware Automatic Augmentation for Object Detection Yukang Chen, Yanwei Li, Tao Kong, Lu Qi, Ruihang Chu, Lei Li, Jiaya Jia [Paper] [Bi

Jia Research Lab 182 Dec 29, 2022
Generates a message from the infamous Jerma Impostor image

Generate your very own jerma sus imposter message. Modes: Default Mode: Only supports the characters " ", !, a, b, c, d, e, h, i, m, n, o, p, q, r, s,

Giorno420 1 Oct 27, 2022
Hand gesture detection project with aweome UI implementation.

an awesome hand gesture detection project for you to be creative! Imagination is the limit to do with this project.

AR Ashraf 39 Sep 26, 2022
ISI's Optical Character Recognition (OCR) software for machine-print and handwriting data

VistaOCR ISI's Optical Character Recognition (OCR) software for machine-print and handwriting data Publications "How to Efficiently Increase Resolutio

ISI Center for Vision, Image, Speech, and Text Analytics 21 Dec 08, 2021
Table recognition inside douments using neural networks

TableTrainNet A simple project for training and testing table recognition in documents. This project was developed to make a neural network which reco

Giovanni Cavallin 93 Jul 24, 2022
scantailor - Scan Tailor is an interactive post-processing tool for scanned pages.

Scan Tailor - scantailor.org This project is no longer maintained, and has not been maintained for a while. About Scan Tailor is an interactive post-p

1.5k Dec 28, 2022
The code for CVPR2022 paper "Likert Scoring with Grade Decoupling for Long-term Action Assessment".

Likert Scoring with Grade Decoupling for Long-term Action Assessment This is the code for CVPR2022 paper "Likert Scoring with Grade Decoupling for Lon

10 Oct 21, 2022
A simple python program to record security cam footage by detecting a face and body of a person in the frame.

SecurityCam A simple python program to record security cam footage by detecting a face and body of a person in the frame. This code was created by me,

1 Nov 08, 2021
Image Recognition Model Generator

Takes a user-inputted query and generates a machine learning image recognition model that determines if an inputted image is or isn't their query

Christopher Oka 1 Jan 13, 2022
M-LSDを用いて四角形を検出し、射影変換を行うサンプルプログラム

M-LSD-warpPerspective-Example M-LSDを用いて四角形を検出し、射影変換を行うサンプルプログラムです。 Requirements OpenCV 3.4.2 or Later tensorflow 2.4.1 or Later Usage 実行方法は以下です。 pytho

KazuhitoTakahashi 9 Oct 14, 2022
第一届西安交通大学人工智能实践大赛(2018AI实践大赛--图片文字识别)第一名;仅采用densenet识别图中文字

OCR 第一届西安交通大学人工智能实践大赛(2018AI实践大赛--图片文字识别)冠军 模型结果 该比赛计算每一个条目的f1score,取所有条目的平均,具体计算方式在这里。这里的计算方式不对一句话里的相同文字重复计算,故f1score比提交的最终结果低: - train val f1score 0

尹畅 441 Dec 22, 2022
Binarize document images

Binarization Binarization for document images Examples Introduction This tool performs document image binarization (i.e. transform colour/grayscale to

QURATOR-SPK 48 Jan 02, 2023
It is a image ocr tool using the Tesseract-OCR engine with the pytesseract package and has a GUI.

OCR-Tool It is a image ocr tool made in Python using the Tesseract-OCR engine with the pytesseract package and has a GUI. This is my second ever pytho

Khant Htet Aung 4 Jul 11, 2022
huoyijie 1.2k Dec 29, 2022