如何更换其他检测和识别模型?
本文详尽地给出了如何更换其他检测和识别模型的保姆级教程。
Note
建议用rapidocr_onnxruntime>=1.3.x
版本来加载PaddleOCR v3/v4版本训练所得模型。
引言¶
rapidocr
系列库中默认打包了轻量版的中英文检测和识别模型,这种配置可以覆盖到大部分场景。但是也总会有一些其他场景,要用到其他检测和识别模型。
这一点在设计时已经做了考虑,留出了接口,这个博客就是以如何更换rapidocr_onnxruntime
的识别模型为英文和数字的识别模型为例做讲解,其他模型同理。
⚠️注意:使用其他模型的前提条件:使用的模型必须是PaddleOCR中文本检测DBNet系列、文本识别CRNN系列模型,这样才能保证前后处理代码可以复用,其他模型不能直接替换模型路径使用。
以下以使用英文和数字识别模型为例讲解。
1. 安装rapidocr_onnxruntime
¶
详细教程参考:link
2. 获得英文和数字的ONNX识别模型¶
Note
如果想用RapidOCR仓库推理其他模型,必须要用PaddleOCRModelConvert工具转换模型
转换模型时,字典会自动写入到onnx模型里,rapidocr_onnxruntime
推理时无须额外指定字典。
模型地址:
字典地址:
在线转换: 基于PaddleOCRModelConvert工具得到en_PP-OCRv4_rec_infer.onnx
模型。
详细教程参见:link
3. 使用模型¶
Note
检测模型,对应模型路径参数为det_model_path
识别模型,对应模型路径参数为rec_model_path
详细说明参见:link
如果得到的识别模型,没有将字典文件写入到ONNX模型中,可以通过初始化RapidOCR类时,通过rec_keys_path
来指定对应的字典文件。