OpenCV 4.10.0
开源计算机视觉
|
类 | |
类 | BaseOCR |
类 | ERFilter |
Neumann 和 Matas 场景文本检测算法第一阶段和第二阶段的基类 [204]。: 更多... | |
结构体 | ERStat |
The ERStat 结构体代表一个特定类别的极值区域 (ER)。 更多... | |
类 | OCRBeamSearchDecoder |
OCRBeamSearchDecoder 类提供了一个使用束搜索算法进行 OCR 的接口。 更多... | |
类 | OCRHMMDecoder |
OCRHMMDecoder 类提供了一个使用隐马尔可夫模型进行 OCR 的接口。 更多... | |
类 | OCRHolisticWordRecognizer |
OCRHolisticWordRecognizer 类提供了分段词语识别的功能。给定一个预定义的词汇表,一个 DictNet 被用来选择给定输入图像的最可能单词。 更多... | |
类 | OCRTesseract |
OCRTesseract 类提供了一个与 tesseract-ocr API (v3.02.02) 在 C++ 中的接口。 更多... | |
类 | TextDetector |
一个提供文本检测算法接口的抽象类。 更多... | |
类 | TextDetectorCNN |
TextDetectorCNN 类提供了文本边界框检测的功能。此类用于查找给定输入图像的文本单词的边界框。此类使用 OpenCV dnn 模块加载在 [165] 中描述的预训练模型。包含修改后的 SSD Caffe 版本的原始存储库:https://github.com/MhLiao/TextBoxes。模型可以从 DropBox 下载。包含模型描述的修改后的 .prototxt 文件可以在 opencv_contrib/modules/text/samples/textbox.prototxt 中找到。 更多... | |
枚举 | |
枚举 | { ERFILTER_NM_RGBLGrad , ERFILTER_NM_IHSGrad } |
computeNMChannels 操作模式 更多... | |
枚举 | { OCR_LEVEL_WORD , OCR_LEVEL_TEXTLINE } |
枚举 | classifier_type { OCR_KNN_CLASSIFIER = 0 , OCR_CNN_CLASSIFIER = 1 } |
枚举 | decoder_mode { OCR_DECODER_VITERBI = 0 } |
枚举 | erGrouping_Modes { ERGROUPING_ORIENTATION_HORIZ , ERGROUPING_ORIENTATION_ANY } |
text::erGrouping 操作模式 更多... | |
枚举 | ocr_engine_mode { OEM_TESSERACT_ONLY , OEM_CUBE_ONLY , OEM_TESSERACT_CUBE_COMBINED , OEM_DEFAULT } |
Tesseract.OcrEngineMode 枚举。 更多... | |
枚举 | page_seg_mode { PSM_OSD_ONLY , PSM_AUTO_OSD , PSM_AUTO_ONLY , PSM_AUTO , PSM_SINGLE_COLUMN , PSM_SINGLE_BLOCK_VERT_TEXT , PSM_SINGLE_BLOCK , PSM_SINGLE_LINE , PSM_SINGLE_WORD , PSM_CIRCLE_WORD , PSM_SINGLE_CHAR } |
Tesseract.PageSegMode 枚举。 更多... | |
函数 | |
void | computeNMChannels (InputArray _src, OutputArrayOfArrays _channels, int _mode=ERFILTER_NM_RGBLGrad) |
计算 N&M 算法 [204] 中要独立处理的不同通道。 | |
Ptr< ERFilter > | createERFilterNM1 (const Ptr< ERFilter::Callback > &cb, int thresholdDelta=1, float minArea=(float) 0.00025, float maxArea=(float) 0.13, float minProbability=(float) 0.4, bool nonMaxSuppression=true, float minProbabilityDiff=(float) 0.1) |
为 N&M 算法 [204] 的第一阶段分类器创建一个极值区域过滤器。 | |
Ptr< ERFilter > | createERFilterNM1 (const String &filename, int thresholdDelta=1, float minArea=(float) 0.00025, float maxArea=(float) 0.13, float minProbability=(float) 0.4, bool nonMaxSuppression=true, float minProbabilityDiff=(float) 0.1) |
从提供的路径(例如 /path/to/cpp/trained_classifierNM1.xml)读取 N&M 算法的第一阶段分类器的极值区域过滤器。 | |
Ptr< ERFilter > | createERFilterNM2 (const Ptr< ERFilter::Callback > &cb, float minProbability=(float) 0.3) |
为 N&M 算法 [204] 的第二阶段分类器创建一个极值区域过滤器。 | |
Ptr< ERFilter > | createERFilterNM2 (const String &filename, float minProbability=(float) 0.3) |
从提供的路径(例如 /path/to/cpp/trained_classifierNM2.xml)读取 N&M 算法的第二阶段分类器的极值区域过滤器。 | |
Mat | createOCRHMMTransitionsTable (const String &vocabulary, std::vector< cv::String > &lexicon) |
void | createOCRHMMTransitionsTable (std::string &vocabulary, std::vector< std::string > &lexicon, OutputArray transition_probabilities_table) |
实用程序函数,用于从给定的单词列表(词典)创建定制的语言模型转换表。 | |
void | detectRegions (InputArray image, const Ptr< ERFilter > &er_filter1, const Ptr< ERFilter > &er_filter2, std::vector< Rect > &groups_rects, int method=ERGROUPING_ORIENTATION_HORIZ, const String &filename=String(), float minProbability=(float) 0.5) |
从图像中提取文本区域。 | |
void | detectRegions (InputArray image, const Ptr< ERFilter > &er_filter1, const Ptr< ERFilter > &er_filter2, std::vector< std::vector< Point > > ®ions) |
void | detectTextSWT (InputArray input, std::vector< cv::Rect > &result, bool dark_on_light, OutputArray &draw=noArray(), OutputArray &chainBBs=noArray()) |
应用笔划宽度变换算子,然后过滤具有相似笔划宽度的连通分量,以返回字母候选。它还会根据邻近度和大小将它们连接起来,并将结果保存在 chainBBs 中。 | |
void | erGrouping (InputArray image, InputArray channel, std::vector< std::vector< Point > > regions, std::vector< Rect > &groups_rects, int method=ERGROUPING_ORIENTATION_HORIZ, const String &filename=String(), float minProbablity=(float) 0.5) |
void | erGrouping (InputArray img, InputArrayOfArrays channels, std::vector< std::vector< ERStat > > ®ions, std::vector< std::vector< Vec2i > > &groups, std::vector< Rect > &groups_rects, int method=ERGROUPING_ORIENTATION_HORIZ, const std::string &filename=std::string(), float minProbablity=0.5) |
查找组织为文本块的极值区域组。 | |
Ptr< ERFilter::Callback > | loadClassifierNM1 (const String &filename) |
允许在创建 ERFilter 对象时隐式加载默认分类器。 | |
Ptr< ERFilter::Callback > | loadClassifierNM2 (const String &filename) |
允许在创建 ERFilter 对象时隐式加载默认分类器。 | |
Ptr< OCRBeamSearchDecoder::ClassifierCallback > | loadOCRBeamSearchClassifierCNN (const String &filename) |
允许在创建 OCRBeamSearchDecoder 对象时隐式加载默认字符分类器。 | |
Ptr< OCRHMMDecoder::ClassifierCallback > | loadOCRHMMClassifier (const String &filename, int classifier) |
允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。 | |
Ptr< OCRHMMDecoder::ClassifierCallback > | loadOCRHMMClassifierCNN (const String &filename) |
允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。 | |
Ptr< OCRHMMDecoder::ClassifierCallback > | loadOCRHMMClassifierNM (const String &filename) |
允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。 | |
void | MSERsToERStats (InputArray image, std::vector< std::vector< Point > > &contours, std::vector< std::vector< ERStat > > ®ions) |
将 MSER 轮廓 (vector<Point>) 转换为 ERStat 区域。 | |
void cv::text::detectTextSWT | ( | InputArray | input, |
std::vector< cv::Rect > & | result, | ||
bool | dark_on_light, | ||
OutputArray & | draw = noArray() , |
||
OutputArray & | chainBBs = noArray() |
||
) |
Python | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
cv.text.detectTextSWT( | input, dark_on_light[, draw[, chainBBs]] | ) -> | result, draw, chainBBs |
应用笔划宽度变换算子,然后过滤具有相似笔划宽度的连通分量,以返回字母候选。它还会根据邻近度和大小将它们连接起来,并将结果保存在 chainBBs 中。
input | 具有 3 个通道的输入图像。 |
result | 一个包含结果边界框的向量,其中找到文本的概率很高 |
dark_on_light | 一个布尔值,表示文本是否比背景更暗或更亮,观察到它会反转从 Scharr 算子获得的梯度,并显着影响结果。 |
draw | 一个可选的 Mat,类型为 CV_8UC3,它使用边界框可视化检测到的字母。 |
chainBBs | 一个可选参数,根据论文中的启发式方法将字母候选者链接起来,并返回可能出现文本的所有区域。 |