Free, open-source, AI-powered background removal for PC β works with Zoom, Google Meet, Microsoft Teams, and OBS Studio. No subscription, no cloud, 100% runs locally.
GrobeCam is a desktop application that uses AI (MediaPipe Selfie Segmentation) to remove your webcam background in real time and replace it with:
- πΌοΈ Custom images (JPG, PNG, WEBP)
- π¬ Looping videos (MP4, MOV, AVI)
- π¨ Gaussian blur (light, medium, heavy)
- π¨ Solid colors (with color picker)
- π’ Virtual green screen (for OBS chroma key)
The output is sent to a virtual camera that appears in Zoom, Google Meet, Teams, and OBS.
| Component | Minimum | Recommended |
|---|---|---|
| OS | Windows 10 | Windows 11 |
| CPU | Intel Core i3 (dual-core) | Intel Core i5+ (quad-core) |
| RAM | 4 GB | 8 GB |
| GPU | Not required | Any (no GPU needed) |
| Python | 3.11+ | 3.12 |
| Webcam | USB or built-in | 1080p USB |
| Virtual Cam | OBS Virtual Camera | OBS Virtual Camera |
Download from python.org/downloads
Make sure to check "Add Python to PATH" during installation.
Download from obsproject.com
After installing, open OBS at least once to register the virtual camera driver.
# Clone
git clone https://github.com/yourrepo/grobecam.git
cd grobecam
# Or download ZIP and extract itpip install PyQt6 opencv-python mediapipe onnxruntime numpy pillow pyvirtualcam psutilThis may take 2β5 minutes as it downloads MediaPipe and OpenCV.
python main.py# Full quick start (copy-paste ready):
pip install PyQt6 opencv-python mediapipe onnxruntime numpy pillow pyvirtualcam psutil
python main.py- Start GrobeCam and click "Start Virtual Camera" in the Output tab
- Open Zoom β Settings β Video
- Set Camera to "OBS Virtual Camera" or "GrobeCam"
- Your background-removed feed is now live in Zoom
- Start GrobeCam and activate the virtual camera
- In Chrome/Edge, go to meet.google.com
- Click the three dots β Settings β Video
- Select "OBS Virtual Camera"
- Start GrobeCam virtual camera
- In Teams β Settings β Devices β Camera
- Select "OBS Virtual Camera"
- In OBS, add a new Video Capture Device source
- Select "OBS Virtual Camera" or the GrobeCam device
- Alternatively, use OBS's own chroma key with Green Screen mode
Place image or video files in the backgrounds/ folder:
GrobeCam/
βββ backgrounds/
βββ office.jpg
βββ forest.png
βββ looping_city.mp4
βββ (your files here)
Supported formats:
- Images:
.jpg,.jpeg,.png,.webp,.bmp - Videos:
.mp4,.mov,.avi,.mkv
You can also use the "Add Background" button in the app to browse and import files automatically.
| Situation | Recommendation |
|---|---|
| High CPU usage (>70%) | Switch to Performance mode in the Perf tab |
| Choppy video | Enable Auto Quality checkbox |
| Best efficiency | Use Blur Medium instead of image backgrounds |
| Laptop on battery | Use Performance mode + Blur Light |
| Reduce RAM usage | Avoid loading large video backgrounds |
Auto Quality Mode: GrobeCam automatically reduces AI inference resolution when CPU load exceeds 80%, and restores quality when load drops below 50%.
- Make sure your webcam is plugged in and not used by another app (Zoom, Teams, etc.)
- Try a different Camera index (0, 1, 2) in the Output tab
- Click "Refresh Cameras" button
- On Windows: check Settings β Privacy β Camera β allow desktop apps
- Make sure OBS Studio is installed (not just downloaded)
- Open OBS at least once to register the virtual camera driver
- Reinstall OBS if needed
- Run:
pip install pyvirtualcam --upgrade - Restart GrobeCam after installing pyvirtualcam
- Switch to Performance mode (Perf tab)
- Enable Auto Quality
- Use Blur mode instead of image/video backgrounds
- Close other heavy applications
- Ensure you have good, even lighting (face the light source)
- Increase Edge Feather slider for softer edges
- Adjust Mask Sensitivity slider
- Switch to Quality mode if your CPU allows
- Make sure all dependencies are installed:
pip install -r requirements.txt - Check Python version:
python --version(need 3.11+) - Try:
pip install mediapipe --upgrade
pip install pyvirtualcam
# If that fails:
pip install pyvirtualcam --pre
# OBS Virtual Camera must be installed firstTo distribute GrobeCam as a standalone executable:
build.batOr manually:
pip install pyinstaller
pyinstaller --onefile --windowed --name "GrobeCam" ^
--add-data "backgrounds;backgrounds" ^
--hidden-import "mediapipe" ^
main.pyThe .exe will be in the dist/ folder. Share GrobeCam.exe with anyone β no Python installation required.
GrobeCam/
βββ main.py β App entry point
βββ requirements.txt β Dependencies
βββ build.bat β Windows build script
β
βββ core/
β βββ pipeline.py β Main video pipeline thread
β βββ segmenter.py β MediaPipe AI segmentation
β βββ compositor.py β Background blending
β βββ virtual_camera.py β pyvirtualcam wrapper
β βββ recorder.py β Video recording
β βββ performance.py β CPU/RAM monitor
β
βββ ui/
β βββ main_window.py β Main PyQt6 window
β βββ preview_widget.py β Live video preview
β βββ background_panel.py β Background library sidebar
β βββ controls_panel.py β Settings tabs
β βββ stats_bar.py β Bottom status bar
β βββ styles.py β QSS dark theme
β
βββ backgrounds/ β Your custom backgrounds here
MIT License β Free to use, modify, and distribute.
Copyright (c) 2024 GrobeCam Contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software.
- MediaPipe β AI selfie segmentation
- OpenCV β Computer vision
- PyQt6 β GUI framework
- pyvirtualcam β Virtual camera output
- OBS Project β Virtual camera driver