RamAnanth1 commited on
Commit
c99a000
1 Parent(s): e190334

Update app.py

Browse files

Add inpainting model

Files changed (1) hide show
  1. app.py +13 -6
app.py CHANGED
@@ -7,10 +7,10 @@ import torch
7
  import requests
8
  from tqdm import tqdm
9
 
10
- from diffusers import StableDiffusionImg2ImgPipeline
11
  import torchvision.transforms as T
12
 
13
- from utils import preprocess, recover_image
14
 
15
  to_pil = T.ToPILImage()
16
 
@@ -28,15 +28,22 @@ pipe_img2img = StableDiffusionImg2ImgPipeline.from_pretrained(
28
  torch_dtype=torch.float16,
29
  )
30
  pipe_img2img = pipe_img2img.to("cuda")
31
- def pgd(X, model, eps=0.1, step_size=0.015, iters=40, clamp_min=0, clamp_max=1, mask=None):
 
 
 
 
 
 
 
 
32
  X_adv = X.clone().detach() + (torch.rand(*X.shape)*2*eps-eps).cuda()
33
  pbar = tqdm(range(iters))
34
  for i in pbar:
35
  actual_step_size = step_size - (step_size - step_size / 100) / iters * i
 
36
 
37
- X_adv.requires_grad_(True)
38
-
39
- loss = (model(X_adv).latent_dist.mean).norm()
40
 
41
  pbar.set_description(f"[Running attack]: Loss {loss.item():.5f} | step size: {actual_step_size:.4}")
42
 
 
7
  import requests
8
  from tqdm import tqdm
9
 
10
+ from diffusers import StableDiffusionImg2ImgPipeline, StableDiffusionInpaintPipeline
11
  import torchvision.transforms as T
12
 
13
+ from utils import preprocess,prepare_mask_and_masked_image, recover_image
14
 
15
  to_pil = T.ToPILImage()
16
 
 
28
  torch_dtype=torch.float16,
29
  )
30
  pipe_img2img = pipe_img2img.to("cuda")
31
+
32
+ pipe_inpaint = StableDiffusionInpaintPipeline.from_pretrained(
33
+ "runwayml/stable-diffusion-inpainting",
34
+ revision="fp16",
35
+ torch_dtype=torch.float16,
36
+ )
37
+ pipe_inpaint = pipe_inpaint.to("cuda")
38
+
39
+ def pgd(X, target, model, criterion, eps=0.1, step_size=0.015, iters=40, clamp_min=0, clamp_max=1, mask=None):
40
  X_adv = X.clone().detach() + (torch.rand(*X.shape)*2*eps-eps).cuda()
41
  pbar = tqdm(range(iters))
42
  for i in pbar:
43
  actual_step_size = step_size - (step_size - step_size / 100) / iters * i
44
+ X_adv.requires_grad_(True)
45
 
46
+ loss = (model(X_adv).latent_dist.mean - target).norm()
 
 
47
 
48
  pbar.set_description(f"[Running attack]: Loss {loss.item():.5f} | step size: {actual_step_size:.4}")
49