OpenCV 4.11.0
开源计算机视觉
加载中…
搜索中…
无匹配项
cv::text::OCRBeamSearchDecoder 类参考

OCRBeamSearchDecoder 类提供了一个使用束搜索算法进行 OCR 的接口。更多…

#include <opencv2/text/ocr.hpp>

cv::text::OCRBeamSearchDecoder 的协作图

类 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)
 
虚函数 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
 
虚函数 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
 使用束搜索识别文本。
 
- 继承自 cv::text::BaseOCR 的公有成员函数
虚函数 ~BaseOCR ()
 

静态公有成员函数

静态 Ptr< OCRBeamSearchDecodercreate (const Ptr< OCRBeamSearchDecoder::ClassifierCallback > classifier, const std::string &vocabulary, InputArray transition_probabilities_table, InputArray emission_probabilities_table, text::decoder_mode mode=OCR_DECODER_VITERBI, int beam_size=500)
 创建一个 OCRBeamSearchDecoder 类的实例。初始化 HMMDecoder。
 
静态 Ptr< OCRBeamSearchDecodercreate (const String &filename, const String &vocabulary, InputArray transition_probabilities_table, InputArray emission_probabilities_table, text::decoder_mode mode=OCR_DECODER_VITERBI, int beam_size=500)
 创建一个 OCRBeamSearchDecoder 类的实例。从指定路径初始化 HMMDecoder。
 

受保护属性

int beam_size
 
Ptr< OCRBeamSearchDecoder::ClassifierCallbackclassifier
 
Mat emission_p
 
decoder_mode mode
 
Mat transition_p
 
std::string vocabulary
 

详细描述

OCRBeamSearchDecoder 类提供了一个使用束搜索算法进行 OCR 的接口。

注意

成员函数文档

◆ create() [1/2]

静态 Ptr< OCRBeamSearchDecoder > cv::text::OCRBeamSearchDecoder::create ( const Ptr< OCRBeamSearchDecoder::ClassifierCallback > classifier,
const std::string & vocabulary,
InputArray transition_probabilities_table,
InputArray emission_probabilities_table,
text::decoder_mode mode = OCR_DECODER_VITERBI,
int beam_size = 500 )
静态
Python
cv.text.OCRBeamSearchDecoder.create(classifier, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode[, beam_size]]) -> retval
cv.text.OCRBeamSearchDecoder_create(classifier, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode[, beam_size]]) -> retval

创建一个 OCRBeamSearchDecoder 类的实例。初始化 HMMDecoder。

参数
classifier具有内置特征提取器的字符分类器。
vocabulary语言词汇表(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)。
beam_size束搜索算法中束的大小。

◆ create() [2/2]

静态 Ptr< OCRBeamSearchDecoder > cv::text::OCRBeamSearchDecoder::create ( const String & filename,
const String & vocabulary,
InputArray transition_probabilities_table,
InputArray emission_probabilities_table,
text::decoder_mode mode = OCR_DECODER_VITERBI,
int beam_size = 500 )
静态
Python
cv.text.OCRBeamSearchDecoder.create(classifier, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode[, beam_size]]) -> retval
cv.text.OCRBeamSearchDecoder_create(classifier, vocabulary, transition_probabilities_table, emission_probabilities_table[, mode[, beam_size]]) -> retval

创建一个 OCRBeamSearchDecoder 类的实例。从指定路径初始化 HMMDecoder。

这是一个重载的成员函数,为了方便提供。它与上面的函数的区别仅仅在于它接受的参数不同。

◆ run() [1/4]

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

◆ run() [2/4]

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

◆ run() [3/4]

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

◆ run() [4/4]

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

使用束搜索识别文本。

接收图像作为输入,并将识别的文本返回到 output_text 参数中。还可以选择性地提供找到的单个文本元素(例如,单词)的矩形区域,以及这些文本元素及其置信度值的列表。

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

实现 cv::text::BaseOCR.

成员数据文档

◆ beam_size

int cv::text::OCRBeamSearchDecoder::beam_size
protected

◆ classifier

Ptr<OCRBeamSearchDecoder::ClassifierCallback> cv::text::OCRBeamSearchDecoder::classifier
protected

◆ emission_p

Mat cv::text::OCRBeamSearchDecoder::emission_p
protected

◆ mode

decoder_mode cv::text::OCRBeamSearchDecoder::mode
protected

◆ transition_p

Mat cv::text::OCRBeamSearchDecoder::transition_p
protected

◆ vocabulary

std::string cv::text::OCRBeamSearchDecoder::vocabulary
protected

此类的文档是从以下文件生成的