Skip to content

devrazal/GrobeCam

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

GrobeCam β€” AI Background Remover

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.


What is GrobeCam?

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.


System Requirements

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

Installation (5 Steps)

Step 1: Install Python 3.11+

Download from python.org/downloads

Make sure to check "Add Python to PATH" during installation.

Step 2: Install OBS Studio (for Virtual Camera)

Download from obsproject.com

After installing, open OBS at least once to register the virtual camera driver.

Step 3: Clone or download GrobeCam

# Clone
git clone https://github.com/yourrepo/grobecam.git
cd grobecam

# Or download ZIP and extract it

Step 4: Install Python dependencies

pip install PyQt6 opencv-python mediapipe onnxruntime numpy pillow pyvirtualcam psutil

This may take 2–5 minutes as it downloads MediaPipe and OpenCV.

Step 5: Run GrobeCam

python main.py

Quick Start

# Full quick start (copy-paste ready):
pip install PyQt6 opencv-python mediapipe onnxruntime numpy pillow pyvirtualcam psutil
python main.py

How to Use With Video Conferencing Apps

Zoom

  1. Start GrobeCam and click "Start Virtual Camera" in the Output tab
  2. Open Zoom β†’ Settings β†’ Video
  3. Set Camera to "OBS Virtual Camera" or "GrobeCam"
  4. Your background-removed feed is now live in Zoom

Google Meet

  1. Start GrobeCam and activate the virtual camera
  2. In Chrome/Edge, go to meet.google.com
  3. Click the three dots β†’ Settings β†’ Video
  4. Select "OBS Virtual Camera"

Microsoft Teams

  1. Start GrobeCam virtual camera
  2. In Teams β†’ Settings β†’ Devices β†’ Camera
  3. Select "OBS Virtual Camera"

OBS Studio

  1. In OBS, add a new Video Capture Device source
  2. Select "OBS Virtual Camera" or the GrobeCam device
  3. Alternatively, use OBS's own chroma key with Green Screen mode

Adding Custom Backgrounds

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.


Performance Tips for Low-End PCs

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%.


Troubleshooting

Camera not detected

  • 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

Virtual camera not showing in Zoom/Meet

  • 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

High CPU usage

  1. Switch to Performance mode (Perf tab)
  2. Enable Auto Quality
  3. Use Blur mode instead of image/video backgrounds
  4. Close other heavy applications

Poor background removal quality

  • 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

App crashes on startup

  • Make sure all dependencies are installed: pip install -r requirements.txt
  • Check Python version: python --version (need 3.11+)
  • Try: pip install mediapipe --upgrade

pyvirtualcam install error on Windows

pip install pyvirtualcam
# If that fails:
pip install pyvirtualcam --pre
# OBS Virtual Camera must be installed first

Building as .exe (Windows)

To distribute GrobeCam as a standalone executable:

build.bat

Or manually:

pip install pyinstaller
pyinstaller --onefile --windowed --name "GrobeCam" ^
    --add-data "backgrounds;backgrounds" ^
    --hidden-import "mediapipe" ^
    main.py

The .exe will be in the dist/ folder. Share GrobeCam.exe with anyone β€” no Python installation required.


Project Structure

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

License

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.

Acknowledgments

About

AI Background Remover App built with Python, PyInstaller, and ONNX Runtime.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors