--- license: apache-2.0 tags: - ocr - ncnn - pp-ocrv5 - pp-ocrv6 - text-recognition library_name: ncnn --- # PP-OCR NCNN models NCNN-converted PP-OCRv5 mobile multilingual recognition models, plus bundled PP-OCRv6 tiny/small/medium models from the PaddleOCR-ncnn-CPP archive. ## Included ### PP-OCRv5 multilingual rec models Language-specific recognition models: `arabic`, `cyrillic`, `devanagari`, `el`, `en`, `eslav`, `korean`, `latin`, `ta`, `te`, `th` Files: - `{lang}_PP-OCRv5_mobile_rec.param` - `{lang}_PP-OCRv5_mobile_rec.bin` - `ppocr_keys_{lang}.txt` - `configs/config_ppocrv5_{lang}.json` ### PP-OCRv6 bundled models Bundled from the `PaddleOCR-ncnn-CPP` release archive: - `PP_OCRv6_tiny_det/rec` - `PP_OCRv6_small_det/rec` - `PP_OCRv6_medium_det/rec` - `ppocr_keys_v6.txt` - `ppocr_keys_v6_tiny.txt` - sample configs under `configs/` Notes: - `PP-OCRv6_tiny` does not support Japanese. - For Japanese, use `PP_OCRv6_small` or `PP_OCRv6_medium`. - For Tamil / Telugu / Arabic / Devanagari / Thai / Greek / Korean multilingual work, prefer the dedicated PP-OCRv5 language-specific rec models included here. ## Source - PP-OCRv5 language-specific ONNX models: `PaddlePaddle/{lang}_PP-OCRv5_mobile_rec_onnx` - PP-OCRv6 bundled assets: `Avafly/PaddleOCR-ncnn-CPP` release archive ## Conversion details PP-OCRv5 ONNX models were converted via `pnnx` with: - `inputshape=[1,3,48,320]` - `inputshape2=[1,3,48,640]` - `fp16=0` Blob names were patched for PaddleOCR-ncnn-CPP compatibility: `in0`/`out0` -> `input`/`output`.