-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Description
def SP_process(self, ori_img, mode, area_mask=None):
if mode == 'GC':
ori_img = cv2.resize(ori_img, (self.pre_size, self.pre_size))
sp_img, mask = add_pixel_GC_continue_opt(ori_img, eps=random.randint(10, 70), prob=random.randint(16, 40)/1000, sl = [2, 25], loc = 'local', GC_size = 256, th = 50, face_matrix=None, GC_scaler=self.GC_scaler, image_post = True) # for 256x256
elif mode == 'RAP':
ori_img = cv2.resize(ori_img, (self.pre_size, self.pre_size)) # (112, 112) for faces
sp_img, mask = rap_process_opt(ori_img, eps=self.eps, sl=6, noise_type=None, image_post = True, al=3)
elif mode == 'GC_n':
sp_img, mask = add_grad_noise_GC(ori_img, eps=random.randint(10, 70), prob=random.randint(16, 40)/1000, sl = [2, 25], mode = mode, GC_size = 256, th = 50, GC_scaler=self.GC_scaler, image_post = True) # for 256x256
elif mode in ["RC_point","RC_block","RC_mix","mix"]:
sp_img, mask = add_grad_noise_GC(ori_img, eps=self.eps, prob=random.randint(16, 40)/1000, sl = [2, 25], mode = mode, GC_size = 256, th = 50, GC_scaler=self.GC_scaler, image_post = True) # for 256x256
elif mode in ["RC_point_mask","RC_block_mask","RC_mix_mask","mix_mask"]:
sp_img, mask = add_grad_noise_GC(ori_img, eps=self.eps, prob=random.randint(16, 40)/1000, sl = [2, 25], mode = mode, GC_size = 256, th = 50, GC_scaler=self.GC_scaler, image_post = True, mask_area=True, mask = area_mask, cam_model=self.cam_model, saliency_model=self.saliency_model, cam_extractor=self.cam_extractor) # for 256x256
elif mode == 'DIS':
if 'ImageNet' in self.dataset_name:
ori_img = cv2.resize(ori_img, (256, 256)) # (112, 112) for faces
sp_img, mask = dis_process_padding(ori_img, self.dis_dict, eps=self.eps, eps_low=self.params.eps_low, eps_high = self.params.eps_high, image_post = True, padding = True, var_loc = self.params.var_loc, var_cov = self.params.var_cov)
else:
ori_img = cv2.resize(ori_img, (self.pre_size, self.pre_size)) # (112, 112) for faces
sp_img, mask = dis_process(ori_img, self.dis_dict, eps=self.eps, eps_low=1, eps_high = 20, image_post = True)
sp_img = sp_img.astype(np.uint8)
return sp_img, mask
mode仅仅能取到’DIS‘,即仅应用了扰动分布采样,那么怎么才能同时应用’‘扰动分布采样’‘和’‘稀疏编码生成‘’这两个操作?如能解答,不胜感激!
Metadata
Metadata
Assignees
Labels
No labels