Real-ESRGAN-General-x4v3: Optimized for Qualcomm Devices

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

This is based on the implementation of Real-ESRGAN-General-x4v3 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.42, ONNX Runtime 1.24.1 Download
ONNX w8a8 Universal QAIRT 2.42, ONNX Runtime 1.24.1 Download
QNN_DLC float Universal QAIRT 2.43 Download
QNN_DLC w8a8 Universal QAIRT 2.43 Download
TFLITE float Universal QAIRT 2.43, TFLite 2.17.0 Download
TFLITE w8a8 Universal QAIRT 2.43, TFLite 2.17.0 Download

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

Model Details

Model Type: Model_use_case.super_resolution

Model Stats:

  • Model checkpoint: realesr-general-x4v3
  • Input resolution: 128x128
  • Number of parameters: 1.21M
  • Model size (float): 4.65 MB
  • Model size (w8a8): 1.25 MB

Performance Summary

Model Runtime Precision Chipset Inference Time (ms) Peak Memory Range (MB) Primary Compute Unit
Real-ESRGAN-General-x4v3 ONNX float Snapdragon® 8 Elite Gen 5 Mobile 2.657 ms 0 - 152 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Snapdragon® X2 Elite 6.422 ms 4 - 4 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Snapdragon® X Elite 6.398 ms 8 - 8 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Snapdragon® 8 Gen 3 Mobile 4.549 ms 7 - 195 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Qualcomm® QCS8550 (Proxy) 6.051 ms 6 - 8 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Qualcomm® QCS9075 9.764 ms 6 - 9 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Snapdragon® 8 Elite For Galaxy Mobile 3.57 ms 0 - 151 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® 8 Elite Gen 5 Mobile 0.688 ms 0 - 157 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® X2 Elite 0.877 ms 0 - 0 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® X Elite 1.927 ms 2 - 2 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® 8 Gen 3 Mobile 1.227 ms 0 - 169 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Qualcomm® QCS6490 154.404 ms 23 - 30 MB CPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Qualcomm® QCS8550 (Proxy) 1.727 ms 0 - 87 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Qualcomm® QCS9075 1.949 ms 0 - 3 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Qualcomm® QCM6690 146.911 ms 26 - 35 MB CPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® 8 Elite For Galaxy Mobile 0.974 ms 0 - 45 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® 7 Gen 4 Mobile 117.508 ms 32 - 40 MB CPU
Real-ESRGAN-General-x4v3 QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 2.302 ms 0 - 158 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Snapdragon® X2 Elite 3.508 ms 0 - 0 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Snapdragon® X Elite 6.36 ms 0 - 0 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Snapdragon® 8 Gen 3 Mobile 4.279 ms 0 - 185 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® QCS8275 (Proxy) 33.177 ms 0 - 151 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® QCS8550 (Proxy) 5.851 ms 0 - 2 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® SA8775P 42.216 ms 0 - 151 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® QCS9075 9.664 ms 0 - 5 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® QCS8450 (Proxy) 8.867 ms 0 - 92 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® SA7255P 33.177 ms 0 - 151 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® SA8295P 9.729 ms 0 - 50 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Snapdragon® 8 Elite For Galaxy Mobile 3.205 ms 0 - 153 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® 8 Elite Gen 5 Mobile 0.657 ms 0 - 151 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® X2 Elite 0.988 ms 0 - 0 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® X Elite 1.954 ms 0 - 0 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® 8 Gen 3 Mobile 1.23 ms 0 - 162 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCS6490 6.207 ms 0 - 2 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCS8275 (Proxy) 5.669 ms 0 - 147 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCS8550 (Proxy) 1.746 ms 0 - 2 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® SA8775P 2.066 ms 0 - 151 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCS9075 1.975 ms 0 - 2 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCM6690 24.902 ms 0 - 147 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCS8450 (Proxy) 2.891 ms 0 - 66 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® SA7255P 5.669 ms 0 - 147 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® SA8295P 3.255 ms 0 - 44 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® 8 Elite For Galaxy Mobile 0.92 ms 0 - 34 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® 7 Gen 4 Mobile 2.411 ms 0 - 147 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Snapdragon® 8 Elite Gen 5 Mobile 2.302 ms 0 - 163 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Snapdragon® 8 Gen 3 Mobile 4.288 ms 0 - 191 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® QCS8275 (Proxy) 33.2 ms 3 - 157 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® QCS8550 (Proxy) 5.847 ms 3 - 5 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® SA8775P 9.454 ms 3 - 160 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® QCS9075 9.565 ms 1 - 9 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® QCS8450 (Proxy) 8.877 ms 3 - 95 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® SA7255P 33.2 ms 3 - 157 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® SA8295P 9.753 ms 3 - 57 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Snapdragon® 8 Elite For Galaxy Mobile 3.16 ms 0 - 157 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Snapdragon® 8 Elite Gen 5 Mobile 0.661 ms 0 - 152 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Snapdragon® 8 Gen 3 Mobile 1.229 ms 0 - 164 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCS6490 6.295 ms 1 - 5 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCS8275 (Proxy) 5.741 ms 1 - 149 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCS8550 (Proxy) 1.768 ms 0 - 2 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® SA8775P 8.97 ms 1 - 150 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCS9075 1.993 ms 0 - 4 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCM6690 25.362 ms 1 - 150 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCS8450 (Proxy) 2.852 ms 0 - 70 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® SA7255P 5.741 ms 1 - 149 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® SA8295P 3.266 ms 0 - 45 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Snapdragon® 8 Elite For Galaxy Mobile 0.917 ms 0 - 40 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Snapdragon® 7 Gen 4 Mobile 2.421 ms 0 - 148 MB NPU

License

  • The license for the original implementation of Real-ESRGAN-General-x4v3 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. 🙋 1 Ask for provider support

Paper for qualcomm/Real-ESRGAN-General-x4v3