OpenCV 4.11.0
开源计算机视觉
加载中…
搜索中…
未找到匹配项
场景文字识别

详细描述

类  cv::text::BaseOCR
 
类  cv::text::OCRBeamSearchDecoder
 OCRBeamSearchDecoder 类提供了一个使用波束搜索算法进行 OCR 的接口。更多…
 
类  cv::text::OCRHMMDecoder
 OCRHMMDecoder 类提供了一个使用隐马尔可夫模型进行 OCR 的接口。更多…
 
类  cv::text::OCRHolisticWordRecognizer
 OCRHolisticWordRecognizer 类提供了分段词识别功能。给定一个预定义的词汇表,一个 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

◆ classifier_type

#include <opencv2/text/ocr.hpp>

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

◆ decoder_mode

#include <opencv2/text/ocr.hpp>

枚举值
OCR_DECODER_VITERBI 
Python: cv.text.OCR_DECODER_VITERBI

◆ ocr_engine_mode

#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

◆ page_seg_mode

#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 & vocabulary,
std::vector< cv::String > & lexicon )
Python
cv.text.createOCRHMMTransitionsTable(vocabulary, lexicon) -> retval

◆ createOCRHMMTransitionsTable() [2/2]

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

#include <opencv2/text/ocr.hpp>

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

参数
vocabulary语言词汇表(ASCII 英文文本中的字符)。
lexicon预期在特定图像中找到的单词列表。
transition_probabilities_table包含字符对之间转换概率的输出表。列数 == 行数 == 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 代替