MCPcopy Create free account
hub / github.com/DragonisCV/RAM / random_crop

Function random_crop

ram/data/utils/transforms.py:39–53  ·  view source on GitHub ↗
(img_gt,crop_pad_size)

Source from the content-addressed store, hash-verified

37 return img_gt
38
39def random_crop(img_gt,crop_pad_size):
40 h, w = img_gt.shape[0:2]
41 # pad
42 if h < crop_pad_size or w < crop_pad_size:
43 pad_h = max(0, crop_pad_size - h)
44 pad_w = max(0, crop_pad_size - w)
45 img_gt = cv2.copyMakeBorder(img_gt, 0, pad_h, 0, pad_w, cv2.BORDER_REFLECT_101)
46 # crop
47 if img_gt.shape[0] > crop_pad_size or img_gt.shape[1] > crop_pad_size:
48 h, w = img_gt.shape[0:2]
49 # randomly choose top and left coordinates
50 top = random.randint(0, h - crop_pad_size)
51 left = random.randint(0, w - crop_pad_size)
52 img_gt = img_gt[top:top + crop_pad_size, left:left + crop_pad_size, ...]
53 return img_gt
54
55def paired_random_crop(img_gts, img_lqs, gt_patch_size, scale, gt_path=None):
56 """Paired random crop. Support Numpy array and Tensor inputs.

Callers 2

_train_preprocessingMethod · 0.90
_train_preprocessingMethod · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected