Image-to-Image
PyTorch
android

ESRGAN: Optimized for Qualcomm Devices

ESRGAN is a machine learning model that upscales an image with minimal loss in quality.

This is based on the implementation of ESRGAN 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
QNN_DLC float Universal QAIRT 2.50 Download
TFLITE float Universal QAIRT 2.50 Download

For more device-specific assets and performance metrics, visit ESRGAN 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 ESRGAN on GitHub for usage instructions.

Model Details

Model Type: Model_use_case.super_resolution

Model Stats:

  • Input resolution: 128x128
  • Model checkpoint: ESRGAN_x4
  • Model size (float): 63.9 MB
  • Number of parameters: 16.7M

Performance Summary

Model Runtime Precision Chipset Inference Time (ms) Peak Memory Range (MB) Primary Compute Unit
ESRGAN ONNX float Snapdragon® 8 Elite Gen 5 For Galaxy Mobile 26.852 ms 5 - 337 MB NPU
ESRGAN ONNX float Snapdragon® 8 Elite For Galaxy Mobile 38.67 ms 6 - 330 MB NPU
ESRGAN ONNX float Snapdragon® X2 Elite 34.433 ms 8 - 8 MB NPU
ESRGAN ONNX float Snapdragon® X Elite 65.297 ms 38 - 38 MB NPU
ESRGAN ONNX float Snapdragon® 8 Gen 3 Mobile 49.302 ms 0 - 719 MB NPU
ESRGAN ONNX float Snapdragon® 8 Gen 1 Mobile 113.948 ms 3 - 715 MB NPU
ESRGAN ONNX float Qualcomm® Dragonwing™ IQ-8275 127.242 ms 6 - 11 MB NPU
ESRGAN ONNX float Qualcomm® Dragonwing™ QCS8550 (Proxy) 67.123 ms 0 - 43 MB NPU
ESRGAN ONNX float Qualcomm® QCS8450 113.948 ms 3 - 715 MB NPU
ESRGAN ONNX float Qualcomm® Dragonwing™ IQ-9075 105.762 ms 8 - 11 MB NPU
ESRGAN ONNX float Qualcomm® Dragonwing™ IQ-X7181 65.297 ms 38 - 38 MB NPU
ESRGAN ONNX float Qualcomm® Dragonwing™ Q-8750 38.67 ms 6 - 330 MB NPU
ESRGAN QNN_DLC float Snapdragon® 8 Elite Gen 5 For Galaxy Mobile 24.723 ms 0 - 313 MB NPU
ESRGAN QNN_DLC float Snapdragon® 8 Elite For Galaxy Mobile 37.922 ms 0 - 307 MB NPU
ESRGAN QNN_DLC float Snapdragon® X2 Elite 34.399 ms 0 - 0 MB NPU
ESRGAN QNN_DLC float Snapdragon® X Elite 64.815 ms 0 - 0 MB NPU
ESRGAN QNN_DLC float Snapdragon® 8 Gen 3 Mobile 49.803 ms 0 - 674 MB NPU
ESRGAN QNN_DLC float Snapdragon® 8 Gen 1 Mobile 121.567 ms 0 - 671 MB NPU
ESRGAN QNN_DLC float Qualcomm® Dragonwing™ IQ-8275 126.676 ms 0 - 6 MB NPU
ESRGAN QNN_DLC float Qualcomm® Dragonwing™ QCS8550 (Proxy) 62.782 ms 0 - 3 MB NPU
ESRGAN QNN_DLC float Qualcomm® SA8775P 105.12 ms 1 - 323 MB NPU
ESRGAN QNN_DLC float Qualcomm® SA8650P 105.12 ms 1 - 323 MB NPU
ESRGAN QNN_DLC float Qualcomm® SA8255P 105.12 ms 1 - 323 MB NPU
ESRGAN QNN_DLC float Qualcomm® QCS8450 121.567 ms 0 - 671 MB NPU
ESRGAN QNN_DLC float Qualcomm® Dragonwing™ IQ-9075 105.409 ms 0 - 6 MB NPU
ESRGAN QNN_DLC float Qualcomm® Dragonwing™ IQ-X7181 64.815 ms 0 - 0 MB NPU
ESRGAN QNN_DLC float Qualcomm® Dragonwing™ Q-8750 37.922 ms 0 - 307 MB NPU
ESRGAN QNN_DLC float Qualcomm® SA8295P 110.072 ms 0 - 333 MB NPU
ESRGAN TFLITE float Snapdragon® 8 Elite Gen 5 For Galaxy Mobile 25.75 ms 3 - 354 MB NPU
ESRGAN TFLITE float Snapdragon® 8 Elite For Galaxy Mobile 37.897 ms 3 - 347 MB NPU
ESRGAN TFLITE float Snapdragon® 8 Gen 3 Mobile 48.453 ms 39 - 756 MB NPU
ESRGAN TFLITE float Snapdragon® 8 Gen 1 Mobile 137.693 ms 3 - 709 MB NPU
ESRGAN TFLITE float Qualcomm® Dragonwing™ IQ-8275 126.779 ms 3 - 47 MB NPU
ESRGAN TFLITE float Qualcomm® Dragonwing™ QCS8550 (Proxy) 66.487 ms 3 - 6 MB NPU
ESRGAN TFLITE float Qualcomm® SA8775P 105.211 ms 3 - 367 MB NPU
ESRGAN TFLITE float Qualcomm® SA8650P 105.211 ms 3 - 367 MB NPU
ESRGAN TFLITE float Qualcomm® SA8255P 105.211 ms 3 - 367 MB NPU
ESRGAN TFLITE float Qualcomm® QCS8450 137.693 ms 3 - 709 MB NPU
ESRGAN TFLITE float Qualcomm® Dragonwing™ IQ-9075 105.822 ms 3 - 46 MB NPU
ESRGAN TFLITE float Qualcomm® Dragonwing™ Q-8750 37.897 ms 3 - 347 MB NPU
ESRGAN TFLITE float Qualcomm® SA8295P 110.112 ms 3 - 370 MB NPU

License

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

References

Community

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Paper for qualcomm/ESRGAN