Back to Paddleocr

一、PP-OCRv5多语种文字识别介绍

docs/version3.x/algorithm/PP-OCRv5/PP-OCRv5_multi_languages.md

3.5.017.4 KB
Original Source

一、PP-OCRv5多语种文字识别介绍

PP-OCRv5 是 PP-OCR 系列的最新一代文字识别解决方案,专注于多场景、多语种的文字识别任务。在文字类型支持方面,默认配置的识别模型可准确识别简体中文、中文拼音、繁体中文、英文和日文这五大主流文字类型。同时,PP-OCRv5还提供了覆盖106种语言的多语种文字识别能力,包括韩文、西班牙文、法文、葡萄牙文、德文、意大利文、俄罗斯文、泰文、希腊文等(具体支持语种及缩写详见第四节)。相较于前代 PP-OCRv3 版本,PP-OCRv5 在多语言文字识别准确率上实现了超过30%的提升。

<div align="center">

<b>法文识别结果</b>

</div> <div align="center">

<b>德文识别结果</b>

</div> <div align="center">

<b>韩文识别结果</b>

</div> <div align="center">

<b>俄文识别结果</b>

</div> <div align="center">

<b>泰文识别结果</b>

</div> <div align="center">

<b>希腊文识别结果</b>

</div> <div align="center">

<b>阿拉伯文识别结果</b>

</div> <div align="center">

<b>印地文识别结果</b>

</div> <div align="center">

<b>泰米尔文识别结果</b>

</div> <div align="center">

<b>泰卢固文识别结果</b>

</div>

二、快速使用

您可以通过在命令行中使用 --lang 参数,来使用指定语种的文本识别模型进行通用 OCR 产线的推理:

bash
# 通过 `--lang` 参数指定使用法语的识别模型
paddleocr ocr -i https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/general_ocr_french01.png \
    --lang fr \
    --use_doc_orientation_classify False \
    --use_doc_unwarping False \
    --use_textline_orientation False \
    --save_path ./output \
    --device gpu:0 

上述命令行的其他参数说明请参考通用 OCR 产线的命令行使用方式, 运行后结果会被打印到终端上:

bash
{'res': {'input_path': '/root/.paddlex/predict_input/general_ocr_french01.png', 'page_index': None, 'model_settings': {'use_doc_preprocessor': True, 'use_textline_orientation': False}, '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([[[119,  23],
        ...,
        [118,  75]],

       ...,

       [[109, 506],
        ...,
        [108, 556]]], 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([-1, ..., -1]), 'text_rec_score_thresh': 0.0, 'rec_texts': ['mifere; la profpérité & les fuccès ac-', 'compagnent l’homme induftrieux.', 'Quel eft celui qui a acquis des ri-', 'cheffes, qui eft devenu puiffant, qui', 's’eft couvert de gloire, dont l’éloge', 'retentit par-tout, qui fiege au confeil', "du Roi? C'eft celui qui bannit la pa-", "reffe de fa maifon, & qui a dit à l'oifi-", 'veté : tu es mon ennemie.'], 'rec_scores': array([0.98409832, ..., 0.98091048]), 'rec_polys': array([[[119,  23],
        ...,
        [118,  75]],

       ...,

       [[109, 506],
        ...,
        [108, 556]]], dtype=int16), 'rec_boxes': array([[118, ...,  81],
       ...,
       [108, ..., 562]], dtype=int16)}}

若指定了save_path,则会保存可视化结果在save_path下。可视化结果如下:

您也可以使用 Python 代码,在通用 OCR 产线初始化时,通过 lang 参数来使用指定语种的识别模型:

python
from paddleocr import PaddleOCR

ocr = PaddleOCR(
    lang="fr" # 通过 lang 参数指定使用法语的识别模型
    use_doc_orientation_classify=False, # 通过 use_doc_orientation_classify 参数指定不使用文档方向分类模型
    use_doc_unwarping=False, # 通过 use_doc_unwarping 参数指定不使用文本图像矫正模型
    use_textline_orientation=False, # 通过 use_textline_orientation 参数指定不使用文本行方向分类模型
)
result = ocr.predict("https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/general_ocr_french01.png")
for res in result:
    res.print()
    res.save_to_img("output")
    res.save_to_json("output")

更过关于 PaddleOCR 类参数的说明参考通用 OCR 产线的脚本方式集成

三、指标对比

模型模型下载链接对应数据集精度(%)相比前代模型提升幅度 (%)
korean_PP-OCRv5_mobile_rec<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/korean_PP-OCRv5_mobile_rec_infer.tar">推理模型</a>/<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/korean_PP-OCRv5_mobile_rec_pretrained.pdparams">训练模型</a>88.065.0
latin_PP-OCRv5_mobile_rec<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/latin_PP-OCRv5_mobile_rec_infer.tar">推理模型</a>/<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/latin_PP-OCRv5_mobile_rec_pretrained.pdparams">训练模型</a>84.746.8
eslav_PP-OCRv5_mobile_rec<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/eslav_PP-OCRv5_mobile_rec_infer.tar">推理模型</a>/<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/eslav_PP-OCRv5_mobile_rec_pretrained.pdparams">训练模型</a>81.631.4
th_PP-OCRv5_mobile_rec<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/th_PP-OCRv5_mobile_rec_infer.tar">推理模型</a>/<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/th_PP-OCRv5_mobile_rec_pretrained.pdparams">训练模型</a>82.68-
el_PP-OCRv5_mobile_rec<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/el_PP-OCRv5_mobile_rec_infer.tar">推理模型</a>/<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/el_PP-OCRv5_mobile_rec_pretrained.pdparams">训练模型</a>89.28-
en_PP-OCRv5_mobile_rec<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/en_PP-OCRv5_mobile_rec_infer.tar">推理模型</a>/<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/en_PP-OCRv5_mobile_rec_pretrained.pdparams">训练模型</a>85.2511.0
cyrillic_PP-OCRv5_mobile_rec<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/cyrillic_PP-OCRv5_mobile_rec_infer.tar">推理模型</a>/<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/cyrillic_PP-OCRv5_mobile_rec_pretrained.pdparams">训练模型</a>80.2721.2
arabic_PP-OCRv5_mobile_rec<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/arabic_PP-OCRv5_mobile_rec_infer.tar">推理模型</a>/<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/arabic_PP-OCRv5_mobile_rec_pretrained.pdparams">训练模型</a>81.2722.83
devanagari_PP-OCRv5_mobile_rec<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/devanagari_PP-OCRv5_mobile_rec_infer.tar">推理模型</a>/<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/devanagari_PP-OCRv5_mobile_rec_pretrained.pdparams">训练模型</a>84.9668.26
te_PP-OCRv5_mobile_rec<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/te_PP-OCRv5_mobile_rec_infer.tar">推理模型</a>/<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/te_PP-OCRv5_mobile_rec_pretrained.pdparams">训练模型</a>87.6543.47
ta_PP-OCRv5_mobile_rec<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_inference_model/paddle3.0.0/ta_PP-OCRv5_mobile_rec_infer.tar">推理模型</a>/<a href="https://paddle-model-ecology.bj.bcebos.com/paddlex/official_pretrained_model/ta_PP-OCRv5_mobile_rec_pretrained.pdparams">训练模型</a>94.239.23

注:

  • 韩语数据集:PP-OCRv5 最新构建的包含了 5007 张韩语文本图片的识别数据集。
  • 拉丁字母语言数据集:PP-OCRv5 最新构建的包含了 3111 张拉丁字母语言的文本图片识别数据集。
  • 东斯拉夫语言数据集:PP-OCRv5 最新构建的包含了俄语、 白俄罗斯语和乌克兰语共计 7031 张文本图片的识别数据集。
  • 泰文数据集:PP-OCRv5 最新构建的泰文共计 4261 张文本图片的识别数据集。
  • 希腊文数据集:PP-OCRv5 最新构建的希腊文共计 2799 张文本图片的识别数据集。
  • 英文数据集:PP-OCRv5 最新构建的英文共计 6530 张文本图片的识别数据集。
  • 西里尔语数据集:PP-OCRv5 最新构建的西里尔文共计 7600 张文本图片的识别数据集。
  • 泰米尔语数据集:PP-OCRv5 最新构建的泰米尔语共计 2121 张文本图片的识别数据集。
  • 泰卢固语数据集:PP-OCRv5 最新构建的泰卢固语共计 2478 张文本图片的识别数据集。
  • 阿拉伯语数据集:PP-OCRv5 最新构建的阿拉伯、梵语等共计 2676 张文本图片的识别数据集。
  • 天城文数据集:PP-OCRv5 最新构建的天城文共计 3611 张文本图片的识别数据集。

四、 支持语种及缩写

语种描述缩写语种描述缩写
中文Chinese & Englishch匈牙利文Hungarianhu
英文Englishen塞尔维亚文(latin)Serbian(latin)rs_latin
法文Frenchfr印度尼西亚文Indonesianid
德文Germande欧西坦文Occitanoc
日文Japanesejapan冰岛文Icelandicis
韩文Koreankorean立陶宛文Lithuanianlt
中文繁体Chinese Traditionalchinese_cht毛利文Maorimi
南非荷兰文Afrikaansaf马来文Malayms
意大利文Italianit荷兰文Dutchnl
西班牙文Spanishes挪威文Norwegianno
波斯尼亚文Bosnianbs波兰文Polishpl
葡萄牙文Portuguesept斯洛伐克文Slovaksk
捷克文Czechcs斯洛文尼亚文Sloveniansl
威尔士文Welshcy阿尔巴尼亚文Albaniansq
丹麦文Danishda瑞典文Swedishsv
爱沙尼亚文Estonianet西瓦希里文Swahilisw
爱尔兰文Irishga塔加洛文Tagalogtl
克罗地亚文Croatianhr土耳其文Turkishtr
乌兹别克文Uzbekuz拉丁文Latinla
俄罗斯文Russianru白俄罗斯文Belarusianbe
乌克兰文Ukranianuk泰文Thaith
希腊文Greekel阿塞拜疆文Azerbaijaniaz
库尔德文Kurdishku拉脱维亚文Latvianlv
马耳他文Maltesemt巴利文Palipi
罗马尼亚文Romanianro越南文Vietnamesevi
芬兰文Finnishfi巴斯克文Basqueeu
加利西亚文Galiciangl卢森堡文Luxembourgishlb
罗曼什文Romanshrm加泰罗尼亚文Catalanca
克丘亚文Quechuaqu泰卢固文Telugute
塞尔维亚语(西里尔字母)Serbian (Cyrillic)rs_cyrillic保加利亚文Bulgarianbg
蒙古文Mongolianmn阿布哈兹文Abkhazab
阿迪赫文Adygheady卡巴尔达文Kabardiankbd
阿瓦尔文Avarav达尔格瓦文Dargwadar
印古什文Ingushinh车臣文Chechence
拉克文Laklki列兹金文Lezgianlez
塔巴萨兰文Tabasarantab哈萨克文Kazakhkk
吉尔吉斯文Kyrgyzky塔吉克文Tajiktg
马其顿文Macedonianmk鞑靼文Tatartt
楚瓦什文Chuvashcv巴什基尔文Bashkirba
马里文Marimhr莫尔多瓦文Moldovanmo
乌德穆尔特文Udmurtudm科米文Komikv
奥塞梯文Ossetianos布里亚特文Buriatbua
卡尔梅克文Kalmykxal图瓦文Tuviniantyv
萨哈文Sakhasah卡拉卡尔帕克语Karakalpakkaa
阿拉伯文Arabicar波斯文Persianfa
维吾尔文Uyghurug乌尔都文Urduur
普什图文Pashtops库尔德文Kurdishku
信德文Sindhisd俾路支文Balochibal
印地文Hindihi马拉地文Marathimr
尼泊尔文Nepaline比哈尔文Biharibh
迈蒂利文Maithilimai古英文Old Englishang
博杰普尔文Bhojpuribho马加希文Magahimah
萨达里文Sadrisck尼瓦尔文Newarnew
孔卡尼文Konkanigom梵文Sanskritsa
哈里亚纳文Haryanvibgc泰米尔语Tamilta

五、模型及其支持的语种

模型支持语种
PP-OCRv5_server_rec简体中文、繁体中文、英文、日文
PP-OCRv5_mobile_rec简体中文、繁体中文、英文、日文
korean_PP-OCRv5_mobile_rec韩文、英文
latin_PP-OCRv5_mobile_rec法文、德文、南非荷兰文、意大利文、西班牙文、波斯尼亚文、葡萄牙文、捷克文、威尔士文、丹麦文、爱沙尼亚文、爱尔兰文、克罗地亚文、乌兹别克文、匈牙利文、塞尔维亚文(latin)、印度尼西亚文、欧西坦文、冰岛文、立陶宛文、毛利文、马来文、荷兰文、挪威文、波兰文、斯洛伐克文、斯洛文尼亚文、阿尔巴尼亚文、瑞典文、西瓦希里文、塔加洛文、土耳其文、拉丁文、阿塞拜疆文、库尔德文、拉脱维亚文、马耳他文、巴利文、罗马尼亚文、越南文、芬兰文、巴斯克文、加利西亚文、卢森堡文、罗曼什文、加泰罗尼亚文、克丘亚文
eslav_PP-OCRv5_mobile_rec俄罗斯文、白俄罗斯文、乌克兰文、英文
th_PP-OCRv5_mobile_rec泰文、英文
el_PP-OCRv5_mobile_rec希腊文、英文
en_PP-OCRv5_mobile_rec英文
cyrillic_PP-OCRv5_mobile_rec俄罗斯文、白俄罗斯文、乌克兰文、塞尔维亚文(cyrillic)、保加利亚文、蒙古文、阿布哈兹文、阿迪赫文、卡巴尔达文、阿瓦尔文、达尔格瓦文、印古什文、车臣文、拉克文、列兹金文、塔巴萨兰文、哈萨克文、吉尔吉斯文、塔吉克文、马其顿文、鞑靼文、楚瓦什文、巴什基尔文、马里文、莫尔多瓦文、乌德穆尔特文、科米文、奥塞梯文、布里亚特文、卡尔梅克文、图瓦文、萨哈文、卡拉卡尔帕克文、英文
arabic_PP-OCRv5_mobile_rec阿拉伯文、波斯文、维吾尔文、乌尔都文、普什图文、库尔德文、信德文、俾路支文、英文
devanagari_PP-OCRv5_mobile_rec印地文,马拉地文,尼泊尔文,比哈尔文,迈蒂利文,古英文,博杰普尔文,马加希文,萨达里文,尼瓦尔文,孔卡尼文,梵文,哈里亚纳文、英文
ta_PP-OCRv5_mobile_rec泰米尔文、英文
te_PP-OCRv5_mobile_rec泰卢固文、英文

注: en_PP-OCRv5_mobile_rec 是在 PP-OCRv5 模型基础上,针对英文场景进行了定向优化,在处理英文文本时表现出更高的识别精度和更强的场景适应能力。