Small text as a bitmap in Gimp is always a problem. If I know the font, I replace the bitmap with typed-in text, as a text layer, that scales up any size.
If you do not know the font, then try Inkscape, import a png from Gimp, and trace it to produce a SVG. Which option you use for a trace also depends. A short word logo not usually a problem, for lines of text try a pixel art trace, like this: Originally a screenshot from this post.
I tried to “upscayl” a 700x700px image to 2800x2800px on an ordinary pc. The four cores of my cpu were working at 100% each. After some 15 or 20 minutes (not seconds!) a progress indicator appeared: 0,00%. 5 or 10 minutes later it showed still the same: 0%, so I killed the program.
On my pc at least this seems to be a waste of electricity…
Perhaps it works better if I buy an array of those fancy & very expensive nVidia cards that other people use to make bitcoins…
Tried that one as an appimage. What a piece of garbage programming! It just chokes on even the smallest of digital photographs. Luckily appimages get removed easily.
I’m on Manjaro (ex-Arch, ex-PCLinuxOS, ex-Mandriva and even waybackwhen ex-Mandrake itself), haven’t touched Windows for almost 20 years now (except for maybe at work). But I tested it on my laptop which doesn’t have a dedicated graphics card which may explain the failure. I’m willing to give it a run on the Desktop upstairs which runs Manjaro as well but has a proper graphics card - just to test. I generally dislike software which I’m limited to run on only one of my machines so this will not be useful to me anyway.
@Claes
So repeated it on a 16Mp image from my DSLR on the desktop upstairs (with NVIDIA GeForce GTX 1060 6GB). It runs and the output seems quite decent. It’s not blazing fast and there is no way to specify output size that I see apart from the 4x option. Also not crazy about running appimages but I’ll give it a chance. Maybe it’s just the few tests I ran but I also see some minute hue changes.
The other thing that bugs me is the file selector losing its place so if I want to repeatedly process images from the same folder, I have to navigate to that folder every single time. Batch operation is not much better as it only operates on all files in a folder, no selection possible.
Theming is pretty bad as well, it does not fit my Plasma dektop theme and does its own (ugly) thing with the big rounded buttons.
FYI, I used the version available in AUR which seem the latest 2.01 This seems more like a proof of concept in its current state than a piece of software I can integrate into my workflow. I’ll come back in a month or so.
Hello, I tried the AppImage one more time with several images but with the same (non) result. A simple NVidia card here (GeForce 210), but Upscayl doesn’t like my machine.
Concerning speed, my pc runs all the regular photo apps (ART, etc.) without any problems.
On my Ubuntu PC (7.5 GB or RAM and the Nvidia GeForce GTX 1660 SUPER graphic card) the program runs fast and without any problem. The upscale output is quite good.
I assume they are still valid. Generally using Gimp the NoHalo interpolation is good enough for me, but for that small text, scaling 250 pix → 800 pix this produces a cleaner result
Hello, I read that, but when starting the appimage from the command line with input image and output image i see several errors. Then the GUI shows up asking me to select an image. Even a 200x200px image produces an seemingly endless loop…
I guess the problem comes from my graphics card.
paul@graveyron:~/Downloads$ ./upscayl-2.0.1-linux.AppImage ~/Bureaublad/klein.jpg -o ~/Bureaublad/klein_upscayl_4x_realesrganx4plus.png
/tmp/.mount_upscayQwBXD3/resources/app.asar
🚀 ICON PATH: /tmp/.mount_upscayQwBXD3/resources/app.asar/main/build/icon.png
🚀 UPSCAYL EXEC PATH: /tmp/.mount_upscayQwBXD3/resources/bin/upscayl-
🚀 MODELS PATH: /tmp/.mount_upscayQwBXD3/resources/models
🚀 FFMPEG PATH: /tmp/.mount_upscayQwBXD3/resources/app.asar/node_modules/upscayl-ffmpeg/bin/linux/x64/ffmpeg
Checking for update
[21401:0212/112123.152470:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
[21428:0212/112123.601042:ERROR:viz_main_impl.cc(186)] Exiting GPU process due to errors during initialization
Update for version 2.0.1 is not available (latest version: 2.0.1, downgrade is disallowed).
🚀 => fileName klein
🚀 => fileExt .jpg
🆙 COMMAND: -i /home/paul/Bureaublad/klein.jpg -o /home/paul/Bureaublad/klein_upscayl_4x_realesrgan-x4plus.png -s 4 -m /tmp/.mount_upscayQwBXD3/resources/models -n realesrgan-x4plus -g nvidia gt218 -f png
🚀 => upscayl.stderr.on => stderr.toString() [0 llvmpipe (LLVM 15.0.6, 256 bits)] queueC=0[1] queueG=0[1] queueT=0[1]
🚀 => upscayl.stderr.on => stderr.toString()
[0 llvmpipe (LLVM 15.0.6, 256 bits)] bugsbn1=0 bugbilz=0 bugcopc=0 bugihfa=0
[0 llvmpipe (LLVM 15.0.6, 256 bits)] fp16-p/s/a=1/1/1 int8-p/s/a=1/1/1
[0 llvmpipe (LLVM 15.0.6, 256 bits)] subgroup=8 basic=1 vote=1 ballot=1 shuffle=1
For cartoons (areas of flat colours, such as black and white, or red and green) we get strips of antialiasing (shades of mixed colours such as gray or yellow/brown). Upsampling tends to widen these strips, giving a blurry appearance.
“-sigmoidal contrast” makes dark grays darker, and light grays lighter, so gray strips are not so obvious, which can increase subjective sharpness.
Another tool is sharpening with “unsharp masking” which actually narrows the antialiasing strips. However, it also creates halos. We can eliminate halos by ensuring that every new pixel is limited to the maximum and minimum pixels within a sliding window of the input.
Any sharpening technique to reduce antialiasing also (obviously) increases aliasing, ie the jaggedness of diagonal lines, so any solution is a compromise.