Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import cv2
- import numpy as np
- fg_video = cv2.VideoCapture("videoplayback.mp4")
- bg_video = cv2.VideoCapture("Pexels Videos 2098989.mp4")
- ret, frame = fg_video.read()
- assert ret
- h,w = frame.shape[:2]
- fourcc = cv2.VideoWriter_fourcc(*'mp4v')
- out = cv2.VideoWriter('composite.mp4',fourcc, 30.0, (w, h))
- bound = 100
- while True:
- ret, fg = fg_video.read()
- if not ret: break
- ret, bg = bg_video.read()
- if not ret: break
- lower = np.array([0, 100, 0])
- upper = np.array([bound, 255, bound])
- mask = cv2.inRange(fg, lower, upper)
- # masked_image = np.copy(frame)
- fg[mask != 0] = [0, 0, 0]
- bg = cv2.resize(bg, (w, h))
- # cv2.imshow("background_image", background_image)
- bg[mask == 0] = [0, 0, 0]
- final_image = bg + fg
- out.write(final_image)
- fg_video.release()
- bg_video.release()
- out.release()
- cv2.destroyAllWindows()
Add Comment
Please, Sign In to add comment