{"course":{"slug":"ai-images","title":"Image Generation, in Practice","url":"https://addaly.com/learn/ai-images","level":"beginner","track":"create"},"lesson":{"slug":"upscaling-and-invention","title":"Upscaling either restores detail or invents it","url":"https://addaly.com/learn/ai-images/upscaling-and-invention","position":61,"of":69,"minutes":8,"answer":"Diffusion-based upscalers re-generate rather than sharpen, so never point one at text, a logo, a product detail or a face you need to stay recognisable.","keyIdea":"Diffusion-based upscalers re-generate rather than sharpen, so never point one at text, a logo, a product detail or a face you need to stay recognisable."},"body":{"format":"markdown","text":"## Three unrelated operations share one button name\n\nYour 1024-pixel image needs to be a poster. You press Upscale. What happens next depends entirely on which of three completely different things that button does, and the tools rarely tell you.\n\n## One: resampling. Honest and useless\n\nBicubic and Lanczos interpolation. More pixels, no new information, mathematically averaged from what was already there. The result is bigger and softer.\n\nIt never lies to you and it never helps. Use it when you need a specific pixel dimension and the detail is already sufficient. Free in Photopea, GIMP, Krita, and every phone gallery app.\n\n## Two: super-resolution models. Conservative invention\n\nReal-ESRGAN, SwinIR, 4x-UltraSharp, and Topaz Gigapixel on the paid side. These are networks trained on pairs of degraded and clean images, so they have learned what blur usually hides. Given a soft edge they predict a sharp one.\n\nThey do invent, but locally and conservatively. Fabric becomes plausible fabric weave. Hair becomes plausible hair. Straight lines get straight. The invention stays inside the shapes that were already there.\n\nFree and excellent: **Upscayl**, a desktop app that wraps these models: download, drag the image in, choose a model, done. It runs on a GPU if you have one and on a CPU slowly if you do not. **chaiNNer** and ComfyUI's upscale nodes give you the same models with more control.\n\nFor faces specifically, GFPGAN and CodeFormer restore facial detail well, with a caution: CodeFormer at high fidelity settings smooths skin into plastic. Back the strength off.\n\n## Three: diffusion re-generation. Heavy invention\n\nUltimate SD Upscale, tiled diffusion, and anything a hosted tool labels \"creative upscale\" or \"enhance\". These cut the image into overlapping tiles, run image-to-image on each tile at a higher resolution, and stitch them back together.\n\nThe results can be spectacular. They are also **substantially a new image**. Small text becomes different text: plausible letterforms, wrong words. A distant face becomes a different face. A watch gains numerals that were never there. A pattern of tiles on a roof reorganises itself.\n\nThe mechanism behind the classic artefact: each tile is denoised knowing only its own contents plus a little overlap. A repeating pattern crossing a tile boundary has no way to stay consistent, and a large face split across two tiles gets two different skin textures. Larger tiles, more overlap, and a lower denoise (0.2-0.35) reduce it. They do not eliminate it.\n\n## The rule that follows\n\n**The more an upscaler invents, the less you can point it at anything that carries information.** Text, logos, product detail, a recognisable face, a diagram, a map. For those, use resampling or a conservative super-resolution model, and put real type back over the top.\n\nFor a landscape, a texture, an abstract background: let it invent. That is where the spectacular results come from and nothing is lost.\n\n## Order of operations\n\nUpscale last. Always.\n\nFix defects at the base resolution, do your colour and contrast pass, and only then enlarge. Two reasons, both practical: upscaling bakes errors in at four times the size, and if you have to re-run anything, every step after the upscale costs four times as much time and money.\n\n## The print reality nobody mentions\n\nAt 300 dpi, an A4 page is roughly 3500 × 2480 pixels. A 1024 × 1024 generation printed at 300 dpi is about 8.7 cm square, smaller than a postcard.\n\nSo anything destined for print needs real enlargement, and that means the invention question above is not optional, it is the job. For logos and anything with type, the answer is not to upscale at all but to rebuild it as vector. [Vector and print](/learn/vector-and-print) covers that properly, including why a printer's grey box appears behind your transparent logo.\n\nLarge-format printing is more forgiving than people assume: a billboard is viewed from thirty metres and 30 dpi is fine. A brochure held in the hand is not forgiving at all.\n\nToday: take one generated image and enlarge it 4× twice: once in Upscayl with a standard model, once with any \"creative\" upscale you have access to. Zoom to 100% on the smallest detail in each. The difference will make the rule permanent."},"check":{"question":"An illustrator enlarges a poster 4× using a creative diffusion upscaler and the small print in the corner comes back as different words in the same style. What is the explanation?","options":[{"text":"A diffusion upscaler re-generates each tile as a new image rather than sharpening it, so it produces plausible letterforms rather than the ones that were there; anything carrying information should be enlarged with a non-generative model, or set as real type afterwards.","correct":true},{"text":"The upscale model was trained mostly on photographs, so it handles graphic content and lettering poorly.","correct":false,"tempting":"Blames the training domain for behaviour the method produces by design on any content."},{"text":"The text was too small in the original; starting from a higher base resolution would have preserved it.","correct":false,"tempting":"Assumes more input pixels would stop a generative step from re-inventing what it sees."},{"text":"The tiles overlapped too little, so the words were split across tile boundaries.","correct":false,"tempting":"Names a genuine tiling artefact, but one that misaligns detail across a seam rather than substituting correct words with different ones."}]},"prev":{"slug":"the-campaign-of-twelve","title":"A worked run, with the budget and the failure","url":"https://addaly.com/learn/ai-images/the-campaign-of-twelve"},"next":{"slug":"the-finishing-pass","title":"Nothing goes to a client straight from the model","url":"https://addaly.com/learn/ai-images/the-finishing-pass"},"authorship":"Founder and series editor: Dr Mustafa Mun. Written by AI models to a written standard. Exam keys checked blind by a second model: 3,665 of 3,666 agreed. Academic review invited.","review":{"status":"Draft, open for academic review"},"cite":"Addaly (2026) 'Upscaling either restores detail or invents it', in Image Generation, in Practice. Edited by M. Mun. Addaly. Available at: https://addaly.com/learn/ai-images/upscaling-and-invention (Accessed: 31 October 2026).","licence":{"name":"CC BY-NC-SA 4.0","url":"https://creativecommons.org/licenses/by-nc-sa/4.0/"},"reader":{"schema":1,"title":"Upscaling either restores detail or invents it","courseTitle":"Image Generation, in Practice","module":{"index":7,"slug":"finishing","title":"Finishing and handing over"},"answer":null,"keyIdea":"Diffusion-based upscalers re-generate rather than sharpen, so never point one at text, a logo, a product detail or a face you need to stay recognisable.","hero":{"kind":"plate","image":null,"alt":null,"caption":null},"blocks":[{"t":"h2","id":"three-unrelated-operations-share-one-button-name","runs":[{"text":"Three unrelated operations share one button name"}]},{"t":"p","runs":[{"text":"Your 1024-pixel image needs to be a poster. You press Upscale. What happens next depends entirely on which of three completely different things that button does, and the tools rarely tell you."}]},{"t":"h2","id":"one-resampling-honest-and-useless","runs":[{"text":"One: resampling. Honest and useless"}]},{"t":"p","runs":[{"text":"Bicubic and Lanczos interpolation. More pixels, no new information, mathematically averaged from what was already there. The result is bigger and softer."}]},{"t":"p","runs":[{"text":"It never lies to you and it never helps. Use it when you need a specific pixel dimension and the detail is already sufficient. Free in Photopea, GIMP, Krita, and every phone gallery app."}]},{"t":"h2","id":"two-super-resolution-models-conservative-invention","runs":[{"text":"Two: super-resolution models. Conservative invention"}]},{"t":"p","runs":[{"text":"Real-ESRGAN, SwinIR, 4x-UltraSharp, and Topaz Gigapixel on the paid side. These are networks trained on pairs of degraded and clean images, so they have learned what blur usually hides. Given a soft edge they predict a sharp one."}]},{"t":"p","runs":[{"text":"They do invent, but locally and conservatively. Fabric becomes plausible fabric weave. Hair becomes plausible hair. Straight lines get straight. The invention stays inside the shapes that were already there."}]},{"t":"p","runs":[{"text":"Free and excellent: "},{"text":"Upscayl","b":true},{"text":", a desktop app that wraps these models: download, drag the image in, choose a model, done. It runs on a GPU if you have one and on a CPU slowly if you do not. "},{"text":"chaiNNer","b":true},{"text":" and ComfyUI’s upscale nodes give you the same models with more control."}]},{"t":"p","runs":[{"text":"For faces specifically, GFPGAN and CodeFormer restore facial detail well, with a caution: CodeFormer at high fidelity settings smooths skin into plastic. Back the strength off."}]},{"t":"h2","id":"three-diffusion-re-generation-heavy-invention","runs":[{"text":"Three: diffusion re-generation. Heavy invention"}]},{"t":"p","runs":[{"text":"Ultimate SD Upscale, tiled diffusion, and anything a hosted tool labels “creative upscale” or “enhance”. These cut the image into overlapping tiles, run image-to-image on each tile at a higher resolution, and stitch them back together."}]},{"t":"p","runs":[{"text":"The results can be spectacular. They are also "},{"text":"substantially a new image","b":true},{"text":". Small text becomes different text: plausible letterforms, wrong words. A distant face becomes a different face. A watch gains numerals that were never there. A pattern of tiles on a roof reorganises itself."}]},{"t":"p","runs":[{"text":"The mechanism behind the classic artefact: each tile is denoised knowing only its own contents plus a little overlap. A repeating pattern crossing a tile boundary has no way to stay consistent, and a large face split across two tiles gets two different skin textures. Larger tiles, more overlap, and a lower denoise (0.2-0.35) reduce it. They do not eliminate it."}]},{"t":"h2","id":"the-rule-that-follows","runs":[{"text":"The rule that follows"}]},{"t":"p","runs":[{"text":"The more an upscaler invents, the less you can point it at anything that carries information.","b":true},{"text":" Text, logos, product detail, a recognisable face, a diagram, a map. For those, use resampling or a conservative super-resolution model, and put real type back over the top."}]},{"t":"p","runs":[{"text":"For a landscape, a texture, an abstract background: let it invent. That is where the spectacular results come from and nothing is lost."}]},{"t":"h2","id":"order-of-operations","runs":[{"text":"Order of operations"}]},{"t":"p","runs":[{"text":"Upscale last. Always."}]},{"t":"p","runs":[{"text":"Fix defects at the base resolution, do your colour and contrast pass, and only then enlarge. Two reasons, both practical: upscaling bakes errors in at four times the size, and if you have to re-run anything, every step after the upscale costs four times as much time and money."}]},{"t":"h2","id":"the-print-reality-nobody-mentions","runs":[{"text":"The print reality nobody mentions"}]},{"t":"p","runs":[{"text":"At 300 dpi, an A4 page is roughly 3500 × 2480 pixels. A 1024 × 1024 generation printed at 300 dpi is about 8.7 cm square, smaller than a postcard."}]},{"t":"p","runs":[{"text":"So anything destined for print needs real enlargement, and that means the invention question above is not optional, it is the job. For logos and anything with type, the answer is not to upscale at all but to rebuild it as vector. "},{"text":"Vector and print","href":"https://addaly.com/learn/vector-and-print"},{"text":" covers that properly, including why a printer’s grey box appears behind your transparent logo."}]},{"t":"p","runs":[{"text":"Large-format printing is more forgiving than people assume: a billboard is viewed from thirty metres and 30 dpi is fine. A brochure held in the hand is not forgiving at all."}]},{"t":"p","runs":[{"text":"Today: take one generated image and enlarge it 4× twice: once in Upscayl with a standard model, once with any “creative” upscale you have access to. Zoom to 100% on the smallest detail in each. The difference will make the rule permanent."}]}],"check":{"question":[{"text":"An illustrator enlarges a poster 4× using a creative diffusion upscaler and the small print in the corner comes back as different words in the same style. What is the explanation?"}],"options":[{"text":[{"text":"A diffusion upscaler re-generates each tile as a new image rather than sharpening it, so it produces plausible letterforms rather than the ones that were there; anything carrying information should be enlarged with a non-generative model, or set as real type afterwards."}],"correct":true,"tempting":null},{"text":[{"text":"The upscale model was trained mostly on photographs, so it handles graphic content and lettering poorly."}],"correct":false,"tempting":[{"text":"Blames the training domain for behaviour the method produces by design on any content."}]},{"text":[{"text":"The text was too small in the original; starting from a higher base resolution would have preserved it."}],"correct":false,"tempting":[{"text":"Assumes more input pixels would stop a generative step from re-inventing what it sees."}]},{"text":[{"text":"The tiles overlapped too little, so the words were split across tile boundaries."}],"correct":false,"tempting":[{"text":"Names a genuine tiling artefact, but one that misaligns detail across a seam rather than substituting correct words with different ones."}]}],"order":[3,2,1,0],"why":null},"prev":{"slug":"the-campaign-of-twelve","title":"A worked run, with the budget and the failure","minutes":8},"next":{"slug":"the-finishing-pass","title":"Nothing goes to a client straight from the model","minutes":8}}}