iApp Image Upscaler
Enlarges an image 2× or 4×, up to 16.8 megapixels, reconstructing edges, texture and lettering rather than blurring them.
/v3/store/image-generation/image-upscaler/upscaleTry it- Price1 ICper request
- Capacity1,500 images/hour
- Served8Kcalls
Input
- file
- product.jpg
- scale
- 4
- output_format
- png
OutputPOST /v3/store/image-generation/image-upscaler/upscale
- status
- success
- model
- photo
- scale
- 4
- input
- width: 800 height: 800
- width
- 3200
- height
- 3200
- mime_type
- image/png
- bytes
- 9871234
- time
- model: 0.61 total: 1.42
- iapp
- images: 1 version: 1.0.0-20260907
Request
multipart/form-data, one image per request. 1 IC per image whatever its size or scale; a rejected or failed request is free.
Headers
apikeystringrequiredBody
filefilerequiredimage_base64 is sent.image_base64stringdata: prefix accepted, in place of file.scaleinteger4, the default, or 2. At 4× the input may be up to 1024 × 1024; at 2×, up to 2048 × 2048.modelstringphoto, the default, for photographs; anime for illustrations and flat artwork; fast when throughput matters more than detail.output_formatstringpng, the default and lossless, jpeg or webp. A 4096 × 4096 photograph is 10 to 20 MB as PNG and 1 to 3 MB as JPEG at quality 92.qualityintegerjpeg and webp. Default 92.responsestringjson, the default, returns the object in the panel with the image as Base64; image returns the bytes with the matching Content-Type.GET /v3/store/image-generation/image-upscaler/models lists the models and limits, free.
Response
model and scale used, the input size, the output width and height, mime_type, bytes, image_base64, and time: model for the enlargement, total including decoding the upload and encoding the result. Every success carries the headers iapp-input-images: 1 and x-iapp-output-size.The model and scale used, the input size, the output width and height, mime_type, bytes, image_base64, and time: model for the enlargement, total including decoding the upload and encoding the result. Every success carries the headers iapp-input-images: 1 and x-iapp-output-size.
Status codes
| Code | error_code | Meaning |
|---|---|---|
| 400 | invalid_image | Not a readable JPEG, PNG or WebP |
| 400 | input_too_large | The input is over 16.8 megapixels |
| 400 | output_too_large | Input × scale would pass 16.8 megapixels; the message gives the largest input for that scale |
| 400 | invalid_scale, invalid_model, invalid_output_format | A field outside the values above |
| 413 | file_too_large | The upload is over 10 MB |
| 503 | starting | The service is starting; retry after 30 seconds |
Details
Measured
The photo model against plain bicubic resizing on the 29 images of the iApp Image Generation gallery, 900 × 540, each reduced 4× and enlarged back, 7 September 2026.
| Measure | Bicubic | Upscaler |
|---|---|---|
| LPIPS perceptual distance, lower is better | 0.284 | 0.159 |
| Images where the upscaler is closer to the original | 29 of 29 | |
| PSNR, higher is better | 27.2 dB | 25.7 dB |
LPIPS measures how close the result looks to a person; PSNR rewards the safe blur of a resize, so reconstructing texture always costs a little of it.
| Time, production GPU, median of 5 | Model | PNG encode | JPEG encode |
|---|---|---|---|
| 512 × 512 to 2048 × 2048 | 0.23 s | 0.34 s | 0.05 s |
| 1024 × 1024 to 4096 × 4096 | 0.98 s | 1.37 s | 0.18 s |
| 1920 × 1080 to 3840 × 2160 | 0.41 s | 0.61 s | 0.08 s |
| 2048 × 2048 to 4096 × 4096 | 0.78 s | 1.27 s | 0.18 s |
For 1024 × 1024 to 4096 × 4096 the illustration model takes 0.32 s and the fast model 0.06 s. One GPU serves about 1,500 images per hour at the largest output as PNG and about 3,000 as JPEG; beyond that, requests queue.
Limits
- Rate limits per key: 5 per second, 60 per minute, 1,200 per hour.
- Fine detail absent from the source is invented, not recovered: a face or small text at 40 pixels comes out sharp but not necessarily true, so the output is not evidence of what a low-resolution source showed.
- Compression and blur in the source are cleaned up; motion blur and out-of-focus areas stay soft.
Data handling
Images are processed in memory and returned in the response; nothing is written to disk or kept. The model runs on iApp's own GPUs in Thailand, and no image goes to a third party. The service is GDPR and PDPA compliant.
Changelog
| Version | Date | Changes |
|---|---|---|
| v1.0.0-20260907 | 7 Sep 2026 | First release: 2× and 4× with the photo, illustration and fast models, PNG, JPEG and WebP output up to 16.8 megapixels with transparency preserved, at 1 IC per image. |