talalif commited on
Commit
d49f5a6
·
verified ·
1 Parent(s): 0271dce

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +20 -7
app.py CHANGED
@@ -23,12 +23,19 @@ subprocess.run(["mv", "./network-disparity.pytorch", "./3d-ken-burns/models/disp
23
  subprocess.run(["mv", "./network-refinement.pytorch", "./3d-ken-burns/models/disparity-refinement.pytorch"])
24
  subprocess.run(["mv", "./network-inpainting.pytorch", "./3d-ken-burns/models/pointcloud-inpainting.pytorch"])
25
 
26
- # with open ('./3d-ken-burns/autozoom.py','r+') as az:
27
- # script = az.read()
28
- # script = script.replace("'fltShift': 100.0","'fltShift': 0.0")
29
- # script = script.replace("'fltZoom': 1.25","'fltZoom': 1.35")
30
- # script = script.replace("'fltSteps': numpy.linspace(0.0, 1.0, 75).tolist(),","'fltSteps': numpy.linspace(0.0, 1.0, 250).tolist(),")
31
- # az.write(script)
 
 
 
 
 
 
 
32
 
33
  @spaces.GPU
34
  def generate_video(image):
@@ -42,7 +49,8 @@ def generate_video(image):
42
  subprocess.run(["ls","-al","/tmp"])
43
  return "/tmp/autozoom.mp4"
44
 
45
- def get_video(image):
 
46
  video_path = generate_video(image)
47
  clip = VideoFileClip("/tmp/autozoom.mp4")
48
  duration = clip.duration / 2
@@ -53,6 +61,11 @@ def get_video(image):
53
  with gr.Blocks() as demo:
54
  gr.Markdown("""# 3D Zoom Video Generator!""")
55
  image = gr.Image()
 
 
 
 
 
56
  submit_image = gr.Button(value="Generate Video")
57
  video = gr.Video()
58
  submit_image.click(fn=get_video,inputs=image,outputs=video)
 
23
  subprocess.run(["mv", "./network-refinement.pytorch", "./3d-ken-burns/models/disparity-refinement.pytorch"])
24
  subprocess.run(["mv", "./network-inpainting.pytorch", "./3d-ken-burns/models/pointcloud-inpainting.pytorch"])
25
 
26
+ subprocess.run(["cp", "./3d-ken-burns/autozoom.py", "./3d-ken-burns/autozoom-original.py"])
27
+
28
+ def update_parameters(fltShift=100, fltZoom=1.25, steps1=0.0, steps2=1.0, frames=240, fps=30):
29
+ with open ('./3d-ken-burns/autozoom-original.py','r') as azo:
30
+ script = azo.read()
31
+ script = script.replace("'fltShift': 100.0",f"'fltShift': {fltShift}")
32
+ script = script.replace("'fltZoom': 1.25",f"'fltZoom': {fltZoom}")
33
+ script = script.replace("'fltSteps': numpy.linspace(0.0, 1.0, 75).tolist(),",f"'fltSteps': numpy.linspace({steps1}, {steps2}, {frames}).tolist(),")
34
+ script = script.replace(", fps=25)",f", fps={fps})")
35
+ with open ('./3d-ken-burns/autozoom.py','w') as az:
36
+ az.write(script)
37
+ az.truncate()
38
+ az.seek(0)
39
 
40
  @spaces.GPU
41
  def generate_video(image):
 
49
  subprocess.run(["ls","-al","/tmp"])
50
  return "/tmp/autozoom.mp4"
51
 
52
+ def get_video(image,fltShift=100, fltZoom=1.25, steps1=0.0, steps2=1.0, frames=240, fps=30):
53
+ update_parameters(fltShift, fltZoom, steps1, steps2, frames, fps)
54
  video_path = generate_video(image)
55
  clip = VideoFileClip("/tmp/autozoom.mp4")
56
  duration = clip.duration / 2
 
61
  with gr.Blocks() as demo:
62
  gr.Markdown("""# 3D Zoom Video Generator!""")
63
  image = gr.Image()
64
+ fltShift = gr.Slider(label="Flat Shift",minimum=0,maximum=1000,step=1,value=100)
65
+ fltZoom = gr.Slider(label="Flat Zoom",minimum=0.0,maximum=5.0,value=1.3,step=0.1)
66
+ steps1 = gr.Slider(label="Steps1",minimum=0.0,maximum=5.0,value=0.0,step=0.1)
67
+ steps2 = gr.Slider(label="Steps2",minimum=0.0,maximum=5.0,value=1.0,step=0.1)
68
+ frames = gr.Slider(label="Frames",minimum=50,maximum=10000,step=1,value=240)
69
  submit_image = gr.Button(value="Generate Video")
70
  video = gr.Video()
71
  submit_image.click(fn=get_video,inputs=image,outputs=video)