qaihm-bot's picture
v0.51.0
d4f5d4c verified
metadata
library_name: pytorch
license: other
tags:
  - android
pipeline_tag: image-to-image

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.3 Download
ONNX w8a8 Universal QAIRT 2.42, ONNX Runtime 1.24.3 Download
QNN_DLC float Universal QAIRT 2.45 Download
QNN_DLC w8a8 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 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.649 ms 0 - 152 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Snapdragon® X2 Elite 3.435 ms 4 - 4 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Snapdragon® X Elite 6.424 ms 8 - 8 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Snapdragon® 8 Gen 3 Mobile 4.544 ms 7 - 195 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Qualcomm® QCS8550 (Proxy) 6.046 ms 3 - 36 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Qualcomm® QCS9075 9.79 ms 8 - 11 MB NPU
Real-ESRGAN-General-x4v3 ONNX float Snapdragon® 8 Elite For Galaxy Mobile 3.61 ms 0 - 152 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® 8 Elite Gen 5 Mobile 0.69 ms 0 - 157 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® X2 Elite 0.873 ms 0 - 0 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® X Elite 1.938 ms 2 - 2 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® 8 Gen 3 Mobile 1.245 ms 0 - 169 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Qualcomm® QCS6490 153.115 ms 23 - 29 MB CPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Qualcomm® QCS8550 (Proxy) 1.729 ms 0 - 113 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Qualcomm® QCS9075 1.948 ms 0 - 3 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Qualcomm® QCM6690 146.476 ms 23 - 32 MB CPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® 8 Elite For Galaxy Mobile 0.97 ms 0 - 41 MB NPU
Real-ESRGAN-General-x4v3 ONNX w8a8 Snapdragon® 7 Gen 4 Mobile 117.157 ms 26 - 35 MB CPU
Real-ESRGAN-General-x4v3 QNN_DLC float Snapdragon® 8 Elite Gen 5 Mobile 2.298 ms 0 - 159 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Snapdragon® X2 Elite 3.473 ms 0 - 0 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Snapdragon® X Elite 6.375 ms 0 - 0 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Snapdragon® 8 Gen 3 Mobile 4.277 ms 0 - 182 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® QCS8275 (Proxy) 33.193 ms 0 - 150 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® QCS8550 (Proxy) 5.828 ms 0 - 2 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® SA8775P 9.402 ms 0 - 154 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® QCS9075 9.633 ms 0 - 5 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® QCS8450 (Proxy) 8.798 ms 0 - 89 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® SA7255P 33.193 ms 0 - 150 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Qualcomm® SA8295P 9.742 ms 0 - 51 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC float Snapdragon® 8 Elite For Galaxy Mobile 3.23 ms 0 - 159 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® 8 Elite Gen 5 Mobile 0.636 ms 0 - 38 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® X2 Elite 0.976 ms 0 - 0 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® X Elite 2.003 ms 0 - 0 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® 8 Gen 3 Mobile 1.238 ms 0 - 163 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCS6490 6.118 ms 0 - 2 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCS8275 (Proxy) 5.702 ms 0 - 148 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCS8550 (Proxy) 1.749 ms 0 - 2 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® SA8775P 2.039 ms 0 - 152 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCS9075 1.979 ms 0 - 2 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCM6690 25.446 ms 0 - 148 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® QCS8450 (Proxy) 2.709 ms 0 - 66 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® SA7255P 5.702 ms 0 - 148 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Qualcomm® SA8295P 3.2 ms 0 - 45 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® 8 Elite For Galaxy Mobile 0.915 ms 0 - 35 MB NPU
Real-ESRGAN-General-x4v3 QNN_DLC w8a8 Snapdragon® 7 Gen 4 Mobile 2.356 ms 0 - 147 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Snapdragon® 8 Elite Gen 5 Mobile 2.304 ms 0 - 162 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Snapdragon® 8 Gen 3 Mobile 4.277 ms 0 - 186 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® QCS8275 (Proxy) 33.239 ms 3 - 156 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® QCS8550 (Proxy) 5.828 ms 3 - 12 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® SA8775P 9.418 ms 3 - 161 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® QCS9075 9.569 ms 3 - 11 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® QCS8450 (Proxy) 8.82 ms 3 - 95 MB NPU
Real-ESRGAN-General-x4v3 TFLITE float Qualcomm® SA7255P 33.239 ms 3 - 156 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.236 ms 0 - 158 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Snapdragon® 8 Elite Gen 5 Mobile 0.646 ms 0 - 39 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Snapdragon® 8 Gen 3 Mobile 1.242 ms 0 - 168 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCS6490 6.082 ms 1 - 5 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCS8275 (Proxy) 5.719 ms 1 - 150 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCS8550 (Proxy) 1.771 ms 0 - 38 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® SA8775P 2.062 ms 0 - 152 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCS9075 1.998 ms 0 - 4 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCM6690 25.479 ms 1 - 150 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® QCS8450 (Proxy) 2.792 ms 0 - 66 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® SA7255P 5.719 ms 1 - 150 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Qualcomm® SA8295P 3.242 ms 0 - 47 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Snapdragon® 8 Elite For Galaxy Mobile 0.912 ms 0 - 35 MB NPU
Real-ESRGAN-General-x4v3 TFLITE w8a8 Snapdragon® 7 Gen 4 Mobile 2.366 ms 0 - 148 MB NPU

License

  • The license for the original implementation of Real-ESRGAN-General-x4v3 can be found here.

References

Community