zjuJish commited on
Commit
da70a83
·
verified ·
1 Parent(s): d3f9a69

Upload layer_diff_dataset/test_inp_4 copy 4.py with huggingface_hub

Browse files
layer_diff_dataset/test_inp_4 copy 4.py ADDED
@@ -0,0 +1,85 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import cv2
2
+ import torch
3
+ import os
4
+ import json
5
+ from tqdm import tqdm
6
+ from modelscope.outputs import OutputKeys
7
+ from modelscope.pipelines import pipeline
8
+ from modelscope.utils.constant import Tasks
9
+
10
+ # input_location = 'https://modelscope.oss-cn-beijing.aliyuncs.com/test/images/image_inpainting/image_inpainting_1.png'
11
+ # input_mask_location = 'https://modelscope.oss-cn-beijing.aliyuncs.com/test/images/image_inpainting/image_inpainting_mask_1.png'
12
+ prompt = 'hazy background with nothing on'
13
+
14
+ root_folder = '../data/video_dataset/YoutubeVOS/train'
15
+ jpeg_folder = os.path.join(root_folder,'JPEGImages')
16
+ mask_folder = os.path.join(root_folder,'mask_dilate')
17
+ inp_folder = os.path.join(root_folder,'inp_image_256')
18
+ os.makedirs(inp_folder,exist_ok=True)
19
+ vid_list = os.listdir(jpeg_folder)
20
+ # print('vid_list',vid_list)
21
+ # exit(0)
22
+
23
+ image_inpainting = pipeline(
24
+ Tasks.image_inpainting,
25
+ model='/mnt/workspace/workgroup/sihui.jsh/alpha_work/diffusers/iic/cv_stable-diffusion-v2_image-inpainting_base',
26
+ device='cuda:2',
27
+ torch_dtype=torch.float32,
28
+ enable_attention_slicing=True)
29
+
30
+ pbar = tqdm(enumerate(vid_list),total=len(vid_list))
31
+ for i, vid_name in pbar:
32
+ if i<=800:
33
+ continue
34
+ if i>1000:
35
+ break
36
+ if not vid_name == '45f8128b97':
37
+ continue
38
+ # folder_path_0 = 'YoutubeVOS/JPEGImages/0043f083b5'
39
+ folder_path_0 = os.path.join(jpeg_folder,vid_name)
40
+ folder_path = os.path.join(mask_folder,vid_name)
41
+ # folder_path = 'YoutubeVOS/mask_dilate/0043f083b5'
42
+ # folder_path_ = 'YoutubeVOS/inp/0043f083b5'
43
+ folder_path_ = os.path.join(inp_folder,vid_name)
44
+ os.makedirs(folder_path_,exist_ok=True)
45
+ file_list = os.listdir(folder_path)
46
+ file_list = [i for i in file_list if i.endswith('.png')]
47
+ file_list.sort()
48
+
49
+ # pbar = tqdm(enumerate(file_list),total=len(file_list))
50
+ # with open('/mnt/workspace/workgroup/sihui.jsh/layer_diff_dataset/train/im_rgba.json', 'r') as file:
51
+ # data = json.load(file)
52
+
53
+ for i, image_name in enumerate(file_list):
54
+ if os.path.exists(os.path.join(folder_path_,image_name)):
55
+ print('here')
56
+ continue
57
+ last_idx = min(15,len(file_list)-1)
58
+ if not (i == 0 or i == last_idx):
59
+ print("there")
60
+ continue
61
+ # print('i',i)
62
+ # if i<1000:
63
+ # continue
64
+ # if i>500:
65
+ # break
66
+
67
+ # if i==1:
68
+ # break
69
+ # gt_name = data[i]["images"].split('/')[-1]
70
+ # print(image_name,gt_name)
71
+ # prompt = data[i]["prompt_fg"]
72
+ # print(prompt)
73
+
74
+ # mask_image = load_image(os.path.join(folder_path,image_name)).resize((512, 512))
75
+ # image = load_image(os.path.join(folder_path_0,image_name.split('.png')[0]+'.jpg')).resize((512, 512))
76
+
77
+ input = {
78
+ 'image': os.path.join(folder_path_0,image_name.split('.png')[0]+'.jpg'),
79
+ 'mask': os.path.join(folder_path,image_name),
80
+ 'prompt': prompt
81
+ }
82
+ output = image_inpainting(input)[OutputKeys.OUTPUT_IMG]
83
+ output = cv2.resize(output,(256,256))
84
+ cv2.imwrite(os.path.join(folder_path_,image_name), output)
85
+ # exit(0)