OpenCV 4.12.0
开源计算机视觉
加载中...
搜索中...
无匹配项
场景文本识别

详细描述

类  cv::text::BaseOCR
 
类  cv::text::OCRBeamSearchDecoder
 OCRBeamSearchDecoder 类提供了使用束搜索算法进行OCR的接口。 更多...
 
类  cv::text::OCRHMMDecoder
 OCRHMMDecoder 类提供了使用隐马尔可夫模型进行OCR的接口。 更多...
 
类  cv::text::OCRHolisticWordRecognizer
 OCRHolisticWordRecognizer 类提供了分段词汇识别(wordspotting)的功能。给定一个预定义的词汇表,通过 DictNet 选择给定输入图像中最有可能的词。 更多...
 
类  cv::text::OCRTesseract
 OCRTesseract 类提供了 C++ 中与 tesseract-ocr API (v3.02.02) 的接口。 更多...
 

枚举

枚举  {
  cv::text::OCR_LEVEL_WORD ,
  cv::text::OCR_LEVEL_TEXTLINE
}
 
枚举  cv::text::classifier_type {
  cv::text::OCR_KNN_CLASSIFIER = 0 ,
  cv::text::OCR_CNN_CLASSIFIER = 1
}
 
枚举  cv::text::decoder_mode { cv::text::OCR_DECODER_VITERBI = 0 }
 
枚举  cv::text::ocr_engine_mode {
  cv::text::OEM_TESSERACT_ONLY ,
  cv::text::OEM_CUBE_ONLY ,
  cv::text::OEM_TESSERACT_CUBE_COMBINED ,
  cv::text::OEM_DEFAULT
}
 Tesseract.OcrEngineMode 枚举。 更多...
 
枚举  cv::text::page_seg_mode {
  cv::text::PSM_OSD_ONLY ,
  cv::text::PSM_AUTO_OSD ,
  cv::text::PSM_AUTO_ONLY ,
  cv::text::PSM_AUTO ,
  cv::text::PSM_SINGLE_COLUMN ,
  cv::text::PSM_SINGLE_BLOCK_VERT_TEXT ,
  cv::text::PSM_SINGLE_BLOCK ,
  cv::text::PSM_SINGLE_LINE ,
  cv::text::PSM_SINGLE_WORD ,
  cv::text::PSM_CIRCLE_WORD ,
  cv::text::PSM_SINGLE_CHAR
}
 Tesseract.PageSegMode 枚举。 更多...
 

函数

Mat cv::text::createOCRHMMTransitionsTable (const String &vocabulary, std::vector< cv::String > &lexicon)
 
void cv::text::createOCRHMMTransitionsTable (std::string &vocabulary, std::vector< std::string > &lexicon, OutputArray transition_probabilities_table)
 用于从给定词汇列表(词典)创建定制语言模型转换表的实用函数。
 
Ptr< OCRBeamSearchDecoder::ClassifierCallbackcv::text::loadOCRBeamSearchClassifierCNN (const String &filename)
 允许在创建 OCRBeamSearchDecoder 对象时隐式加载默认字符分类器。
 
Ptr< OCRHMMDecoder::ClassifierCallbackcv::text::loadOCRHMMClassifier (const String &filename, int classifier)
 允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。
 
Ptr< OCRHMMDecoder::ClassifierCallbackcv::text::loadOCRHMMClassifierCNN (const String &filename)
 允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。
 
Ptr< OCRHMMDecoder::ClassifierCallbackcv::text::loadOCRHMMClassifierNM (const String &filename)
 允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。
 

枚举类型文档

◆ 匿名枚举

匿名枚举

#include <opencv2/text/ocr.hpp>

枚举器
OCR_LEVEL_WORD 
Python: cv.text.OCR_LEVEL_WORD
OCR_LEVEL_TEXTLINE 
Python: cv.text.OCR_LEVEL_TEXTLINE

◆ 分类器类型

#include <opencv2/text/ocr.hpp>

枚举器
OCR_KNN_CLASSIFIER 
Python: cv.text.OCR_KNN_CLASSIFIER
OCR_CNN_CLASSIFIER 
Python: cv.text.OCR_CNN_CLASSIFIER

◆ 解码器模式

#include <opencv2/text/ocr.hpp>

枚举器
OCR_DECODER_VITERBI 
Python: cv.text.OCR_DECODER_VITERBI

◆ OCR引擎模式

#include <opencv2/text/ocr.hpp>

Tesseract.OcrEngineMode 枚举。

枚举器
OEM_TESSERACT_ONLY 
Python: cv.text.OEM_TESSERACT_ONLY
OEM_CUBE_ONLY 
Python: cv.text.OEM_CUBE_ONLY
OEM_TESSERACT_CUBE_COMBINED 
Python: cv.text.OEM_TESSERACT_CUBE_COMBINED
OEM_DEFAULT 
Python: cv.text.OEM_DEFAULT

◆ 页面分割模式

#include <opencv2/text/ocr.hpp>

Tesseract.PageSegMode 枚举。

枚举器
PSM_OSD_ONLY 
Python: cv.text.PSM_OSD_ONLY
PSM_AUTO_OSD 
Python: cv.text.PSM_AUTO_OSD
PSM_AUTO_ONLY 
Python: cv.text.PSM_AUTO_ONLY
PSM_AUTO 
Python: cv.text.PSM_AUTO
PSM_SINGLE_COLUMN 
Python: cv.text.PSM_SINGLE_COLUMN
PSM_SINGLE_BLOCK_VERT_TEXT 
Python: cv.text.PSM_SINGLE_BLOCK_VERT_TEXT
PSM_SINGLE_BLOCK 
Python: cv.text.PSM_SINGLE_BLOCK
PSM_SINGLE_LINE 
Python: cv.text.PSM_SINGLE_LINE
PSM_SINGLE_WORD 
Python: cv.text.PSM_SINGLE_WORD
PSM_CIRCLE_WORD 
Python: cv.text.PSM_CIRCLE_WORD
PSM_SINGLE_CHAR 
Python: cv.text.PSM_SINGLE_CHAR

函数文档

◆ createOCRHMMTransitionsTable() [1/2]

Mat cv::text::createOCRHMMTransitionsTable ( const String & 词汇表,
std::vector< cv::String > & lexicon )
Python
cv.text.createOCRHMMTransitionsTable(vocabulary, lexicon) -> retval

◆ createOCRHMMTransitionsTable() [2/2]

void cv::text::createOCRHMMTransitionsTable ( std::string & 词汇表,
std::vector< std::string > & lexicon,
OutputArray transition_probabilities_table )
Python
cv.text.createOCRHMMTransitionsTable(vocabulary, lexicon) -> retval

#include <opencv2/text/ocr.hpp>

用于从给定词汇列表(词典)创建定制语言模型转换表的实用函数。

参数
词汇表语言词汇表(当为 ASCII 英文文本时为字符)。
lexicon预计在特定图像中找到的单词列表。
transition_probabilities_table字符对之间的转换概率输出表。cols == rows == vocabulary.size()。

此函数计算给定词典中字符对的频率统计信息,并用它们填充输出 transition_probabilities_table。transition_probabilities_table 可用作 OCRHMMDecoder::create()OCRBeamSearchDecoder::create() 方法的输入。

注意

◆ loadOCRBeamSearchClassifierCNN()

Ptr< OCRBeamSearchDecoder::ClassifierCallback > cv::text::loadOCRBeamSearchClassifierCNN ( const String & filename)
Python
cv.text.loadOCRBeamSearchClassifierCNN(filename) -> retval

#include <opencv2/text/ocr.hpp>

允许在创建 OCRBeamSearchDecoder 对象时隐式加载默认字符分类器。

参数
filename包含分类器模型的 XML 或 YAML 文件(例如 OCRBeamSearch_CNN_model_data.xml.gz)

CNN 默认分类器基于 Adam Coates 和 Andrew NG 在 [Coates11a] 中提出的场景文本识别方法。该字符分类器由单层卷积神经网络和线性分类器组成。它以滑动窗口的方式应用于输入图像,在每个窗口位置提供一组识别结果。

◆ loadOCRHMMClassifier()

Ptr< OCRHMMDecoder::ClassifierCallback > cv::text::loadOCRHMMClassifier ( const String & filename,
int classifier )
Python
cv.text.loadOCRHMMClassifier(filename, classifier) -> retval

#include <opencv2/text/ocr.hpp>

允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。

参数
filename包含分类器模型的 XML 或 YAML 文件(例如 OCRBeamSearch_CNN_model_data.xml.gz)
classifier可以是 classifier_type 枚举值之一。

◆ loadOCRHMMClassifierCNN()

Ptr< OCRHMMDecoder::ClassifierCallback > cv::text::loadOCRHMMClassifierCNN ( const String & filename)
Python
cv.text.loadOCRHMMClassifierCNN(filename) -> retval

#include <opencv2/text/ocr.hpp>

允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。

参数
filename包含分类器模型的 XML 或 YAML 文件(例如 OCRBeamSearch_CNN_model_data.xml.gz)

CNN 默认分类器基于 Adam Coates 和 Andrew NG 在 [Coates11a] 中提出的场景文本识别方法。该字符分类器由单层卷积神经网络和线性分类器组成。它以滑动窗口的方式应用于输入图像,在每个窗口位置提供一组识别结果。

已弃用
使用 loadOCRHMMClassifier 代替

◆ loadOCRHMMClassifierNM()

Ptr< OCRHMMDecoder::ClassifierCallback > cv::text::loadOCRHMMClassifierNM ( const String & filename)
Python
cv.text.loadOCRHMMClassifierNM(filename) -> retval

#include <opencv2/text/ocr.hpp>

允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。

参数
filename包含分类器模型的 XML 或 YAML 文件(例如 OCRHMM_knn_model_data.xml)

KNN 默认分类器基于 Lukás Neumann 和 Jiri Matas 在 [Neumann11b] 中提出的场景文本识别方法。基本上,输入图像中的区域(轮廓)被归一化为固定大小,同时保留其质心和纵横比,以便提取基于其周长链码的梯度方向的特征向量。然后,使用通过不同标准字体类型的渲染字符的合成数据训练的 KNN 模型对该区域进行分类。

已弃用
loadOCRHMMClassifier 代替