Spaces:
Running
on
Zero
Running
on
Zero
File size: 1,514 Bytes
a3a3ae4 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
import glob
import numpy as np
import random
from typing import Union
import cv2
import matplotlib.pyplot as plt
from PIL import Image
from PIL.Image import Image as PIL_image # for typing
from torchvision import transforms as pil_transforms
from torchvision.transforms import functional as F_pil
from opencv_transforms import transforms
from opencv_transforms import functional as F
from setup_testing_directory import get_testing_directory
from utils import L1
TOL = 1e-4
datadir = get_testing_directory()
train_images = glob.glob(datadir + '/**/*.JPEG', recursive=True)
train_images.sort()
print('Number of training images: {:,}'.format(len(train_images)))
random.seed(1)
imfile = random.choice(train_images)
pil_image = Image.open(imfile)
image = cv2.cvtColor(cv2.imread(imfile, 1), cv2.COLOR_BGR2RGB)
def test_resize():
pil_resized = pil_transforms.Resize((224, 224))(pil_image)
resized = transforms.Resize((224, 224))(image)
l1 = L1(pil_resized, resized)
assert l1 - 88.9559 < TOL
def test_rotation():
random.seed(1)
pil = pil_transforms.RandomRotation(10)(pil_image)
random.seed(1)
np_img = transforms.RandomRotation(10)(image)
l1 = L1(pil, np_img)
assert l1 - 86.7955 < TOL
def test_five_crop():
pil = pil_transforms.FiveCrop((224, 224))(pil_image)
cv = transforms.FiveCrop((224, 224))(image)
pil_stacked = np.hstack([np.asarray(i) for i in pil])
cv_stacked = np.hstack(cv)
l1 = L1(pil_stacked, cv_stacked)
assert l1 - 22.0444 < TOL |