Welcome to the Architectural Image Upscaler V1.6. This tool is designed for high-end visualization professionals, leveraging advanced AI models to upscale and restore architectural renders.
How to Use
Select Image: Click "Load Image" to choose your source file.
Configure Settings:
Texture Injection (SDXL): Uses Stable Diffusion XL to add realistic grit and detail. Adjust strength (0.1 - 0.4). Higher values add more detail but may alter the image content. *Requires SDXL download.*
CodeFormer: Enable this if your image contains people (entourage). It restores faces.
Save as 16-bit TIFF: Use this for high-fidelity post-production workflows.
Upscale: Click "Upscale" to process the image. The result will be saved to the output/ folder.
Under the Hood: The APIs
Real-ESRGAN (The Sharpener)
What it does: Uses a Generative Adversarial Network (GAN) trained on synthetic data to upscale images by 4x while preserving sharp edges.
Why it’s better: Unlike traditional bicubic upscaling which blurs edges, Real-ESRGAN hallucinates plausible high-frequency details, making lines crisp—crucial for architecture.
2. SDXL ControlNet (The Texture Injector)
What it does: Uses Stable Diffusion XL with ControlNet Tile. It “dreams” realistic textures onto your image based on the prompt “architectural details, realistic textures…”.
Why it’s better: Commercial upscalers often smooth out textures. This pipeline actively injects micro-contrast and material definition (concrete, wood, glass) that didn’t exist in the low-res original.
3. CodeFormer (The Face Saver)
What it does: A specialized Transformer-based model for blind face restoration.
Why it’s better: Rendering 3D people often results in uncanny or blurry faces. CodeFormer fixes artifacts and makes entourage look photorealistic.
Troubleshooting
If the application crashes or behaves unexpectedly, check the logs/ folder or ErrorLog.txt file in the application folder.
Note on Hardware: This application is optimized for NVIDIA RTX 4000 Ada series GPUs (20GB+ VRAM). If you opted out of the SDXL download, texture injection features will be disabled.
Please do more examples with renderings
Various questions, is it possible to do a 2x instead of the 4x ?
The 20gb vram is a requirement for which resolutions ?
will it run on 16gb models ? even for lower res images ?
Will you take on some renders for comparison sake ?
Arqrenderz, I’ll factor in a x2 switch into the GUI on the next build.
Re the 20gb VRAM limit, that is only in cases where the SDXL texture injection is needed (to add more texture to areas where it guesses there should be). It can be run without the SDXL process on lesser spec PCs. I only have an i5, 16gb RAM and GTX760 on the pc I used to build this, and it processed the images fine without the SDXL injection. Large images will take a while, maybe even ages, to process under fallback CPU power, but they will eventually output. I didn’t test large (4k) images, as it looked like it was going to take ages on my crappy i5/GTX760 rig. If your GPU is of a low spec, the application will fall back to CPU mode, where it will process but at a lesser speed. The images attached above were done in CPU mode only, and they look great imho. It took about 1minute to upscale the first image to the second image quality.
You can send me something you want to test, and I’ll see how it gets on with it. In the meantime, I’ll add some more examples later on when I get back to my crappy home pc. I uploaded the full size building examples used in the application (as the initial tester images) to this post, but there is a 30mb limit on the images attached to posts, so I had to save the upscaled png as a jpg to display here. Actual size of the upscaled png is 36mb (4948 x 3888 from a 1237 x 972 original).
Here’s a few more quick images attached,
I just made these now. The VRAM didn’t kick in until I tried to upscale the upscaled image, so it must only kick in on larger images. I tried this with an Nvidia P5000, although it still works with my GTX760 too. The initial upscale was with the CPU only. Interesting though, for a home made application. The quality is great.
How come SDXL? Doesn’t that limit operations to a max res of 1024x1024. Have you got some tiled-diffusion or some other tile based encoding/decoding happening behind the scenes for high res input images?
SDXL feels a like of a bit or a relic now we’ve got things like Nano B Pro/Seedream working natively at 4k etc? Even the free ones like Flux/Qwen are operating in native resolutions higher than SDXL right?
If I’m not mistaken Magnific’s operations happen in latent space, as far as I’m aware, RealErsgan is a pixel space upscaler which is a step down from latent space right?
Apologies if any of that is wrong, I’m still wrapping my own head around how all of this works, so i’m trying to improve my own understanding here too.
“How come SDXL? Doesn’t that limit operations to a max res of 1024x1024. Have you got some tiled-diffusion or some other tile based encoding/decoding happening behind the scenes for high res input images?”
I chose SDXL because it is good at straight lines, whereas some others tend to blur the edges, this was suggested to me for Architectural scenarios where straight lines are paramount. Yup, it tiles in the background, and then pieces back together afterwards. Handy for lower spec cpu and lower RAM operations, it’s not going to OOM (out of memory) error.
“SDXL feels a like of a bit or a relic now we’ve got things like Nano B Pro/Seedream working natively at 4k etc? Even the free ones like Flux/Qwen are operating in native resolutions higher than SDXL right?”
I was opting for free well known and established models, created outside of China. I like China, but in corporate environments it is a bit dodgy to use these apparently. I might try them in the future.
“If I’m not mistaken Magnific’s operations happen in latent space, as far as I’m aware, RealErsgan is a pixel space upscaler which is a step down from latent space right?”, interesting… this I did not know. Again, I was opting for free, easy accessible, shareware type models. It will be interesting to test out both types if I revisit this.
“Apologies if any of that is wrong, I’m still wrapping my own head around how all of this works, so i’m trying to improve my own understanding here too.”
No, worries, this is new stuff to me too, I’ve only recently been dipping my toes into it.