From 10826558b40d9b21d1212e94ad4a589541838a1f Mon Sep 17 00:00:00 2001 From: henryruhs Date: Tue, 14 Jan 2025 12:55:48 +0100 Subject: [PATCH] Fix indent to tabs --- face_swapper/src/discriminator.py | 94 +++++++++++++++---------------- face_swapper/src/helper.py | 8 +-- face_swapper/src/training.py | 2 +- 3 files changed, 52 insertions(+), 52 deletions(-) diff --git a/face_swapper/src/discriminator.py b/face_swapper/src/discriminator.py index ccf3077..e328b69 100644 --- a/face_swapper/src/discriminator.py +++ b/face_swapper/src/discriminator.py @@ -7,70 +7,70 @@ from .typing import DiscriminatorOutputs, Tensor class NLayerDiscriminator(nn.Module): - def __init__(self, input_channels : int, num_filters : int, num_layers : int) -> None: - super(NLayerDiscriminator, self).__init__() - self.num_layers = num_layers - kernel_size = 4 - padding_size = int(numpy.ceil((kernel_size - 1.0) / 2)) - model_layers = [ + def __init__(self, input_channels : int, num_filters : int, num_layers : int) -> None: + super(NLayerDiscriminator, self).__init__() + self.num_layers = num_layers + kernel_size = 4 + padding_size = int(numpy.ceil((kernel_size - 1.0) / 2)) + model_layers = [ [ nn.Conv2d(input_channels, num_filters, kernel_size = kernel_size, stride = 2, padding = padding_size), nn.LeakyReLU(0.2, True) ]] - current_filters = num_filters + current_filters = num_filters - for layer_index in range(1, num_layers): - previous_filters = current_filters - current_filters = min(current_filters * 2, 512) - model_layers += [ + for layer_index in range(1, num_layers): + previous_filters = current_filters + current_filters = min(current_filters * 2, 512) + model_layers += [ [ - nn.Conv2d(previous_filters, current_filters, kernel_size = kernel_size, stride = 2, padding = padding_size), - nn.InstanceNorm2d(current_filters), nn.LeakyReLU(0.2, True) - ]] - previous_filters = current_filters - current_filters = min(current_filters * 2, 512) - model_layers += [ + nn.Conv2d(previous_filters, current_filters, kernel_size = kernel_size, stride = 2, padding = padding_size), + nn.InstanceNorm2d(current_filters), nn.LeakyReLU(0.2, True) + ]] + previous_filters = current_filters + current_filters = min(current_filters * 2, 512) + model_layers += [ [ - nn.Conv2d(previous_filters, current_filters, kernel_size = kernel_size, stride = 1, padding = padding_size), - nn.InstanceNorm2d(current_filters), - nn.LeakyReLU(0.2, True) - ]] - model_layers += [ + nn.Conv2d(previous_filters, current_filters, kernel_size = kernel_size, stride = 1, padding = padding_size), + nn.InstanceNorm2d(current_filters), + nn.LeakyReLU(0.2, True) + ]] + model_layers += [ [ nn.Conv2d(current_filters, 1, kernel_size = kernel_size, stride = 1, padding = padding_size) ]] - combined_layers = [] + combined_layers = [] - for layer in model_layers: - combined_layers += layer - self.model = nn.Sequential(*combined_layers) + for layer in model_layers: + combined_layers += layer + self.model = nn.Sequential(*combined_layers) - def forward(self, input_tensor : Tensor) -> Tensor: - return self.model(input_tensor) + def forward(self, input_tensor : Tensor) -> Tensor: + return self.model(input_tensor) class MultiscaleDiscriminator(nn.Module): - def __init__(self, input_channels : int, num_filters : int, num_layers : int, num_discriminators : int): - super(MultiscaleDiscriminator, self).__init__() - self.num_discriminators = num_discriminators - self.num_layers = num_layers + def __init__(self, input_channels : int, num_filters : int, num_layers : int, num_discriminators : int): + super(MultiscaleDiscriminator, self).__init__() + self.num_discriminators = num_discriminators + self.num_layers = num_layers - for discriminator_index in range(num_discriminators): - single_discriminator = NLayerDiscriminator(input_channels, num_filters, num_layers) - setattr(self, 'discriminator_layer_{}'.format(discriminator_index), single_discriminator.model) - self.downsample = nn.AvgPool2d(kernel_size = 3, stride = 2, padding = [ 1, 1 ], count_include_pad = False) # type:ignore[arg-type] + for discriminator_index in range(num_discriminators): + single_discriminator = NLayerDiscriminator(input_channels, num_filters, num_layers) + setattr(self, 'discriminator_layer_{}'.format(discriminator_index), single_discriminator.model) + self.downsample = nn.AvgPool2d(kernel_size = 3, stride = 2, padding = [ 1, 1 ], count_include_pad = False) # type:ignore[arg-type] - def single_discriminator_forward(self, model_layers : nn.Sequential, input_tensor : Tensor) -> List[Tensor]: - return [ model_layers(input_tensor) ] + def single_discriminator_forward(self, model_layers : nn.Sequential, input_tensor : Tensor) -> List[Tensor]: + return [ model_layers(input_tensor) ] - def forward(self, input_tensor : Tensor) -> DiscriminatorOutputs: - discriminator_outputs = [] - downsampled_input = input_tensor + def forward(self, input_tensor : Tensor) -> DiscriminatorOutputs: + discriminator_outputs = [] + downsampled_input = input_tensor - for discriminator_index in range(self.num_discriminators): - model_layers = getattr(self, 'discriminator_layer_{}'.format(self.num_discriminators - 1 - discriminator_index)) - discriminator_outputs.append(self.single_discriminator_forward(model_layers, downsampled_input)) + for discriminator_index in range(self.num_discriminators): + model_layers = getattr(self, 'discriminator_layer_{}'.format(self.num_discriminators - 1 - discriminator_index)) + discriminator_outputs.append(self.single_discriminator_forward(model_layers, downsampled_input)) - if discriminator_index != (self.num_discriminators - 1): - downsampled_input = self.downsample(downsampled_input) - return discriminator_outputs + if discriminator_index != (self.num_discriminators - 1): + downsampled_input = self.downsample(downsampled_input) + return discriminator_outputs diff --git a/face_swapper/src/helper.py b/face_swapper/src/helper.py index 954e0b6..3358c5a 100644 --- a/face_swapper/src/helper.py +++ b/face_swapper/src/helper.py @@ -19,10 +19,10 @@ def transform_points(points : Tensor, rotation_matrix : Tensor, expression : Ten def hinge_loss(tensor : Tensor, is_positive : bool) -> Tensor: - if is_positive: - return torch.relu(1 - tensor) - else: - return torch.relu(tensor + 1) + if is_positive: + return torch.relu(1 - tensor) + else: + return torch.relu(tensor + 1) def calc_distance_ratio(landmarks : Tensor, indices : Tuple[int, int, int, int]) -> Tensor: diff --git a/face_swapper/src/training.py b/face_swapper/src/training.py index 6070d3c..a2c6d65 100644 --- a/face_swapper/src/training.py +++ b/face_swapper/src/training.py @@ -229,7 +229,7 @@ class FaceSwapper(pytorch_lightning.LightningModule): self.logger.experiment.add_image("Generator Preview", grid, self.global_step) def log_validation_preview(self) -> None: - read_images = lambda path : [read_image(os.path.join(path, f)) for f in sorted(os.listdir(path)) if f.lower().endswith('.jpg') or f.lower().endswith('.png')] + read_images = lambda path : [read_image(os.path.join(path, f)) for f in sorted(os.listdir(path)) if f.lower().endswith('.jpg') or f.lower().endswith('.png')] to_numpy = lambda x: (x.cpu().detach().numpy()[0].transpose(1, 2, 0).clip(-1, 1)[:, :, ::-1] + 1) * 127.5 transforms = torchvision.transforms.Compose( [