diff --git a/.gitignore b/.gitignore index b5e8bca..e463adc 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ node_modules/ package-lock.json .mypy_cache/ .vscode/ +*.egg-info diff --git a/main.py b/bodypix-background/__main__.py similarity index 83% rename from main.py rename to bodypix-background/__main__.py index 91ebb5e..8b61513 100644 --- a/main.py +++ b/bodypix-background/__main__.py @@ -3,6 +3,7 @@ import cv2 from pyfakewebcam import FakeWebcam import numpy as np from camera import Camera +from argparse import ArgumentParser from signal import signal, SIGINT def process_mask(m, shape): @@ -29,7 +30,7 @@ def get_background(uri=None): backdrop = None if uri is not None: backdrop = cv2.resize( - cv2.UMat(cv2.imread('/home/rozek/Pictures/IMG_20191013_181848.jpg')), + cv2.UMat(cv2.imread(uri)), (h, w) ).get().astype(np.uint8) else: @@ -43,6 +44,14 @@ def stop(signal_received, stack_frame): running = False print("Stopping...") +parser = ArgumentParser(description="Virtual Backgrounds with Bodypix") +parser.add_argument( + "--background", + type=str, + help="The background to use. If not specified, will be a blur of the initial frame." +) +args = vars(parser.parse_args()) + # Start Camera camera = Camera() @@ -56,7 +65,7 @@ if __name__ == "__main__": sock = ctx.socket(zmq.REQ) sock.connect('ipc:///tmp/bodypix') - background, (width, height) = get_background() + background, (width, height) = get_background(args['background']) fake = FakeWebcam('/dev/video20', height, width) running = True diff --git a/bodypix-background/__pycache__/__main__.cpython-38.pyc b/bodypix-background/__pycache__/__main__.cpython-38.pyc new file mode 100644 index 0000000..83ea09e Binary files /dev/null and b/bodypix-background/__pycache__/__main__.cpython-38.pyc differ diff --git a/bodypix-background/__pycache__/camera.cpython-38.pyc b/bodypix-background/__pycache__/camera.cpython-38.pyc new file mode 100644 index 0000000..45e9b25 Binary files /dev/null and b/bodypix-background/__pycache__/camera.cpython-38.pyc differ diff --git a/camera.py b/bodypix-background/camera.py similarity index 100% rename from camera.py rename to bodypix-background/camera.py diff --git a/setup.py b/setup.py index 1abefaf..1996b00 100644 --- a/setup.py +++ b/setup.py @@ -7,6 +7,7 @@ setup(name="bodypix-background", install_requires=[ "opencv-python~=4.2.0.34", "numpy~=1.18.3", - "pyzmq~=19.0.0" + "pyzmq~=19.0.0", + "pyfakewebcam==0.1.0" ] )