类 TextRecognitionModel
- java.lang.Object
-
- org.opencv.dnn.Model
-
- org.opencv.dnn.TextRecognitionModel
-
public class TextRecognitionModel extends Model
此类表示文本识别网络的高级 API。TextRecognitionModel 允许设置预处理输入图像的参数。TextRecognitionModel 从包含已训练权重和配置的文件中创建网络,设置预处理输入,运行前向传递并返回识别结果。对于 TextRecognitionModel,支持 CRNN-CTC。
-
-
构造函数摘要
构造函数 修饰符 构造函数 描述 protected
TextRecognitionModel(long addr)
TextRecognitionModel(java.lang.String model)
从以一种受支持的格式表示的网络创建文本识别模型。构造函数之后调用 setDecodeType() 和 setVocabulary() 以初始化解码方法。TextRecognitionModel(java.lang.String model, java.lang.String config)
从以一种受支持的格式表示的网络创建文本识别模型。构造函数之后调用 setDecodeType() 和 setVocabulary() 以初始化解码方法。TextRecognitionModel(Net network)
从深度学习网络创建文本识别模型。构造函数之后调用 setDecodeType() 和 setVocabulary() 以初始化解码方法。
-
方法摘要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 描述 static TextRecognitionModel
__fromPtr__(long addr)
protected void
finalize()
java.lang.String
getDecodeType()
获取解码方法java.util.List<java.lang.String>
getVocabulary()
获取识别的词汇表。java.lang.String
recognize(Mat frame)
给定输入
帧,创建输入 blob,运行网络并返回识别结果void
recognize(Mat frame, java.util.List<Mat> roiRects, java.util.List<java.lang.String> results)
给定输入
帧,创建输入 blob,运行网络并返回识别结果TextRecognitionModel
setDecodeOptsCTCPrefixBeamSearch(int beamSize)
设置"CTC-prefix-beam-search"
解码使用的解码方法选项TextRecognitionModel
setDecodeOptsCTCPrefixBeamSearch(int beamSize, int vocPruneSize)
设置"CTC-prefix-beam-search"
解码使用的解码方法选项TextRecognitionModel
setDecodeType(java.lang.String decodeType)
设置将网络输出转换为字符串的解码方法TextRecognitionModel
setVocabulary(java.util.List<java.lang.String> vocabulary)
设置识别的词汇表。-
从类 org.opencv.dnn.Model继承的方法
enableWinograd, getNativeObjAddr, predict, setInputCrop, setInputMean, setInputParams, setInputParams, setInputParams, setInputParams, setInputParams, setInputParams, setInputScale, setInputSize, setInputSize, setInputSwapRB, setOutputNames, setPreferableBackend, setPreferableTarget
-
-
-
-
构造函数详情
-
TextRecognitionModel
protected TextRecognitionModel(long addr)
-
TextRecognitionModel
public TextRecognitionModel(Net network)
从深度学习网络创建文本识别模型。构造函数之后调用 setDecodeType() 和 setVocabulary() 以初始化解码方法。- 参数
network
- Net 对象
-
TextRecognitionModel
public TextRecognitionModel(java.lang.String model, java.lang.String config)
从以一种受支持的格式表示的网络创建文本识别模型。构造函数之后调用 setDecodeType() 和 setVocabulary() 以初始化解码方法。- 参数
model
- 包含已训练权重的二进制文件config
- 包含网络配置的文本文件
-
TextRecognitionModel
public TextRecognitionModel(java.lang.String model)
从以一种受支持的格式表示的网络创建文本识别模型。构造函数之后调用 setDecodeType() 和 setVocabulary() 以初始化解码方法。- 参数
model
- 包含已训练权重的二进制文件
-
-
方法详情
-
__fromPtr__
public static TextRecognitionModel __fromPtr__(long addr)
-
setDecodeType
public TextRecognitionModel setDecodeType(java.lang.String decodeType)
设置将网络输出转换为字符串的解码方法- 参数
decodeType
- 将网络输出转换为字符串的解码方法,当前支持的类型:-"CTC-greedy"
基于 CTC 方法的输出的贪婪解码 -"CTC-prefix-beam-search"
基于 CTC 方法的输出的前缀波束搜索解码- 返回
- 自动生成
-
getDecodeType
public java.lang.String getDecodeType()
获取解码方法- 返回
- 解码方法
-
setDecodeOptsCTCPrefixBeamSearch
public TextRecognitionModel setDecodeOptsCTCPrefixBeamSearch(int beamSize, int vocPruneSize)
设置"CTC-prefix-beam-search"
解码使用的解码方法选项- 参数
beamSize
- 搜索的波束大小vocPruneSize
- 优化大型词汇表搜索的参数,在每个搜索步骤中只取前vocPruneSize
个标记,vocPruneSize
<= 0 表示禁用此修剪。- 返回
- 自动生成
-
setDecodeOptsCTCPrefixBeamSearch
public TextRecognitionModel setDecodeOptsCTCPrefixBeamSearch(int beamSize)
设置"CTC-prefix-beam-search"
解码使用的解码方法选项- 参数
beamSize
- 搜索的波束大小,在每个搜索步骤中只取前vocPruneSize
个标记,vocPruneSize
<= 0 表示禁用此修剪。- 返回
- 自动生成
-
setVocabulary
public TextRecognitionModel setVocabulary(java.util.List<java.lang.String> vocabulary)
设置识别的词汇表。- 参数
vocabulary
- 网络的关联词汇表。- 返回
- 自动生成
-
getVocabulary
public java.util.List<java.lang.String> getVocabulary()
获取识别的词汇表。- 返回
- vocabulary 网络的关联词汇表
-
recognize
public java.lang.String recognize(Mat frame)
给定输入
帧,创建输入 blob,运行网络并返回识别结果- 参数
frame
- 输入图像- 返回
- 文本识别结果
-
recognize
public void recognize(Mat frame, java.util.List<Mat> roiRects, java.util.List<java.lang.String> results)
给定输入
帧,创建输入 blob,运行网络并返回识别结果- 参数
frame
- 输入图像roiRects
- 感兴趣的文本检测区域列表 (cv::Rect, CV_32SC4)。ROIs 将被裁剪为网络输入results
- 一组文本识别结果。
-
-