Small tool using pretrained models to upscale images
Download is available from the Releases Page or Google Drive or MediaFire
-
Hosted Folder include full "Models" folder 📁 and executable Files 🖼️ to download
-
Linux 64bit
[Jar] -
macOS 64bit
[Jar] -
Download the executable corresponding with your operating system, and the Models folder
-
It's possible to download only some of the models if you want (It just wont let you use them inside the program)
-
The Models folder needs to be in the same directory as the Jar/Exe to use them
⚠️ Be careful when trying to resize very large pictures, it can take considerable time and resources⚠️ - To upscale an image you just need to choose a mode, load a picture and press start
- Save button can be used to choose an output folder and filename before you start the process (either just name or .png)
- You can double click the text box to change [Dark <-> Light] theme (disabled when upScaling)
- Use PNG images for best results
- if faced with a JNI Error see this issue for a possible fix #33
all of the model download links below are already included in the MediaFire folder.
There are four trained models integrated into the program :
- Size of the model: ~38.5MB x3. This is a quantized version, so that it can be uploaded to GitHub. (Original was 150MB each.)
- This model was trained for 3 days with a batch size of 16
- Link to implementation code: https://github.com/Saafke/EDSR_Tensorflow
- x2, x3, x4 trained models available
- Advantage: Highly accurate
- Disadvantage: Slow and large filesize
- Speed: < 3 sec for every scaling factor on 256x256 images on an Intel i7-9700K CPU.
- Original paper: Enhanced Deep Residual Networks for Single Image Super-Resolution [1]
Trained models can be downloaded from here.
- Size of the model: ~100kb x3
- This model was trained for ~100 iterations with a batch size of 32
- Link to implementation code: https://github.com/fannymonori/TF-ESPCN
- x2, x3, x4 trained models available
- Advantage: It is tiny and fast, and still performs well.
- Disadvantage: Perform worse visually than newer, more robust models.
- Speed: < 0.01 sec for every scaling factor on 256x256 images on an Intel i7-9700K CPU.
- Original paper: Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network [2]
Trained models can be downloaded from here.
- Size of the model: ~40KB x3
- This model was trained for ~30 iterations with a batch size of 1
- Link to implementation code: https://github.com/Saafke/FSRCNN_Tensorflow
- Advantage: Fast, small and accurate
- Disadvantage: Not state-of-the-art accuracy
- Speed: < 0.01 sec for every scaling factor on 256x256 images on an Intel i7-9700K CPU.
- Notes: FSRCNN-small has fewer parameters, thus less accurate but faster.
- Original paper: Accelerating the Super-Resolution Convolutional Neural Network [3]
Trained models can be downloaded from here.
- Size of the model: between 1-5Mb x3
- This model was trained for ~50 iterations with a batch size of 32
- Link to implementation code: https://github.com/fannymonori/TF-LAPSRN
- x2, x4, x8 trained models available
- Advantage: The model can do multi-scale super-resolution with one forward pass. It can now support 2x, 4x, 8x, and [2x, 4x] and [2x, 4x, 8x] super-resolution.
- Disadvantage: It is slower than ESPCN and FSRCNN, and the accuracy is worse than EDSR.
- Speed: < 0.1 sec for every scaling factor on 256x256 images on an Intel i7-9700K CPU.
- Original paper: Deep laplacian pyramid networks for fast and accurate super-resolution [4]
Trained models can be downloaded from here.
Comparing different algorithms. Scale x4 on monarch.png
Inference time in seconds (CPU) | PSNR | SSIM | |
---|---|---|---|
ESPCN | 0.01159 | 26.5471 | 0.88116 |
EDSR | 3.26758 | 29.2404 | 0.92112 |
FSRCNN | 0.01298 | 26.5646 | 0.88064 |
LapSRN | 0.28257 | 26.7330 | 0.88622 |
Bicubic | 0.00031 | 26.0635 | 0.87537 |
Nearest neighbor | 0.00014 | 23.5628 | 0.81741 |
Lanczos | 0.00101 | 25.9115 | 0.87057 |
Original | Bicubic Interpolation | EDSR |
---|---|---|
ESPCN | FSRCNN | LapSRN |
---|---|---|
Bicubic Interpolation is the standart resizing technique used by most editing tools like photoship etc..
Original | Bicubic Interpolation | EDSR |
---|---|---|
ESPCN | FSRCNN | LapSRN |
---|---|---|
[1] Bee Lim, Sanghyun Son, Heewon Kim, Seungjun Nah, and Kyoung Mu Lee, "Enhanced Deep Residual Networks for Single Image Super-Resolution", 2nd NTIRE: New Trends in Image Restoration and Enhancement workshop and challenge on image super-resolution in conjunction with CVPR 2017. [PDF] [arXiv] [Slide]
[2] Shi, W., Caballero, J., Huszár, F., Totz, J., Aitken, A., Bishop, R., Rueckert, D. and Wang, Z., "Real-Time Single Image and Video Super-Resolution Using an Efficient Sub-Pixel Convolutional Neural Network", Proceedings of the IEEE conference on computer vision and pattern recognition CVPR 2016. [PDF] [arXiv]
[3] Chao Dong, Chen Change Loy, Xiaoou Tang. "Accelerating the Super-Resolution Convolutional Neural Network", in Proceedings of European Conference on Computer Vision ECCV 2016. [PDF] [arXiv] [Project Page]
[4] Lai, W. S., Huang, J. B., Ahuja, N., and Yang, M. H., "Deep laplacian pyramid networks for fast and accurate super-resolution", In Proceedings of the IEEE conference on computer vision and pattern recognition CVPR 2017. [PDF] [arXiv] [Project Page]