diff --git a/python/rapidocr/default_models.yaml b/python/rapidocr/default_models.yaml index 4154557..e1b031f 100644 --- a/python/rapidocr/default_models.yaml +++ b/python/rapidocr/default_models.yaml @@ -2,814 +2,864 @@ onnxruntime: PP-OCRv4: det: ch_PP-OCRv4_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_mobile.onnx SHA256: d2a7720d45a54257208b1e13e36a8479894cb74155a5efe29462512d42f49da9 ch_PP-OCRv4_det_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_server.onnx SHA256: cfa39a3f298f6d3fc71789834d15da36d11a6c59b489fc16ea4733728012f786 en_PP-OCRv3_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/det/en_PP-OCRv3_det_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/det/en_PP-OCRv3_det_mobile.onnx SHA256: ea07c15d38ac40cd69da3c493444ec75b44ff23840553ff8ba102c1219ed39c2 multi_PP-OCRv3_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/det/multi_PP-OCRv3_det_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/det/multi_PP-OCRv3_det_mobile.onnx SHA256: 5475c6c7f4d84a6c4f32241b487435d59f126a40c023387af99732258844cdc3 rec: arabic_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile.onnx SHA256: 4a9011bef71687bb84288dc86ad2471bd5d37b717ddf672dd156f9e7a5601bac ch_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile.onnx SHA256: 48fc40f24f6d2a207a2b1091d3437eb3cc3eb6b676dc3ef9c37384005483683b ch_PP-OCRv4_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_server.onnx SHA256: 6a2676219be9907c7fc9cf61ebaa843bf2898777def567925b78886fcd90c07a ch_doc_PP-OCRv4_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server.onnx SHA256: 7062242cd57ec40b6583c3e0a5d4a674accbd710eed90bad9f52b9dd341d43b3 chinese_cht_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile.onnx SHA256: 779656d044ce388045e02ea9244724616194e63928606436cdfc6dc3c9528cc6 cyrillic_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile.onnx SHA256: 1efb65bdc460af1c0e8733d005b20952b17ca5aac10ddb56c968333791c5eaa3 devanagari_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile.onnx SHA256: a62b6148303187907aa0b0d3a0125bdc62557d07966468cab9056949e36035e8 en_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile.onnx SHA256: e8770c967605983d1570cdf5352041dfb68fa0c21664f49f47b155abd3e0e318 japan_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile.onnx SHA256: e1075a67dba758ecfc7ebc78a10ae61c95ac8fb66a9c86fab5541e33f085cb7a ka_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/ka_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/ka_PP-OCRv4_rec_mobile.onnx SHA256: 9c1e186ea1d13cf6c853e57b42d382c3961fdd6acc2409e0d0dc44defc9f152b korean_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile.onnx SHA256: ab151ba9065eccd98f884cf4d927db091be86137276392072edd4f9d43ad7426 latin_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile.onnx SHA256: e9d7a33667e8aaa702862975186adf2012e3f390cc0f9422865957125f8071cf ta_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile.onnx SHA256: f78d752148873c5fa6e4294002bfd162dbba54236e406a39665ebbda766161b5 te_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile.onnx SHA256: e608c3be00c8a9ea2f5c667d90f379403e2568bd5c8183308a49ca093def8eff cls: ch_ppocr_mobile_v2.0_cls_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_mobile.onnx SHA256: e47acedf663230f8863ff1ab0e64dd2d82b838fceb5957146dab185a89d6215c PP-OCRv5: det: ch_PP-OCRv5_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mobile.onnx SHA256: 4d97c44a20d30a81aad087d6a396b08f786c4635742afc391f6621f5c6ae78ae ch_PP-OCRv5_det_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_server.onnx SHA256: 0f8846b1d4bba223a2a2f9d9b44022fbc22cc019051a602b41a7fda9667e4cad rec: ch_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile.onnx SHA256: 5825fc7ebf84ae7a412be049820b4d86d77620f204a041697b0494669b1742c5 ch_PP-OCRv5_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_server.onnx SHA256: e09385400eaaaef34ceff54aeb7c4f0f1fe014c27fa8b9905d4709b65746562a korean_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile.onnx SHA256: cd6e2ea50f6943ca7271eb8c56a877a5a90720b7047fe9c41a2e541a25773c9b latin_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile.onnx SHA256: b20bd37c168a570f583afbc8cd7925603890efbcdc000a59e22c269d160b5f5a eslav_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile.onnx SHA256: 08705d6721849b1347d26187f15a5e362c431963a2a62bfff4feac578c489aab en_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile.onnx SHA256: c3461add59bb4323ecba96a492ab75e06dda42467c9e3d0c18db5d1d21924be8 th_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile.onnx SHA256: de541dd83161c241ff426f7ecfd602a0ba77d686cf3ab9a6c255ea82fd08006e el_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile.onnx SHA256: b4368bccd557123c702b7549fee6cd1e94b581337d1c9b65310f109131542b7f arabic_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile.onnx SHA256: c1192e632d0baa9146ae5b756a0e635e3dc63c1733737ebfd1629e87144e9295 cyrillic_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile.onnx SHA256: 90f761b4bfcce0c8c561c0cb5c887b0971d3ec01c32164bdf7374a35b0982711 devanagari_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile.onnx SHA256: d6f0a906580e3fa6b324a318718f1f31f268b6ea8ef985f91c2012a37f52c91e ta_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile.onnx SHA256: a42448808b7dea87597336f12438935f40353f1949e8360acd9e06b4da21bfe1 te_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile.onnx SHA256: a3690451b50028a09a3316a1274f7c05728151ea3f8fd392696397a7fefcbd92 cls: ch_PP-LCNet_x0_25_textline_ori_cls_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/cls/ch_PP-LCNet_x0_25_textline_ori_cls_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/cls/ch_PP-LCNet_x0_25_textline_ori_cls_mobile.onnx SHA256: 54379ae5174d026780215fc748a7f31910dee36818e63d49e17dc598ecc82df7 ch_PP-LCNet_x1_0_textline_ori_cls_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/cls/ch_PP-LCNet_x1_0_textline_ori_cls_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/cls/ch_PP-LCNet_x1_0_textline_ori_cls_server.onnx SHA256: 7d3c02ef6c7da8ae08b4347cc7695b2081aae68c325d64375724ecf39c99e743 PP-OCRv6: det: multi_PP-OCRv6_det_tiny: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/det/PP-OCRv6_det_tiny.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/det/PP-OCRv6_det_tiny.onnx SHA256: f42c0fbd294d95eac1a550e131b277dac97462c8025fa4b6c3cec1b7894bd3d5 multi_PP-OCRv6_det_small: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/det/PP-OCRv6_det_small.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/det/PP-OCRv6_det_small.onnx SHA256: 090f04abcd9d9a7498bc4ebf677e4cb9bdce1fe4197ddb7e529f1ef44e1ff94f multi_PP-OCRv6_det_medium: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/det/PP-OCRv6_det_medium.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/det/PP-OCRv6_det_medium.onnx SHA256: 92078b7355007ccfffcd4c8cd441a3afd4538904d06881b29a155e1e679907c2 rec: multi_PP-OCRv6_rec_tiny: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/rec/PP-OCRv6_rec_tiny.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/rec/PP-OCRv6_rec_tiny.onnx SHA256: e16e242de5937ad92609223f19bc2aff3727ee40b095f996907c24749bad251b multi_PP-OCRv6_rec_small: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/rec/PP-OCRv6_rec_small.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/rec/PP-OCRv6_rec_small.onnx SHA256: 6f327246b50388f3c176ae304bd95767ea6dc0c9ae92153ef8cbe210b3c14884 multi_PP-OCRv6_rec_medium: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/rec/PP-OCRv6_rec_medium.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/rec/PP-OCRv6_rec_medium.onnx SHA256: eef444829dbbe18d7fea59a3f6eb75647518d2b3a9568d27c92e42940204894b openvino: PP-OCRv4: det: ch_PP-OCRv4_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_mobile.onnx SHA256: d2a7720d45a54257208b1e13e36a8479894cb74155a5efe29462512d42f49da9 ch_PP-OCRv4_det_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/det/ch_PP-OCRv4_det_server.onnx SHA256: cfa39a3f298f6d3fc71789834d15da36d11a6c59b489fc16ea4733728012f786 en_PP-OCRv3_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/det/en_PP-OCRv3_det_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/det/en_PP-OCRv3_det_mobile.onnx SHA256: ea07c15d38ac40cd69da3c493444ec75b44ff23840553ff8ba102c1219ed39c2 multi_PP-OCRv3_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/det/multi_PP-OCRv3_det_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/det/multi_PP-OCRv3_det_mobile.onnx SHA256: 5475c6c7f4d84a6c4f32241b487435d59f126a40c023387af99732258844cdc3 rec: arabic_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile.onnx SHA256: 4a9011bef71687bb84288dc86ad2471bd5d37b717ddf672dd156f9e7a5601bac ch_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile.onnx SHA256: 48fc40f24f6d2a207a2b1091d3437eb3cc3eb6b676dc3ef9c37384005483683b ch_PP-OCRv4_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/ch_PP-OCRv4_rec_server.onnx SHA256: 6a2676219be9907c7fc9cf61ebaa843bf2898777def567925b78886fcd90c07a ch_doc_PP-OCRv4_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server.onnx SHA256: 7062242cd57ec40b6583c3e0a5d4a674accbd710eed90bad9f52b9dd341d43b3 chinese_cht_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile.onnx SHA256: 779656d044ce388045e02ea9244724616194e63928606436cdfc6dc3c9528cc6 cyrillic_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile.onnx SHA256: 1efb65bdc460af1c0e8733d005b20952b17ca5aac10ddb56c968333791c5eaa3 devanagari_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile.onnx SHA256: a62b6148303187907aa0b0d3a0125bdc62557d07966468cab9056949e36035e8 en_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile.onnx SHA256: e8770c967605983d1570cdf5352041dfb68fa0c21664f49f47b155abd3e0e318 japan_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile.onnx SHA256: e1075a67dba758ecfc7ebc78a10ae61c95ac8fb66a9c86fab5541e33f085cb7a ka_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/ka_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/ka_PP-OCRv4_rec_mobile.onnx SHA256: 9c1e186ea1d13cf6c853e57b42d382c3961fdd6acc2409e0d0dc44defc9f152b korean_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile.onnx SHA256: ab151ba9065eccd98f884cf4d927db091be86137276392072edd4f9d43ad7426 latin_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile.onnx SHA256: e9d7a33667e8aaa702862975186adf2012e3f390cc0f9422865957125f8071cf ta_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile.onnx SHA256: f78d752148873c5fa6e4294002bfd162dbba54236e406a39665ebbda766161b5 te_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile.onnx SHA256: e608c3be00c8a9ea2f5c667d90f379403e2568bd5c8183308a49ca093def8eff cls: ch_ppocr_mobile_v2.0_cls_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_mobile.onnx SHA256: e47acedf663230f8863ff1ab0e64dd2d82b838fceb5957146dab185a89d6215c PP-OCRv5: det: ch_PP-OCRv5_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_mobile.onnx SHA256: 4d97c44a20d30a81aad087d6a396b08f786c4635742afc391f6621f5c6ae78ae ch_PP-OCRv5_det_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/det/ch_PP-OCRv5_det_server.onnx SHA256: 0f8846b1d4bba223a2a2f9d9b44022fbc22cc019051a602b41a7fda9667e4cad rec: ch_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile.onnx SHA256: 5825fc7ebf84ae7a412be049820b4d86d77620f204a041697b0494669b1742c5 ch_PP-OCRv5_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/ch_PP-OCRv5_rec_server.onnx SHA256: e09385400eaaaef34ceff54aeb7c4f0f1fe014c27fa8b9905d4709b65746562a korean_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile.onnx SHA256: cd6e2ea50f6943ca7271eb8c56a877a5a90720b7047fe9c41a2e541a25773c9b latin_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile.onnx SHA256: b20bd37c168a570f583afbc8cd7925603890efbcdc000a59e22c269d160b5f5a eslav_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile.onnx SHA256: 08705d6721849b1347d26187f15a5e362c431963a2a62bfff4feac578c489aab en_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile.onnx SHA256: c3461add59bb4323ecba96a492ab75e06dda42467c9e3d0c18db5d1d21924be8 th_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile.onnx SHA256: de541dd83161c241ff426f7ecfd602a0ba77d686cf3ab9a6c255ea82fd08006e el_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile.onnx SHA256: b4368bccd557123c702b7549fee6cd1e94b581337d1c9b65310f109131542b7f arabic_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile.onnx SHA256: c1192e632d0baa9146ae5b756a0e635e3dc63c1733737ebfd1629e87144e9295 cyrillic_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile.onnx SHA256: 90f761b4bfcce0c8c561c0cb5c887b0971d3ec01c32164bdf7374a35b0982711 devanagari_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile.onnx SHA256: d6f0a906580e3fa6b324a318718f1f31f268b6ea8ef985f91c2012a37f52c91e ta_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile.onnx SHA256: a42448808b7dea87597336f12438935f40353f1949e8360acd9e06b4da21bfe1 te_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile.onnx SHA256: a3690451b50028a09a3316a1274f7c05728151ea3f8fd392696397a7fefcbd92 cls: ch_PP-LCNet_x0_25_textline_ori_cls_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/cls/ch_PP-LCNet_x0_25_textline_ori_cls_mobile.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/cls/ch_PP-LCNet_x0_25_textline_ori_cls_mobile.onnx SHA256: 54379ae5174d026780215fc748a7f31910dee36818e63d49e17dc598ecc82df7 ch_PP-LCNet_x1_0_textline_ori_cls_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv5/cls/ch_PP-LCNet_x1_0_textline_ori_cls_server.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv5/cls/ch_PP-LCNet_x1_0_textline_ori_cls_server.onnx SHA256: 7d3c02ef6c7da8ae08b4347cc7695b2081aae68c325d64375724ecf39c99e743 PP-OCRv6: det: multi_PP-OCRv6_det_tiny: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/det/PP-OCRv6_det_tiny.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/det/PP-OCRv6_det_tiny.onnx SHA256: f42c0fbd294d95eac1a550e131b277dac97462c8025fa4b6c3cec1b7894bd3d5 multi_PP-OCRv6_det_small: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/det/PP-OCRv6_det_small.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/det/PP-OCRv6_det_small.onnx SHA256: 090f04abcd9d9a7498bc4ebf677e4cb9bdce1fe4197ddb7e529f1ef44e1ff94f multi_PP-OCRv6_det_medium: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/det/PP-OCRv6_det_medium.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/det/PP-OCRv6_det_medium.onnx SHA256: 92078b7355007ccfffcd4c8cd441a3afd4538904d06881b29a155e1e679907c2 rec: multi_PP-OCRv6_rec_tiny: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/rec/PP-OCRv6_rec_tiny.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/rec/PP-OCRv6_rec_tiny.onnx SHA256: e16e242de5937ad92609223f19bc2aff3727ee40b095f996907c24749bad251b multi_PP-OCRv6_rec_small: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/rec/PP-OCRv6_rec_small.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/rec/PP-OCRv6_rec_small.onnx SHA256: 6f327246b50388f3c176ae304bd95767ea6dc0c9ae92153ef8cbe210b3c14884 multi_PP-OCRv6_rec_medium: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/onnx/PP-OCRv6/rec/PP-OCRv6_rec_medium.onnx + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/onnx/PP-OCRv6/rec/PP-OCRv6_rec_medium.onnx SHA256: eef444829dbbe18d7fea59a3f6eb75647518d2b3a9568d27c92e42940204894b mnn: PP-OCRv4: det: ch_PP-OCRv4_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/det/ch_PP-OCRv4_det_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/det/ch_PP-OCRv4_det_mobile.mnn SHA256: c46fbae33f0520460204c0321bfdfcf5d65c9a11b7fa750e6b86de69ef6ace34 ch_PP-OCRv4_det_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/det/ch_PP-OCRv4_det_server.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/det/ch_PP-OCRv4_det_server.mnn SHA256: 8618d06a704a86b1d606e538285420aafc53a4c4af27eedfa198c4f50ff638a7 en_PP-OCRv3_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/det/en_PP-OCRv3_det_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/det/en_PP-OCRv3_det_mobile.mnn SHA256: b7147457b356e76b47ffb76483c363f567b27026a3e6bc59490240ae0e7ecf87 multi_PP-OCRv3_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/det/multi_PP-OCRv3_det_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/det/multi_PP-OCRv3_det_mobile.mnn SHA256: 536d30c50edc1154c369af4063b2fa264e8bdada243131412e3310b035780703 cls: ch_ppocr_mobile_v2.0_cls_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/cls/ch_ppocr_mobile_v2.0_cls_mobile.mnn SHA256: 6cb3cc2410929e6ca526e223a1a3e8eb7dcfeac46ed8d64a93e061a6a0eaad75 rec: arabic_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile.mnn SHA256: e9d9972df0f9eff2d8053b218bfe9bdcab94da49ee8e965d8df199e366f514c6 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile/arabic_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile/arabic_dict.txt ch_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile.mnn SHA256: 8f5855347b2900ff1a8fb897bad548d7c4013f050239adccf145485accb976e5 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt ch_PP-OCRv4_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/ch_PP-OCRv4_rec_server.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/ch_PP-OCRv4_rec_server.mnn SHA256: 836bf5cc61e9173e40a96206ae2e80b5fa68ffce2f977c8721a2882406bf6615 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt ch_doc_PP-OCRv4_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server.mnn SHA256: 508bdab9c76dcf9547ac2d42ae7e734ce82182ac35dbfa591d3d8d5e81070f64 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server/ppocrv4_doc_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server/ppocrv4_doc_dict.txt chinese_cht_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile.mnn SHA256: 6c7307d2ef875f0510fdeb9b0c66a1d54f909363075287c04077f1f79159cae5 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile/chinese_cht_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile/chinese_cht_dict.txt cyrillic_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile.mnn SHA256: c80de648491badfff29b6665870ede6665d00b19760dd39d8a4b98c3b3be0534 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile/cyrillic_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile/cyrillic_dict.txt devanagari_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile.mnn SHA256: 4f8fd444ce4d128fdbe8ec65fe6e3d296f610bf0b73506db6f366c3d232135c2 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile/devanagari_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile/devanagari_dict.txt en_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile.mnn SHA256: cbd5a57d3cb48f489644445197b11afa9679d4e239d37b21ea51ab43c1d188f4 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile/en_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile/en_dict.txt japan_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile.mnn SHA256: 495ebd93aec40e345f036686490384c72da068f35dc4f1a6749e2b58b90e5b10 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile/japan_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile/japan_dict.txt ka_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/ka_PP-OCRv4_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/ka_PP-OCRv4_rec_mobile.mnn SHA256: b2ce72ab07926b518c3b7f1f6ed13d95a8d6f0da8afd110699be6c56699eb74b - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/kannada_PP-OCRv4_rec_mobile/ka_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/kannada_PP-OCRv4_rec_mobile/ka_dict.txt korean_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile.mnn SHA256: 813de13751c3202ade34783c10feb3ac6c9c43e7648e6b673ba783acbb389d88 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile/korean_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile/korean_dict.txt latin_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile.mnn SHA256: af8ac918401e5473b14f4890f385112bd5870ac3686a2e629b1f1c9bbee56b76 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile/latin_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile/latin_dict.txt ta_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile.mnn SHA256: 81e3daab75a470a883b8aa8ec8cd3910c112b1f7ee2fe3b34a4cb52b23b1f187 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile/ta_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile/ta_dict.txt te_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile.mnn SHA256: c924ff901a37945ca15b8a1ce830ea4a982bc1942f31c6e9102c559758dc7f3a - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile/te_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile/te_dict.txt PP-OCRv5: det: ch_PP-OCRv5_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/det/ch_PP-OCRv5_det_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/det/ch_PP-OCRv5_det_mobile.mnn SHA256: 945745e4ee741fca2cce057c1f900132516425120b6d62e2d76a8e7fda0d8018 ch_PP-OCRv5_det_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/det/ch_PP-OCRv5_det_server.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/det/ch_PP-OCRv5_det_server.mnn SHA256: bb241464b3af7229238c5b5659f8e48d7d17f18632b68d77eb381c3f47c644ef rec: arabic_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile.mnn SHA256: 98f9235a90c9457db4ecae565d050c7a681dd64f7a77247221132c039c330ec8 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile/ppocrv5_arabic_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile/ppocrv5_arabic_dict.txt ch_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile.mnn SHA256: 9416adfd544bd09287a13725b78cf4e4ee8ec30950b2bf99b5d7f065154496ed - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile/ppocrv5_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile/ppocrv5_dict.txt ch_PP-OCRv5_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/ch_PP-OCRv5_rec_server.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/ch_PP-OCRv5_rec_server.mnn SHA256: c31b966c0d63ea4be8b94e59b9faf3c8b66cd1fc5010e74bd093cf831683b884 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_server/ppocrv5_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_server/ppocrv5_dict.txt cyrillic_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile.mnn SHA256: 342c4b104d9a87774f27e6b81dec5c79c212c9e4e1c2b9e99ee7997faf2b0506 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile/ppocrv5_cyrillic_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile/ppocrv5_cyrillic_dict.txt devanagari_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile.mnn SHA256: 58b0e768777b7f396815a6732654535c524cebe1a5019846040c10a9bca3dc3e - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile/ppocrv5_devanagari_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile/ppocrv5_devanagari_dict.txt el_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile.mnn SHA256: a547d2860921900a14a4d79d0ea702ed233a8ded7e38176eac88c93911a203c7 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile/ppocrv5_el_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile/ppocrv5_el_dict.txt en_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile.mnn SHA256: f3b9c63beee5a6c823bd350943882b7edd09aa3bc610dab230aad124a36dffb5 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile/ppocrv5_en_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile/ppocrv5_en_dict.txt eslav_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile.mnn SHA256: 487a26a3c36a454be0e65ad6679c8f6526adeaf92f03945b6df8114a6db1e8c4 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile/ppocrv5_eslav_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile/ppocrv5_eslav_dict.txt korean_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile.mnn SHA256: c55ecd24f787a9fdcb33c3987ba220d291370c4691503a822f742d625422a830 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile/ppocrv5_korean_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile/ppocrv5_korean_dict.txt latin_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile.mnn SHA256: 6c2a566fb299f0c2e65ce6f801652871f66fe971032ec2f0de43e64bb0924cbb - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile/ppocrv5_latin_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile/ppocrv5_latin_dict.txt ta_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile.mnn SHA256: 939ab21eea3ec169077f24f1fbfa3a2567d40d0fbb97b060f26fe1a7d3215c25 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile/ppocrv5_ta_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile/ppocrv5_ta_dict.txt te_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile.mnn SHA256: 11e841cedb81872d378e1a703acdc57e821104d81c459affa4da40d11e31a1df - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile/ppocrv5_te_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile/ppocrv5_te_dict.txt th_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile.mnn SHA256: ec69b91c4d88d864a01d3f0acde5a4ff4a1c1d2a74deb393f356ab1122ae4a91 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile/ppocrv5_th_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile/ppocrv5_th_dict.txt cls: ch_PP-LCNet_x0_25_textline_ori_cls_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/cls/ch_PP-LCNet_x0_25_textline_ori_cls_mobile.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/cls/ch_PP-LCNet_x0_25_textline_ori_cls_mobile.mnn SHA256: 878dccb64aec29fe959aca3b2242cae311949ab824b8d83d7af8e2b8b62fc589 ch_PP-LCNet_x1_0_textline_ori_cls_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/mnn/PP-OCRv5/cls/ch_PP-LCNet_x1_0_textline_ori_cls_server.mnn + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv5/cls/ch_PP-LCNet_x1_0_textline_ori_cls_server.mnn SHA256: d6bcb91b894d1bd0c7ce525fcbd74fef25b35de16f01246a360440437f83eee7 + PP-OCRv6: + det: + multi_PP-OCRv6_det_tiny: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv6/det/PP-OCRv6_det_tiny.mnn + SHA256: a3c943312c84dfc7fb65dc3c5e2b01e5f8654b5823e80b374ef446858f3d2913 + multi_PP-OCRv6_det_small: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv6/det/PP-OCRv6_det_small.mnn + SHA256: a41bcf051c24b67c46172005915f8b8f6a0272cb30b11bf9f16cca4231d21ee1 + multi_PP-OCRv6_det_medium: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv6/det/PP-OCRv6_det_medium.mnn + SHA256: d2873933fe2784dc746689246a4b54829af0202877a54901bc21ff158fd95289 + rec: + multi_PP-OCRv6_rec_tiny: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv6/rec/PP-OCRv6_rec_tiny.mnn + SHA256: 55f7d3f6f4f9b7d8f9892be25ff8fa97ae7a54788af26f534fb6757c43622048 + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_tiny/ppocrv6_tiny_dict.txt + multi_PP-OCRv6_rec_small: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv6/rec/PP-OCRv6_rec_small.mnn + SHA256: 3ed704bdc5495002225237444384437617777bd962fa048d5d09d1444b98564b + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_small/ppocrv6_dict.txt + multi_PP-OCRv6_rec_medium: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/mnn/PP-OCRv6/rec/PP-OCRv6_rec_medium.mnn + SHA256: f9c478dac84bf5e9acec38a9e8f08811669a0f49e0cf4260a90293689741a002 + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_medium/ppocrv6_dict.txt + paddle: PP-OCRv4: det: ch_PP-OCRv4_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/det/ch_PP-OCRv4_det_mobile + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/det/ch_PP-OCRv4_det_mobile inference.pdiparams: 49ee815e30cff43cb1057d33bf0d94193e4d4f1ae28451cad15b40be830df915 inference.pdiparams.info: 4e0f29e5fa476126f9efe0dc69f7ca7be960705ad549385d30c9604193463e69 inference.pdmodel: 2ad68ed2768fe6c41166a5bc64680cc9f445390acb6528da449a4db2f7b90e14 ch_PP-OCRv4_det_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/det/ch_PP-OCRv4_det_server + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/det/ch_PP-OCRv4_det_server inference.pdiparams: 48cecf9e30e9261a634126bc5211a2736508ae89d2d6199ef2ede06cdebe678f inference.pdiparams.info: 231d32f0fc329cffcd3f756ef6ab6899663222a6b655b577400a2dd9cb8d2ac8 inference.pdmodel: fec18291e9994c66a8c6877c7194c094071f115f7fd9f48b4da40e966749b03a en_PP-OCRv3_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/det/en_PP-OCRv3_det_mobile + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/det/en_PP-OCRv3_det_mobile inference.pdiparams: 83676ec730627ab4502f401410a4b6a3ce1c0bb98fa249b71db055b6bddae051 inference.pdiparams.info: 2fe414d9eadf914bf44e3f9ba212988a6f26f364e4f87c6d0af57438ffffc0c4 inference.pdmodel: c4bfb1b05d9d1d5a760801eaf6d20180ef7e47bcc675fb17d1f3a89da5fef427 multi_PP-OCRv3_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/det/multi_PP-OCRv3_det_mobile + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/det/multi_PP-OCRv3_det_mobile inference.pdiparams: a6119e639cade15873ac32eb4bee121b63c811c4d007d9f618baf680aef8b857 inference.pdiparams.info: 2fe414d9eadf914bf44e3f9ba212988a6f26f364e4f87c6d0af57438ffffc0c4 inference.pdmodel: c49f664c75549678deedcaff8d11f8f2b9f1303ef6c72deccdb98a5ea2104381 rec: arabic_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile/arabic_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile/arabic_dict.txt inference.pdiparams: b388bf744151963a21b9ee9c60b4624ba90976ae5f1f1b023e594032b16ce40f inference.pdiparams.info: 710d9f3d7c503067ae708f4bc3adc6973c0d6391adb7a1470c36eb70da6b5b83 inference.pdmodel: c9a2f2e222937a934c5c23fd95dbba5b62a3f6d822a14f86cf8b3e9b93632c64 ch_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt inference.pdiparams: a6dbfa63e7ee161688523c954e9e293f77dc24044db81e836ff9c7f103fd191a inference.pdiparams.info: 0706cc669bdce382f582c139906076b170b112c51bf32573fe43438025777f12 inference.pdmodel: bf78f3898a004615e69c676259d8171bd7ae99000653b41fd72aaa36ae8bd304 ch_PP-OCRv4_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_server - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_server + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt inference.pdiparams: 0319d16cb29b01788757164083da6512a5defb9bccdff5148a929bd43b2cd58f inference.pdiparams.info: 3aad501d0aa2bb2785b90e184c8c5d21718a72c5b896e4493856eb8936ab8455 inference.pdmodel: d3cbe31c26670a275c74bba052a49925e24452243f6f646a9ef92c4f5acffd37 ch_doc_PP-OCRv4_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server/ppocrv4_doc_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ch_doc_PP-OCRv4_rec_server/ppocrv4_doc_dict.txt inference.pdiparams: 4ad3cf3f353ae3353515266c5e96ef49e9de27dd6cbe413b0234192384203bab inference.json: ad20b17e9306f1f6ca00a875dfd5206837513b53d5052fe4b56050468f4751b8 inference.yml: 05cfc785baf5108048843cf88e25c200f06f81a19a484d82dc76ee9be16b9a03 chinese_cht_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile/chinese_cht_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile/chinese_cht_dict.txt inference.pdiparams: 53cdd14ef365d43a3de5357dea00935c56ae6d8f0f7d464b8aee187df8bdea47 inference.pdiparams.info: cf79f0b9689b4d6b8094d8bfe2481dc4b4d1699adb622568384695b5f56dc600 inference.pdmodel: 343da1722eae396309e365f9a98bca53f55ca71cf757743abaf83dce9d805bc0 cyrillic_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile/cyrillic_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile/cyrillic_dict.txt inference.pdiparams: 2ef815afbb8970610618561946ce86faf60745ada64cd316ed34bfe34bdbf46f inference.pdiparams.info: cf79f0b9689b4d6b8094d8bfe2481dc4b4d1699adb622568384695b5f56dc600 inference.pdmodel: 377bee205d0ba2d401cb463c300366ab87b2373b45dd9c8e3b560166b064beee devanagari_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile/devanagari_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile/devanagari_dict.txt inference.pdiparams: 3effa6613d040b79aac36699a3c97fe835fc91791db2010d614cc9ffb08ee415 inference.pdiparams.info: 710d9f3d7c503067ae708f4bc3adc6973c0d6391adb7a1470c36eb70da6b5b83 inference.pdmodel: 854c6d41d186be07588f3cd4ced044270ad96afd7f31ee4f63a70e1d3714a9d1 en_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile/en_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile/en_dict.txt inference.pdiparams: 75f64a1ffb70c56b7a25655963ca16f5bf3286202e3f52ac972bee05cdee2f56 inference.pdiparams.info: 710d9f3d7c503067ae708f4bc3adc6973c0d6391adb7a1470c36eb70da6b5b83 inference.pdmodel: 85b952f05f709af259cfe4254012aa7208bef0998f71f57a15495446f25ccd43 japan_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile/japan_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile/japan_dict.txt inference.pdiparams: e6e9b7395bb8476e85a15776aa09445c483778c06a512921cbc9ba81c6a2719a inference.pdiparams.info: 710d9f3d7c503067ae708f4bc3adc6973c0d6391adb7a1470c36eb70da6b5b83 inference.pdmodel: d3339a79fa88863f639a00cd57e973cc278fa46c3eb369b88cb24bb06c96b89d ka_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/kannada_PP-OCRv4_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/kannada_PP-OCRv4_rec_mobile/ka_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/kannada_PP-OCRv4_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/kannada_PP-OCRv4_rec_mobile/ka_dict.txt inference.pdiparams: 580fe5bc0a45956569bc63bda99b27f33505f20e519fa43517d1d5b9bcbb029b inference.pdiparams.info: 710d9f3d7c503067ae708f4bc3adc6973c0d6391adb7a1470c36eb70da6b5b83 inference.pdmodel: bb23a7045f9f03c414f727c75752660d51760f02da2023e258bcc014f585f8e8 korean_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile/korean_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile/korean_dict.txt inference.pdiparams: ea4f4762582336e9b85653b016c5b1091223c947fafd282161fa3145ecb72d1d inference.pdiparams.info: 533380ead7fe161fc32ac0bdc966e65c18c0d9d1a16088736c4aa3c628701374 inference.pdmodel: 992eed58af98ed6125065027e52fbc69b570e6c2e74610ec240e8a2436151ada latin_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile/latin_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile/latin_dict.txt inference.pdiparams: fa6f22a8b2a669c7d5b4dfd2607491abd4cd2467adf7077c9cc70ce8c47b61d9 inference.pdiparams.info: cf79f0b9689b4d6b8094d8bfe2481dc4b4d1699adb622568384695b5f56dc600 inference.pdmodel: 23e11a537d8cd7ebab669a9e48fb12f49c295ca9ecde398c6b5460830bd174b8 ta_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile/ta_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile/ta_dict.txt inference.pdiparams: b0ae170098a2f706de3c60496f5730b5ea4afe1d6e679a67ab6f89aa1018ffde inference.pdiparams.info: 533380ead7fe161fc32ac0bdc966e65c18c0d9d1a16088736c4aa3c628701374 inference.pdmodel: 42ddd121b43ab9ef399e59705bcde6c56891a531c6df87a467aa99c5db54926f te_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile/te_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile/te_dict.txt inference.pdiparams: 6efc7c74d4ff86b4187ece2f3b4f6ecd775c3a780b82d27d39a9c506d6e9eb42 inference.pdiparams.info: 533380ead7fe161fc32ac0bdc966e65c18c0d9d1a16088736c4aa3c628701374 inference.pdmodel: f07501e6a3e96aa065ed5a656c8aee5bff9694ac8cb51826178dd4f34e884333 cls: ch_ppocr_mobile_v2.0_cls_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/cls/ch_ppocr_mobile_v2_0_cls_mobile + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/cls/ch_ppocr_mobile_v2_0_cls_mobile inference.pdiparams: d1efda1b80e174b4fcb168a035ac96c1af4938892bd86a55f300a6027105d08c inference.pdiparams.info: ee0c2eaa4c09814802bf520c01dfdbc1345dc2879dc9e67424d32c7b0ee88e59 inference.pdmodel: 3c4337ec61722a20b1dca2e5bfaffc313c0592bc89ad6e0d45168224186f6683 PP-OCRv5: det: ch_PP-OCRv5_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/det/ch_PP-OCRv5_det_mobile + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/det/ch_PP-OCRv5_det_mobile inference.pdiparams: afa1820cb16c1fd0dad589d0f8b389139061c1ef6d68019685fd07be997dda5b inference.json: 05feef1acb00aa4cd7362b15f7f501fc4f99d7b1fa73c1c871e0c7b1504b0f5c inference.yml: 98069072e1b6b37d727fd9d9f11725faa46d6ea0de012f2ed26caea011c37699 ch_PP-OCRv5_det_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/det/ch_PP-OCRv5_det_server + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/det/ch_PP-OCRv5_det_server inference.pdiparams: 183146fe9d9910352f68482f623bcbbb9fa7b9e8fa1463b9ad288cef00524d2d inference.json: af5876933d8806a1b50d895867e0781e135cd92ff37381992828fc8d1b842d28 inference.yml: 28fb721efc3634fc8aa677e474b9602cb815a91cf569ef357a7a553d7b3ce685 rec: ch_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile/ppocrv5_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile/ppocrv5_dict.txt inference.pdiparams: 2460da90875937c94db97eba74ae3d9e5d4c4c57c42f1f41531c09a26bcc771a inference.json: 24587345250c7332d0fc6f9a44e794d078cdaeb64c302fef906f325619de2569 inference.yml: 5dfeb2777f6d0db8177d8128a8acfcf6e6276dc4ac73ea3bf0dc06d6a5e85d8e ch_PP-OCRv5_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_server - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_server/ppocrv5_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_server + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_server/ppocrv5_dict.txt inference.pdiparams: 63853f062a5f4089befc16f565a68277618e0da5cb45468b49d11079de0ada77 inference.json: 8e6e12e5d42531840310977fffb58165bf889fc5061408c5a8afdb6985f47fcb inference.yml: 2c719dba044c4e2228aef8ff92f5f575394d75d24c16de096a33b7cfd902f66d korean_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile/ppocrv5_korean_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/korean_PP-OCRv5_rec_mobile/ppocrv5_korean_dict.txt inference.pdiparams: cac3e5f12cf04aaa77f6a5bc704e4e736ef2908476551891d84b41b4e9090462 inference.json: 562404e3c590c50c93778d5f0a94df21b47b5ab8f3ea6d47c7f8a7930c3bc844 inference.yml: f757fa1c40e99edcf27e9cce879b93eb2a51fa46f5ef39095689b8c37dd75998 latin_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile/ppocrv5_latin_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/latin_PP-OCRv5_rec_mobile/ppocrv5_latin_dict.txt inference.pdiparams: ecebeaac46267ecaa9f21025ac3ba8972a93c4a906c505ceb8a525299e466e0a inference.json: ea8f315e69b96e33a1339dde868651eadb4aaa62ce92e70c546f4b25e43134e7 inference.yml: 13cfe9c251d13aaabc619c135ff1724444d0a9e247bd8e0b2f4a76298c87eba0 eslav_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile/ppocrv5_eslav_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/eslav_PP-OCRv5_rec_mobile/ppocrv5_eslav_dict.txt inference.pdiparams: f11057b05d8517868bca505271278973d706600d9dcc184cbcf5c4512091c32b inference.json: 3fb6e2e658f5139ff16e35260de8f0577f106a9505c902e1dfc1f4f1d03cc9cb inference.yml: 025039bac23eb4a308efcefa4d58eab3af440767815c6ba6938468bf6353ee5a en_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile/ppocrv5_en_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/en_PP-OCRv5_rec_mobile/ppocrv5_en_dict.txt inference.pdiparams: 3ec8a97ed6cefe8568d3e2ee90bb193299b566a7661aa4fd52d224b96b59f66b inference.json: fd1b6ec722ea841a72d3ba43e527df1d1066d5d7808e0503ee3eec7265188753 inference.yml: 27e91d0582f40168aa218303c76e184bc78fa7a5d105aad0cfbad8458b441067 th_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile/ppocrv5_th_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/th_PP-OCRv5_rec_mobile/ppocrv5_th_dict.txt inference.pdiparams: 45ec91f2322b58b8d30ba27d18fcfdbb8bf388b918dd978162d2af91e0c66d4b inference.json: b92a9442af5ac6da3c6ba30ce1672d00a2d7a0fbd8068ed543ac6dcb9d5c7764 inference.yml: f6ba7fefc38ca1ff398ddafa75d67d16e0b3757c4e6c833adffee98a981766c9 el_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile/ppocrv5_el_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/el_PP-OCRv5_rec_mobile/ppocrv5_el_dict.txt inference.pdiparams: 4d69bbb8ed9f84373631d121ab459f8583cd978df813b5fb9b139b7783b05fbd inference.json: 7fb97d32c52562deb0a0654e0839acbb54cacc0441a857cc1d66e12892337e41 inference.yml: 17d85b2fe2d2f24cd4ab07bcbc33e0c126859b956ced36e281dc65e2d0c1f0bf arabic_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile/ppocrv5_arabic_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/arabic_PP-OCRv5_rec_mobile/ppocrv5_arabic_dict.txt inference.json: d43832804d89c0e18d59f8446a3babd0ef60c44bc335efddac3176caf71d50af inference.pdiparams: 4b4271fd1dd89a40b2056e1a42e58de7c0df2fdcf1a97ca9a8916d7ec45f9143 inference.yml: 21368419e6c016c31db55d316d59e11c128e1913e6e6fe10287084710043d3a6 cyrillic_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile/ppocrv5_cyrillic_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/cyrillic_PP-OCRv5_rec_mobile/ppocrv5_cyrillic_dict.txt inference.json: 5d90f1bfca52d80c01de176c5238fae2459995a99ff1dbfe5319ab4ed1735df2 inference.pdiparams: 434dc9fa2a99fa3653e08f8cf793ae56be7dd41c35c4980e6255147cc02bbc80 inference.yml: 5c76cc91fa98410178a09f498db10050d0ec1634a660053d3005ab7be581f501 devanagari_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile/ppocrv5_devanagari_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/devanagari_PP-OCRv5_rec_mobile/ppocrv5_devanagari_dict.txt inference.json: 20d3b121184ec6b7de1705015022f4b22117990f6e5728a5d21c314bac9c1444 inference.pdiparams: 719be7d20bfe9530e2deae324c999e9911087496bce5e70846767c448d023a01 inference.yml: 9bd172dd26440c8ce94d1cde5d5baea6aefdc7cf3c5c8492e0beedef656d4e54 ta_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile/ppocrv5_ta_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/ta_PP-OCRv5_rec_mobile/ppocrv5_ta_dict.txt inference.json: 9f845b15eef3272a47201fa0e411f8e466392b7dcfd705ade2890bf434b70370 inference.pdiparams: 7e7bb6c9cbcc401aeaceb0cdace485dbfcc15a410f299294e7c3123bbcbc68f0 inference.yml: 88a28f5a1bb30cabe38a0985cb5e6619fa4f0c7c78e57a08274674228c5219a6 te_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile/ppocrv5_te_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/te_PP-OCRv5_rec_mobile/ppocrv5_te_dict.txt inference.json: ad866e22872fbc0ee498b2c47d9537bd8f49f125353e43d82a4d173b595e6bfb inference.pdiparams: 45967d00d6b4af590221733bf0d93791babc1feb17b98da401dba53d3cf110c9 inference.yml: acebbe53f1831bf28ddfed75aedf58225d7aa5d09100c1d5a9140a2a53b137ce cls: ch_PP-LCNet_x0_25_textline_ori_cls_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/cls/ch_PP-LCNet_x0_25_textline_ori_cls_mobile + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/cls/ch_PP-LCNet_x0_25_textline_ori_cls_mobile inference.json: 8b3f80ca25f4765594640ddb3cb26f507f00e7e5d11bfef4c2915a6b9dff5d3c inference.pdiparams: 08ee1ce4bcdb30dd4e784862334d1df49d80a600294d75daae4ca4c70bc860e9 inference.yml: d9a0a3fc7c5c0ae416dbb565d63a32cb4692f05aee1bf7b677b9dd571adaa759 ch_PP-LCNet_x1_0_textline_ori_cls_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/cls/ch_PP-LCNet_x1_0_textline_ori_cls_server + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/cls/ch_PP-LCNet_x1_0_textline_ori_cls_server inference.json: b81929eeaff8e52db0fafb49c9fbfc5bc0572f81641fe0179cc52096323fb4d4 inference.pdiparams: 0de2bcf996cf553e2b848dd7b1769dafffc6917b1ccdf55c1d8efe7909fbf743 inference.yml: 8d5120d0e1a30a9df7ed46aa9119da3796ed066777089d1c1d705f132d5e90f9 PP-OCRv6: det: multi_PP-OCRv6_det_tiny: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/master/paddle/PP-OCRv6/det/PP-OCRv6_det_tiny + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/det/PP-OCRv6_det_tiny inference.pdiparams: 853f7ed317d4f2f80de646842e5bbc32f9d39c601562cbe466cda42e4bafb1b1 inference.json: 935c18972799dd8f2a2ff424b9f8b2c6adee4b89f3a76f0746210ec33ba9b3d8 inference.yml: 3ac018be6f97499a08faa3bbdeb33640968d9307f6736d152902747a9f259593 multi_PP-OCRv6_det_small: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/master/paddle/PP-OCRv6/det/PP-OCRv6_det_small + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/det/PP-OCRv6_det_small inference.pdiparams: 5043d4ccc8d63402ccea8feefcee4db57077431a873e78d2191836a178a492da inference.json: 89240f689a4a77aad75ef55a8df0a15c8e1d4980a327d17e58f24bbadde5aeab inference.yml: 193f435274bf9f0b5f71a929bbfbcf148282df7e633b34e7c373e8f44741b516 multi_PP-OCRv6_det_medium: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/master/paddle/PP-OCRv6/det/PP-OCRv6_det_medium - inference.pdiparams: 8dad21324d3fb0ec20ddc2cab2c0b9bd2cec393e78fb5995571edce5d046613b + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/det/PP-OCRv6_det_medium + inference.pdiparams: 85218d2e3d98f5a21c58b4220627be923a97aee5db3cc71f39536ab31ac53960 inference.json: 0f1a7ec35da36173529c7a60238b7f7919e3831929c3f700ad90ad4896adecd5 inference.yml: 7298d5ead546584af2504d03355f881ac7a7bc0eb1e282d3e159277c1d0af871 rec: multi_PP-OCRv6_rec_tiny: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/master/paddle/PP-OCRv6/rec/PP-OCRv6_rec_tiny + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_tiny inference.pdiparams: bb2f8f54d1e25f28c71b6fa4fe23f5940e159cae27fbee96155c99f822156e57 inference.json: b5b14770c7dcf092781e92f4278a2ae5f95048f08b4b8a04140e88cb2745f147 inference.yml: 66170210bad538e83fff3c4a3867e547d6bf20b50d64b20347c4b913f3034ea1 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/master/paddle/PP-OCRv6/rec/PP-OCRv6_rec_tiny/ppocrv6_tiny_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_tiny/ppocrv6_tiny_dict.txt multi_PP-OCRv6_rec_small: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/master/paddle/PP-OCRv6/rec/PP-OCRv6_rec_small + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_small inference.pdiparams: 406e1e689c9a7fbb04178007a3fe10cf852afe7bf8bb3bc6dbb9d532b13bd907 inference.json: f0bf53c853937a917affdd74467472167727f8ab0f0f7bded01c4a16c27e46e6 inference.yml: ab078671bb49f06228eadccd34f1bb501e157f7a047095ffb943ba81512c77d1 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/master/paddle/PP-OCRv6/rec/PP-OCRv6_rec_small/ppocrv6_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_small/ppocrv6_dict.txt multi_PP-OCRv6_rec_medium: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/master/paddle/PP-OCRv6/rec/PP-OCRv6_rec_medium + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_medium inference.pdiparams: 1b01c79a914587933f615569e75de54f2e638ebb5d3f3b3c1b38c24ede8c7319 inference.json: 0b2e25e990bd072f1bf77d59d67d508bce6c4bd44af6624e0fb27d6da2cd00e8 inference.yml: 991b700facf5b50a7de193468207d5f4255b538dde0d312ae3b7c7a9b6873129 - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/master/paddle/PP-OCRv6/rec/PP-OCRv6_rec_medium/ppocrv6_dict.txt + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_medium/ppocrv6_dict.txt torch: PP-OCRv4: det: ch_PP-OCRv4_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/det/ch_PP-OCRv4_det_mobile.pth + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/det/ch_PP-OCRv4_det_mobile.pth SHA256: 89622c3f3e76b3ac7d10d9434c1f117a7471dba44723885cc04b49932a740d5b ch_PP-OCRv4_det_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/det/ch_PP-OCRv4_det_server.pth + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/det/ch_PP-OCRv4_det_server.pth SHA256: 2ccb02359eb1e56c72ba3cc21d166ed32a517863554f19fc6ec1b663fe4a6652 en_PP-OCRv3_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/det/en_PP-OCRv3_det_mobile.pth + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/det/en_PP-OCRv3_det_mobile.pth SHA256: 62aba369c8245f131bb08348a7d9c3135234d5c139ec92b34c8ac7b9ba7c2846 multi_PP-OCRv3_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/det/multi_PP-OCRv3_det_mobile.pth + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/det/multi_PP-OCRv3_det_mobile.pth SHA256: 05eb1c89030b269b830ba7f2d424a4ac80c7593ea1795fef9777fedbc18e383f rec: arabic_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile/arabic_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/arabic_PP-OCRv4_rec_mobile/arabic_dict.txt SHA256: 4dced07241dba41911aca9b5b2c3505e4c041d836d7225700007981375d4f387 ch_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt SHA256: cb4265bb4300a2487e93e82ccfa1924bf9cd1194c1a202ab17a96b4911c27e0b ch_PP-OCRv4_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/ch_PP-OCRv4_rec_server.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/ch_PP-OCRv4_rec_server.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ch_PP-OCRv4_rec_mobile/ppocr_keys_v1.txt SHA256: 2c0c9f5180ae3e4d8ea9d3830116ac49900abbb2af3985db02c2bbf484bb0bf9 chinese_cht_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile/chinese_cht_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/chinese_cht_PP-OCRv3_rec_mobile/chinese_cht_dict.txt SHA256: e1a636246ca348d481161fb4e2d3dc4aea4223e71fc50b0e72984ebaa322cbb4 cyrillic_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile/cyrillic_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/cyrillic_PP-OCRv3_rec_mobile/cyrillic_dict.txt SHA256: 77d16690e6b3f16c2c907a7dcfe1c3722169fd22913fcfe84ee54069b8e5798d devanagari_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile/devanagari_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/devanagari_PP-OCRv4_rec_mobile/devanagari_dict.txt SHA256: 423c6d25e3c0db42192fdb2e87af37fed3e772f2433fefad0e13572b87788ad7 en_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile/en_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/en_PP-OCRv4_rec_mobile/en_dict.txt SHA256: f9723c94847de59df9b059faaed041fbb35f014ea973da40290b1e97004e1d4e japan_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile/japan_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/japan_PP-OCRv4_rec_mobile/japan_dict.txt SHA256: de4549a131821f7456a16175e6aea85c4fda5a6cec10b119c3c2d54c02ceb06f ka_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/ka_PP-OCRv4_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/kannada_PP-OCRv4_rec_mobile/ka_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/ka_PP-OCRv4_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/kannada_PP-OCRv4_rec_mobile/ka_dict.txt SHA256: 4a537f8aa90afb4f3bb63d0950c2d408b18d586509956b4f56652ef0829764f3 korean_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile/korean_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/korean_PP-OCRv4_rec_mobile/korean_dict.txt SHA256: f50614ab06416037454ac2cc6ade9a758f0222f518254fd57dd65f428f763a01 latin_PP-OCRv3_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile/latin_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/latin_PP-OCRv3_rec_mobile/latin_dict.txt SHA256: caf8e0f2572a7dea2d901c7f50bd78fc310a4246a655d062b69f30258c15bf90 ta_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile/ta_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/ta_PP-OCRv4_rec_mobile/ta_dict.txt SHA256: 16f42da51ddbad9acbb2a0372ddc2432c49ba3d1ccabc98acec55a4684b6a644 te_PP-OCRv4_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile/te_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv4/rec/te_PP-OCRv4_rec_mobile/te_dict.txt SHA256: 0597e97b27be9298d703267ed28227abfa6c0a60c07817575b5fa7d2124e7dbc cls: ch_ptocr_mobile_v2.0_cls_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/cls/ch_ptocr_mobile_v2.0_cls_mobile.pth + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/cls/ch_ptocr_mobile_v2.0_cls_mobile.pth SHA256: bfe13860824b3365c0c7f7ccfcddc8ff11645c60051739ff18bc9913f60c98e1 PP-OCRv5: det: ch_PP-OCRv5_det_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv5/det/ch_PP-OCRv5_det_mobile.pth + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv5/det/ch_PP-OCRv5_det_mobile.pth SHA256: df848ed5060bac4d0f6e58572aea97d92e909a8a87cf292849237b0e84f6ffdb ch_PP-OCRv5_det_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv5/det/ch_PP-OCRv5_det_server.pth + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv5/det/ch_PP-OCRv5_det_server.pth SHA256: 607403c8233149f61c39f8e3302270625fab9fa2852c4329fc3c8f49cdb41e70 rec: ch_PP-OCRv5_rec_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile/ppocrv5_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_mobile/ppocrv5_dict.txt SHA256: d20ee8dac2ca63e2d1989b02ecc42595c71d61bf8dd8c8ddc5ad2ee68e7b5be2 ch_PP-OCRv5_rec_server: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv5/rec/ch_PP-OCRv5_rec_server.pth - dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_server/ppocrv5_dict.txt + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv5/rec/ch_PP-OCRv5_rec_server.pth + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv5/rec/ch_PP-OCRv5_rec_server/ppocrv5_dict.txt SHA256: 4767ddc90c1532ec01d881a980dae0a0b92679f4f82f88c4e9f92563de69e740 cls: ch_ptocr_mobile_v2.0_cls_mobile: - model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/torch/PP-OCRv4/cls/ch_ptocr_mobile_v2.0_cls_mobile.pth + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv4/cls/ch_ptocr_mobile_v2.0_cls_mobile.pth SHA256: bfe13860824b3365c0c7f7ccfcddc8ff11645c60051739ff18bc9913f60c98e1 + PP-OCRv6: + det: + multi_PP-OCRv6_det_tiny: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv6/det/PP-OCRv6_det_tiny.pth + SHA256: a50f3f1c8beacd1f3eabb77338635d617788f75daada09fcda22a64b97dcbfc5 + multi_PP-OCRv6_det_small: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv6/det/PP-OCRv6_det_small.pth + SHA256: fbdc74c97ea7b770ab22cbdc1bba01a52bdf1975efcf3442057356d622b05d54 + multi_PP-OCRv6_det_medium: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv6/det/PP-OCRv6_det_medium.pth + SHA256: 40c40ff2d432888f53697d73b37d8b280c65ad66696d6412834a90b40cebc81d + rec: + multi_PP-OCRv6_rec_tiny: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv6/rec/PP-OCRv6_rec_tiny.pth + SHA256: 82a9b90ec19bcdbc6f2cd54f7b08394aeb01d947b9dfc43e483b90fb30238b85 + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_tiny/ppocrv6_tiny_dict.txt + multi_PP-OCRv6_rec_small: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv6/rec/PP-OCRv6_rec_small.pth + SHA256: 0107b2ad694ccc9b1db7cf9ed3ffbc93d1795d9e08d9cf823127243a87bce516 + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_small/ppocrv6_dict.txt + multi_PP-OCRv6_rec_medium: + model_dir: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/torch/PP-OCRv6/rec/PP-OCRv6_rec_medium.pth + SHA256: c2a2a7aa73892e1efc90cccd2aecc7e670ce01610490bbef7626abb3a3df52aa + dict_url: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/paddle/PP-OCRv6/rec/PP-OCRv6_rec_medium/ppocrv6_dict.txt + fonts: ch: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/FZYTK.TTF + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/FZYTK.TTF SHA256: 4065a23df6823c8e2b69a0e76d02f02a6470b8774a5e91086609701ad95cc33f ch_doc: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/FZYTK.TTF + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/FZYTK.TTF SHA256: 4065a23df6823c8e2b69a0e76d02f02a6470b8774a5e91086609701ad95cc33f en: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/FZYTK.TTF + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/FZYTK.TTF SHA256: 4065a23df6823c8e2b69a0e76d02f02a6470b8774a5e91086609701ad95cc33f japan: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/japan.ttc + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/japan.ttc SHA256: 11122490a5e3a862015c8894183750de59abf95c3936d63d5978293d92f23dba arabic: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/arabic.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/arabic.ttf SHA256: e38162048fca91187a7c3d73a4a1109ca0490d6bac8acf3ff32a57f5fff7e5b6 chinese_cht: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/chinese_cht.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/chinese_cht.ttf SHA256: 5ce814960d0cdea1dd647180636babc1cf6a0acf0a9a9019424f4689acedd9ea cyrillic: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/cyrillic.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/cyrillic.ttf SHA256: 084768d29859a62b735387fb5946dfe61fb3d844031c7c51c1668d8afbe3b802 eslav: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/cyrillic.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/cyrillic.ttf SHA256: 084768d29859a62b735387fb5946dfe61fb3d844031c7c51c1668d8afbe3b802 devanagari: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/devanagari_Martel-Regular.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/devanagari_Martel-Regular.ttf SHA256: b37a04d22ee4700f5018d39678ebb2b9fc64c9d06cd9ec6f9f3fb4c27870a63b korean: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/korean.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/korean.ttf SHA256: 0897316bdb2e308cea2841c54940f2ef5707856000aa07910c8bff39a47e40bd ka: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/kannada.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/kannada.ttf SHA256: b337386a8e853ccba53c0c248bd06f025d7667b800ba74c72c66040d67315c6e latin: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/latin.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/latin.ttf SHA256: 1562fe5cbdaacab4a5880d6404ba05245d12f3a4478fe16021e976bc725ce5d5 ta: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/tamil.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/tamil.ttf SHA256: b771ac413157f6b1f1a52fb8ff1b56057f4b492fcce385ddd32ca12eee0c73b0 te: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/telugu.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/telugu.ttf SHA256: 7f82ab141b77d263f9ea9b31b47faf50c11310f42fce6d9dffeaaa334909bbf9 th: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/th.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/th.ttf SHA256: b8150084e25734e6f31696c57ff009f5564efa09d295848b717d9e2328c0311d el: - path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.0/resources/fonts/el.ttf + path: https://www.modelscope.cn/models/RapidAI/RapidOCR/resolve/v3.9.1/resources/fonts/el.ttf SHA256: 892e6c81071fc85923f8d0ff925edab6049dd4495a2fdedffddc04753bf348b3 diff --git a/python/rapidocr/inference_engine/pytorch/networks/arch_config.yaml b/python/rapidocr/inference_engine/pytorch/networks/arch_config.yaml index 8fd49f0..f92ce39 100644 --- a/python/rapidocr/inference_engine/pytorch/networks/arch_config.yaml +++ b/python/rapidocr/inference_engine/pytorch/networks/arch_config.yaml @@ -1,3 +1,133 @@ +PP-OCRv6_rec_tiny: + model_type: rec + algorithm: SVTR_LCNet + Transform: + Backbone: + name: PPLCNetV4 + model_size: tiny + Head: + name: MultiHead + out_channels_list: + CTCLabelDecode: 6906 #'blank' + ...(6904) + ' ' + head_list: + - CTCHead: + Neck: + name: reshape + Head: + mid_channels: 80 + use_guide: true + fc_decay: 0.00001 + - NRTRHead: + nrtr_dim: 384 + max_text_length: 25 + +PP-OCRv6_rec_small: + model_type: rec + algorithm: SVTR_LCNet + Transform: + Backbone: + name: PPLCNetV4 + model_size: small + Head: + name: MultiHead + out_channels_list: + CTCLabelDecode: 18710 #'blank' + ...(18708) + ' ' + head_list: + - CTCHead: + Neck: + name: lightsvtr + dims: 120 + depth: 2 + mlp_ratio: 2.0 + local_kernel: 7 + Head: + fc_decay: 0.00001 + - NRTRHead: + nrtr_dim: 384 + max_text_length: 25 + +PP-OCRv6_rec_medium: + model_type: rec + algorithm: SVTR_LCNet + Transform: + Backbone: + name: PPLCNetV4 + model_size: medium + Head: + name: MultiHead + out_channels_list: + CTCLabelDecode: 18710 #'blank' + ...(18708) + ' ' + head_list: + - CTCHead: + Neck: + name: lightsvtr + dims: 192 + depth: 2 + mlp_ratio: 4.0 + local_kernel: 7 + use_guide: false + Head: + fc_decay: 0.00001 + - NRTRHead: + nrtr_dim: 512 + max_text_length: 25 + +PP-OCRv6_det_tiny: + model_type: det + algorithm: DB + Transform: null + Backbone: + name: PPLCNetV4 + det: true + model_size: tiny + Neck: + name: RepLKFPN + out_channels: 64 + dilated_kernel_size: 5 + shortcut: true + Head: + name: DBHead + k: 50 + fix_nan: true + aux_in_channels: 64 + +PP-OCRv6_det_small: + model_type: det + algorithm: DB + Transform: null + Backbone: + name: PPLCNetV4 + det: true + model_size: small + Neck: + name: RepLKFPN + out_channels: 96 + dilated_kernel_size: 7 + shortcut: true + Head: + name: DBHead + k: 50 + fix_nan: true + aux_in_channels: 96 + +PP-OCRv6_det_medium: + model_type: det + algorithm: DB + Transform: null + Backbone: + name: PPLCNetV4 + det: true + model_size: medium + Neck: + name: RepLKPAN + out_channels: 256 + intracl: true + Head: + name: DBHead + k: 50 + fix_nan: true + aux_in_channels: 256 + ch_PP-OCRv5_rec_mobile: model_type: rec algorithm: SVTR_LCNet diff --git a/python/rapidocr/inference_engine/pytorch/networks/architectures/base_model.py b/python/rapidocr/inference_engine/pytorch/networks/architectures/base_model.py index e7f7ce4..f351b9d 100644 --- a/python/rapidocr/inference_engine/pytorch/networks/architectures/base_model.py +++ b/python/rapidocr/inference_engine/pytorch/networks/architectures/base_model.py @@ -3,6 +3,7 @@ from torch import nn from ..backbones import build_backbone from ..heads import build_head from ..necks import build_neck +from ..transforms import build_transform class BaseModel(nn.Module): @@ -16,6 +17,19 @@ class BaseModel(nn.Module): in_channels = config.get("in_channels", 3) model_type = config["model_type"] + # build transfrom, + # for rec, transfrom can be TPS,None + # for det and cls, transfrom shoule to be None, + # if you make model differently, you can use transfrom in det and cls + if "Transform" not in config or config["Transform"] is None: + self.use_transform = False + else: + self.use_transform = True + config["Transform"]["in_channels"] = in_channels + self.transform = build_transform(config["Transform"]) + in_channels = self.transform.out_channels + # raise NotImplementedError + # build backbone, backbone is need for del, rec and cls if "Backbone" not in config or config["Backbone"] is None: self.use_backbone = False @@ -70,6 +84,8 @@ class BaseModel(nn.Module): def forward(self, x): y = dict() + if self.use_transform: + x = self.transform(x) if self.use_backbone: x = self.backbone(x) if isinstance(x, dict): diff --git a/python/rapidocr/inference_engine/pytorch/networks/backbones/__init__.py b/python/rapidocr/inference_engine/pytorch/networks/backbones/__init__.py index d2cfcd0..ea18e42 100644 --- a/python/rapidocr/inference_engine/pytorch/networks/backbones/__init__.py +++ b/python/rapidocr/inference_engine/pytorch/networks/backbones/__init__.py @@ -20,6 +20,7 @@ def build_backbone(config, model_type): from .det_mobilenet_v3 import MobileNetV3 from .rec_hgnet import PPHGNet_small from .rec_lcnetv3 import PPLCNetV3 + from .rec_lcnetv4 import PPLCNetV4 from .rec_pphgnetv2 import PPHGNetV2_B4 support_dict = [ @@ -30,13 +31,18 @@ def build_backbone(config, model_type): "PPLCNetV3", "PPHGNet_small", "PPHGNetV2_B4", + "PPLCNetV4", ] elif model_type == "rec" or model_type == "cls": from .rec_hgnet import PPHGNet_small from .rec_lcnetv3 import PPLCNetV3 + from .rec_lcnetv4 import PPLCNetV4 from .rec_mobilenet_v3 import MobileNetV3 from .rec_mv1_enhance import MobileNetV1Enhance - from .rec_pphgnetv2 import PPHGNetV2_B4 + from .rec_pphgnetv2 import ( + PPHGNetV2_B4, + ) + from .rec_pplcnet import PPLCNet from .rec_svtrnet import SVTRNet support_dict = [ @@ -52,6 +58,8 @@ def build_backbone(config, model_type): "PPLCNetV3", "PPHGNet_small", "PPHGNetV2_B4", + "PPLCNetV4", + "PPLCNet", ] else: raise NotImplementedError diff --git a/python/rapidocr/inference_engine/pytorch/networks/common.py b/python/rapidocr/inference_engine/pytorch/networks/common.py index ec1b30c..7378093 100644 --- a/python/rapidocr/inference_engine/pytorch/networks/common.py +++ b/python/rapidocr/inference_engine/pytorch/networks/common.py @@ -1,6 +1,6 @@ import torch +import torch.nn as nn import torch.nn.functional as F -from torch import nn class Hswish(nn.Module): diff --git a/python/rapidocr/inference_engine/pytorch/networks/heads/rec_ctc_head.py b/python/rapidocr/inference_engine/pytorch/networks/heads/rec_ctc_head.py index 42e2fab..d11c7eb 100644 --- a/python/rapidocr/inference_engine/pytorch/networks/heads/rec_ctc_head.py +++ b/python/rapidocr/inference_engine/pytorch/networks/heads/rec_ctc_head.py @@ -10,9 +10,28 @@ class CTCHead(nn.Module): fc_decay=0.0004, mid_channels=None, return_feats=False, - **kwargs + use_guide=False, + **kwargs, ): super(CTCHead, self).__init__() + self.use_guide = use_guide + if use_guide: + # Depthwise-separable Conv1d block: + # DW Conv1d(k=5, groups=in_channels) → BN → ReLU → PW Conv1d(k=1) → BN + self.guide_layer = nn.Sequential( + nn.Conv1d( + in_channels, + in_channels, + 5, + padding=2, + groups=in_channels, + bias=True, + ), + nn.BatchNorm1d(in_channels), + nn.ReLU(), + nn.Conv1d(in_channels, in_channels, 1, bias=True), + nn.BatchNorm1d(in_channels), + ) if mid_channels is None: self.fc = nn.Linear( in_channels, @@ -36,6 +55,12 @@ class CTCHead(nn.Module): self.return_feats = return_feats def forward(self, x, labels=None): + if self.use_guide: + # x is [B, W, C], guide_layer is Conv1d on [B, C, W] + x = x.permute(0, 2, 1) # [B, C, W] + x = self.guide_layer(x) + x = x.permute(0, 2, 1) # [B, W, C] + if self.mid_channels is None: predicts = self.fc(x) else: diff --git a/python/rapidocr/inference_engine/pytorch/networks/heads/rec_multi_head.py b/python/rapidocr/inference_engine/pytorch/networks/heads/rec_multi_head.py index a148533..2854a92 100644 --- a/python/rapidocr/inference_engine/pytorch/networks/heads/rec_multi_head.py +++ b/python/rapidocr/inference_engine/pytorch/networks/heads/rec_multi_head.py @@ -1,7 +1,6 @@ from torch import nn from ..necks.rnn import Im2Seq, SequenceEncoder -from .rec_ctc_head import CTCHead class FCTranspose(nn.Module): @@ -42,8 +41,7 @@ class MultiHead(nn.Module): head_args = self.head_list[idx][name].get("Head", {}) if head_args is None: head_args = {} - - self.ctc_head = CTCHead( + self.ctc_head = eval(name)( in_channels=self.ctc_encoder.out_channels, out_channels=out_channels_list["CTCLabelDecode"], **head_args, @@ -54,8 +52,7 @@ class MultiHead(nn.Module): def forward(self, x, data=None): ctc_encoder = self.ctc_encoder(x) ctc_out = self.ctc_head(ctc_encoder) - - head_out = {} + head_out = dict() head_out["ctc"] = ctc_out head_out["res"] = ctc_out head_out["ctc_neck"] = ctc_encoder diff --git a/python/rapidocr/inference_engine/pytorch/networks/necks/__init__.py b/python/rapidocr/inference_engine/pytorch/networks/necks/__init__.py index bbe85bc..bc5c479 100644 --- a/python/rapidocr/inference_engine/pytorch/networks/necks/__init__.py +++ b/python/rapidocr/inference_engine/pytorch/networks/necks/__init__.py @@ -16,10 +16,23 @@ __all__ = ["build_neck"] def build_neck(config): - from .db_fpn import DBFPN, LKPAN, RSEFPN + from .db_fpn import DBFPN, LKPAN, RSEFPN, RepLKFPN, RepLKPAN from .rnn import SequenceEncoder - support_dict = ["DBFPN", "SequenceEncoder", "RSEFPN", "LKPAN"] + support_dict = [ + "FPN", + "DBFPN", + "EASTFPN", + "SASTFPN", + "SequenceEncoder", + "PGFPN", + "TableFPN", + "RSEFPN", + "LKPAN", + "FCEFPN", + "RepLKFPN", + "RepLKPAN", + ] module_name = config.pop("name") assert module_name in support_dict, Exception( diff --git a/python/rapidocr/inference_engine/pytorch/networks/necks/db_fpn.py b/python/rapidocr/inference_engine/pytorch/networks/necks/db_fpn.py index ce15195..9fcf01c 100644 --- a/python/rapidocr/inference_engine/pytorch/networks/necks/db_fpn.py +++ b/python/rapidocr/inference_engine/pytorch/networks/necks/db_fpn.py @@ -454,3 +454,459 @@ class ASFBlock(nn.Module): for i in range(self.out_features_num): out_list.append(attention_scores[:, i : i + 1] * features_list[i]) return torch.cat(out_list, dim=1) + + +# ============================================================================ +# PP-OCRv6 new components: DilatedReparamBlock, RepLKFPN, RepLKPAN +# ============================================================================ + + +class DilatedReparamBlock(nn.Module): + """ + Dilated Reparam Block from UniRepLKNet. + Reference: https://github.com/AILab-CVC/UniRepLKNet + + Training: uses multiple parallel dilated depthwise convolutions + BN + Inference: all branches merge into a single large-kernel depthwise conv + + For kernel_size=7, the branches are: + - origin: 7x7 DW Conv (dil=1) + - branch1: 5x5 DW Conv (dil=1, equiv RF=5) + - branch2: 3x3 DW Conv (dil=2, equiv RF=5) + - branch3: 3x3 DW Conv (dil=3, equiv RF=7) + """ + + def __init__(self, channels, kernel_size=7, deploy=False): + super(DilatedReparamBlock, self).__init__() + self.channels = channels + self.kernel_size = kernel_size + self.is_repped = deploy + + if kernel_size == 9: + self.kernel_sizes = [5, 5, 3, 3] + self.dilates = [1, 2, 3, 4] + elif kernel_size == 7: + self.kernel_sizes = [5, 3, 3] + self.dilates = [1, 2, 3] + elif kernel_size == 5: + self.kernel_sizes = [3, 3] + self.dilates = [1, 2] + elif kernel_size == 11: + self.kernel_sizes = [5, 5, 3, 3, 3] + self.dilates = [1, 2, 3, 4, 5] + elif kernel_size == 13: + self.kernel_sizes = [5, 7, 3, 3, 3] + self.dilates = [1, 2, 3, 4, 5] + else: + raise ValueError( + "DilatedReparamBlock requires kernel_size in [5,7,9,11,13], " + "but got {}".format(kernel_size) + ) + + if not self.is_repped: + self.lk_origin = nn.Conv2d( + in_channels=channels, + out_channels=channels, + kernel_size=kernel_size, + stride=1, + padding=kernel_size // 2, + groups=channels, + bias=False, + ) + self.origin_bn = nn.BatchNorm2d(channels) + + for k, r in zip(self.kernel_sizes, self.dilates): + equiv_ks = r * (k - 1) + 1 + p = equiv_ks // 2 + conv = nn.Conv2d( + in_channels=channels, + out_channels=channels, + kernel_size=k, + stride=1, + padding=p, + dilation=r, + groups=channels, + bias=False, + ) + bn = nn.BatchNorm2d(channels) + setattr(self, "dil_conv_k{}_{}".format(k, r), conv) + setattr(self, "dil_bn_k{}_{}".format(k, r), bn) + else: + self.lk_origin = nn.Conv2d( + in_channels=channels, + out_channels=channels, + kernel_size=kernel_size, + stride=1, + padding=kernel_size // 2, + groups=channels, + bias=True, + ) + + def forward(self, x): + if self.is_repped: + return self.lk_origin(x) + out = self.origin_bn(self.lk_origin(x)) + for k, r in zip(self.kernel_sizes, self.dilates): + conv = getattr(self, "dil_conv_k{}_{}".format(k, r)) + bn = getattr(self, "dil_bn_k{}_{}".format(k, r)) + out = out + bn(conv(x)) + return out + + @staticmethod + def _fuse_bn(conv, bn): + """Fuse Conv2d + BatchNorm2d into (weight, bias).""" + kernel = conv.weight + gamma = bn.weight + beta = bn.bias + running_mean = bn.running_mean + running_var = bn.running_var + eps = bn.eps + std = torch.sqrt(running_var + eps) + fused_weight = kernel * (gamma / std).reshape([-1, 1, 1, 1]) + fused_bias = beta - running_mean * gamma / std + return fused_weight, fused_bias + + @staticmethod + def _convert_dilated_to_nondilated(kernel, dilate_rate): + """Convert dilated conv kernel to equivalent non-dilated (sparse) kernel + by inserting zeros using transposed convolution.""" + if dilate_rate == 1: + return kernel + identity = torch.ones([1, 1, 1, 1], dtype=kernel.dtype, device=kernel.device) + # F.conv_transpose2d with stride=dilate_rate inserts zeros + C = kernel.shape[0] + result_list = [] + for i in range(C): + k_i = kernel[i : i + 1] # (1, 1, kH, kW) + dilated = F.conv_transpose2d(k_i, identity, stride=dilate_rate) + result_list.append(dilated) + return torch.cat(result_list, dim=0) + + @staticmethod + def _merge_dilated_into_large_kernel(large_kernel, dilated_kernel, dilated_r): + """Pad dilated equivalent kernel to large kernel size and add.""" + large_k = large_kernel.shape[2] + dilated_k = dilated_kernel.shape[2] + equiv_ks = dilated_r * (dilated_k - 1) + 1 + equiv_kernel = DilatedReparamBlock._convert_dilated_to_nondilated( + dilated_kernel, dilated_r + ) + rows_to_pad = large_k // 2 - equiv_ks // 2 + if rows_to_pad > 0: + merged = large_kernel + F.pad( + equiv_kernel, [rows_to_pad, rows_to_pad, rows_to_pad, rows_to_pad] + ) + else: + merged = large_kernel + equiv_kernel + return merged + + @torch.no_grad() + def rep(self): + """Merge all parallel branches into a single large-kernel DW conv.""" + if self.is_repped: + return + origin_k, origin_b = self._fuse_bn(self.lk_origin, self.origin_bn) + for k, r in zip(self.kernel_sizes, self.dilates): + conv = getattr(self, "dil_conv_k{}_{}".format(k, r)) + bn = getattr(self, "dil_bn_k{}_{}".format(k, r)) + branch_k, branch_b = self._fuse_bn(conv, bn) + origin_k = self._merge_dilated_into_large_kernel(origin_k, branch_k, r) + origin_b = origin_b + branch_b + + merged_conv = nn.Conv2d( + in_channels=self.channels, + out_channels=self.channels, + kernel_size=self.kernel_size, + stride=1, + padding=self.kernel_size // 2, + groups=self.channels, + bias=True, + ) + merged_conv.weight.data.copy_(origin_k) + merged_conv.bias.data.copy_(origin_b) + self.lk_origin = merged_conv + self.is_repped = True + + delattr(self, "origin_bn") + for k, r in zip(self.kernel_sizes, self.dilates): + delattr(self, "dil_conv_k{}_{}".format(k, r)) + delattr(self, "dil_bn_k{}_{}".format(k, r)) + + +class DilatedReparamConv(nn.Module): + """ + A drop-in replacement for standard Conv2d (in_ch -> out_ch, large kernel) + using DilatedReparamBlock (depthwise) + 1x1 pointwise convolution. + + Architecture: + input(in_ch) -> DilatedReparamBlock(in_ch, DW, kernel_size) -> 1x1 Conv(in_ch->out_ch) -> BN + """ + + def __init__( + self, in_channels, out_channels, kernel_size=9, deploy=False, **kwargs + ): + super(DilatedReparamConv, self).__init__() + self.is_repped = False + self.dw = DilatedReparamBlock( + channels=in_channels, kernel_size=kernel_size, deploy=deploy + ) + self.pw = nn.Conv2d( + in_channels=in_channels, + out_channels=out_channels, + kernel_size=1, + bias=False, + ) + self.bn = nn.BatchNorm2d(out_channels) + + def forward(self, x): + x = self.dw(x) + x = self.pw(x) + if not self.is_repped: + x = self.bn(x) + return x + + @torch.no_grad() + def rep(self): + """Fuse DW branches + PW Conv + BN for deployment.""" + if self.is_repped: + return + self.dw.rep() + # Fuse pw(Conv2d, no bias) + bn(BatchNorm2d) into single Conv2d with bias + conv, bn = self.pw, self.bn + gamma = bn.weight + std = torch.sqrt(bn.running_var + bn.eps) + scale = gamma / std + w = conv.weight * scale[:, None, None, None] + b = bn.bias - bn.running_mean * scale + fused = nn.Conv2d( + conv.in_channels, + conv.out_channels, + conv.kernel_size, + stride=conv.stride, + padding=conv.padding, + dilation=conv.dilation, + groups=conv.groups, + ) + fused.weight.data.copy_(w) + fused.bias.data.copy_(b) + self.pw = fused + del self.bn + self.is_repped = True + + +class RepLKFPN(nn.Module): + """Optimized RSEFPN: replaces 3x3 standard Conv in inp_conv with + DilatedReparamBlock (DW, kernel_size) + PWConv 1x1 + SE. + + Changes vs RSEFPN: + - inp_conv: RSELayer(3x3 std Conv + SE) + -> DilatedReparamBlock(DW kernel_size) + PWConv(1x1) + SE + - ins_conv: unchanged (1x1 Conv, no benefit from DW decomposition) + """ + + def __init__( + self, in_channels, out_channels, shortcut=True, dilated_kernel_size=7, **kwargs + ): + super(RepLKFPN, self).__init__() + self.out_channels = out_channels + self.is_repped = False + self.ins_conv = nn.ModuleList() + self.inp_conv_dw = nn.ModuleList() + self.inp_conv_pw = nn.ModuleList() + self.inp_conv_se = nn.ModuleList() + self.shortcut = shortcut + + self.intracl = False + if "intracl" in kwargs and kwargs["intracl"] is True: + self.intracl = kwargs["intracl"] + self.incl1 = IntraCLBlock(self.out_channels // 4, reduce_factor=2) + self.incl2 = IntraCLBlock(self.out_channels // 4, reduce_factor=2) + self.incl3 = IntraCLBlock(self.out_channels // 4, reduce_factor=2) + self.incl4 = IntraCLBlock(self.out_channels // 4, reduce_factor=2) + + for i in range(len(in_channels)): + self.ins_conv.append( + RSELayer(in_channels[i], out_channels, kernel_size=1, shortcut=shortcut) + ) + + self.inp_conv_dw.append( + DilatedReparamBlock( + channels=out_channels, kernel_size=dilated_kernel_size + ) + ) + + self.inp_conv_pw.append( + nn.Conv2d( + in_channels=out_channels, + out_channels=out_channels // 4, + kernel_size=1, + bias=False, + ) + ) + + self.inp_conv_se.append(SEModule(out_channels // 4)) + + def _inp_forward(self, x, idx): + x = self.inp_conv_dw[idx](x) + x = self.inp_conv_pw[idx](x) + if self.shortcut: + x = x + self.inp_conv_se[idx](x) + else: + x = self.inp_conv_se[idx](x) + return x + + def forward(self, x): + c2, c3, c4, c5 = x + + in5 = self.ins_conv[3](c5) + in4 = self.ins_conv[2](c4) + in3 = self.ins_conv[1](c3) + in2 = self.ins_conv[0](c2) + + out4 = in4 + F.interpolate(in5, scale_factor=2, mode="nearest") # 1/16 + out3 = in3 + F.interpolate(out4, scale_factor=2, mode="nearest") # 1/8 + out2 = in2 + F.interpolate(out3, scale_factor=2, mode="nearest") # 1/4 + + p5 = self._inp_forward(in5, 3) + p4 = self._inp_forward(out4, 2) + p3 = self._inp_forward(out3, 1) + p2 = self._inp_forward(out2, 0) + + if self.intracl is True: + p5 = self.incl4(p5) + p4 = self.incl3(p4) + p3 = self.incl2(p3) + p2 = self.incl1(p2) + + p5 = F.interpolate(p5, scale_factor=8, mode="nearest") + p4 = F.interpolate(p4, scale_factor=4, mode="nearest") + p3 = F.interpolate(p3, scale_factor=2, mode="nearest") + + fuse = torch.cat([p5, p4, p3, p2], dim=1) + if self.training: + return {"fuse": fuse, "aux_p4": out4, "aux_p3": out3, "aux_p2": out2} + return fuse + + def rep(self): + """Merge DilatedReparamBlock branches for inference deployment.""" + if self.is_repped: + return + for i in range(len(self.inp_conv_dw)): + self.inp_conv_dw[i].rep() + self.is_repped = True + + +class RepLKPAN(nn.Module): + """ + Optimized LKPAN using UniRepLKNet's DilatedReparamBlock. + + Replaces the 8 standard 9x9 Conv2d in LKPAN (4 inp_conv + 4 pan_lat_conv) + with DilatedReparamConv (DW large-kernel reparam + 1x1 pointwise). + """ + + def __init__(self, in_channels, out_channels, mode="large", **kwargs): + super(RepLKPAN, self).__init__() + self.out_channels = out_channels + self.is_repped = False + + self.ins_conv = nn.ModuleList() + self.inp_conv = nn.ModuleList() + # pan head + self.pan_head_conv = nn.ModuleList() + self.pan_lat_conv = nn.ModuleList() + + for i in range(len(in_channels)): + self.ins_conv.append( + nn.Conv2d( + in_channels=in_channels[i], + out_channels=self.out_channels, + kernel_size=1, + bias=False, + ) + ) + + self.inp_conv.append( + DilatedReparamConv( + in_channels=self.out_channels, + out_channels=self.out_channels // 4, + kernel_size=9, + ) + ) + + if i > 0: + self.pan_head_conv.append( + nn.Conv2d( + in_channels=self.out_channels // 4, + out_channels=self.out_channels // 4, + kernel_size=3, + padding=1, + stride=2, + bias=False, + ) + ) + self.pan_lat_conv.append( + DilatedReparamConv( + in_channels=self.out_channels // 4, + out_channels=self.out_channels // 4, + kernel_size=9, + ) + ) + + self.intracl = False + if "intracl" in kwargs and kwargs["intracl"] is True: + self.intracl = kwargs["intracl"] + self.incl1 = IntraCLBlock(self.out_channels // 4, reduce_factor=2) + self.incl2 = IntraCLBlock(self.out_channels // 4, reduce_factor=2) + self.incl3 = IntraCLBlock(self.out_channels // 4, reduce_factor=2) + self.incl4 = IntraCLBlock(self.out_channels // 4, reduce_factor=2) + + def forward(self, x): + c2, c3, c4, c5 = x + + in5 = self.ins_conv[3](c5) + in4 = self.ins_conv[2](c4) + in3 = self.ins_conv[1](c3) + in2 = self.ins_conv[0](c2) + + out4 = in4 + F.interpolate(in5, scale_factor=2, mode="nearest") # 1/16 + out3 = in3 + F.interpolate(out4, scale_factor=2, mode="nearest") # 1/8 + out2 = in2 + F.interpolate(out3, scale_factor=2, mode="nearest") # 1/4 + + f5 = self.inp_conv[3](in5) + f4 = self.inp_conv[2](out4) + f3 = self.inp_conv[1](out3) + f2 = self.inp_conv[0](out2) + + pan3 = f3 + self.pan_head_conv[0](f2) + pan4 = f4 + self.pan_head_conv[1](pan3) + pan5 = f5 + self.pan_head_conv[2](pan4) + + p2 = self.pan_lat_conv[0](f2) + p3 = self.pan_lat_conv[1](pan3) + p4 = self.pan_lat_conv[2](pan4) + p5 = self.pan_lat_conv[3](pan5) + + if self.intracl is True: + p5 = self.incl4(p5) + p4 = self.incl3(p4) + p3 = self.incl2(p3) + p2 = self.incl1(p2) + + p5 = F.interpolate(p5, scale_factor=8, mode="nearest") + p4 = F.interpolate(p4, scale_factor=4, mode="nearest") + p3 = F.interpolate(p3, scale_factor=2, mode="nearest") + + fuse = torch.cat([p5, p4, p3, p2], dim=1) + if self.training: + return {"fuse": fuse, "aux_p4": out4, "aux_p3": out3, "aux_p2": out2} + return fuse + + def rep(self): + """Merge all DilatedReparamBlock branches and fuse PW+BN for deployment.""" + if self.is_repped: + return + for i in range(len(self.inp_conv)): + self.inp_conv[i].rep() + for i in range(len(self.pan_lat_conv)): + self.pan_lat_conv[i].rep() + self.is_repped = True diff --git a/python/rapidocr/inference_engine/pytorch/networks/necks/rnn.py b/python/rapidocr/inference_engine/pytorch/networks/necks/rnn.py index 244ea44..0c1ce0f 100644 --- a/python/rapidocr/inference_engine/pytorch/networks/necks/rnn.py +++ b/python/rapidocr/inference_engine/pytorch/networks/necks/rnn.py @@ -186,6 +186,110 @@ class EncoderWithSVTR(nn.Module): return z +class EncoderWithLightSVTR(nn.Module): + """Light SVTR neck: attention with lightweight skip connection. + + Replaces heavy guide fusion with a lightweight 1x1 skip conv + add. + Adds a DWConv before attention for local context priming. + + When use_guide=True, applies detach to input so that neck + gradients do not propagate back to the backbone (implicit regularization). + """ + + def __init__( + self, + in_channels, + dims=64, + depth=1, + num_heads=8, + qkv_bias=True, + mlp_ratio=4.0, + drop_rate=0.1, + attn_drop_rate=0.1, + drop_path=0.0, + qk_scale=None, + local_kernel=7, + use_guide=False, + ): + super().__init__() + self.use_guide = use_guide + self.conv_reduce = ConvBNLayer( + in_channels, + dims, + kernel_size=1, + act="swish", + ) + self.local_conv = nn.Sequential( + nn.Conv2d( + dims, + dims, + [1, local_kernel], + padding=[0, local_kernel // 2], + groups=dims, + bias=False, + ), + nn.BatchNorm2d(dims), + nn.SiLU(), + ) + + self.svtr_block = nn.ModuleList( + [ + Block( + dim=dims, + num_heads=num_heads, + mixer="Global", + HW=None, + mlp_ratio=mlp_ratio, + qkv_bias=qkv_bias, + qk_scale=qk_scale, + drop=drop_rate, + act_layer="swish", + attn_drop=attn_drop_rate, + drop_path=drop_path, + norm_layer="nn.LayerNorm", + epsilon=1e-05, + prenorm=False, + ) + for _ in range(depth) + ] + ) + self.norm = nn.LayerNorm(dims, eps=1e-6) + + self.skip_conv = ConvBNLayer( + in_channels, + dims, + kernel_size=1, + act="swish", + ) + + self.out_channels = dims + self.apply(self._init_weights) + + def _init_weights(self, m): + if isinstance(m, nn.Linear): + nn.init.trunc_normal_(m.weight, std=0.02) + if m.bias is not None: + nn.init.zeros_(m.bias) + elif isinstance(m, nn.LayerNorm): + nn.init.zeros_(m.bias) + nn.init.ones_(m.weight) + + def forward(self, x): + if self.use_guide: + x = x.clone().detach() + skip = self.skip_conv(x) + z = self.conv_reduce(x) + z = z + self.local_conv(z) + B, C, H, W = z.shape + z = z.flatten(2).permute(0, 2, 1) + for blk in self.svtr_block: + z = blk(z) + z = self.norm(z) + z = z.reshape(-1, H, W, C).permute(0, 3, 1, 2) + z = z + skip + return z + + class SequenceEncoder(nn.Module): def __init__(self, in_channels, encoder_type, hidden_size=48, **kwargs): super(SequenceEncoder, self).__init__() @@ -200,12 +304,13 @@ class SequenceEncoder(nn.Module): "fc": EncoderWithFC, "rnn": EncoderWithRNN, "svtr": EncoderWithSVTR, + "lightsvtr": EncoderWithLightSVTR, } assert encoder_type in support_encoder_dict, "{} must in {}".format( encoder_type, support_encoder_dict.keys() ) - if encoder_type == "svtr": + if encoder_type in ("svtr", "lightsvtr"): self.encoder = support_encoder_dict[encoder_type]( self.encoder_reshape.out_channels, **kwargs ) @@ -217,7 +322,7 @@ class SequenceEncoder(nn.Module): self.only_reshape = False def forward(self, x): - if self.encoder_type != "svtr": + if self.encoder_type not in ("svtr", "lightsvtr"): x = self.encoder_reshape(x) if not self.only_reshape: x = self.encoder(x) diff --git a/python/tests/test_engine.py b/python/tests/test_engine.py index 455dd0e..3713d74 100644 --- a/python/tests/test_engine.py +++ b/python/tests/test_engine.py @@ -143,7 +143,13 @@ def test_engine_tensorrt(): @mark.parametrize( "engine_type", - [EngineType.ONNXRUNTIME, EngineType.OPENVINO, EngineType.PADDLE], + [ + EngineType.ONNXRUNTIME, + EngineType.OPENVINO, + EngineType.PADDLE, + EngineType.TORCH, + EngineType.MNN, + ], ) def test_ppocrv6_det_small(engine_type): engine = RapidOCR( @@ -161,7 +167,13 @@ def test_ppocrv6_det_small(engine_type): @mark.parametrize( "engine_type", - [EngineType.ONNXRUNTIME, EngineType.OPENVINO, EngineType.PADDLE], + [ + EngineType.ONNXRUNTIME, + EngineType.OPENVINO, + EngineType.PADDLE, + EngineType.TORCH, + EngineType.MNN, + ], ) def test_ppocrv6_rec_small(engine_type): engine = RapidOCR(