Pretrained models
July 24, 2021 ยท View on GitHub
Following are the original trained models that authors made available for the different architectures, compiled here only for convenience. Also some experimental models that have been trained using this repository for use as pretrained models have been added.
Additional custom models can be found in the model database.
In order to use these models, they can be downloaded and saved in any directory and the path should be added to the configuration file (usually pretrain_model_G). The default path to use is experiments/pretrained_models.
Super Resolution
| Name | Models | Short Description | Source |
|---|---|---|---|
| ESRGAN | 4x_RRDB_ESRGAN.pth, 4x_RRDB_ESRGAN_modarch.pth | the final ESRGAN model used in the paper and the modified architecture version from current repo | Google Drive |
| 4x_RRDB_PSNR.pth, 4x_RRDB_PSNR_modarch.pth | model with high PSNR performance and the modified architecture version from current repo | ||
| SRGAN*1 | SRGAN_bicx4_303_505.pth | 4x SRGAN model (with modification), trained on DIV2K, w/o BN, bicubic downsampling. | Google Drive |
| SRResNet*2 | **multiple, see notes below**, SRResNet_bicx4_in3nf64nb16.pth | 4x SRResNet model (with modification), trained on DIV2K, w/o BN, bicubic downsampling. | Google Drive |
| PPON | PPON.pth | PPON model presented in the paper | Google Drive |
| PAN | PAN.pth | 4x pretrained modified PAN model with self-attention | Google Drive |
| SRFLOW | 4x_srflow.pth | 4x SRFlow model trained using a ESRGAN model from the original architecture as base (not fully trained) | Google Drive |
| srflow_original.zip | the original SRFlow models at 4x and 8x scales (used the modified ESRGAN arch as base model) | ||
| SFTGAN | segmentation_OST_bic.pth | segmentation model for bicubic downsampled images, outdoor scenes | Google Drive |
| sft_net_ini.pth | initialized SFTGAN model, initializing the SR generator with SRGAN_bicx4_303_505 parameters | ||
| sft_net_torch.pth | torch version of SFTGAN model (paper) | ||
| SFTGAN_bicx4_noBN_OST_bg.pth | PyTorch version of SFTGAN model: trained on OST dataset and use DIV2K as background images, w/o BN, bicubic downsampling |
Image to image translation
These initial models are the same as the ones in the original pix2pix and CycleGAN repo and use the default UNet and ResNet networks configuration respectively (ie. using ConvTranspose2d for upsample layers).
| Name | Models | Short Description | Source |
|---|---|---|---|
| pix2pix | facades_label2photo.pth | models originally available in the pix2pix repo. These correspond to the Pix2pix datasets. | Google Drive |
| sat2map.pth | |||
| map2sat.pth | |||
| edges2shoes.pth | |||
| edges2handbags.pth | |||
| day2night.pth | |||
| CycleGAN | facades_label2photo.pth, facades_photo2label.pth | models originally available in the CycleGAN repo. These correspond to the CycleGAN datasets. In some cases, only one generator of the cycle was provided, but the missing generator can be trained with the original dataset. | Google Drive |
| sat2map.pth, map2sat.pth | |||
| horse2zebra.pth, zebra2horse.pth | |||
| summer2winter_yosemite.pth, winter2summer_yosemite.pth | |||
| cityscapes_photo2label.pth, cityscapes_label2photo.pth | |||
| apple2orange.pth, orange2apple.pth | |||
| monet2photo.pth, photo2monet.pth | |||
| photo2ukiyoe.pth | |||
| photo2cezanne.pth | |||
| photo2vangogh.pth | |||
| iphone2dslr_flower.pth | |||
| WBC | wbc.pth | 'wbc.pth' is the current pretrained model trained using this code (new versions will be made available with further training). 'wbc_tf_converted.pth' model was converted from the original TensorFlow model in the WBC repo to PyTorch. To be able to interpolate models, other models used it as pretrained, but interpolations with the converted model won't work correctly because of differing padding and upscaling configurations. | Google Drive |
| wbc_tf_converted.pth |
Video (Experimental)
Following are some video models that have been trained using the networks available in this repository, many of them are experimental, but are useful to use as pretrained models for testing.
| Name | Models | Short Description | Source |
|---|---|---|---|
| SOFVSR | SOFVSR.pth | 4x pretrained SOFVSR model, using 3 frames | Google Drive |
| SOFVESRGAN | SOFVESRGAN.pth | 4x pretrained modified SOFVSR model using ESRGAN network for super-resolution, using 3 frames | Google Drive |
| EVSRGAN | 4x_EVSRGAN_REDS_pretrained.pth | 4x EVSRGAN Pretrained using 3 frames and default arch options | pcloud |
| DVD | DVD_REDS-Deinterlace-*_G.pth | Real-time Deep Video Deinterlacing | pcloud |
| RIFE | RIFE.pth | Converted pretrained RIFE model from the three original pickle files into a single pth model | Google Drive |
Below are some additional notes on some models:
SRResNet (EDSR)
Through experiments it was found that using:
- no batch normalization
- residual block style: Conv-ReLU-Conv
are the best network settings for this network.
Qualitative results [PSNR/dB]
Besides the mentioned SRResNet_bicx4_in3nf64nb16.pth, other pretrained SRResNet models can be downloaded from the Google Drive folder, with where trained using different network configurations. Below is a table that compares the results of each configuration (note the name convention, also explained after the table, to identify each configuration):
| Model | Scale | Channel | DIV2K2 | Set5 | Set14 | BSD100 | Urban100 |
|---|---|---|---|---|---|---|---|
| SRResNet_bicx2_in3nf64nb161 | 2 | RGB | 34.7203 | 35.835 | 31.643 | ||
| 36.1433 | 37.947 | 33.682 | |||||
| SRResNet_bicx3_in3nf64nb16 | 3 | RGB | 31.019 | 32.442 | 28.499 | ||
| 32.449 | 34.428 | 30.371 | |||||
| SRResNet_bicx4_in3nf64nb16 | 4 | RGB | 29.051 | 30.278 | 26.853 | ||
| 30.486 | 32.180 | 28.645 | |||||
| SRResNet_bicx8_in3nf64nb16 | 8 | RGB | 25.429 | 25.357 | 23.348 | ||
| 26.885 | 27.070 | 24.996 | |||||
| SRResNet_bicx2_in1nf64nb16 | 2 | Y | 35.870 | 37.864 | 33.581 | ||
| SRResNet_bicx3_in1nf64nb16 | 3 | Y | 32.182 | 34.263 | 30.186 | ||
| SRResNet_bicx4_in1nf64nb16 | 4 | Y | 30.224 | 32.0384 | 28.494 | ||
| SRResNet_bicx8_in1nf64nb16 | 8 | Y | 26.660 | 26.621 | 24.804 |
1 bic: MATLAB bicubic downsampling; in3: input has 3 channels; nf64: 64 feature maps; nb16: 16 residual blocks.
2 DIV2K 0801 ~ 0900 validation images.
3 The first row is evaluated on RGB channels, while the secone row is evaluated on Y channel (of YCbCr).
4 (31.901, 29.711)