类 Text
- java.lang.Object
-
- org.opencv.text.Text
-
public class Text extends java.lang.Object
-
-
字段摘要
字段 修饰符和类型 字段 描述 static intERFILTER_NM_IHSGradstatic intERFILTER_NM_RGBLGradstatic intERGROUPING_ORIENTATION_ANYstatic intERGROUPING_ORIENTATION_HORIZstatic intOCR_CNN_CLASSIFIERstatic intOCR_DECODER_VITERBIstatic intOCR_KNN_CLASSIFIERstatic intOCR_LEVEL_TEXTLINEstatic intOCR_LEVEL_WORDstatic intOEM_CUBE_ONLYstatic intOEM_DEFAULTstatic intOEM_TESSERACT_CUBE_COMBINEDstatic intOEM_TESSERACT_ONLYstatic intPSM_AUTOstatic intPSM_AUTO_ONLYstatic intPSM_AUTO_OSDstatic intPSM_CIRCLE_WORDstatic intPSM_OSD_ONLYstatic intPSM_SINGLE_BLOCKstatic intPSM_SINGLE_BLOCK_VERT_TEXTstatic intPSM_SINGLE_CHARstatic intPSM_SINGLE_COLUMNstatic intPSM_SINGLE_LINEstatic intPSM_SINGLE_WORD
-
构造函数摘要
构造函数 构造函数 描述 文本()
-
方法摘要
所有方法 静态方法 具体方法 已弃用方法 修饰符和类型 方法 描述 static voidcomputeNMChannels(Mat _src, java.util.List<Mat> _channels)在 N&M 算法 CITE: Neumann12 中计算要独立处理的不同通道。static voidcomputeNMChannels(Mat _src, java.util.List<Mat> _channels, int _mode)在 N&M 算法 CITE: Neumann12 中计算要独立处理的不同通道。static ERFiltercreateERFilterNM1(java.lang.String filename)从提供的路径(例如)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。static ERFiltercreateERFilterNM1(java.lang.String filename, int thresholdDelta)从提供的路径(例如)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。static ERFiltercreateERFilterNM1(java.lang.String filename, int thresholdDelta, float minArea)从提供的路径(例如)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。static ERFiltercreateERFilterNM1(java.lang.String filename, int thresholdDelta, float minArea, float maxArea)从提供的路径(例如)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。static ERFiltercreateERFilterNM1(java.lang.String filename, int thresholdDelta, float minArea, float maxArea, float minProbability)从提供的路径(例如)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。static ERFiltercreateERFilterNM1(java.lang.String filename, int thresholdDelta, float minArea, float maxArea, float minProbability, boolean nonMaxSuppression)从提供的路径(例如)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。static ERFiltercreateERFilterNM1(java.lang.String filename, int thresholdDelta, float minArea, float maxArea, float minProbability, boolean nonMaxSuppression, float minProbabilityDiff)从提供的路径(例如)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。static ERFiltercreateERFilterNM1(ERFilter_Callback cb)为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。static ERFiltercreateERFilterNM1(ERFilter_Callback cb, int thresholdDelta)为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。static ERFiltercreateERFilterNM1(ERFilter_Callback cb, int thresholdDelta, float minArea)为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。static ERFiltercreateERFilterNM1(ERFilter_Callback cb, int thresholdDelta, float minArea, float maxArea)为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。static ERFiltercreateERFilterNM1(ERFilter_Callback cb, int thresholdDelta, float minArea, float maxArea, float minProbability)为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。static ERFiltercreateERFilterNM1(ERFilter_Callback cb, int thresholdDelta, float minArea, float maxArea, float minProbability, boolean nonMaxSuppression)为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。static ERFiltercreateERFilterNM1(ERFilter_Callback cb, int thresholdDelta, float minArea, float maxArea, float minProbability, boolean nonMaxSuppression, float minProbabilityDiff)为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。static ERFiltercreateERFilterNM2(java.lang.String filename)从提供的路径(例如)读取用于 N&M 算法第二阶段分类器的极值区域滤波器。static ERFiltercreateERFilterNM2(java.lang.String filename, float minProbability)从提供的路径(例如)读取用于 N&M 算法第二阶段分类器的极值区域滤波器。static ERFiltercreateERFilterNM2(ERFilter_Callback cb)为 N&M 算法 CITE: Neumann12 的第二阶段分类器创建极值区域滤波器。static ERFiltercreateERFilterNM2(ERFilter_Callback cb, float minProbability)为 N&M 算法 CITE: Neumann12 的第二阶段分类器创建极值区域滤波器。static MatcreateOCRHMMTransitionsTable(java.lang.String vocabulary, java.util.List<java.lang.String> lexicon)实用函数,用于从给定的单词列表(词典)创建定制的语言模型转换表。static voiddetectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, java.util.List<MatOfPoint> regions)将 MSER 轮廓(vector<Point>)转换为 ERStat 区域。static voiddetectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, MatOfRect groups_rects)从图像中提取文本区域。static voiddetectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, MatOfRect groups_rects, int method)从图像中提取文本区域。static voiddetectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, MatOfRect groups_rects, int method, java.lang.String filename)从图像中提取文本区域。static voiddetectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, MatOfRect groups_rects, int method, java.lang.String filename, float minProbability)从图像中提取文本区域。static voiddetectTextSWT(Mat input, MatOfRect result, boolean dark_on_light)应用笔画宽度变换算子,然后对具有相似笔画宽度的连通分量进行滤波,以返回字母候选。static voiddetectTextSWT(Mat input, MatOfRect result, boolean dark_on_light, Mat draw)应用笔画宽度变换算子,然后对具有相似笔画宽度的连通分量进行滤波,以返回字母候选。static voiddetectTextSWT(Mat input, MatOfRect result, boolean dark_on_light, Mat draw, Mat chainBBs)应用笔画宽度变换算子,然后对具有相似笔画宽度的连通分量进行滤波,以返回字母候选。static voiderGrouping(Mat image, Mat channel, java.util.List<MatOfPoint> regions, MatOfRect groups_rects)查找组织成文本块的极值区域组。static voiderGrouping(Mat image, Mat channel, java.util.List<MatOfPoint> regions, MatOfRect groups_rects, int method)查找组织成文本块的极值区域组。static voiderGrouping(Mat image, Mat channel, java.util.List<MatOfPoint> regions, MatOfRect groups_rects, int method, java.lang.String filename)查找组织成文本块的极值区域组。static voiderGrouping(Mat image, Mat channel, java.util.List<Mat> regions, MatOfRect groups_rects, int method, java.lang.String filename, float minProbablity)查找组织成文本块的极值区域组。static ERFilter_CallbackloadClassifierNM1(java.lang.String filename)允许在创建 ERFilter 对象时隐式加载默认分类器。static ERFilter_CallbackloadClassifierNM2(java.lang.String filename)允许在创建 ERFilter 对象时隐式加载默认分类器。static OCRBeamSearchDecoder_ClassifierCallbackloadOCRBeamSearchClassifierCNN(java.lang.String filename)允许在创建 OCRBeamSearchDecoder 对象时隐式加载默认字符分类器。static OCRHMMDecoder_ClassifierCallbackloadOCRHMMClassifier(java.lang.String filename, int classifier)允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。static OCRHMMDecoder_ClassifierCallbackloadOCRHMMClassifierCNN(java.lang.String filename)已弃用。使用 loadOCRHMMClassifier 代替static OCRHMMDecoder_ClassifierCallbackloadOCRHMMClassifierNM(java.lang.String filename)已弃用。loadOCRHMMClassifier 代替
-
-
-
字段详细信息
-
OCR_LEVEL_WORD
public static final int OCR_LEVEL_WORD
- 参见
- 常量字段值
-
OCR_LEVEL_TEXTLINE
public static final int OCR_LEVEL_TEXTLINE
- 参见
- 常量字段值
-
ERFILTER_NM_RGBLGrad
public static final int ERFILTER_NM_RGBLGrad
- 参见
- 常量字段值
-
ERFILTER_NM_IHSGrad
public static final int ERFILTER_NM_IHSGrad
- 参见
- 常量字段值
-
OCR_KNN_CLASSIFIER
public static final int OCR_KNN_CLASSIFIER
- 参见
- 常量字段值
-
OCR_CNN_CLASSIFIER
public static final int OCR_CNN_CLASSIFIER
- 参见
- 常量字段值
-
OCR_DECODER_VITERBI
public static final int OCR_DECODER_VITERBI
- 参见
- 常量字段值
-
ERGROUPING_ORIENTATION_HORIZ
public static final int ERGROUPING_ORIENTATION_HORIZ
- 参见
- 常量字段值
-
ERGROUPING_ORIENTATION_ANY
public static final int ERGROUPING_ORIENTATION_ANY
- 参见
- 常量字段值
-
OEM_TESSERACT_ONLY
public static final int OEM_TESSERACT_ONLY
- 参见
- 常量字段值
-
OEM_CUBE_ONLY
public static final int OEM_CUBE_ONLY
- 参见
- 常量字段值
-
OEM_TESSERACT_CUBE_COMBINED
public static final int OEM_TESSERACT_CUBE_COMBINED
- 参见
- 常量字段值
-
OEM_DEFAULT
public static final int OEM_DEFAULT
- 参见
- 常量字段值
-
PSM_OSD_ONLY
public static final int PSM_OSD_ONLY
- 参见
- 常量字段值
-
PSM_AUTO_OSD
public static final int PSM_AUTO_OSD
- 参见
- 常量字段值
-
PSM_AUTO_ONLY
public static final int PSM_AUTO_ONLY
- 参见
- 常量字段值
-
PSM_AUTO
public static final int PSM_AUTO
- 参见
- 常量字段值
-
PSM_SINGLE_COLUMN
public static final int PSM_SINGLE_COLUMN
- 参见
- 常量字段值
-
PSM_SINGLE_BLOCK_VERT_TEXT
public static final int PSM_SINGLE_BLOCK_VERT_TEXT
- 参见
- 常量字段值
-
PSM_SINGLE_BLOCK
public static final int PSM_SINGLE_BLOCK
- 参见
- 常量字段值
-
PSM_SINGLE_LINE
public static final int PSM_SINGLE_LINE
- 参见
- 常量字段值
-
PSM_SINGLE_WORD
public static final int PSM_SINGLE_WORD
- 参见
- 常量字段值
-
PSM_CIRCLE_WORD
public static final int PSM_CIRCLE_WORD
- 参见
- 常量字段值
-
PSM_SINGLE_CHAR
public static final int PSM_SINGLE_CHAR
- 参见
- 常量字段值
-
-
方法详细信息
-
loadOCRHMMClassifierNM
@Deprecated public static OCRHMMDecoder_ClassifierCallback loadOCRHMMClassifierNM(java.lang.String filename)
已弃用。loadOCRHMMClassifier 代替允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。- 参数
filename- 包含分类器模型(例如 OCRHMM_knn_model_data.xml)的 XML 或 YAML 文件。KNN 默认分类器基于 Lukás Neumann & Jiri Matas 在 [Neumann11b] 中提出的场景文本识别方法。基本上,输入图像中的区域(轮廓)被归一化为固定大小,同时保留质心和纵横比,以便提取基于其周长链码的梯度方向特征向量。然后,使用通过不同标准字体类型的渲染字符合成数据训练的 KNN 模型对区域进行分类。- 返回
- 自动生成
-
loadOCRHMMClassifierCNN
@Deprecated public static OCRHMMDecoder_ClassifierCallback loadOCRHMMClassifierCNN(java.lang.String filename)
已弃用。使用 loadOCRHMMClassifier 代替允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。- 参数
filename- 包含分类器模型(例如 OCRBeamSearch_CNN_model_data.xml.gz)的 XML 或 YAML 文件。CNN 默认分类器基于 Adam Coates & Andrew NG 在 [Coates11a] 中提出的场景文本识别方法。字符分类器由单层卷积神经网络和线性分类器组成。它以滑动窗口的方式应用于输入图像,在每个窗口位置提供一组识别结果。- 返回
- 自动生成
-
loadOCRHMMClassifier
public static OCRHMMDecoder_ClassifierCallback loadOCRHMMClassifier(java.lang.String filename, int classifier)
允许在创建 OCRHMMDecoder 对象时隐式加载默认字符分类器。- 参数
filename- 包含分类器模型(例如 OCRBeamSearch_CNN_model_data.xml.gz)的 XML 或 YAML 文件。classifier- 可以是 classifier_type 枚举值之一。- 返回
- 自动生成
-
createOCRHMMTransitionsTable
public static Mat createOCRHMMTransitionsTable(java.lang.String vocabulary, java.util.List<java.lang.String> lexicon)
实用函数,用于从给定的单词列表(词典)创建定制的语言模型转换表。- 参数
vocabulary- 语言词汇表(当为 ASCII 英文文本时为字符)。lexicon- 期望在特定图像中找到的单词列表。该函数计算给定词典中字符对的频率统计数据,并用它们填充输出 transition_probabilities_table。transition_probabilities_table 可以用作 OCRHMMDecoder::create() 和 OCRBeamSearchDecoder::create() 方法的输入。注意: - (C++) 另一种方法是加载文本模块示例文件夹中提供的默认通用语言转换表(由 ispell 42869 英文单词列表创建):<https://github.com/opencv/opencv_contrib/blob/master/modules/text/samples/OCRHMM_transitions_table.xml>- 返回
- 自动生成
-
loadOCRBeamSearchClassifierCNN
public static OCRBeamSearchDecoder_ClassifierCallback loadOCRBeamSearchClassifierCNN(java.lang.String filename)
允许在创建 OCRBeamSearchDecoder 对象时隐式加载默认字符分类器。- 参数
filename- 包含分类器模型(例如 OCRBeamSearch_CNN_model_data.xml.gz)的 XML 或 YAML 文件。CNN 默认分类器基于 Adam Coates & Andrew NG 在 [Coates11a] 中提出的场景文本识别方法。字符分类器由单层卷积神经网络和线性分类器组成。它以滑动窗口的方式应用于输入图像,在每个窗口位置提供一组识别结果。- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(ERFilter_Callback cb, int thresholdDelta, float minArea, float maxArea, float minProbability, boolean nonMaxSuppression, float minProbabilityDiff)
为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。例如,从 samples/cpp/trained_classifierNM1.xml 文件中加载 loadClassifierNM1。图像的组件树是通过从 0 到 255 逐步增加阈值来提取的,为每个 ER 计算增量可计算描述符(纵横比、紧凑度、孔数和水平交叉数),并将其用作分类器的特征,该分类器估计类条件概率 P(er|character)。P(er|character) 的值通过所有阈值下的 ER 包含关系进行跟踪,并且只选择与概率 P(er|character) 的局部最大值对应的 ER(如果概率的局部最大值高于全局限制 pmin 并且局部最大值与局部最小值之间的差异大于 minProbabilityDiff)。- 参数
cb- 自动生成thresholdDelta- 自动生成minArea- 自动生成maxArea- 自动生成minProbability- 自动生成nonMaxSuppression- 自动生成minProbabilityDiff- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(ERFilter_Callback cb, int thresholdDelta, float minArea, float maxArea, float minProbability, boolean nonMaxSuppression)
为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。例如,从 samples/cpp/trained_classifierNM1.xml 文件中加载 loadClassifierNM1。图像的组件树是通过从 0 到 255 逐步增加阈值来提取的,为每个 ER 计算增量可计算描述符(纵横比、紧凑度、孔数和水平交叉数),并将其用作分类器的特征,该分类器估计类条件概率 P(er|character)。P(er|character) 的值通过所有阈值下的 ER 包含关系进行跟踪,并且只选择与概率 P(er|character) 的局部最大值对应的 ER(如果概率的局部最大值高于全局限制 pmin 并且局部最大值与局部最小值之间的差异大于 minProbabilityDiff)。- 参数
cb- 自动生成thresholdDelta- 自动生成minArea- 自动生成maxArea- 自动生成minProbability- 自动生成nonMaxSuppression- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(ERFilter_Callback cb, int thresholdDelta, float minArea, float maxArea, float minProbability)
为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。例如,从 samples/cpp/trained_classifierNM1.xml 文件中加载 loadClassifierNM1。图像的组件树是通过从 0 到 255 逐步增加阈值来提取的,为每个 ER 计算增量可计算描述符(纵横比、紧凑度、孔数和水平交叉数),并将其用作分类器的特征,该分类器估计类条件概率 P(er|character)。P(er|character) 的值通过所有阈值下的 ER 包含关系进行跟踪,并且只选择与概率 P(er|character) 的局部最大值对应的 ER(如果概率的局部最大值高于全局限制 pmin 并且局部最大值与局部最小值之间的差异大于 minProbabilityDiff)。- 参数
cb- 自动生成thresholdDelta- 自动生成minArea- 自动生成maxArea- 自动生成minProbability- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(ERFilter_Callback cb, int thresholdDelta, float minArea, float maxArea)
为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。例如,从 samples/cpp/trained_classifierNM1.xml 文件中加载 loadClassifierNM1。图像的组件树是通过从 0 到 255 逐步增加阈值来提取的,为每个 ER 计算增量可计算描述符(纵横比、紧凑度、孔数和水平交叉数),并将其用作分类器的特征,该分类器估计类条件概率 P(er|character)。P(er|character) 的值通过所有阈值下的 ER 包含关系进行跟踪,并且只选择与概率 P(er|character) 的局部最大值对应的 ER(如果概率的局部最大值高于全局限制 pmin 并且局部最大值与局部最小值之间的差异大于 minProbabilityDiff)。- 参数
cb- 自动生成thresholdDelta- 自动生成minArea- 自动生成maxArea- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(ERFilter_Callback cb, int thresholdDelta, float minArea)
为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。例如,从 samples/cpp/trained_classifierNM1.xml 文件中加载 loadClassifierNM1。图像的组件树是通过从 0 到 255 逐步增加阈值来提取的,为每个 ER 计算增量可计算描述符(纵横比、紧凑度、孔数和水平交叉数),并将其用作分类器的特征,该分类器估计类条件概率 P(er|character)。P(er|character) 的值通过所有阈值下的 ER 包含关系进行跟踪,并且只选择与概率 P(er|character) 的局部最大值对应的 ER(如果概率的局部最大值高于全局限制 pmin 并且局部最大值与局部最小值之间的差异大于 minProbabilityDiff)。- 参数
cb- 自动生成thresholdDelta- 自动生成minArea- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(ERFilter_Callback cb, int thresholdDelta)
为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。例如,从 samples/cpp/trained_classifierNM1.xml 文件中加载 loadClassifierNM1。图像的组件树是通过从 0 到 255 逐步增加阈值来提取的,为每个 ER 计算增量可计算描述符(纵横比、紧凑度、孔数和水平交叉数),并将其用作分类器的特征,该分类器估计类条件概率 P(er|character)。P(er|character) 的值通过所有阈值下的 ER 包含关系进行跟踪,并且只选择与概率 P(er|character) 的局部最大值对应的 ER(如果概率的局部最大值高于全局限制 pmin 并且局部最大值与局部最小值之间的差异大于 minProbabilityDiff)。- 参数
cb- 自动生成thresholdDelta- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(ERFilter_Callback cb)
为 N&M 算法 CITE: Neumann12 的第一阶段分类器创建极值区域滤波器。例如,从 samples/cpp/trained_classifierNM1.xml 文件中加载 loadClassifierNM1。图像的组件树是通过从 0 到 255 逐步增加阈值来提取的,为每个 ER 计算增量可计算描述符(纵横比、紧凑度、孔数和水平交叉数),并将其用作分类器的特征,该分类器估计类条件概率 P(er|character)。P(er|character) 的值通过所有阈值下的 ER 包含关系进行跟踪,并且只选择与概率 P(er|character) 的局部最大值对应的 ER(如果概率的局部最大值高于全局限制 pmin 并且局部最大值与局部最小值之间的差异大于 minProbabilityDiff)。- 参数
cb- 自动生成- 返回
- 自动生成
-
createERFilterNM2
public static ERFilter createERFilterNM2(ERFilter_Callback cb, float minProbability)
为 N&M 算法 CITE: Neumann12 的第二阶段分类器创建极值区域滤波器。例如,从 samples/cpp/trained_classifierNM2.xml 文件中加载 loadClassifierNM2。在第二阶段,通过第一阶段的 ER 使用更具信息性但计算成本也更高的特征被分类为字符和非字符类别。分类器使用第一阶段计算的所有特征以及以下附加特征:孔面积比、凸包比和外部拐点数。- 参数
cb- 自动生成minProbability- 自动生成- 返回
- 自动生成
-
createERFilterNM2
public static ERFilter createERFilterNM2(ERFilter_Callback cb)
为 N&M 算法 CITE: Neumann12 的第二阶段分类器创建极值区域滤波器。例如,从 samples/cpp/trained_classifierNM2.xml 文件中加载 loadClassifierNM2。在第二阶段,通过第一阶段的 ER 使用更具信息性但计算成本也更高的特征被分类为字符和非字符类别。分类器使用第一阶段计算的所有特征以及以下附加特征:孔面积比、凸包比和外部拐点数。- 参数
cb- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(java.lang.String filename, int thresholdDelta, float minArea, float maxArea, float minProbability, boolean nonMaxSuppression, float minProbabilityDiff)
从提供的路径(例如 /path/to/cpp/trained_classifierNM1.xml)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。- 参数
filename- 自动生成thresholdDelta- 自动生成minArea- 自动生成maxArea- 自动生成minProbability- 自动生成nonMaxSuppression- 自动生成minProbabilityDiff- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(java.lang.String filename, int thresholdDelta, float minArea, float maxArea, float minProbability, boolean nonMaxSuppression)
从提供的路径(例如 /path/to/cpp/trained_classifierNM1.xml)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。- 参数
filename- 自动生成thresholdDelta- 自动生成minArea- 自动生成maxArea- 自动生成minProbability- 自动生成nonMaxSuppression- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(java.lang.String filename, int thresholdDelta, float minArea, float maxArea, float minProbability)
从提供的路径(例如 /path/to/cpp/trained_classifierNM1.xml)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。- 参数
filename- 自动生成thresholdDelta- 自动生成minArea- 自动生成maxArea- 自动生成minProbability- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(java.lang.String filename, int thresholdDelta, float minArea, float maxArea)
从提供的路径(例如 /path/to/cpp/trained_classifierNM1.xml)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。- 参数
filename- 自动生成thresholdDelta- 自动生成minArea- 自动生成maxArea- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(java.lang.String filename, int thresholdDelta, float minArea)
从提供的路径(例如 /path/to/cpp/trained_classifierNM1.xml)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。- 参数
filename- 自动生成thresholdDelta- 自动生成minArea- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(java.lang.String filename, int thresholdDelta)
从提供的路径(例如 /path/to/cpp/trained_classifierNM1.xml)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。- 参数
filename- 自动生成thresholdDelta- 自动生成- 返回
- 自动生成
-
createERFilterNM1
public static ERFilter createERFilterNM1(java.lang.String filename)
从提供的路径(例如 /path/to/cpp/trained_classifierNM1.xml)读取用于 N&M 算法第一阶段分类器的极值区域滤波器。- 参数
filename- 自动生成- 返回
- 自动生成
-
createERFilterNM2
public static ERFilter createERFilterNM2(java.lang.String filename, float minProbability)
从提供的路径(例如 /path/to/cpp/trained_classifierNM2.xml)读取用于 N&M 算法第二阶段分类器的极值区域滤波器。- 参数
filename- 自动生成minProbability- 自动生成- 返回
- 自动生成
-
createERFilterNM2
public static ERFilter createERFilterNM2(java.lang.String filename)
从提供的路径(例如 /path/to/cpp/trained_classifierNM2.xml)读取用于 N&M 算法第二阶段分类器的极值区域滤波器。- 参数
filename- 自动生成- 返回
- 自动生成
-
loadClassifierNM1
public static ERFilter_Callback loadClassifierNM1(java.lang.String filename)
允许在创建 ERFilter 对象时隐式加载默认分类器。- 参数
filename- 包含分类器模型(例如 trained_classifierNM1.xml)的 XML 或 YAML 文件,返回指向 ERFilter::Callback 的指针。- 返回
- 自动生成
-
loadClassifierNM2
public static ERFilter_Callback loadClassifierNM2(java.lang.String filename)
允许在创建 ERFilter 对象时隐式加载默认分类器。- 参数
filename- 包含分类器模型(例如 trained_classifierNM2.xml)的 XML 或 YAML 文件,返回指向 ERFilter::Callback 的指针。- 返回
- 自动生成
-
computeNMChannels
public static void computeNMChannels(Mat _src, java.util.List<Mat> _channels, int _mode)
在 N&M 算法 CITE: Neumann12 中计算要独立处理的不同通道。- 参数
_src- 源图像。必须是 RGB CV_8UC3。_channels- 存储计算通道的输出 vector<Mat>。_mode- 操作模式。目前唯一可用的选项是:ERFILTER_NM_RGBLGrad (默认使用) 和 ERFILTER_NM_IHSGrad。在 N&M 算法中,为了获得高定位召回率,使用了强度 (I)、色调 (H)、饱和度 (S) 和梯度幅度通道 (Grad) 的组合。此实现还提供了红色 (R)、绿色 (G)、蓝色 (B)、亮度 (L) 和梯度幅度 (Grad) 的替代组合。
-
computeNMChannels
public static void computeNMChannels(Mat _src, java.util.List<Mat> _channels)
在 N&M 算法 CITE: Neumann12 中计算要独立处理的不同通道。- 参数
_src- 源图像。必须是 RGB CV_8UC3。_channels- 存储计算通道的输出 vector<Mat>。ERFILTER_NM_RGBLGrad (默认使用) 和 ERFILTER_NM_IHSGrad。在 N&M 算法中,为了获得高定位召回率,使用了强度 (I)、色调 (H)、饱和度 (S) 和梯度幅度通道 (Grad) 的组合。此实现还提供了红色 (R)、绿色 (G)、蓝色 (B)、亮度 (L) 和梯度幅度 (Grad) 的替代组合。
-
erGrouping
public static void erGrouping(Mat image, Mat channel, java.util.List<MatOfPoint> regions, MatOfRect groups_rects, int method, java.lang.String filename, float minProbablity)
查找组织成文本块的极值区域组。- 参数
regions- 从 ERFilter 算法的每个通道中检索到的 ER 向量。提供的区域。groups_rects- 算法的输出以矩形列表的形式存储在此参数中。method- 分组方法(参见 text::erGrouping_Modes)。可以是 ERGROUPING_ORIENTATION_HORIZ、ERGROUPING_ORIENTATION_ANY 之一。filename- 包含分类器模型(例如 samples/trained_classifier_erGrouping.xml)的 XML 或 YAML 文件。仅在分组方法为 ERGROUPING_ORIENTATION_ANY 时使用。minProbablity- 接受组的最小概率。仅在分组方法为 ERGROUPING_ORIENTATION_ANY 时使用。image- 自动生成channel- 自动生成
-
erGrouping
public static void erGrouping(Mat image, Mat channel, java.util.List<MatOfPoint> regions, MatOfRect groups_rects, int method, java.lang.String filename)
查找组织成文本块的极值区域组。- 参数
regions- 从 ERFilter 算法的每个通道中检索到的 ER 向量。提供的区域。groups_rects- 算法的输出以矩形列表的形式存储在此参数中。method- 分组方法(参见 text::erGrouping_Modes)。可以是 ERGROUPING_ORIENTATION_HORIZ、ERGROUPING_ORIENTATION_ANY 之一。filename- 包含分类器模型(例如 samples/trained_classifier_erGrouping.xml)的 XML 或 YAML 文件。仅在分组方法为 ERGROUPING_ORIENTATION_ANY 时使用。image- 自动生成channel- 自动生成
-
erGrouping
public static void erGrouping(Mat image, Mat channel, java.util.List<MatOfPoint> regions, MatOfRect groups_rects, int method)
查找组织成文本块的极值区域组。- 参数
regions- 从 ERFilter 算法的每个通道中检索到的 ER 向量。提供的区域。groups_rects- 算法的输出以矩形列表的形式存储在此参数中。method- 分组方法(参见 text::erGrouping_Modes)。可以是 ERGROUPING_ORIENTATION_HORIZ、ERGROUPING_ORIENTATION_ANY 之一。仅在分组方法为 ERGROUPING_ORIENTATION_ANY 时使用。image- 自动生成channel- 自动生成
-
erGrouping
public static void erGrouping(Mat image, Mat channel, java.util.List<MatOfPoint> regions, MatOfRect groups_rects)
查找组织成文本块的极值区域组。- 参数
regions- 从 ERFilter 算法的每个通道中检索到的 ER 向量。提供的区域。groups_rects- 算法的输出以矩形列表的形式存储在此参数中。仅在分组方法为 ERGROUPING_ORIENTATION_ANY 时使用。image- 自动生成channel- 自动生成
-
detectRegions
public static void detectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, java.util.List<MatOfPoint> regions)
将 MSER 轮廓(vector<Point>)转换为 ERStat 区域。- 参数
image- 从中提取 MSER 的源图像 CV_8UC1。regions- 存储 ERStat 区域的输出。它以 OpenCV MSER 特征检测器提供的轮廓作为输入,并返回两个 ERStats 向量作为输出。这是因为 MSER() 输出在一个 vector<Point> 中包含 MSER+ 和 MSER- 区域,该函数将它们分离为两个不同的向量(这就像从两个不同通道提取 ERStats)。MSERsToERStats 的使用示例可以在文本检测 webcam_demo 中找到:<https://github.com/opencv/opencv_contrib/blob/master/modules/text/samples/webcam_demo.cpp>er_filter1- 自动生成er_filter2- 自动生成
-
detectRegions
public static void detectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, MatOfRect groups_rects, int method, java.lang.String filename, float minProbability)
从图像中提取文本区域。- 参数
image- 需要从中提取文本块的源图像。应为 CV_8UC3(彩色)。er_filter1- 用于 N&M 算法 CITE: Neumann12 第一阶段分类器的极值区域滤波器er_filter2- 用于 N&M 算法 CITE: Neumann12 第二阶段分类器的极值区域滤波器groups_rects- 带有文本的矩形块输出列表method- 分组方法(参见 text::erGrouping_Modes)。可以是 ERGROUPING_ORIENTATION_HORIZ、ERGROUPING_ORIENTATION_ANY 之一。filename- 包含分类器模型(例如 samples/trained_classifier_erGrouping.xml)的 XML 或 YAML 文件。仅在分组方法为 ERGROUPING_ORIENTATION_ANY 时使用。minProbability- 接受组的最小概率。仅在分组方法为 ERGROUPING_ORIENTATION_ANY 时使用。
-
detectRegions
public static void detectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, MatOfRect groups_rects, int method, java.lang.String filename)
从图像中提取文本区域。- 参数
image- 需要从中提取文本块的源图像。应为 CV_8UC3(彩色)。er_filter1- 用于 N&M 算法 CITE: Neumann12 第一阶段分类器的极值区域滤波器er_filter2- 用于 N&M 算法 CITE: Neumann12 第二阶段分类器的极值区域滤波器groups_rects- 带有文本的矩形块输出列表method- 分组方法(参见 text::erGrouping_Modes)。可以是 ERGROUPING_ORIENTATION_HORIZ、ERGROUPING_ORIENTATION_ANY 之一。filename- 包含分类器模型(例如 samples/trained_classifier_erGrouping.xml)的 XML 或 YAML 文件。仅在分组方法为 ERGROUPING_ORIENTATION_ANY 时使用。
-
detectRegions
public static void detectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, MatOfRect groups_rects, int method)
从图像中提取文本区域。- 参数
image- 需要从中提取文本块的源图像。应为 CV_8UC3(彩色)。er_filter1- 用于 N&M 算法 CITE: Neumann12 第一阶段分类器的极值区域滤波器er_filter2- 用于 N&M 算法 CITE: Neumann12 第二阶段分类器的极值区域滤波器groups_rects- 带有文本的矩形块输出列表method- 分组方法(参见 text::erGrouping_Modes)。可以是 ERGROUPING_ORIENTATION_HORIZ、ERGROUPING_ORIENTATION_ANY 之一。
-
detectRegions
public static void detectRegions(Mat image, ERFilter er_filter1, ERFilter er_filter2, MatOfRect groups_rects)
从图像中提取文本区域。- 参数
image- 需要从中提取文本块的源图像。应为 CV_8UC3(彩色)。er_filter1- 用于 N&M 算法 CITE: Neumann12 第一阶段分类器的极值区域滤波器er_filter2- 用于 N&M 算法 CITE: Neumann12 第二阶段分类器的极值区域滤波器groups_rects- 带有文本的矩形块输出列表
-
detectTextSWT
public static void detectTextSWT(Mat input, MatOfRect result, boolean dark_on_light, Mat draw, Mat chainBBs)
应用笔画宽度变换算子,然后对具有相似笔画宽度的连通分量进行滤波,以返回字母候选。它还根据邻近度和大小对它们进行链式处理,并将结果保存在 chainBBs 中。- 参数
input- 具有 3 个通道的输入图像。result- 一个结果边界框向量,其中找到文本的概率很高dark_on_light- 一个布尔值,表示文本是比背景暗还是亮,据观察,它会反转从 Scharr 算子获得的梯度,并显著影响结果。draw- 一个可选的 CV_8UC3 类型 Mat,用于使用边界框可视化检测到的字母。chainBBs- 一个可选参数,根据论文中的启发式方法链接字母候选,并返回所有可能出现文本的区域。
-
detectTextSWT
public static void detectTextSWT(Mat input, MatOfRect result, boolean dark_on_light, Mat draw)
应用笔画宽度变换算子,然后对具有相似笔画宽度的连通分量进行滤波,以返回字母候选。它还根据邻近度和大小对它们进行链式处理,并将结果保存在 chainBBs 中。- 参数
input- 具有 3 个通道的输入图像。result- 一个结果边界框向量,其中找到文本的概率很高dark_on_light- 一个布尔值,表示文本是比背景暗还是亮,据观察,它会反转从 Scharr 算子获得的梯度,并显著影响结果。draw- 一个可选的 CV_8UC3 类型 Mat,用于使用边界框可视化检测到的字母。
-
detectTextSWT
public static void detectTextSWT(Mat input, MatOfRect result, boolean dark_on_light)
应用笔画宽度变换算子,然后对具有相似笔画宽度的连通分量进行滤波,以返回字母候选。它还根据邻近度和大小对它们进行链式处理,并将结果保存在 chainBBs 中。- 参数
input- 具有 3 个通道的输入图像。result- 一个结果边界框向量,其中找到文本的概率很高dark_on_light- 一个布尔值,表示文本是比背景暗还是亮,据观察,它会反转从 Scharr 算子获得的梯度,并显著影响结果。
-
-