oguzakif commited on
Commit
0dd1634
1 Parent(s): 59a4f1c

global variables are set to gradio state

Browse files
Files changed (1) hide show
  1. app.py +13 -19
app.py CHANGED
@@ -41,19 +41,6 @@ siammask = Custom(anchors=cfg['anchors'])
41
  siammask = load_pretrain(siammask, pretrained_path1)
42
  siammask = siammask.eval().to(device)
43
 
44
- # datetime object containing current date and time
45
- now = datetime.now()
46
-
47
- dt_string = now.strftime("%d_%m_%Y_%H_%M_%S")
48
- print("date and time =", dt_string)
49
- # constants
50
- object_x = 0
51
- object_y = 0
52
- object_width = 0
53
- object_height = 0
54
- in_fps = 24
55
-
56
-
57
  parser = argparse.ArgumentParser()
58
  # parser.add_argument('--opt', default='configs/object_removal.yaml',
59
  # help='Please select your config file for inference')
@@ -69,7 +56,7 @@ parser.add_argument(
69
  parser.add_argument(
70
  '--outroot', default=os.path.abspath(project_name), help="output directory")
71
  parser.add_argument(
72
- '--outfilename', default=dt_string+"_result.mp4", help="output filename")
73
  parser.add_argument('--consistencyThres', dest='consistencyThres', default=5, type=float,
74
  help='flow consistency error threshold')
75
  parser.add_argument('--alpha', dest='alpha', default=0.1, type=float)
@@ -144,7 +131,7 @@ def getBoundaries(mask):
144
  return x1, y1, (x2-x1), (y2-y1)
145
 
146
 
147
- def track_and_mask(vid, masked_frame, original_list, mask_list):
148
  x, y, w, h = getBoundaries(masked_frame)
149
  f = 0
150
 
@@ -197,19 +184,23 @@ def track_and_mask(vid, masked_frame, original_list, mask_list):
197
  else:
198
  print("can't open the given input video file!")
199
 
 
200
  print('Original Frame Count: ',len(original_list))
201
  print('Mask Frame Count: ',len(mask_list))
202
- return {out_video_inpaint:(dt_string+"_output.avi"),
203
  original_frame_list: original_list,
204
- mask_list: mask_list}
 
205
 
206
 
207
  def inpaint_video(original_frame_list, mask_list):
 
208
  args.out_fps = in_fps
 
209
  video_inpainting(args, original_frame_list, mask_list)
210
  original_frame_list = []
211
  mask_list = []
212
- return {out_video_inpaint:(dt_string+"_result.mp4"),
213
  original_frame_list: original_frame_list,
214
  mask_list: mask_list}
215
 
@@ -250,6 +241,9 @@ def getStartEndPoints(mask):
250
  with gr.Blocks() as demo:
251
  original_frame_list = gr.State([])
252
  mask_list = gr.State([])
 
 
 
253
  with gr.Row():
254
  with gr.Column(scale=2):
255
  with gr.Row():
@@ -274,7 +268,7 @@ with gr.Blocks() as demo:
274
  approve_mask.click(lambda x: [x['image'], x['mask']], first_frame, [
275
  original_image, masked_image])
276
  track_mask.click(fn=track_and_mask, inputs=[
277
- in_video, masked_image, original_frame_list, mask_list], outputs=[out_video, original_frame_list, mask_list])
278
  inpaint.click(fn=inpaint_video, outputs=[out_video_inpaint, original_frame_list, mask_list])
279
 
280
 
 
41
  siammask = load_pretrain(siammask, pretrained_path1)
42
  siammask = siammask.eval().to(device)
43
 
 
 
 
 
 
 
 
 
 
 
 
 
 
44
  parser = argparse.ArgumentParser()
45
  # parser.add_argument('--opt', default='configs/object_removal.yaml',
46
  # help='Please select your config file for inference')
 
56
  parser.add_argument(
57
  '--outroot', default=os.path.abspath(project_name), help="output directory")
58
  parser.add_argument(
59
+ '--outfilename', default="result.mp4", help="output filename")
60
  parser.add_argument('--consistencyThres', dest='consistencyThres', default=5, type=float,
61
  help='flow consistency error threshold')
62
  parser.add_argument('--alpha', dest='alpha', default=0.1, type=float)
 
131
  return x1, y1, (x2-x1), (y2-y1)
132
 
133
 
134
+ def track_and_mask(vid, masked_frame, original_list, mask_list, in_fps, dt_string):
135
  x, y, w, h = getBoundaries(masked_frame)
136
  f = 0
137
 
 
184
  else:
185
  print("can't open the given input video file!")
186
 
187
+ outname = (dt_string+"_output.avi")
188
  print('Original Frame Count: ',len(original_list))
189
  print('Mask Frame Count: ',len(mask_list))
190
+ return {out_video_inpaint:outname,
191
  original_frame_list: original_list,
192
+ mask_list: mask_list,
193
+ in_fps: in_fps}
194
 
195
 
196
  def inpaint_video(original_frame_list, mask_list):
197
+ outname = (dt_string+"_result.mp4")
198
  args.out_fps = in_fps
199
+ args.outfilename = outname
200
  video_inpainting(args, original_frame_list, mask_list)
201
  original_frame_list = []
202
  mask_list = []
203
+ return {out_video_inpaint:outname,
204
  original_frame_list: original_frame_list,
205
  mask_list: mask_list}
206
 
 
241
  with gr.Blocks() as demo:
242
  original_frame_list = gr.State([])
243
  mask_list = gr.State([])
244
+ # constants
245
+ in_fps = gr.State(24)
246
+ dt_string = gr.State(datetime.now().strftime("%d_%m_%Y_%H_%M_%S"))
247
  with gr.Row():
248
  with gr.Column(scale=2):
249
  with gr.Row():
 
268
  approve_mask.click(lambda x: [x['image'], x['mask']], first_frame, [
269
  original_image, masked_image])
270
  track_mask.click(fn=track_and_mask, inputs=[
271
+ in_video, masked_image, original_frame_list, mask_list, in_fps, dt_string], outputs=[out_video, original_frame_list, mask_list, in_fps])
272
  inpaint.click(fn=inpaint_video, outputs=[out_video_inpaint, original_frame_list, mask_list])
273
 
274