Update app.py
Browse files
app.py
CHANGED
@@ -88,7 +88,7 @@ def get_frames(video_in, step, name, resize_w):
|
|
88 |
def create_video(frames, fps, type):
|
89 |
print("building video result")
|
90 |
clip = ImageSequenceClip(frames, fps=fps)
|
91 |
-
clip.write_videofile(type + "_result.mp4", fps=fps)
|
92 |
|
93 |
return type + "_result.mp4"
|
94 |
|
@@ -165,9 +165,15 @@ def infer(url_in,interpolation,fps_output,resize_n,winsize,o_flow):
|
|
165 |
alpha = 1.0/len(result_frames)
|
166 |
beta = (1.0 - alpha)
|
167 |
res = cv2.addWeighted(rgb, alpha, res, beta, 0.0, res)
|
168 |
-
rgb = cv2.cvtColor(rgb, cv2.
|
169 |
-
|
170 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
171 |
i+=1
|
172 |
prvs = nxt
|
173 |
|
@@ -222,7 +228,7 @@ with gr.Blocks() as demo:
|
|
222 |
video_input = gr.Video()
|
223 |
video_input.change(fn=loadurl, inputs=[video_input], outputs=[url_input])
|
224 |
resize_num = gr.Slider(minimum=1, maximum=4096, step=1, value=256, label="Resize to width: ")
|
225 |
-
of_check = gr.Checkbox(value=True, label="Detect motion
|
226 |
winsize_num = gr.Slider(minimum=1, maximum=256, step=1, value=15, label="Motion detection window size: ")
|
227 |
with gr.Row():
|
228 |
interpolation_slider = gr.Slider(minimum=1, maximum=5, step=1, value=1, label="Interpolation Steps: ")
|
|
|
88 |
def create_video(frames, fps, type):
|
89 |
print("building video result")
|
90 |
clip = ImageSequenceClip(frames, fps=fps)
|
91 |
+
clip.write_videofile(type + "_result.mp4", fps=fps, codec='libx265', ffmpeg_params=['-c:v', 'libx265'], audio = False)
|
92 |
|
93 |
return type + "_result.mp4"
|
94 |
|
|
|
165 |
alpha = 1.0/len(result_frames)
|
166 |
beta = (1.0 - alpha)
|
167 |
res = cv2.addWeighted(rgb, alpha, res, beta, 0.0, res)
|
168 |
+
rgb = cv2.cvtColor(rgb, cv2.COLOR_GRAY2RGBA)
|
169 |
+
|
170 |
+
lo = np.array([0,0,0,0])
|
171 |
+
hi = np.array([0,0,0,255])
|
172 |
+
mask = cv2.inRange(rgb, lo, hi)
|
173 |
+
rgb[mask>0] = (0,0,0,0)
|
174 |
+
|
175 |
+
cv2.imwrite(f"opticalfb{i}.png", rgb)
|
176 |
+
depth_frames.append(f"opticalfb{i}.png")
|
177 |
i+=1
|
178 |
prvs = nxt
|
179 |
|
|
|
228 |
video_input = gr.Video()
|
229 |
video_input.change(fn=loadurl, inputs=[video_input], outputs=[url_input])
|
230 |
resize_num = gr.Slider(minimum=1, maximum=4096, step=1, value=256, label="Resize to width: ")
|
231 |
+
of_check = gr.Checkbox(value=True, label="Detect motion to remove background: ")
|
232 |
winsize_num = gr.Slider(minimum=1, maximum=256, step=1, value=15, label="Motion detection window size: ")
|
233 |
with gr.Row():
|
234 |
interpolation_slider = gr.Slider(minimum=1, maximum=5, step=1, value=1, label="Interpolation Steps: ")
|