Views
No views yet
| File | Description | Size | NPU latency (S25 Ultra) |
|---|---|---|---|
pp_ocrv5_det_mobile.tflite | Text detection (PP-HGNetV2 + DB++) | 807 KB | 1.23 ms |
pp_ocrv5_zh_rec.tflite | Chinese text recognition (SVTR/CTC) | 22 MB | 0.99 ms |
pp_ocrv5_ko_rec.tflite | Korean text recognition (SVTR/CTC) | 3.9 MB | 0.49 ms |
pp_ocrv5_lat_rec.tflite | Latin text recognition (SVTR/CTC) | 2.2 MB | 0.31 ms |
zh_dict.txt | 18,383-char ZH dictionary (PaddleOCR ppocrv5_dict.txt) | — | — |
ko_dict.txt | 11,945-char KO dictionary (PaddleOCR ppocrv5_korean_dict.txt) | — | — |
lat_dict.txt | 836-char Latin dictionary (PaddleOCR ppocrv5_latin_dict.txt) | — | — |
| model | NPU ms | NPU ops | vs ORT CPU |
|---|---|---|---|
| det | 1.23 | 156/156 (100%) | 105× faster |
| zh rec | 0.99 | 219/219 (100%) | 180× faster |
| ko rec | 0.49 | 223/223 (100%) | 86× faster |
| lat rec | 0.31 | 223/223 (100%) | 148× faster |
jgkd9yowp, zh=j56vd1r6p, ko=jpv49w9kp, lat=jgj1wlwvg
(viewable with a Qualcomm AI Hub account at workbench.aihub.qualcomm.com/jobs/<id> — the
job pages require sign-in, they are not publicly browsable without one).| metric | value |
|---|---|
| recall@full (answer fully recognized) | 48.5% |
| mean char-recall | 66.0% |
Note on this accuracy number: measured on the float32 ONNX reference implementation (det + zh rec viarapidocr-onnxruntime), not independently re-measured on the int8 TFLite artifacts shipped in this repo. Int8 post-training quantization can shift accuracy from the float baseline — treat this as directional for the shipped models, not an exact figure for them.
Vietnamese: PP-OCRv5's Latin dictionary has no precomposed Vietnamese tone-mark vowels (verified by byte-level grep). Do not use this for Vietnamese — use a Vietnamese-specialized recognizer (e.g. VietOCR) instead.
1from huggingface_hub import hf_hub_download
2det = hf_hub_download("<REPO_ID>", "pp_ocrv5_det_mobile.tflite")
3rec = hf_hub_download("<REPO_ID>", "pp_ocrv5_zh_rec.tflite")monkt/paddleocr-onnx (Apache-2.0, no pickle)qai-hub submit_compile_job(..., options="--target_runtime tflite --quantize_full_type int8")
with random PTQ calibration data (100 samples per model)1@software{ppocrv5_snapdragon2026,
2 author = {{PaddlePaddle / PaddleOCR team}},
3 title = {{PP-OCRv5}: Multilingual Text Detection and Recognition},
4 year = {2025},
5 url = {https://github.com/PaddlePaddle/PaddleOCR}
6}