Skip to content

RRDN

make_model

def make_model(arch_params, patch_size)

Returns the model.

Used to select the model.

get_network

def get_network(weights)

class RRDN

Implementation of the Residual in Residual Dense Network for image super-scaling.

The network is the one described in https://arxiv.org/abs/1809.00219 (Wang et al. 2018).

Args
  • arch_params: dictionary, contains the network parameters C, D, G, G0, T, x.

  • patch_size: integer or None, determines the input size. Only needed at training time, for prediction is set to None.

  • beta: float <= 1, scaling parameter for the residual connections.

  • c_dim: integer, number of channels of the input image.

  • kernel_size: integer, common kernel size for convolutions.

  • upscaling: string, 'ups' or 'shuffle', determines which implementation of the upscaling layer to use.

  • init_val: extreme values for the RandomUniform initializer.

  • weights: string, if not empty, download and load pre-trained weights. Overrides other parameters.

Attributes
  • C: integer, number of conv layer inside each residual dense blocks (RDB).

  • D: integer, number of RDBs inside each Residual in Residual Dense Block (RRDB).

  • T: integer, number or RRDBs.

  • G: integer, number of convolution output filters inside the RDBs.

  • G0: integer, number of output filters of each RDB.

  • x: integer, the scaling factor.

  • model: Keras model of the RRDN.

  • name: name used to identify what upscaling network is used during training.

  • model._name: identifies this network as the generator network in the compound model built by the trainer class.

__init__

def __init__(arch_params, patch_size, beta, c_dim, kernel_size, init_val, weights)

class PixelShuffle

__init__

def __init__(scale, **kwargs)

call

def call(x)

get_config

def get_config()

class MultiplyBeta

__init__

def __init__(beta, **kwargs)

call

def call(x, **kwargs)

get_config

def get_config()