myPCL/scripts/augmentation.py
2023-05-17 11:02:03 +08:00

49 lines
1.3 KiB
Python

import torchvision.transforms as transforms
import pcl.loader
normalize = transforms.Normalize(mean=[0.485, 0.456, 0.406],
std=[0.229, 0.224, 0.225])
def moco_v2():
return [
transforms.RandomResizedCrop(224, scale=(0.2, 1.)),
transforms.RandomApply([
transforms.ColorJitter(0.4, 0.4, 0.4, 0.1) # not strengthened
], p=0.8),
transforms.RandomGrayscale(p=0.2),
transforms.RandomApply([pcl.loader.GaussianBlur([.1, 2.])], p=0.5),
transforms.RandomHorizontalFlip(),
transforms.ToTensor(),
normalize
]
def moco_v1():
return [
transforms.RandomResizedCrop(224, scale=(0.2, 1.)),
transforms.RandomGrayscale(p=0.2),
transforms.ColorJitter(0.4, 0.4, 0.4, 0.4),
transforms.RandomHorizontalFlip(),
transforms.ToTensor(),
normalize
]
def moco_eval():
return transforms.Compose([
transforms.RandomResizedCrop(224, scale=(0.2, 1.)),
# transforms.CenterCrop(512),
transforms.ToTensor(),
normalize
])
def only_rotate():
return transforms.Compose([
transforms.RandomResizedCrop(224, scale=(0.2, 1.)),
transforms.RandomRotation(90),
transforms.ToTensor(),
normalize
])