🚀 天城文PP-OCRv3移动识别模型
天城文PP-OCRv3移动识别模型是PaddleOCR团队开发的PP-OCRv3_rec系列中的文本行识别模型。该模型是基于PP-OCRv3移动识别模型训练的天城文专用模型,支持天城文识别。其关键准确率指标如下:
🚀 快速开始
✨ 主要特性
- 天城文PP-OCRv3移动识别模型是PP-OCRv3_rec系列中的文本行识别模型,由PaddleOCR团队开发。
- 该模型是基于PP-OCRv3移动识别模型训练的天城文专用模型,支持天城文识别。
- 该模型具有较高的识别准确率,平均识别准确率为96.44%。
- 该模型具有较小的存储大小,仅为7.9M。
📦 安装指南
1. 安装PaddlePaddle
请参考以下命令,使用pip安装PaddlePaddle:
python -m pip install paddlepaddle-gpu==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/cu118/
python -m pip install paddlepaddle-gpu==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/cu126/
python -m pip install paddlepaddle==3.0.0 -i https://www.paddlepaddle.org.cn/packages/stable/cpu/
有关PaddlePaddle安装的详细信息,请参考PaddlePaddle官方网站。
2. 安装PaddleOCR
从PyPI安装最新版本的PaddleOCR推理包:
python -m pip install paddleocr
💻 使用示例
基础用法
你可以使用以下命令快速体验该模型的功能:
paddleocr text_recognition \
--model_name devanagari_PP-OCRv3_mobile_rec \
-i https://cdn-uploads.huggingface.co/production/uploads/681c1ecd9539bdde5ae1733c/lpNu16sSBMXoRDt_DmUm6.png
你也可以将文本识别模块的模型推理集成到你的项目中。在运行以下代码之前,请将示例图像下载到本地机器。
from paddleocr import TextRecognition
model = TextRecognition(model_name="devanagari_PP-OCRv3_mobile_rec")
output = model.predict(input="lpNu16sSBMXoRDt_DmUm6.png", batch_size=1)
for res in output:
res.print()
res.save_to_img(save_path="./output/")
res.save_to_json(save_path="./output/res.json")
运行后,得到的结果如下:
{'res': {'input_path': '/root/.paddlex/predict_input/lpNu16sSBMXoRDt_DmUm6.png', 'page_index': None, 'rec_text': 'बहुपङिकतपाठपरीआापकर', 'rec_score': 0.9564684629440308}}
有关使用命令和参数说明的详细信息,请参考文档。
高级用法
单个模型的能力是有限的,但由多个模型组成的管道可以提供更多的能力来解决现实场景中的难题。
PP-OCRv3
通用OCR管道用于通过从图像中提取文本信息并以字符串格式输出,来解决文本识别任务。管道中有5个模块:
- 文档图像方向分类模块(可选)
- 文本图像去扭曲模块(可选)
- 文本行方向分类模块(可选)
- 文本检测模块
- 文本识别模块
运行以下命令快速体验OCR管道:
paddleocr ocr -i https://cdn-uploads.huggingface.co/production/uploads/681c1ecd9539bdde5ae1733c/_5b764by68-a295JP4y1q.png \
--text_recognition_model_name devanagari_PP-OCRv3_mobile_rec \
--use_doc_orientation_classify False \
--use_doc_unwarping False \
--use_textline_orientation True \
--save_path ./output \
--device gpu:0
结果将打印到终端:
{'res': {'input_path': '/root/.paddlex/predict_input/_5b764by68-a295JP4y1q.png', 'page_index': None, 'model_settings': {'use_doc_preprocessor': True, 'use_textline_orientation': True}, 'doc_preprocessor_res': {'input_path': None, 'page_index': None, 'model_settings': {'use_doc_orientation_classify': False, 'use_doc_unwarping': False}, 'angle': -1}, 'dt_polys': array([[[ 11, 8],
...,
[ 11, 42]],
...,
[[ 9, 88],
...,
[ 9, 120]]], dtype=int16), 'text_det_params': {'limit_side_len': 64, 'limit_type': 'min', 'thresh': 0.3, 'max_side_limit': 4000, 'box_thresh': 0.6, 'unclip_ratio': 1.5}, 'text_type': 'general', 'textline_orientation_angles': array([0, ..., 1]), 'text_rec_score_thresh': 0.0, 'rec_texts': ['िसिरिलक', 'IBlhhh?', 'H॰'], 'rec_scores': array([0.98613745, ..., 0.5240429 ]), 'rec_polys': array([[[ 11, 8],
...,
[ 11, 42]],
...,
[[ 9, 88],
...,
[ 9, 120]]], dtype=int16), 'rec_boxes': array([[ 11, ..., 42],
...,
[ 9, ..., 120]], dtype=int16)}}
命令行方法适用于快速体验。对于项目集成,也只需要几行代码:
from paddleocr import PaddleOCR
ocr = PaddleOCR(
text_recognition_model_name="devanagari_PP-OCRv3_mobile_rec",
use_doc_orientation_classify=False,
use_doc_unwarping=False,
use_textline_orientation=True,
device="gpu:0",
)
result = ocr.predict("https://cdn-uploads.huggingface.co/production/uploads/681c1ecd9539bdde5ae1733c/c3hSldnYVQXp48T5V0Ze4.png")
for res in result:
res.print()
res.save_to_img("output")
res.save_to_json("output")
管道中默认使用的模型是PP-OCRv5_server_rec
,因此需要通过参数text_recognition_model_name
指定为devanagari_PP-OCRv3_mobile_rec
。你也可以通过参数text_recognition_model_dir
使用本地模型文件。有关使用命令和参数说明的详细信息,请参考文档。
📚 详细文档
属性 |
详情 |
模型类型 |
天城文PP-OCRv3移动识别模型是PP-OCRv3_rec系列中的文本行识别模型。 |
训练数据 |
暂未提及 |
📄 许可证
本项目采用Apache-2.0许可证。
🔗 相关链接
⚠️ 重要提示
如果一行中的任何字符(包括标点符号)不正确,则整行将被标记为错误。这确保了在实际应用中具有更高的准确性。