Spaces:
Sleeping
Sleeping
#!/usr/bin/env python3 | |
""" | |
Function used for visualization of data and results | |
Author: Shilpaj Bhalerao | |
Date: Jul 23, 2023 | |
""" | |
# Third-Party Imports | |
import torch | |
import albumentations as A | |
from albumentations.pytorch import ToTensorV2 | |
# Train Phase transformations | |
train_set_transforms = { | |
'randomcrop': A.RandomCrop(height=32, width=32, p=0.2), | |
'horizontalflip': A.HorizontalFlip(), | |
'cutout': A.CoarseDropout(max_holes=1, max_height=16, max_width=16, min_holes=1, min_height=1, min_width=1, fill_value=[0.49139968*255, 0.48215827*255 ,0.44653124*255], mask_fill_value=None), | |
'normalize': A.Normalize((0.49139968, 0.48215827, 0.44653124), (0.24703233, 0.24348505, 0.26158768)), | |
'standardize': ToTensorV2(), | |
} | |
# Test Phase transformations | |
test_set_transforms = { | |
'normalize': A.Normalize((0.49139968, 0.48215827, 0.44653124), (0.24703233, 0.24348505, 0.26158768)), | |
'standardize': ToTensorV2() | |
} | |
class AddGaussianNoise(object): | |
""" | |
Class for custom augmentation strategy | |
""" | |
def __init__(self, mean=0., std=1.): | |
""" | |
Constructor | |
""" | |
self.std = std | |
self.mean = mean | |
def __call__(self, tensor): | |
""" | |
Augmentation strategy to be implemented when called | |
""" | |
return tensor + torch.randn(tensor.size()) * self.std + self.mean | |
def __repr__(self): | |
""" | |
Method to print more infor about the strategy | |
""" | |
return f"{self.__class__.__name__}(mean={self.mean}, std={self.std})" | |
# Usage details | |
# transforms = transforms.Compose([ | |
# transforms.ToTensor(), | |
# AddGaussianNoise(0., 1.0), | |
# ]) | |