OpenCV 4.12.0
开源计算机视觉
加载中...
搜索中...
无匹配项
cv::text::OCRHMMDecoder 类参考

OCRHMMDecoder 类提供了一个使用隐马尔可夫模型进行 OCR 的接口。 更多...

#include <opencv2/text/ocr.hpp>

cv::text::OCRHMMDecoder 的协作图

类  ClassifierCallback
 使用字符分类器的回调函数被设计成一个类。 更多...
 

公共成员函数

String run (InputArray image, InputArray mask, int min_confidence, int component_level=0)
 
String run (InputArray image, int min_confidence, int component_level=0)
 
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) CV_OVERRIDE
 使用 HMM 识别文本。
 
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) CV_OVERRIDE
 使用 HMM 识别文本。
 
- 从 cv::text::BaseOCR 继承的公共成员函数
virtual ~BaseOCR ()
 

静态公共成员函数

static Ptr< OCRHMMDecodercreate (const Ptr< OCRHMMDecoder::ClassifierCallback > classifier, const String &vocabulary, InputArray transition_probabilities_table, InputArray emission_probabilities_table, int mode=OCR_DECODER_VITERBI)
 创建 OCRHMMDecoder 类的实例。 初始化 HMMDecoder。
 
static Ptr< OCRHMMDecodercreate (const String &filename, const String &vocabulary, InputArray transition_probabilities_table, InputArray emission_probabilities_table, int mode=OCR_DECODER_VITERBI, int classifier=OCR_KNN_CLASSIFIER)
 创建 OCRHMMDecoder 类的实例。 从指定路径加载并初始化 HMMDecoder。
 

保护属性

Ptr< OCRHMMDecoder::ClassifierCallbackclassifier
 
Mat emission_p
 
decoder_mode mode
 
Mat transition_p
 
std::string 词汇表
 

详细描述

OCRHMMDecoder 类提供了一个使用隐马尔可夫模型进行 OCR 的接口。

注意

成员函数文档

◆ create() [1/2]

static Ptr< OCRHMMDecoder > cv::text::OCRHMMDecoder::create ( const Ptr< OCRHMMDecoder::ClassifierCallback > classifier,
const String & 词汇表,
InputArray transition_probabilities_table,
InputArray emission_probabilities_table,
int mode = OCR_DECODER_VITERBI )
static
Python
cv.text.OCRHMMDecoder.create(classifier, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode]) -> retval
cv.text.OCRHMMDecoder.create(filename, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode[, classifier]]) -> retval
cv.text.OCRHMMDecoder_create(classifier, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode]) -> retval
cv.text.OCRHMMDecoder_create(filename, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode[, classifier]]) -> retval

创建 OCRHMMDecoder 类的实例。 初始化 HMMDecoder。

参数
classifier带有内置特征提取器的字符分类器。
词汇表语言词汇表(ascii 英文文本时为字符)。 vocabulary.size() 必须等于分类器的类数。
transition_probabilities_table具有字符对之间转换概率的表。 cols == rows == vocabulary.size().
emission_probabilities_table具有观测发射概率的表。 cols == rows == vocabulary.size().
modeHMM 解码算法。 目前只有 OCR_DECODER_VITERBI 可用(http://en.wikipedia.org/wiki/Viterbi_algorithm)。

◆ create() [2/2]

static Ptr< OCRHMMDecoder > cv::text::OCRHMMDecoder::create ( const String & filename,
const String & 词汇表,
InputArray transition_probabilities_table,
InputArray emission_probabilities_table,
int mode = OCR_DECODER_VITERBI,
int classifier = OCR_KNN_CLASSIFIER )
static
Python
cv.text.OCRHMMDecoder.create(classifier, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode]) -> retval
cv.text.OCRHMMDecoder.create(filename, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode[, classifier]]) -> retval
cv.text.OCRHMMDecoder_create(classifier, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode]) -> retval
cv.text.OCRHMMDecoder_create(filename, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode[, classifier]]) -> retval

创建 OCRHMMDecoder 类的实例。 从指定路径加载并初始化 HMMDecoder。

这是一个重载的成员函数,为方便起见而提供。 它与上述函数的不同之处仅在于它接受的参数。

◆ run() [1/4]

String cv::text::OCRHMMDecoder::run ( InputArray image,
InputArray mask,
int min_confidence,
int component_level = 0 )
Python
cv.text.OCRHMMDecoder.run(image, min_confidence[, component_level]) -> retval
cv.text.OCRHMMDecoder.run(image, mask, min_confidence[, component_level]) -> retval

◆ run() [2/4]

String cv::text::OCRHMMDecoder::run ( InputArray image,
int min_confidence,
int component_level = 0 )
Python
cv.text.OCRHMMDecoder.run(image, min_confidence[, component_level]) -> retval
cv.text.OCRHMMDecoder.run(image, mask, min_confidence[, component_level]) -> retval

◆ run() [3/4]

virtual void cv::text::OCRHMMDecoder::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
cv.text.OCRHMMDecoder.run(image, min_confidence[, component_level]) -> retval
cv.text.OCRHMMDecoder.run(image, mask, min_confidence[, component_level]) -> retval

使用 HMM 识别文本。

输入图像和一个掩码(其中每个连接的组件对应于一个分割字符),并在 output_text 参数中返回识别的文本。 可选择提供找到的各个文本元素(例如单词)的 Rect,以及这些文本元素及其置信度值的列表。

参数
image具有单行文本(或单词)的输入图像 CV_8UC1 或 CV_8UC3。
mask与输入图像相同大小的输入二值图像 CV_8UC1。 掩码中的每个连接的组件对应于输入图像中的一个分割字符。
output_text输出文本。 HMM 解码器找到的最可能的字符序列。
component_rects如果提供,该方法将输出找到的各个文本元素(例如单词)的 Rect 列表。
component_texts如果提供,该方法将输出识别的各个文本元素(例如单词)的文本字符串列表。
component_confidences如果提供,该方法将输出识别的各个文本元素(例如单词)的置信度值列表。
component_level仅支持 OCR_LEVEL_WORD。

实现 cv::text::BaseOCR

◆ run() [4/4]

virtual void cv::text::OCRHMMDecoder::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
cv.text.OCRHMMDecoder.run(image, min_confidence[, component_level]) -> retval
cv.text.OCRHMMDecoder.run(image, mask, min_confidence[, component_level]) -> retval

使用 HMM 识别文本。

输入二值图像,并在 output_text 参数中返回识别的文本。 可选择提供找到的各个文本元素(例如单词)的 Rect,以及这些文本元素及其置信度值的列表。

参数
image输入二进制图像 CV_8UC1,带有单个文本行(或单词)。
output_text输出文本。 HMM 解码器找到的最可能的字符序列。
component_rects如果提供,该方法将输出找到的各个文本元素(例如单词)的 Rect 列表。
component_texts如果提供,该方法将输出识别的各个文本元素(例如单词)的文本字符串列表。
component_confidences如果提供,该方法将输出识别的各个文本元素(例如单词)的置信度值列表。
component_level仅支持 OCR_LEVEL_WORD。

实现 cv::text::BaseOCR

成员数据文档

◆ classifier

Ptr<OCRHMMDecoder::ClassifierCallback> cv::text::OCRHMMDecoder::classifier
保护

◆ emission_p

Mat cv::text::OCRHMMDecoder::emission_p
保护

◆ mode

decoder_mode cv::text::OCRHMMDecoder::mode
保护

◆ transition_p

Mat cv::text::OCRHMMDecoder::transition_p
保护

◆ vocabulary

std::string cv::text::OCRHMMDecoder::vocabulary
保护

该类的文档由以下文件生成