EasyOCR: Optimized for Qualcomm Devices
EasyOCR is a machine learning model that can recognize text in images. It supports 80+ supported languages and all popular writing scripts.
This is based on the implementation of EasyOCR found here. This repository contains pre-exported model files optimized for Qualcomm® devices. You can use the Qualcomm® AI Hub Models library to export with custom configurations. More details on model performance across various devices, can be found here.
Qualcomm AI Hub Models uses Qualcomm AI Hub Workbench to compile, profile, and evaluate this model. Sign up to run these models on a hosted Qualcomm® device.
Getting Started
There are two ways to deploy this model on your device:
Option 1: Download Pre-Exported Models
Below are pre-exported model assets ready for deployment.
| Runtime | Precision | Chipset | SDK Versions | Download |
|---|---|---|---|---|
| ONNX | float | Universal | QAIRT 2.50, ONNX Runtime 1.30.0 | Download |
| ONNX | w8a8 | Universal | QAIRT 2.50, ONNX Runtime 1.30.0 | Download |
| QNN_DLC | float | Universal | QAIRT 2.50 | Download |
| TFLITE | float | Universal | QAIRT 2.50 | Download |
| TFLITE | w8a8 | Universal | QAIRT 2.50 | Download |
For more device-specific assets and performance metrics, visit EasyOCR on Qualcomm® AI Hub.
Option 2: Export with Custom Configurations
Use the Qualcomm® AI Hub Models Python library to compile and export the model with your own:
- Custom weights (e.g., fine-tuned checkpoints)
- Custom input shapes
- Target device and runtime configurations
This option is ideal if you need to customize the model beyond the default configuration provided here.
See our repository for EasyOCR on GitHub for usage instructions.
Model Details
Model Type: Model_use_case.image_to_text
Model Stats:
- Input resolution: 608x800
- Model checkpoint: easyocr-small-stage1
- Model size (detector) (float): 79.2 MB
- Model size (recognizer) (float): 14.7 MB
- Number of parameters (detector): 20.8M
- Number of parameters (recognizer): 3.84M
Performance Summary
| Model | Runtime | Precision | Chipset | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit |
|---|---|---|---|---|---|---|
| detector | ONNX | float | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 15.775 ms | 3 - 163 MB | NPU |
| detector | ONNX | float | Snapdragon® 8 Elite For Galaxy Mobile | 21.073 ms | 3 - 160 MB | NPU |
| detector | ONNX | float | Snapdragon® X2 Elite | 19.488 ms | 9 - 9 MB | NPU |
| detector | ONNX | float | Snapdragon® X Elite | 35.688 ms | 36 - 36 MB | NPU |
| detector | ONNX | float | Snapdragon® 8 Gen 3 Mobile | 26.464 ms | 8 - 232 MB | NPU |
| detector | ONNX | float | Snapdragon® 8 Gen 1 Mobile | 64.862 ms | 8 - 238 MB | NPU |
| detector | ONNX | float | Qualcomm® Dragonwing™ IQ-8275 | 76.701 ms | 6 - 15 MB | NPU |
| detector | ONNX | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 34.596 ms | 0 - 44 MB | NPU |
| detector | ONNX | float | Qualcomm® QCS8450 | 64.862 ms | 8 - 238 MB | NPU |
| detector | ONNX | float | Qualcomm® Dragonwing™ IQ-9075 | 66.913 ms | 6 - 14 MB | NPU |
| detector | ONNX | float | Qualcomm® Dragonwing™ IQ-X7181 | 35.688 ms | 36 - 36 MB | NPU |
| detector | ONNX | float | Qualcomm® Dragonwing™ Q-8750 | 21.073 ms | 3 - 160 MB | NPU |
| detector | ONNX | w8a8 | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 5.444 ms | 0 - 161 MB | NPU |
| detector | ONNX | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 7.346 ms | 1 - 157 MB | NPU |
| detector | ONNX | w8a8 | Snapdragon® X2 Elite | 6.723 ms | 1 - 1 MB | NPU |
| detector | ONNX | w8a8 | Snapdragon® X Elite | 12.607 ms | 19 - 19 MB | NPU |
| detector | ONNX | w8a8 | Snapdragon® 8 Gen 3 Mobile | 9.627 ms | 2 - 212 MB | NPU |
| detector | ONNX | w8a8 | Snapdragon® 8 Gen 1 Mobile | 16.432 ms | 2 - 211 MB | NPU |
| detector | ONNX | w8a8 | Qualcomm® Dragonwing™ IQ-8275 | 14.277 ms | 1 - 5 MB | NPU |
| detector | ONNX | w8a8 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 12.15 ms | 0 - 197 MB | NPU |
| detector | ONNX | w8a8 | Qualcomm® QCS8450 | 16.432 ms | 2 - 211 MB | NPU |
| detector | ONNX | w8a8 | Qualcomm® Dragonwing™ IQ-9075 | 12.638 ms | 1 - 5 MB | NPU |
| detector | ONNX | w8a8 | Qualcomm® Dragonwing™ IQ-X7181 | 12.607 ms | 19 - 19 MB | NPU |
| detector | ONNX | w8a8 | Qualcomm® Dragonwing™ Q-8750 | 7.346 ms | 1 - 157 MB | NPU |
| detector | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 16.82 ms | 6 - 172 MB | NPU |
| detector | QNN_DLC | float | Snapdragon® 8 Elite For Galaxy Mobile | 22.247 ms | 6 - 164 MB | NPU |
| detector | QNN_DLC | float | Snapdragon® X2 Elite | 20.661 ms | 6 - 6 MB | NPU |
| detector | QNN_DLC | float | Snapdragon® X Elite | 39.484 ms | 6 - 6 MB | NPU |
| detector | QNN_DLC | float | Snapdragon® 8 Gen 3 Mobile | 28.221 ms | 6 - 230 MB | NPU |
| detector | QNN_DLC | float | Snapdragon® 8 Gen 1 Mobile | 66.761 ms | 6 - 251 MB | NPU |
| detector | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-8275 | 79.239 ms | 6 - 15 MB | NPU |
| detector | QNN_DLC | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 38.085 ms | 6 - 7 MB | NPU |
| detector | QNN_DLC | float | Qualcomm® QCS8450 | 66.761 ms | 6 - 251 MB | NPU |
| detector | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-9075 | 69.605 ms | 6 - 14 MB | NPU |
| detector | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-X7181 | 39.484 ms | 6 - 6 MB | NPU |
| detector | QNN_DLC | float | Qualcomm® Dragonwing™ Q-8750 | 22.247 ms | 6 - 164 MB | NPU |
| detector | QNN_DLC | float | Qualcomm® SA8295P | 76.092 ms | 0 - 176 MB | NPU |
| detector | TFLITE | float | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 16.523 ms | 1 - 168 MB | NPU |
| detector | TFLITE | float | Snapdragon® 8 Elite For Galaxy Mobile | 22.27 ms | 0 - 166 MB | NPU |
| detector | TFLITE | float | Snapdragon® 8 Gen 3 Mobile | 28.193 ms | 1 - 250 MB | NPU |
| detector | TFLITE | float | Snapdragon® 8 Gen 1 Mobile | 66.725 ms | 1 - 276 MB | NPU |
| detector | TFLITE | float | Qualcomm® Dragonwing™ IQ-8275 | 79.437 ms | 0 - 50 MB | NPU |
| detector | TFLITE | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 37.872 ms | 1 - 3 MB | NPU |
| detector | TFLITE | float | Qualcomm® SA8650P | 69.706 ms | 1 - 164 MB | NPU |
| detector | TFLITE | float | Qualcomm® SA8255P | 69.706 ms | 1 - 164 MB | NPU |
| detector | TFLITE | float | Qualcomm® QCS8450 | 66.725 ms | 1 - 276 MB | NPU |
| detector | TFLITE | float | Qualcomm® Dragonwing™ IQ-9075 | 69.498 ms | 0 - 49 MB | NPU |
| detector | TFLITE | float | Qualcomm® Dragonwing™ Q-8750 | 22.27 ms | 0 - 166 MB | NPU |
| detector | TFLITE | float | Qualcomm® SA7255P | 1005.115 ms | 0 - 18 MB | GPU |
| detector | TFLITE | float | Qualcomm® SA8295P | 76.117 ms | 1 - 181 MB | NPU |
| detector | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 4.509 ms | 0 - 157 MB | NPU |
| detector | TFLITE | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 5.737 ms | 0 - 151 MB | NPU |
| detector | TFLITE | w8a8 | Snapdragon® 8 Gen 3 Mobile | 7.131 ms | 13 - 221 MB | NPU |
| detector | TFLITE | w8a8 | Snapdragon® 8 Gen 1 Mobile | 12.785 ms | 0 - 207 MB | NPU |
| detector | TFLITE | w8a8 | Qualcomm® Dragonwing™ QCS6490 | 52.869 ms | 0 - 25 MB | NPU |
| detector | TFLITE | w8a8 | Qualcomm® Dragonwing™ IQ-8275 | 11.08 ms | 0 - 25 MB | NPU |
| detector | TFLITE | w8a8 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 9.445 ms | 0 - 3 MB | NPU |
| detector | TFLITE | w8a8 | Qualcomm® SA8650P | 10.073 ms | 0 - 152 MB | NPU |
| detector | TFLITE | w8a8 | Qualcomm® SA8255P | 10.073 ms | 0 - 152 MB | NPU |
| detector | TFLITE | w8a8 | Qualcomm® QCS8450 | 12.785 ms | 0 - 207 MB | NPU |
| detector | TFLITE | w8a8 | Qualcomm® Dragonwing™ IQ-9075 | 9.822 ms | 0 - 24 MB | NPU |
| detector | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-6690 | 215.354 ms | 0 - 200 MB | NPU |
| detector | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-7790 | 18.122 ms | 0 - 171 MB | NPU |
| detector | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-8750 | 5.737 ms | 0 - 151 MB | NPU |
| detector | TFLITE | w8a8 | Qualcomm® SA7255P | 1015.236 ms | 6 - 24 MB | GPU |
| detector | TFLITE | w8a8 | Qualcomm® SA8295P | 18.721 ms | 0 - 148 MB | NPU |
| detector | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 18.122 ms | 0 - 171 MB | NPU |
| recognizer | ONNX | float | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 11.253 ms | 1 - 673 MB | NPU |
| recognizer | ONNX | float | Snapdragon® 8 Elite For Galaxy Mobile | 11.307 ms | 1 - 660 MB | NPU |
| recognizer | ONNX | float | Snapdragon® X2 Elite | 12.303 ms | 1 - 1 MB | NPU |
| recognizer | ONNX | float | Snapdragon® X Elite | 19.715 ms | 11 - 11 MB | NPU |
| recognizer | ONNX | float | Snapdragon® 8 Gen 3 Mobile | 15.901 ms | 1 - 758 MB | NPU |
| recognizer | ONNX | float | Snapdragon® 8 Gen 1 Mobile | 26.178 ms | 1 - 339 MB | NPU |
| recognizer | ONNX | float | Qualcomm® Dragonwing™ IQ-8275 | 22.097 ms | 1 - 5 MB | NPU |
| recognizer | ONNX | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 20.308 ms | 0 - 15 MB | NPU |
| recognizer | ONNX | float | Qualcomm® QCS8450 | 26.178 ms | 1 - 339 MB | NPU |
| recognizer | ONNX | float | Qualcomm® Dragonwing™ IQ-9075 | 22.476 ms | 1 - 5 MB | NPU |
| recognizer | ONNX | float | Qualcomm® Dragonwing™ IQ-X7181 | 19.715 ms | 11 - 11 MB | NPU |
| recognizer | ONNX | float | Qualcomm® Dragonwing™ Q-8750 | 11.307 ms | 1 - 660 MB | NPU |
| recognizer | ONNX | w8a8 | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 9.191 ms | 1 - 735 MB | NPU |
| recognizer | ONNX | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 8.415 ms | 1 - 719 MB | NPU |
| recognizer | ONNX | w8a8 | Snapdragon® X2 Elite | 10.612 ms | 3 - 3 MB | NPU |
| recognizer | ONNX | w8a8 | Snapdragon® X Elite | 12.122 ms | 10 - 10 MB | NPU |
| recognizer | ONNX | w8a8 | Snapdragon® 8 Gen 3 Mobile | 9.085 ms | 1 - 822 MB | NPU |
| recognizer | ONNX | w8a8 | Snapdragon® 8 Gen 1 Mobile | 16.954 ms | 1 - 388 MB | NPU |
| recognizer | ONNX | w8a8 | Qualcomm® Dragonwing™ IQ-8275 | 13.773 ms | 1 - 5 MB | NPU |
| recognizer | ONNX | w8a8 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 11.999 ms | 0 - 350 MB | NPU |
| recognizer | ONNX | w8a8 | Qualcomm® QCS8450 | 16.954 ms | 1 - 388 MB | NPU |
| recognizer | ONNX | w8a8 | Qualcomm® Dragonwing™ IQ-9075 | 13.437 ms | 1 - 5 MB | NPU |
| recognizer | ONNX | w8a8 | Qualcomm® Dragonwing™ IQ-X7181 | 12.122 ms | 10 - 10 MB | NPU |
| recognizer | ONNX | w8a8 | Qualcomm® Dragonwing™ Q-8750 | 8.415 ms | 1 - 719 MB | NPU |
| recognizer | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 10.839 ms | 0 - 703 MB | NPU |
| recognizer | QNN_DLC | float | Snapdragon® 8 Elite For Galaxy Mobile | 12.128 ms | 0 - 694 MB | NPU |
| recognizer | QNN_DLC | float | Snapdragon® X2 Elite | 13.089 ms | 1 - 1 MB | NPU |
| recognizer | QNN_DLC | float | Snapdragon® X Elite | 19.395 ms | 1 - 1 MB | NPU |
| recognizer | QNN_DLC | float | Snapdragon® 8 Gen 3 Mobile | 15.402 ms | 0 - 822 MB | NPU |
| recognizer | QNN_DLC | float | Snapdragon® 8 Gen 1 Mobile | 26.775 ms | 0 - 382 MB | NPU |
| recognizer | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-8275 | 22.716 ms | 0 - 3 MB | NPU |
| recognizer | QNN_DLC | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 20.202 ms | 0 - 5 MB | NPU |
| recognizer | QNN_DLC | float | Qualcomm® QCS8450 | 26.775 ms | 0 - 382 MB | NPU |
| recognizer | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-9075 | 23.541 ms | 0 - 2 MB | NPU |
| recognizer | QNN_DLC | float | Qualcomm® Dragonwing™ IQ-X7181 | 19.395 ms | 1 - 1 MB | NPU |
| recognizer | QNN_DLC | float | Qualcomm® Dragonwing™ Q-8750 | 12.128 ms | 0 - 694 MB | NPU |
| recognizer | QNN_DLC | float | Qualcomm® SA8295P | 29.291 ms | 0 - 311 MB | NPU |
| recognizer | TFLITE | float | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 53.691 ms | 8 - 17 MB | CPU |
| recognizer | TFLITE | float | Snapdragon® 8 Elite For Galaxy Mobile | 55.202 ms | 10 - 22 MB | CPU |
| recognizer | TFLITE | float | Snapdragon® 8 Gen 3 Mobile | 51.107 ms | 7 - 16 MB | CPU |
| recognizer | TFLITE | float | Snapdragon® 8 Gen 1 Mobile | 69.945 ms | 8 - 22 MB | CPU |
| recognizer | TFLITE | float | Qualcomm® Dragonwing™ IQ-8275 | 340.342 ms | 4 - 33 MB | CPU |
| recognizer | TFLITE | float | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 61.43 ms | 7 - 8 MB | CPU |
| recognizer | TFLITE | float | Qualcomm® SA8650P | 284.115 ms | 0 - 6 MB | CPU |
| recognizer | TFLITE | float | Qualcomm® SA8255P | 284.115 ms | 0 - 6 MB | CPU |
| recognizer | TFLITE | float | Qualcomm® QCS8450 | 69.945 ms | 8 - 22 MB | CPU |
| recognizer | TFLITE | float | Qualcomm® Dragonwing™ IQ-9075 | 131.019 ms | 4 - 33 MB | CPU |
| recognizer | TFLITE | float | Qualcomm® Dragonwing™ Q-8750 | 55.202 ms | 10 - 22 MB | CPU |
| recognizer | TFLITE | float | Qualcomm® SA7255P | 387.336 ms | 9 - 19 MB | CPU |
| recognizer | TFLITE | float | Qualcomm® SA8295P | 149.527 ms | 6 - 11 MB | CPU |
| recognizer | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 5 For Galaxy Mobile | 51.004 ms | 7 - 16 MB | CPU |
| recognizer | TFLITE | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 39.082 ms | 0 - 9 MB | CPU |
| recognizer | TFLITE | w8a8 | Snapdragon® 8 Gen 3 Mobile | 30.762 ms | 6 - 16 MB | CPU |
| recognizer | TFLITE | w8a8 | Snapdragon® 8 Gen 1 Mobile | 47.896 ms | 5 - 18 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® Dragonwing™ QCS6490 | 159.144 ms | 4 - 22 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® Dragonwing™ IQ-8275 | 302.365 ms | 4 - 22 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® Dragonwing™ QCS8550 (Proxy) | 37.439 ms | 5 - 29 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® SA8650P | 253.885 ms | 0 - 5 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® SA8255P | 253.885 ms | 0 - 5 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® QCS8450 | 47.896 ms | 5 - 18 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® Dragonwing™ IQ-9075 | 93.465 ms | 4 - 22 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-6690 | 84.128 ms | 13 - 19 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-7790 | 61.549 ms | 20 - 27 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® Dragonwing™ Q-8750 | 39.082 ms | 0 - 9 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® SA7255P | 358.782 ms | 9 - 18 MB | CPU |
| recognizer | TFLITE | w8a8 | Qualcomm® SA8295P | 133.579 ms | 7 - 12 MB | CPU |
| recognizer | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 61.549 ms | 20 - 27 MB | CPU |
License
- The license for the original implementation of EasyOCR can be found here.
References
Community
- Join our AI Hub Slack community to collaborate, post questions and learn more about on-device AI.
- For questions or feedback please reach out to us.
