def __init__(self, filters, data_format=None, activation=tf.nn.relu, *args, **kwargs): data_format = conv_utils.normalize_data_format(data_format) params = { 'strides': (2, 2, 2), 'padding': 'same', 'data_format': data_format, 'filters': filters } layers = [ Conv3D(kernel_size=(9, 9, 9), use_bias=True, activation=activation, **params), Conv3D(kernel_size=(5, 5, 5), use_bias=True, activation=activation, **params), Conv3D(kernel_size=(5, 5, 5), use_bias=False, activation=None, **params) ] super(AnalysisTransformV1, self).__init__(layers, *args, **kwargs)
def __init__(self, filters, data_format=None, kernel_size=(3, 3, 3), strides=(2, 2, 2), activation=tf.nn.relu, *args, **kwargs): data_format = conv_utils.normalize_data_format(data_format) params = { 'padding': 'same', 'data_format': data_format, 'use_bias': True, 'activation': activation, 'filters': filters, 'kernel_size': kernel_size } layers = [ Conv3DTranspose(strides=strides, **params), Conv3DTranspose(**params), Conv3DTranspose(**params) ] super(SynthesisBlock, self).__init__(layers, *args, data_format=data_format, **kwargs)
def __init__(self, filters, data_format=None, kernel_size=(3, 3, 3), activation=tf.nn.relu, residual_mode='add', *args, **kwargs): data_format = conv_utils.normalize_data_format(data_format) params = { 'kernel_size': kernel_size, 'activation': activation, 'data_format': data_format, 'residual_mode': residual_mode } layers = [ SynthesisBlock(filters, **params), SynthesisBlock(filters // 2, **params), SynthesisBlock(filters // 4, **params), Conv3DTranspose(1, kernel_size, padding="same", use_bias=True, activation=activation, data_format=data_format) ] super(SynthesisTransformProgressiveV2, self).__init__(layers, *args, **kwargs)
def __init__(self, filters, data_format=None, kernel_size=(3, 3, 3), activation=tf.nn.relu, residual_mode='add', *args, **kwargs): data_format = conv_utils.normalize_data_format(data_format) params = { 'kernel_size': kernel_size, 'activation': activation, 'data_format': data_format, 'residual_mode': residual_mode } layers = [ AnalysisBlock(filters // 2, **params), AnalysisBlock(filters, **params), AnalysisBlock(filters, **params), Conv3D(filters, kernel_size, padding="same", use_bias=False, activation=None, data_format=data_format) ] super(AnalysisTransformV2, self).__init__(layers, *args, **kwargs)
def __init__(self, filters, data_format=None, kernel_size=(3, 3, 3), activation=tf.nn.relu, *args, **kwargs): data_format = conv_utils.normalize_data_format(data_format) params = {'padding': 'same', 'data_format': data_format, 'filters': filters, 'kernel_size': kernel_size} layers = [Conv3D(use_bias=True, activation=activation, **params), Conv3D(use_bias=True, activation=activation, strides=(2, 2, 2), **params), Conv3D(use_bias=False, activation=None, **params)] super(HyperAnalysisTransform, self).__init__(layers, *args, **kwargs)
def __init__(self, filters, data_format=None, kernel_size=(3, 3, 3), strides=(2, 2, 2), activation=tf.nn.relu, *args, **kwargs): data_format = conv_utils.normalize_data_format(data_format) params = {'padding': 'same', 'data_format': data_format, 'filters': filters, 'kernel_size': kernel_size, 'use_bias': True} layers = [Conv3D(strides=strides, activation=activation() **params), AnalysisBlockV3Base(filters=filters, data_format=data_format), AnalysisBlockV3Base(filters=filters, data_format=data_format)] super(AnalysisBlockV3, self).__init__(layers, *args, data_format=data_format, **kwargs)
def __init__(self, filters, data_format=None, activation=tf.nn.relu, *args, **kwargs): data_format = conv_utils.normalize_data_format(data_format) params = {'strides': (2, 2, 2), 'padding': 'same', 'data_format': data_format, 'use_bias': True, 'activation': activation} layers = [Conv3DTranspose(filters, (5, 5, 5), **params), Conv3DTranspose(filters, (5, 5, 5), **params), Conv3DTranspose(1, (9, 9, 9), **params)] super(SynthesisTransformV1, self).__init__(layers, *args, **kwargs)
def __init__(self, filters, data_format=None, activation=ACTIVATION, *args, **kwargs): data_format = conv_utils.normalize_data_format(data_format) params = {'activation': activation, 'data_format': data_format} layers = [AnalysisBlock(filters // 4, **params), AnalysisBlockV4(filters // 2, **params), AnalysisBlockV4(filters, **params), Conv3D(filters, (3, 3, 3), padding="same", use_bias=False, activation=None, data_format=data_format)] super(AnalysisTransformProgressiveV6, self).__init__(layers, *args, **kwargs)
def __init__(self, filters, data_format=None, activation=ACTIVATION, *args, **kwargs): self.data_format = conv_utils.normalize_data_format(data_format) params = {'padding': 'same', 'data_format': data_format, 'use_bias': True} self.paths = [[Conv3D(kernel_size=(1,1,1), activation=activation(), filters=filters // 4, **params)], [Conv3D(kernel_size=(1,1,1), activation=activation(), filters=filters // 2, **params), [Conv3D(kernel_size=(1,1,3), activation=activation(), filters=filters // 4, **params), Conv3D(kernel_size=(3,3,1), activation=activation(), filters=filters // 4, **params), Conv3D(kernel_size=(3,1,1), activation=activation(), filters=filters // 4, **params), Conv3D(kernel_size=(1,3,3), activation=activation(), filters=filters // 4, **params), Conv3D(kernel_size=(1,3,1), activation=activation(), filters=filters // 4, **params), Conv3D(kernel_size=(3,1,3), activation=activation(), filters=filters // 4, **params)]]] super(AnalysisBlockV3Base, self).__init__(Self.paths, *args, **kwargs)
def __init__(self, layers, residual_mode='add', data_format=None, *args, **kwargs): super(ResidualLayer, self).__init__(*args, **kwargs) assert residual_mode in ('add', 'concat') self._layers = layers self.residual_mode = residual_mode self.data_format = conv_utils.normalize_data_format(data_format)
def __init__(self, pool_size, strides, padding='valid', data_format=None, name=None, **kwargs): super(MaxPoolWithArgmax2D, self).__init__(name=name, **kwargs) if data_format is None: data_format = tf.keras.backend.image_data_format() if strides is None: strides = pool_size self.pool_size = conv_utils.normalize_tuple(pool_size, 2, 'pool_size') self.strides = conv_utils.normalize_tuple(strides, 2, 'strides') self.padding = conv_utils.normalize_padding(padding) self.data_format = conv_utils.normalize_data_format(data_format) self.input_spec = tf.keras.layers.InputSpec(ndim=4)
def __init__(self, data_format='channels_last', name=None, **kwargs): super(MaxUnpool2D, self).__init__(**kwargs) if data_format is None: data_format = tf.keras.backend.image_data_format() self.data_format = conv_utils.normalize_data_format(data_format) self.input_spec = tf.keras.layers.InputSpec(min_ndim=2, max_ndim=4)