Strategy for upscaling the images for wall prints

Hi all,
This time topic quite new for me. I want to print my photos bigger than A3 format.

Normally for printing I do the following:

  1. Process RAW in darktable, export it as TIFF, JPG (depends)
  2. Create an image in GIMP with size that equals print size (300 dpi)
  3. Insert image as layer and scaling it down leaving some margins (to my taste)
  4. Adding signature to photo and description at the bottom margin.
    There you go!

It works nice up to A3 print. But for bigger ones I need to scale up, not scale down my photo.
Haven’t done that and those prints are quite expensive (oh, Fine Art papers…) thus not much left for experimenting.

All done in Linux.

Do you have any good practices for the upscaling the image for the print?
If there were no fonts there won’t be a problem. I would then leave the upscaling to the service. But I don’t want to scale the fonts too.


Hello, I print A2’s from 16-bit raws and they look fine. The bigger you go, the less ppi’s you need, as the photo is watched from a greater distance.

I would create a new doc in Gimp, size A2 for example. Then paste your photo in a layer, add your text, flatten and send to print service.

If you need more pixels, you can try g’mic, look for a filter called Iain2x, in Testing, Iain Fergusson, works quite well.

Edit. Or do your upscaling in Art, RT or Gimp itself.

I’m looking forward to answers to this. I needed to add about 20% size to get a solid 16x20" print @ 300ppi. Lacanoz residing at export from darktable did not do well.

I found this article to be helpful: Nicolas Robidoux Resampling -- IM v6 Examples.

1 Like

This sounds like a fun topic.

Let’s start with some sample patch to play around with. This is a 100% crop from one of my images at 1000x1000. Not perfectly sharp but it should do as ground truth.

I downscaled it to 256 using gimp and the bicubic filter to get a basis for my experiments:

I’ll use 500x500 and 1000x1000 as target resolutions. They are not integer multiples of 256 for a bit of added challenge.

As a baseline here is a 500 px version upscaled using the bicubic filter:

And here my preferred flow using the ‘nohalo’ option in gimp and a bit of post resize sharpening:
Sharper but more pixelated. I find that it works quite well on paper but your mileage could vary.

For a slightly bigger challenge, let’s go back to 1000px. At 1000px I use low halo + sharpening as it makes the result a bit smoother/less pixelated:

And because it was mentioned before here is @Iain 2X applied twice and then downscaled from 1024 to 1000 pixels. Very painterly, would be interesting to see how this looks on paper.

And one more using 4x and then downscaled. Somewhere between the very paintely result of iain 2x and the pixelated results of regular resampling + sharpening.

And one more entry from the “ai” crowd with deepai torch srgan. Impressive in some areas, very trippy in others.

Would love to see the techniques others use demonstrated as well. Feel free to use the ground truth and 256 px version of the image above under a cc0 license. :slight_smile:


Coincidentally I just added an upscaler to g’mic called Upscale [edge]. More for my own interest in algorithms than particular use. Anyway, here’s what it does to that (on the fuzzy side to say the least):

I do often print on 13 x 19 paper using an Epson Photo printer. The printer dithers (up yo 4200 dpi and as a result I am not noticing any problems with scaling.
My output from dt is directly from the RAW to print so I am avoiding transfers to Gimp and avoiding the use of an outside print service.
I try to stick with very few papers and those that I do use are calibrated for my printer. Print preview in dt works well and allows fine color tuning if needed.

better off printing at ~250dpi in that kind of situation IMO.

Had G’MIC fun (not serious).

More interesting methods:

testing is the only way unfortunately.

one way to make it more economical is to enlarge your image in a few different ways, then crop out patches of important areas @ 100% to print on smaller sheets of paper, say 8x10 or so.

I’m curious as to what you mean about the fonts though? If you’re making posters or something the document should be set to the target print size before you begin.

Has anyone tried a stair stepping method for upscale? I’ve found stair stepping in either 10 or 20% increments (bicubic sharper) when downscaling gives best results, not requiring any post resize sharpening. In fact, the only reason you might choose 20% instead of 10 is that depending on how small you resize, 10 can sometimes appear oversharp! However I have not yet tried this for upscaling.

Thanks for all the answers!
I did research on this and found interesting and quite simple answer. It is more pragmatic than theoretical :slight_smile:

I do not need to upscale x2 or more, rather 20% or so (so that dpi won’t drop below 200) thus am quite happy with:

  1. Upscale layer (the embedded photo) to my taste
  2. Sharpen it a bit with radius 3 (since printer’s dpi is x3 than display usually)
  3. Key ingredient - noise. Adding a bit of HSL noise (just luminance)

The prints won’t be huge. Just 30x45cm or 40x53cm. They will be viewed from 1-2 meters thus dpi for a photo could go to around 200. In 2-3 weeks I will know if that works.

@black_daveth I’m aware of that :frowning: I usually sign my prints and give them white frame. So yes, the whole document is set to destination size at 300dpi then the photo is pasted as layer. The signature (and description) is set to specific size and should not raise too much attention. If I scale a document prepared for A4 the signature could look ugly.