upscale
Local AI image upscale. Chains Real-ESRGAN passes (via spandrel) to reach any target scale, with feather-blended overlapping tiles so large outputs have no seams. Runs on CPU or an NVIDIA GPU; nothing leaves your machine except the one-time model download.
Not related to other projects named "upscaler" on GitHub or PyPI. The package, the import name and the command are all
upscale.
Install
pip install "git+https://github.com/wwylon/upscale.git" # or: pipx install git+https://github.com/wwylon/upscale.git
The pip install pulls PyTorch (large, slow first install). A PyTorch-free build exists only as the Windows desktop app (ONNX Runtime); see docs/develop.md.
From a clone:
pip install -e .
pip install -e ".[server]" # web UI + job API
pip install -e ".[mcp]" # MCP tools for agents
First win
upscale upscale input.png output.png --scale 4 --cpu
Use --target-size 8000 for a target long edge instead of a factor, drop --cpu to use the GPU, and --fast for the quick SPAN model. Models download on first use and are hash-verified.
upscale models list # built-in models
upscale suggest input.png # heuristic model pick
upscale serve # local web UI at http://127.0.0.1:8787/en/
upscale mcp # MCP tools over stdio
Equivalent module form: python -m upscale upscale ...
Highlights
- Exact scale (
--scale) or target long edge (--target-size); extra passes only when needed - Tile size chosen from free VRAM; very large frames spill to disk between passes
- Swappable models: Real-ESRGAN family, HAT, SPAN, community weights, or your own
.pth - Large outputs saved as BigTIFF; alpha preserved
- Web UI in several languages; Windows desktop build uses ONNX Runtime (no PyTorch)
- No telemetry
Library
from upscale import UpscaleConfig, execute
execute(UpscaleConfig(input="in.png", output="out.png", scale=4, cpu=True))
Documentation
Tests
pip install -e ".[dev,server,mcp]"
pytest
MIT licensed. See CONTRIBUTING.md and SECURITY.md.
Metadata
Release files for upscale 0.5.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| upscale-0.5.1.tar.gz | 124.1 kB | Without provenance | Details for upscale-0.5.1.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| upscale-0.5.1-py3-none-any.whl | Python 3 | none | any | Details for upscale-0.5.1-py3-none-any.whl |
Total release size: 234.6 kB
Release files / upscale-0.5.1.tar.gz
| Download URL | upscale-0.5.1.tar.gz |
|---|---|
| Size | 124.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a2e6d3e3217dc8f52084e604d343e6d059dd10f6482bdbdbbe33bc07e9646150
|
|
BLAKE2b-256 checksum How to use checksums |
655ba55b5da73ad71572be27318dc592aae54cd230c831174a0d42d9c1588497
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.11
|
Release files / upscale-0.5.1-py3-none-any.whl
| Download URL | upscale-0.5.1-py3-none-any.whl |
|---|---|
| Size | 110.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f8005af58dc5c44c938380cb811be23e9544cbd676d7a15fc9b14e67d4102cae
|
|
BLAKE2b-256 checksum How to use checksums |
2e52d16aee3e28e29873e3045c9b06968f9a0ba68babefe26ea7f8a54351d7a3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.12.11
|
Security for upscale 0.5.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.