experiments/overlap/augmentations/pil.py [562:592]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        if np.random.uniform() > 0.5:
            denom_y = denom_y
        perspective_params = np.array([factor_x, offset_x, shift_x,offset_y, factor_y, shift_y, denom_x, denom_y])
        return {'perspective_params' : perspective_params}

    def transform(self, image, perspective_params):
        im = Image.fromarray(image)
        im = im.transform(
                (self.im_size, self.im_size), 
                Image.PERSPECTIVE,
                perspective_params, 
                resample=Image.BILINEAR
                )
        im = np.array(im).astype(np.float32)
        mask = Image.fromarray(np.ones_like(image).astype(np.uint8)*255)
        mask = mask.transform(
                (self.im_size, self.im_size),
                Image.PERSPECTIVE,
                perspective_params,
                resample=Image.BILINEAR
                )
        mask = np.array(mask).astype(np.float32) / 255
        im = mask * im + (1-mask) * image

        return im.astype(np.uint8)

    def convert_to_numpy(self, params):
        return params['perspective_params']

    def convert_from_numpy(self, numpy_record):
        return {'perspective_params' : numpy_record}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



imagenet_c_bar/corrupt.py [999:1029]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
        if np.random.uniform() > 0.5:
            denom_y = denom_y
        perspective_params = np.array([factor_x, offset_x, shift_x,offset_y, factor_y, shift_y, denom_x, denom_y])
        return {'perspective_params' : perspective_params}

    def transform(self, image, perspective_params):
        im = Image.fromarray(image)
        im = im.transform(
                (self.im_size, self.im_size), 
                Image.PERSPECTIVE,
                perspective_params, 
                resample=Image.BILINEAR
                )
        im = np.array(im).astype(np.float32)
        mask = Image.fromarray(np.ones_like(image).astype(np.uint8)*255)
        mask = mask.transform(
                (self.im_size, self.im_size),
                Image.PERSPECTIVE,
                perspective_params,
                resample=Image.BILINEAR
                )
        mask = np.array(mask).astype(np.float32) / 255
        im = mask * im + (1-mask) * image

        return im.astype(np.uint8)

    def convert_to_numpy(self, params):
        return params['perspective_params']

    def convert_from_numpy(self, numpy_record):
        return {'perspective_params' : numpy_record}
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



