File size: 11,198 Bytes
216b476 81fac38 216b476 3f7f319 216b476 3f7f319 964cb22 3f7f319 216b476 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 |
---
library_name: pytorch
license: other
tags:
- android
pipeline_tag: image-to-text
---

# 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](https://github.com/JaidedAI/EasyOCR).
This repository contains pre-exported model files optimized for Qualcomm® devices. You can use the [Qualcomm® AI Hub Models](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/models/easyocr) library to export with custom configurations. More details on model performance across various devices, can be found [here](#performance-summary).
Qualcomm AI Hub Models uses [Qualcomm AI Hub Workbench](https://workbench.aihub.qualcomm.com) to compile, profile, and evaluate this model. [Sign up](https://myaccount.qualcomm.com/signup) 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.37, ONNX Runtime 1.23.0 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/easyocr/releases/v0.46.0/easyocr-onnx-float.zip)
| QNN_DLC | float | Universal | QAIRT 2.42 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/easyocr/releases/v0.46.0/easyocr-qnn_dlc-float.zip)
| TFLITE | float | Universal | QAIRT 2.42, TFLite 2.17.0 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/easyocr/releases/v0.46.0/easyocr-tflite-float.zip)
| TFLITE | w8a8 | Universal | QAIRT 2.42, TFLite 2.17.0 | [Download](https://qaihub-public-assets.s3.us-west-2.amazonaws.com/qai-hub-models/models/easyocr/releases/v0.46.0/easyocr-tflite-w8a8.zip)
For more device-specific assets and performance metrics, visit **[EasyOCR on Qualcomm® AI Hub](https://aihub.qualcomm.com/models/easyocr)**.
### Option 2: Export with Custom Configurations
Use the [Qualcomm® AI Hub Models](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/models/easyocr) 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](https://github.com/quic/ai-hub-models/blob/main/qai_hub_models/models/easyocr) for usage instructions.
## Model Details
**Model Type:** Model_use_case.image_to_text
**Model Stats:**
- Model checkpoint: easyocr-small-stage1
- Input resolution: 608x800
- Number of parameters (EasyOCRDetector): 20.8M
- Model size (EasyOCRDetector) (float): 79.2 MB
- Number of parameters (EasyOCRRecognizer): 3.84M
- Model size (EasyOCRRecognizer) (float): 14.7 MB
## Performance Summary
| Model | Runtime | Precision | Chipset | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit
|---|---|---|---|---|---|---
| EasyOCRDetector | ONNX | float | Snapdragon® X Elite | 38.44 ms | 35 - 35 MB | NPU
| EasyOCRDetector | ONNX | float | Snapdragon® 8 Gen 3 Mobile | 27.117 ms | 2 - 189 MB | NPU
| EasyOCRDetector | ONNX | float | Qualcomm® QCS8550 (Proxy) | 37.395 ms | 0 - 44 MB | NPU
| EasyOCRDetector | ONNX | float | Qualcomm® QCS9075 | 70.247 ms | 5 - 14 MB | NPU
| EasyOCRDetector | ONNX | float | Snapdragon® 8 Elite For Galaxy Mobile | 21.805 ms | 3 - 120 MB | NPU
| EasyOCRDetector | ONNX | float | Snapdragon® 8 Elite Gen 5 Mobile | 16.439 ms | 7 - 127 MB | NPU
| EasyOCRDetector | QNN_DLC | float | Snapdragon® X Elite | 41.089 ms | 6 - 6 MB | NPU
| EasyOCRDetector | QNN_DLC | float | Snapdragon® 8 Gen 3 Mobile | 28.997 ms | 6 - 240 MB | NPU
| EasyOCRDetector | QNN_DLC | float | Qualcomm® QCS8275 (Proxy) | 275.48 ms | 1 - 163 MB | NPU
| EasyOCRDetector | QNN_DLC | float | Qualcomm® QCS8550 (Proxy) | 39.593 ms | 6 - 8 MB | NPU
| EasyOCRDetector | QNN_DLC | float | Qualcomm® SA8775P | 333.342 ms | 1 - 161 MB | NPU
| EasyOCRDetector | QNN_DLC | float | Qualcomm® QCS8450 (Proxy) | 79.658 ms | 6 - 260 MB | NPU
| EasyOCRDetector | QNN_DLC | float | Qualcomm® SA7255P | 275.48 ms | 1 - 163 MB | NPU
| EasyOCRDetector | QNN_DLC | float | Qualcomm® SA8295P | 75.708 ms | 0 - 179 MB | NPU
| EasyOCRDetector | QNN_DLC | float | Snapdragon® 8 Elite For Galaxy Mobile | 22.982 ms | 0 - 163 MB | NPU
| EasyOCRDetector | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 Mobile | 17.144 ms | 6 - 170 MB | NPU
| EasyOCRDetector | TFLITE | float | Snapdragon® 8 Gen 3 Mobile | 27.187 ms | 1 - 250 MB | NPU
| EasyOCRDetector | TFLITE | float | Qualcomm® QCS8275 (Proxy) | 270.523 ms | 0 - 170 MB | NPU
| EasyOCRDetector | TFLITE | float | Qualcomm® QCS8550 (Proxy) | 36.985 ms | 1 - 3 MB | NPU
| EasyOCRDetector | TFLITE | float | Qualcomm® SA8775P | 67.921 ms | 1 - 173 MB | NPU
| EasyOCRDetector | TFLITE | float | Qualcomm® QCS9075 | 70.05 ms | 0 - 49 MB | NPU
| EasyOCRDetector | TFLITE | float | Qualcomm® QCS8450 (Proxy) | 77.087 ms | 1 - 253 MB | NPU
| EasyOCRDetector | TFLITE | float | Qualcomm® SA7255P | 270.523 ms | 0 - 170 MB | NPU
| EasyOCRDetector | TFLITE | float | Qualcomm® SA8295P | 73.836 ms | 1 - 179 MB | NPU
| EasyOCRDetector | TFLITE | float | Snapdragon® 8 Elite For Galaxy Mobile | 21.938 ms | 1 - 171 MB | NPU
| EasyOCRDetector | TFLITE | float | Snapdragon® 8 Elite Gen 5 Mobile | 16.49 ms | 1 - 173 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Snapdragon® 8 Gen 3 Mobile | 7.289 ms | 0 - 214 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Qualcomm® QCS6490 | 50.848 ms | 0 - 24 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Qualcomm® QCS8275 (Proxy) | 36.064 ms | 0 - 156 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Qualcomm® QCS8550 (Proxy) | 9.681 ms | 0 - 3 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Qualcomm® SA8775P | 11.047 ms | 0 - 156 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Qualcomm® QCS9075 | 11.451 ms | 0 - 24 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Qualcomm® QCM6690 | 233.472 ms | 0 - 210 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Qualcomm® QCS8450 (Proxy) | 14.908 ms | 0 - 209 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Qualcomm® SA7255P | 36.064 ms | 0 - 156 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Qualcomm® SA8295P | 19.114 ms | 0 - 152 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 5.789 ms | 0 - 157 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 19.362 ms | 0 - 174 MB | NPU
| EasyOCRDetector | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 4.335 ms | 0 - 161 MB | NPU
| EasyOCRRecognizer | ONNX | float | Snapdragon® X Elite | 28.731 ms | 10 - 10 MB | NPU
| EasyOCRRecognizer | ONNX | float | Snapdragon® 8 Gen 3 Mobile | 21.212 ms | 0 - 434 MB | NPU
| EasyOCRRecognizer | ONNX | float | Qualcomm® QCS8550 (Proxy) | 28.218 ms | 0 - 15 MB | NPU
| EasyOCRRecognizer | ONNX | float | Qualcomm® QCS9075 | 31.354 ms | 0 - 3 MB | NPU
| EasyOCRRecognizer | ONNX | float | Snapdragon® 8 Elite For Galaxy Mobile | 16.956 ms | 0 - 378 MB | NPU
| EasyOCRRecognizer | ONNX | float | Snapdragon® 8 Elite Gen 5 Mobile | 15.623 ms | 0 - 405 MB | NPU
| EasyOCRRecognizer | QNN_DLC | float | Snapdragon® X Elite | 16.274 ms | 0 - 0 MB | NPU
| EasyOCRRecognizer | QNN_DLC | float | Snapdragon® 8 Gen 3 Mobile | 12.143 ms | 0 - 785 MB | NPU
| EasyOCRRecognizer | QNN_DLC | float | Qualcomm® QCS8275 (Proxy) | 47.77 ms | 0 - 670 MB | NPU
| EasyOCRRecognizer | QNN_DLC | float | Qualcomm® QCS8550 (Proxy) | 16.494 ms | 0 - 3 MB | NPU
| EasyOCRRecognizer | QNN_DLC | float | Qualcomm® SA8775P | 21.009 ms | 0 - 672 MB | NPU
| EasyOCRRecognizer | QNN_DLC | float | Qualcomm® QCS8450 (Proxy) | 22.017 ms | 0 - 389 MB | NPU
| EasyOCRRecognizer | QNN_DLC | float | Qualcomm® SA7255P | 47.77 ms | 0 - 670 MB | NPU
| EasyOCRRecognizer | QNN_DLC | float | Qualcomm® SA8295P | 24.836 ms | 0 - 335 MB | NPU
| EasyOCRRecognizer | QNN_DLC | float | Snapdragon® 8 Elite For Galaxy Mobile | 10.358 ms | 0 - 671 MB | NPU
| EasyOCRRecognizer | QNN_DLC | float | Snapdragon® 8 Elite Gen 5 Mobile | 10.514 ms | 0 - 732 MB | NPU
| EasyOCRRecognizer | TFLITE | float | Snapdragon® 8 Gen 3 Mobile | 75.235 ms | 17 - 27 MB | CPU
| EasyOCRRecognizer | TFLITE | float | Qualcomm® QCS8275 (Proxy) | 354.574 ms | 1 - 10 MB | CPU
| EasyOCRRecognizer | TFLITE | float | Qualcomm® QCS8550 (Proxy) | 78.386 ms | 6 - 8 MB | CPU
| EasyOCRRecognizer | TFLITE | float | Qualcomm® SA8775P | 164.135 ms | 9 - 15 MB | CPU
| EasyOCRRecognizer | TFLITE | float | Qualcomm® QCS9075 | 132.963 ms | 4 - 33 MB | CPU
| EasyOCRRecognizer | TFLITE | float | Qualcomm® QCS8450 (Proxy) | 92.185 ms | 6 - 18 MB | CPU
| EasyOCRRecognizer | TFLITE | float | Qualcomm® SA7255P | 354.574 ms | 1 - 10 MB | CPU
| EasyOCRRecognizer | TFLITE | float | Qualcomm® SA8295P | 126.378 ms | 7 - 12 MB | CPU
| EasyOCRRecognizer | TFLITE | float | Snapdragon® 8 Elite For Galaxy Mobile | 79.698 ms | 7 - 15 MB | CPU
| EasyOCRRecognizer | TFLITE | float | Snapdragon® 8 Elite Gen 5 Mobile | 52.873 ms | 11 - 21 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Snapdragon® 8 Gen 3 Mobile | 54.104 ms | 5 - 15 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Qualcomm® QCS6490 | 152.742 ms | 3 - 22 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Qualcomm® QCS8275 (Proxy) | 299.941 ms | 6 - 14 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Qualcomm® QCS8550 (Proxy) | 56.204 ms | 5 - 22 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Qualcomm® SA8775P | 139.386 ms | 8 - 13 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Qualcomm® QCS9075 | 105.864 ms | 3 - 22 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Qualcomm® QCM6690 | 162.227 ms | 7 - 12 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Qualcomm® QCS8450 (Proxy) | 69.267 ms | 6 - 17 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Qualcomm® SA7255P | 299.941 ms | 6 - 14 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Qualcomm® SA8295P | 98.815 ms | 5 - 11 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Snapdragon® 8 Elite For Galaxy Mobile | 63.653 ms | 8 - 21 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Snapdragon® 7 Gen 4 Mobile | 85.371 ms | 8 - 15 MB | CPU
| EasyOCRRecognizer | TFLITE | w8a8 | Snapdragon® 8 Elite Gen 5 Mobile | 40.636 ms | 9 - 19 MB | CPU
## License
* The license for the original implementation of EasyOCR can be found
[here](https://github.com/JaidedAI/EasyOCR/blob/master/LICENSE).
## References
* [Source Model Implementation](https://github.com/JaidedAI/EasyOCR)
## Community
* Join [our AI Hub Slack community](https://aihub.qualcomm.com/community/slack) to collaborate, post questions and learn more about on-device AI.
* For questions or feedback please [reach out to us](mailto:ai-hub-support@qti.qualcomm.com).
|