EasyOCR / README.md
qaihm-bot's picture
v0.60.0
9a1bbfe verified
|
Raw
History Blame Contribute Delete
17.5 kB
metadata
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. 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.45, ONNX Runtime 1.27.1 Download
ONNX w8a8 Universal QAIRT 2.45, ONNX Runtime 1.27.1 Download
QNN_DLC float Universal QAIRT 2.45 Download
TFLITE float Universal QAIRT 2.45 Download
TFLITE w8a8 Universal QAIRT 2.45 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® X2 Elite 19.976 ms 9 - 9 MB NPU
detector ONNX float Snapdragon® X Elite 38.178 ms 36 - 36 MB NPU
detector ONNX float Snapdragon® 8 Gen 3 Mobile 27.935 ms 1 - 232 MB NPU
detector ONNX float Snapdragon® 8 Gen 1 Mobile 79.566 ms 8 - 248 MB NPU
detector ONNX float Qualcomm® Dragonwing™ IQ-8275 78.009 ms 6 - 15 MB NPU
detector ONNX float Qualcomm® Dragonwing™ QCS8550 (Proxy) 37.906 ms 0 - 203 MB NPU
detector ONNX float Qualcomm® QCS8450 79.566 ms 8 - 248 MB NPU
detector ONNX float Qualcomm® Dragonwing™ IQ-9075 68.484 ms 5 - 14 MB NPU
detector ONNX float Qualcomm® Dragonwing™ IQ-X7181 38.178 ms 36 - 36 MB NPU
detector ONNX float Qualcomm® Dragonwing™ Q-8750 22.411 ms 3 - 168 MB NPU
detector ONNX float Snapdragon® 8 Elite Mobile 22.411 ms 3 - 168 MB NPU
detector ONNX float Snapdragon® 8 Elite Gen 5 Mobile 16.399 ms 3 - 171 MB NPU
detector ONNX w8a8 Snapdragon® X2 Elite 6.731 ms 1 - 1 MB NPU
detector ONNX w8a8 Snapdragon® X Elite 13.422 ms 20 - 20 MB NPU
detector ONNX w8a8 Snapdragon® 8 Gen 3 Mobile 9.733 ms 2 - 215 MB NPU
detector ONNX w8a8 Snapdragon® 8 Gen 1 Mobile 19.997 ms 2 - 215 MB NPU
detector ONNX w8a8 Qualcomm® Dragonwing™ IQ-8275 15.232 ms 1 - 5 MB NPU
detector ONNX w8a8 Qualcomm® Dragonwing™ QCS8550 (Proxy) 13.005 ms 0 - 56 MB NPU
detector ONNX w8a8 Qualcomm® QCS8450 19.997 ms 2 - 215 MB NPU
detector ONNX w8a8 Qualcomm® Dragonwing™ IQ-9075 14.013 ms 1 - 4 MB NPU
detector ONNX w8a8 Qualcomm® Dragonwing™ IQ-X7181 13.422 ms 20 - 20 MB NPU
detector ONNX w8a8 Qualcomm® Dragonwing™ Q-8750 7.853 ms 2 - 165 MB NPU
detector ONNX w8a8 Snapdragon® 8 Elite Mobile 7.853 ms 2 - 165 MB NPU
detector ONNX w8a8 Snapdragon® 8 Elite Gen 5 Mobile 5.478 ms 0 - 165 MB NPU
detector QNN_DLC float Snapdragon® X2 Elite 30.948 ms 6 - 6 MB NPU
detector QNN_DLC float Snapdragon® X Elite 39.468 ms 6 - 6 MB NPU
detector QNN_DLC float Snapdragon® 8 Gen 3 Mobile 28.153 ms 6 - 236 MB NPU
detector QNN_DLC float Snapdragon® 8 Gen 1 Mobile 80.416 ms 6 - 260 MB NPU
detector QNN_DLC float Qualcomm® Dragonwing™ IQ-8275 76.834 ms 6 - 14 MB NPU
detector QNN_DLC float Qualcomm® Dragonwing™ IQ-8275 269.343 ms 1 - 170 MB NPU
detector QNN_DLC float Qualcomm® Dragonwing™ QCS8550 (Proxy) 38.182 ms 6 - 8 MB NPU
detector QNN_DLC float Qualcomm® SA8775P 67.972 ms 1 - 171 MB NPU
detector QNN_DLC float Qualcomm® SA8650P 67.972 ms 1 - 171 MB NPU
detector QNN_DLC float Qualcomm® SA8255P 67.972 ms 1 - 171 MB NPU
detector QNN_DLC float Qualcomm® QCS8450 80.416 ms 6 - 260 MB NPU
detector QNN_DLC float Qualcomm® Dragonwing™ IQ-9075 67.95 ms 6 - 14 MB NPU
detector QNN_DLC float Qualcomm® Dragonwing™ IQ-X7181 39.468 ms 6 - 6 MB NPU
detector QNN_DLC float Qualcomm® Dragonwing™ Q-8750 22.007 ms 6 - 171 MB NPU
detector QNN_DLC float Qualcomm® SA7255P 269.343 ms 1 - 170 MB NPU
detector QNN_DLC float Qualcomm® SA8295P 77.658 ms 0 - 184 MB NPU
detector QNN_DLC float Snapdragon® 8 Elite Mobile 22.007 ms 6 - 171 MB NPU
detector QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 16.862 ms 6 - 182 MB NPU
detector TFLITE float Snapdragon® 8 Gen 3 Mobile 28.083 ms 1 - 261 MB NPU
detector TFLITE float Snapdragon® 8 Gen 1 Mobile 80.455 ms 1 - 284 MB NPU
detector TFLITE float Qualcomm® Dragonwing™ IQ-8275 76.816 ms 0 - 49 MB NPU
detector TFLITE float Qualcomm® Dragonwing™ IQ-8275 269.45 ms 1 - 175 MB NPU
detector TFLITE float Qualcomm® Dragonwing™ QCS8550 (Proxy) 38.372 ms 1 - 3 MB NPU
detector TFLITE float Qualcomm® SA8775P 68.005 ms 1 - 175 MB NPU
detector TFLITE float Qualcomm® SA8650P 68.005 ms 1 - 175 MB NPU
detector TFLITE float Qualcomm® SA8255P 68.005 ms 1 - 175 MB NPU
detector TFLITE float Qualcomm® QCS8450 80.455 ms 1 - 284 MB NPU
detector TFLITE float Qualcomm® Dragonwing™ IQ-9075 68.73 ms 0 - 49 MB NPU
detector TFLITE float Qualcomm® Dragonwing™ Q-8750 21.953 ms 1 - 171 MB NPU
detector TFLITE float Qualcomm® SA7255P 269.45 ms 1 - 175 MB NPU
detector TFLITE float Qualcomm® SA8295P 73.891 ms 1 - 186 MB NPU
detector TFLITE float Snapdragon® 8 Elite Mobile 21.953 ms 1 - 171 MB NPU
detector TFLITE float Snapdragon® 8 Elite Gen 5 Mobile 16.87 ms 1 - 181 MB NPU
detector TFLITE w8a8 Snapdragon® 8 Gen 3 Mobile 7.182 ms 0 - 211 MB NPU
detector TFLITE w8a8 Snapdragon® 8 Gen 1 Mobile 14.795 ms 0 - 210 MB NPU
detector TFLITE w8a8 Qualcomm® Dragonwing™ QCS6490 61.238 ms 0 - 24 MB NPU
detector TFLITE w8a8 Qualcomm® Dragonwing™ IQ-8275 11.107 ms 0 - 25 MB NPU
detector TFLITE w8a8 Qualcomm® Dragonwing™ IQ-8275 35.795 ms 0 - 155 MB NPU
detector TFLITE w8a8 Qualcomm® Dragonwing™ QCS8550 (Proxy) 9.526 ms 0 - 3 MB NPU
detector TFLITE w8a8 Qualcomm® SA8775P 10.091 ms 0 - 156 MB NPU
detector TFLITE w8a8 Qualcomm® SA8650P 10.091 ms 0 - 156 MB NPU
detector TFLITE w8a8 Qualcomm® SA8255P 10.091 ms 0 - 156 MB NPU
detector TFLITE w8a8 Qualcomm® QCS8450 14.795 ms 0 - 210 MB NPU
detector TFLITE w8a8 Qualcomm® Dragonwing™ IQ-9075 9.803 ms 0 - 24 MB NPU
detector TFLITE w8a8 Qualcomm® Dragonwing™ Q-6690 251.313 ms 0 - 208 MB NPU
detector TFLITE w8a8 Qualcomm® Dragonwing™ Q-7790 18.662 ms 0 - 173 MB NPU
detector TFLITE w8a8 Qualcomm® Dragonwing™ Q-8750 5.791 ms 0 - 159 MB NPU
detector TFLITE w8a8 Qualcomm® SA7255P 35.795 ms 0 - 155 MB NPU
detector TFLITE w8a8 Qualcomm® SA8295P 19.019 ms 0 - 152 MB NPU
detector TFLITE w8a8 Snapdragon® 8 Elite Mobile 5.791 ms 0 - 159 MB NPU
detector TFLITE w8a8 Snapdragon® 8 Elite Gen 5 Mobile 4.54 ms 0 - 162 MB NPU
detector TFLITE w8a8 Snapdragon® 7 Gen 4 Mobile 18.662 ms 0 - 173 MB NPU
recognizer ONNX float Snapdragon® X2 Elite 12.833 ms 1 - 1 MB NPU
recognizer ONNX float Snapdragon® X Elite 20.103 ms 11 - 11 MB NPU
recognizer ONNX float Snapdragon® 8 Gen 3 Mobile 16.417 ms 0 - 780 MB NPU
recognizer ONNX float Snapdragon® 8 Gen 1 Mobile 27.901 ms 1 - 346 MB NPU
recognizer ONNX float Qualcomm® Dragonwing™ IQ-8275 23.126 ms 0 - 4 MB NPU
recognizer ONNX float Qualcomm® Dragonwing™ QCS8550 (Proxy) 21.942 ms 0 - 15 MB NPU
recognizer ONNX float Qualcomm® QCS8450 27.901 ms 1 - 346 MB NPU
recognizer ONNX float Qualcomm® Dragonwing™ IQ-9075 24.316 ms 0 - 3 MB NPU
recognizer ONNX float Qualcomm® Dragonwing™ IQ-X7181 20.103 ms 11 - 11 MB NPU
recognizer ONNX float Qualcomm® Dragonwing™ Q-8750 12.16 ms 0 - 660 MB NPU
recognizer ONNX float Snapdragon® 8 Elite Mobile 12.16 ms 0 - 660 MB NPU
recognizer ONNX float Snapdragon® 8 Elite Gen 5 Mobile 11.698 ms 0 - 788 MB NPU
recognizer ONNX w8a8 Snapdragon® X2 Elite 9.111 ms 1 - 1 MB NPU
recognizer ONNX w8a8 Snapdragon® X Elite 10.557 ms 10 - 10 MB NPU
recognizer ONNX w8a8 Snapdragon® 8 Gen 3 Mobile 7.981 ms 0 - 803 MB NPU
recognizer ONNX w8a8 Snapdragon® 8 Gen 1 Mobile 15.601 ms 0 - 352 MB NPU
recognizer ONNX w8a8 Qualcomm® Dragonwing™ IQ-8275 12.023 ms 0 - 4 MB NPU
recognizer ONNX w8a8 Qualcomm® Dragonwing™ QCS8550 (Proxy) 10.592 ms 0 - 296 MB NPU
recognizer ONNX w8a8 Qualcomm® QCS8450 15.601 ms 0 - 352 MB NPU
recognizer ONNX w8a8 Qualcomm® Dragonwing™ IQ-9075 11.918 ms 0 - 3 MB NPU
recognizer ONNX w8a8 Qualcomm® Dragonwing™ IQ-X7181 10.557 ms 10 - 10 MB NPU
recognizer ONNX w8a8 Qualcomm® Dragonwing™ Q-8750 7.54 ms 0 - 664 MB NPU
recognizer ONNX w8a8 Snapdragon® 8 Elite Mobile 7.54 ms 0 - 664 MB NPU
recognizer ONNX w8a8 Snapdragon® 8 Elite Gen 5 Mobile 8.17 ms 0 - 808 MB NPU
recognizer QNN_DLC float Snapdragon® X2 Elite 12.915 ms 0 - 0 MB NPU
recognizer QNN_DLC float Snapdragon® X Elite 20.763 ms 0 - 0 MB NPU
recognizer QNN_DLC float Snapdragon® 8 Gen 3 Mobile 16.942 ms 0 - 859 MB NPU
recognizer QNN_DLC float Snapdragon® 8 Gen 1 Mobile 28.841 ms 0 - 411 MB NPU
recognizer QNN_DLC float Qualcomm® Dragonwing™ IQ-8275 23.725 ms 0 - 3 MB NPU
recognizer QNN_DLC float Qualcomm® Dragonwing™ IQ-8275 57.668 ms 0 - 696 MB NPU
recognizer QNN_DLC float Qualcomm® Dragonwing™ QCS8550 (Proxy) 22.193 ms 0 - 105 MB NPU
recognizer QNN_DLC float Qualcomm® SA8775P 25.78 ms 0 - 703 MB NPU
recognizer QNN_DLC float Qualcomm® SA8650P 25.78 ms 0 - 703 MB NPU
recognizer QNN_DLC float Qualcomm® SA8255P 25.78 ms 0 - 703 MB NPU
recognizer QNN_DLC float Qualcomm® QCS8450 28.841 ms 0 - 411 MB NPU
recognizer QNN_DLC float Qualcomm® Dragonwing™ IQ-9075 24.868 ms 2 - 4 MB NPU
recognizer QNN_DLC float Qualcomm® Dragonwing™ IQ-X7181 20.763 ms 0 - 0 MB NPU
recognizer QNN_DLC float Qualcomm® Dragonwing™ Q-8750 12.095 ms 0 - 705 MB NPU
recognizer QNN_DLC float Qualcomm® SA7255P 57.668 ms 0 - 696 MB NPU
recognizer QNN_DLC float Qualcomm® SA8295P 31.789 ms 0 - 340 MB NPU
recognizer QNN_DLC float Snapdragon® 8 Elite Mobile 12.095 ms 0 - 705 MB NPU
recognizer QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 11.432 ms 0 - 727 MB NPU
recognizer TFLITE float Snapdragon® 8 Gen 3 Mobile 55.202 ms 7 - 15 MB CPU
recognizer TFLITE float Snapdragon® 8 Gen 1 Mobile 87.592 ms 7 - 21 MB CPU
recognizer TFLITE float Qualcomm® Dragonwing™ IQ-8275 339.33 ms 5 - 34 MB CPU
recognizer TFLITE float Qualcomm® Dragonwing™ IQ-8275 174.222 ms 6 - 16 MB CPU
recognizer TFLITE float Qualcomm® Dragonwing™ QCS8550 (Proxy) 77.577 ms 3 - 45 MB CPU
recognizer TFLITE float Qualcomm® SA8775P 99.618 ms 8 - 14 MB CPU
recognizer TFLITE float Qualcomm® SA8650P 99.618 ms 8 - 14 MB CPU
recognizer TFLITE float Qualcomm® SA8255P 99.618 ms 8 - 14 MB CPU
recognizer TFLITE float Qualcomm® QCS8450 87.592 ms 7 - 21 MB CPU
recognizer TFLITE float Qualcomm® Dragonwing™ IQ-9075 132.194 ms 4 - 33 MB CPU
recognizer TFLITE float Qualcomm® Dragonwing™ Q-8750 45.439 ms 7 - 17 MB CPU
recognizer TFLITE float Qualcomm® SA7255P 174.222 ms 6 - 16 MB CPU
recognizer TFLITE float Qualcomm® SA8295P 69.518 ms 6 - 11 MB CPU
recognizer TFLITE float Snapdragon® 8 Elite Mobile 45.439 ms 7 - 17 MB CPU
recognizer TFLITE float Snapdragon® 8 Elite Gen 5 Mobile 44.156 ms 9 - 19 MB CPU
recognizer TFLITE w8a8 Snapdragon® 8 Gen 3 Mobile 30.789 ms 5 - 14 MB CPU
recognizer TFLITE w8a8 Snapdragon® 8 Gen 1 Mobile 56.134 ms 0 - 12 MB CPU
recognizer TFLITE w8a8 Qualcomm® Dragonwing™ QCS6490 141.75 ms 3 - 22 MB CPU
recognizer TFLITE w8a8 Qualcomm® Dragonwing™ IQ-8275 280.375 ms 3 - 21 MB CPU
recognizer TFLITE w8a8 Qualcomm® Dragonwing™ IQ-8275 140.387 ms 0 - 8 MB CPU
recognizer TFLITE w8a8 Qualcomm® Dragonwing™ QCS8550 (Proxy) 37.889 ms 5 - 28 MB CPU
recognizer TFLITE w8a8 Qualcomm® SA8775P 70.59 ms 8 - 14 MB CPU
recognizer TFLITE w8a8 Qualcomm® SA8650P 70.59 ms 8 - 14 MB CPU
recognizer TFLITE w8a8 Qualcomm® SA8255P 70.59 ms 8 - 14 MB CPU
recognizer TFLITE w8a8 Qualcomm® QCS8450 56.134 ms 0 - 12 MB CPU
recognizer TFLITE w8a8 Qualcomm® Dragonwing™ IQ-9075 95.825 ms 3 - 22 MB CPU
recognizer TFLITE w8a8 Qualcomm® Dragonwing™ Q-6690 76.452 ms 6 - 12 MB CPU
recognizer TFLITE w8a8 Qualcomm® Dragonwing™ Q-7790 57.837 ms 8 - 14 MB CPU
recognizer TFLITE w8a8 Qualcomm® Dragonwing™ Q-8750 31.312 ms 7 - 16 MB CPU
recognizer TFLITE w8a8 Qualcomm® SA7255P 140.387 ms 0 - 8 MB CPU
recognizer TFLITE w8a8 Qualcomm® SA8295P 50.224 ms 5 - 11 MB CPU
recognizer TFLITE w8a8 Snapdragon® 8 Elite Mobile 31.312 ms 7 - 16 MB CPU
recognizer TFLITE w8a8 Snapdragon® 8 Elite Gen 5 Mobile 40.178 ms 6 - 14 MB CPU
recognizer TFLITE w8a8 Snapdragon® 7 Gen 4 Mobile 57.837 ms 8 - 14 MB CPU

License

  • The license for the original implementation of EasyOCR can be found here.

References

Community