@upscalerjs/esrgan-medium
v1.0.0-beta.13
Published
ESRGAN Medium Model for UpscalerJS. Upscale images and increase image resolution with AI using Javascript
Downloads
257
Maintainers
Readme
ESRGAN Medium
ESRGAN Medium is a package of models for upscaling images with UpscalerJS.
The model's goal is to strike a balance between latency and image quality. It aims to be in the middle of speed and performance measurements between @upscalerjs/esrgan-slim
and @upscalerjs/esrgan-thick
.
Quick start
Install the package:
npm install @upscalerjs/esrgan-medium
Then, import a specific model and pass it as an argument to an instance of UpscalerJS:
import UpscalerJS from 'upscaler';
import x2 from '@upscalerjs/esrgan-medium/2x';
const upscaler = new UpscalerJS({
model: x2,
})
Paper
The Super-Resolution Generative Adversarial Network (SRGAN) is a seminal work that is capable of generating realistic textures during single image super-resolution. However, the hallucinated details are often accompanied with unpleasant artifacts. To further enhance the visual quality, we thoroughly study three key components of SRGAN - network architecture, adversarial loss and perceptual loss, and improve each of them to derive an Enhanced SRGAN (ESRGAN). In particular, we introduce the Residual-in-Residual Dense Block (RRDB) without batch normalization as the basic network building unit. Moreover, we borrow the idea from relativistic GAN to let the discriminator predict relative realness instead of the absolute value. Finally, we improve the perceptual loss by using the features before activation, which could provide stronger supervision for brightness consistency and texture recovery. Benefiting from these improvements, the proposed ESRGAN achieves consistently better visual quality with more realistic and natural textures than SRGAN and won the first place in the PIRM2018-SR Challenge.
— ESRGAN: Enhanced Super-Resolution Generative Adversarial Networks
Available Models
ESRGAN Medium ships with four models corresponding to the scale of the upscaled image:
- 2x:
@upscalerjs/esrgan-medium/2x
- 3x:
@upscalerjs/esrgan-medium/3x
- 4x:
@upscalerjs/esrgan-medium/4x
- 8x:
@upscalerjs/esrgan-medium/8x
(note: the 8x model runs only in Node)
Sample Images
Original
2x
3x
4x
Documentation
For more documentation, check out the model documentation at upscalerjs.com/models/available/upscaling/esrgan-medium.