Tesseract Open Source OCR Engine (main repository)
Go to file
Stefan Weil ebbfc3ae8d Improve robustness of function LoadDataFromFile (#1207)
ftell returns a long value which can be negative when an error occurred.
It returns LONG_MAX for directories.

Both cases were not handled by the old code.

Signed-off-by: Stefan Weil <sw@weilnetz.de>
2017-11-10 15:46:38 +01:00
.github Make less verbose 2017-06-03 15:30:48 +05:30
android Update Android.mk 2016-12-15 12:08:10 +02:00
api Remove Tesseract parameter "include_page_breaks" and use FF by default 2017-09-19 07:34:32 +02:00
arch Autotools build: Remove the option 'USING_MULTIPLELIBS' 2017-09-11 15:03:53 +03:00
ccmain Make font size estimation work with the lstm engine (#1173) 2017-10-20 10:07:16 +02:00
ccstruct Merge pull request #1109 from mingodad/mingodad-fix-interword-spaces 2017-09-15 08:45:21 +02:00
ccutil Improve robustness of function LoadDataFromFile (#1207) 2017-11-10 15:46:38 +01:00
classify returns the correct dictionary if lstm only used 2017-09-14 13:03:22 +02:00
cmake Update SourceGroups.cmake 2016-12-15 14:11:47 +03:00
contrib helper script to generate dawg input files from text 2016-10-17 19:04:29 +01:00
cutil Autotools build: Remove the option 'USING_MULTIPLELIBS' 2017-09-11 15:03:53 +03:00
dict Autotools build: Remove the option 'USING_MULTIPLELIBS' 2017-09-11 15:03:53 +03:00
doc doc: Fix use of MAINTAINER_MODE 2017-05-02 07:37:18 +02:00
googletest@4bab34d208 Add googletest submodule 2017-07-24 19:45:06 +02:00
java automake: Enable all warnings and fix a warning 2017-05-15 20:08:54 +02:00
lstm Autotools build: Remove the option 'USING_MULTIPLELIBS' 2017-09-11 15:03:53 +03:00
opencl Autotools build: Remove the option 'USING_MULTIPLELIBS' 2017-09-11 15:03:53 +03:00
snap Download the leptonica source from github 2017-06-29 16:29:29 -06:00
tessdata Update Makefile.am (add 'lstm.train') 2017-04-02 17:06:12 +09:00
testdata Harder unittest that uses file i/o and string manipulation 2017-08-03 15:51:18 -07:00
testing Groundtruth for testing/eurotext.tif 2017-09-04 18:31:13 +05:30
tests googletest: Add dummy test 2017-07-24 19:45:06 +02:00
textord Autotools build: Remove the option 'USING_MULTIPLELIBS' 2017-09-11 15:03:53 +03:00
training Fix help message for unicharset_extractor (#1206) 2017-11-10 15:45:35 +01:00
unittest unittest/apiexample_test: Use googletest API for error handling 2017-09-13 13:50:39 +02:00
viewer Autotools build: Remove the option 'USING_MULTIPLELIBS' 2017-09-11 15:03:53 +03:00
vs2010 Remove mathfix.h 2017-06-05 20:26:25 +02:00
wordrec Autotools build: Remove the option 'USING_MULTIPLELIBS' 2017-09-11 15:03:53 +03:00
.gitignore Add googletest submodule 2017-07-24 19:45:06 +02:00
.gitmodules Add googletest submodule 2017-07-24 19:45:06 +02:00
.travis.yml Disable travis os x builds as they do not work well on travis-side. 2017-09-09 21:13:14 +03:00
appveyor.yml Update appveyor.yml 2017-09-26 17:01:52 +03:00
AUTHORS AUTHORS: Add more contributors 2016-11-27 00:04:05 +02:00
autogen.sh automake: Enable all warnings and fix a warning 2017-05-15 20:08:54 +02:00
ChangeLog Fix ChangeLog for Leptonica 1.74 2017-04-22 18:33:37 +02:00
CMakeLists.txt Add Leptonica's pkg-config-found library directory to the search path 2017-10-03 21:15:44 +11:00
configure.ac Autotools build: Remove the option 'USING_MULTIPLELIBS' 2017-09-11 15:03:53 +03:00
CONTRIBUTING.md Change Mac OS X -> macOS 2017-06-02 21:50:17 +02:00
COPYING Result of clang tidy on recent merge 2016-11-07 10:46:33 -08:00
cppan.yml Fix cppan dependency. 2017-09-10 02:28:05 +03:00
docker-compose.yml Dockerifying using travis build script 2016-03-18 00:32:35 -04:00
Dockerfile Fix and improve Dockerfile 2017-05-18 21:35:53 +02:00
INSTALL Fix typos 2017-01-29 13:12:24 +01:00
INSTALL.GIT.md Add additional information 2017-09-12 11:32:27 +05:30
LICENSE Added missing license headers 2016-11-18 15:53:11 -08:00
Makefile.am Changes needed for adding make check for unittest 2017-08-19 19:01:46 +05:30
NEWS top-skimming import from sf.net 2007-03-07 20:03:40 +00:00
README.md Update readme for 3.05.01 2017-06-02 09:14:47 +05:30
tesseract.pc.cmake Cmake install 2017-04-20 14:50:53 +03:00
tesseract.pc.in improve tesseract.pc.in - fixes #241 2016-03-04 22:25:40 +01:00

Tesseract OCR

Build

Build Status Build status

Other

Coverity Scan Build Status Insight.io

About

This package contains an OCR engine - libtesseract and a command line program - tesseract.

The lead developer is Ray Smith. The maintainer is Zdenko Podobny. For a list of contributors see AUTHORS and GitHub's log of contributors.

Tesseract has unicode (UTF-8) support, and can recognize more than 100 languages "out of the box".

Tesseract supports various output formats: plain-text, hocr(html), pdf, tsv, invisible-text-only pdf.

You should note that in many cases, in order to get better OCR results, you'll need to improve the quality of the image you are giving Tesseract.

This project does not include a GUI application. If you need one, please see the 3rdParty wiki page.

Tesseract can be trained to recognize other languages. See Tesseract Training for more information.

Brief history

Tesseract was originally developed at Hewlett-Packard Laboratories Bristol and at Hewlett-Packard Co, Greeley Colorado between 1985 and 1994, with some more changes made in 1996 to port to Windows, and some C++izing in 1998. In 2005 Tesseract was open sourced by HP. Since 2006 it is developed by Google.

The latest stable version is 3.05.01, released on June 1, 2017. Latest source code for 3.05 is available from 3.05 branch on github.

Source code for the new LSTM based 4.00.00alpha version is available from the master branch on github. Please note this branch is under active development.

See Release Notes and Change Log for more details of the releases.

Installing Tesseract

You can either Install Tesseract via pre-built binary package or build it from source.

Supported Compilers are:

  • GCC 4.8 and above
  • Clang 3.4 and above
  • MSVC 2015, 2017

Other compilers might work, but are not officially supported.

Running Tesseract

Basic command line usage:

tesseract imagename outputbase [-l lang] [--oem ocrenginemode] [--psm pagesegmode] [configfiles...]

For more information about the various command line options use tesseract --help or man tesseract.

For developers

Developers can use libtesseract C or C++ API to build their own application. If you need bindings to libtesseract for other programming languages, please see the wrapper section on AddOns wiki page.

Documentation of Tesseract generated from source code by doxygen can be found on tesseract-ocr.github.io.

Support

Before you submit an issue, please review the guidelines for this repository.

For support, first read the Wiki, particularly the FAQ to see if your problem is addressed there. If not, search the Tesseract user forum, the Tesseract developer forum and past issues, and if you still can't find what you need, ask for support in the mailing-lists.

Mailing-lists:

Please report an issue only for a bug, not for asking questions.

License

The code in this repository is licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

NOTE: This software depends on other packages that may be licensed under different open source licenses.

Latest Version of README

For the latest online version of the README.md see:

https://github.com/tesseract-ocr/tesseract/blob/master/README.md