| OpenCV 3.4.1 Open Source Computer Vision

Public Member Functions | Static Public Member Functions | List of all members
cv::text::OCRTesseract Class Referenceabstract
Scene Text Detection and Recognition » Scene Text Recognition

OCRTesseract class provides an interface with the tesseract-ocr API (v3.02.02) in C++. More...

`#include "ocr.hpp"`

Inheritance diagram for cv::text::OCRTesseract:

## Public Member Functions
virtual void | run (Mat &image, std::string &output_text, std::vector< Rect > *component_rects=NULL, std::vector< std::string > *component_texts=NULL, std::vector< float > *component_confidences=NULL, int component_level=0)
| Recognize text using the tesseract-ocr API. More...
virtual void | run (Mat &image, Mat &mask, std::string &output_text, std::vector< Rect > *component_rects=NULL, std::vector< std::string > *component_texts=NULL, std::vector< float > *component_confidences=NULL, int component_level=0)
String | run (InputArray image, int min_confidence, int component_level=0)
String | run (InputArray image, InputArray mask, int min_confidence, int component_level=0)
virtual void | setWhiteList (const String &char_whitelist)=0
Public Member Functions inherited from cv::text::BaseOCR
virtual | ~BaseOCR ()

## Static Public Member Functions
static Ptr< OCRTesseract > | create (const char *datapath=NULL, const char *language=NULL, const char *char_whitelist=NULL, int oem=OEM_DEFAULT, int psmode=PSM_AUTO)
| Creates an instance of the OCRTesseract class. Initializes Tesseract. More...

## Detailed Description

OCRTesseract class provides an interface with the tesseract-ocr API (v3.02.02) in C++.

Notice that it is compiled only when tesseract-ocr is correctly installed.

Note
  - (C++) An example of OCRTesseract recognition combined with scene text detection can be found at the end_to_end_recognition demo: https://github.com/opencv/opencv_contrib/blob/master/modules/text/samples/end_to_end_recognition.cpp
    - (C++) Another example of OCRTesseract recognition combined with scene text detection can be found at the webcam_demo: https://github.com/opencv/opencv_contrib/blob/master/modules/text/samples/webcam_demo.cpp

## Member Function Documentation

## § create()

static Ptr<OCRTesseract> cv::text::OCRTesseract::create | ( | const char * | datapath = `NULL`,
|  | const char * | language = `NULL`,
|  | const char * | char_whitelist = `NULL`,
|  | int | oem = `OEM_DEFAULT`,
|  | int | psmode = `PSM_AUTO`
| ) |  |
| static

Python:
| retval | = | cv.text.OCRTesseract_create( | [, datapath[, language[, char_whitelist[, oem[, psmode]]]]] | )

Creates an instance of the OCRTesseract class. Initializes Tesseract.

Parameters

  datapath | the name of the parent directory of tessdata ended with "/", or NULL to use the system's default directory.
  language | an ISO 639-3 code or NULL will default to "eng".
  char_whitelist | specifies the list of characters used for recognition. NULL defaults to "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ".
  oem | tesseract-ocr offers different OCR Engine Modes (OEM), by default tesseract::OEM_DEFAULT is used. See the tesseract-ocr API documentation for other possible values.
  psmode | tesseract-ocr offers different Page Segmentation Modes (PSM) tesseract::PSM_AUTO (fully automatic layout analysis) is used. See the tesseract-ocr API documentation for other possible values.

## § run() [1/4]

virtual void cv::text::OCRTesseract::run | ( | Mat & | image,
|  | std::string & | output_text,
|  | std::vector< Rect > * | component_rects = `NULL`,
|  | std::vector< std::string > * | component_texts = `NULL`,
|  | std::vector< float > * | component_confidences = `NULL`,
|  | int | component_level = `0`
| ) |  |
| virtual

Python:
| retval | = | cv.text_OCRTesseract.run( | image, min_confidence[, component_level] | )
| retval | = | cv.text_OCRTesseract.run( | image, mask, min_confidence[, component_level] | )

Recognize text using the tesseract-ocr API.

Takes image on input and returns recognized text in the output_text parameter. Optionally provides also the Rects for individual text elements found (e.g. words), and the list of those text elements with their confidence values.

Parameters

  image | Input image CV_8UC1 or CV_8UC3
  output_text | Output text of the tesseract-ocr.
  component_rects | If provided the method will output a list of Rects for the individual text elements found (e.g. words or text lines).
  component_texts | If provided the method will output a list of text strings for the recognition of individual text elements found (e.g. words or text lines).
  component_confidences | If provided the method will output a list of confidence values for the recognition of individual text elements found (e.g. words or text lines).
  component_level | OCR_LEVEL_WORD (by default), or OCR_LEVEL_TEXTLINE.

Implements cv::text::BaseOCR.

## § run() [2/4]

virtual void cv::text::OCRTesseract::run | ( | Mat & | image,
|  | Mat & | mask,
|  | std::string & | output_text,
|  | std::vector< Rect > * | component_rects = `NULL`,
|  | std::vector< std::string > * | component_texts = `NULL`,
|  | std::vector< float > * | component_confidences = `NULL`,
|  | int | component_level = `0`
| ) |  |
| virtual

Python:
| retval | = | cv.text_OCRTesseract.run( | image, min_confidence[, component_level] | )
| retval | = | cv.text_OCRTesseract.run( | image, mask, min_confidence[, component_level] | )

Implements cv::text::BaseOCR.

## § run() [3/4]

String cv::text::OCRTesseract::run | ( | InputArray | image,
|  | int | min_confidence,
|  | int | component_level = `0`
| ) |  |

Python:
| retval | = | cv.text_OCRTesseract.run( | image, min_confidence[, component_level] | )
| retval | = | cv.text_OCRTesseract.run( | image, mask, min_confidence[, component_level] | )

## § run() [4/4]

String cv::text::OCRTesseract::run | ( | InputArray | image,
|  | InputArray | mask,
|  | int | min_confidence,
|  | int | component_level = `0`
| ) |  |

Python:
| retval | = | cv.text_OCRTesseract.run( | image, min_confidence[, component_level] | )
| retval | = | cv.text_OCRTesseract.run( | image, mask, min_confidence[, component_level] | )

## § setWhiteList()

virtual void cv::text::OCRTesseract::setWhiteList | ( | const String & | char_whitelist | ) |
| pure virtual

Python:
| None | = | cv.text_OCRTesseract.setWhiteList( | char_whitelist | )

The documentation for this class was generated from the following file:

- /build/master-contrib_docs-lin64/opencv_contrib/modules/text/include/opencv2/text/ocr.hpp