royshil/obs-backgroundremoval

An OBS plugin for removing background in portrait images (video), making it easy to replace the background when recording or streaming.

C++

4,601

549 commits

updated Oct 10, 2026

See the code

README

OBS Plugin: Portrait Background Removal / Virtual Green-screen and Low-Light Enhancement

GitHub Push (main) CI Total downloads Flathub GitHub release (latest by date)

A plugin for OBS Studio that allows you to replace the background in portrait images and video, as well as enhance low-light scenes.

⬇️ Download & Install OBS Background Removal ⬇️

Or, browse versions on releases page.

Not working? Please try the Lite version (Live Background Removal Lite) developed by one of us (Kaito Udagawa).

Usage

Check out the usage guide page for usage walkthrough and recommendations.

Additional tutorial videos:

How to build from source

Windows:

git clone https://github.com/royshil/obs-backgroundremoval.git

Platforms we support building from source officially:

git clone https://github.com/royshil/obs-backgroundremoval.git
cd obs-backgroundremoval
sudo ./bin/bootstrap
./bin/setup
./bin/build
sudo dpkg -i release/obs-backgroundremoval-*-linux-gnu.deb

The supported platforms are:

  • Debian Forky (x86_64 and arm64)

We plan to add building scripts for popular platforms such as Windows, Mac, and various distributions of Linux.

Introduction

This plugin is meant to make it easy to replace the background in portrait images and video. It is using a neural network to predict the mask of the portrait and remove the background pixels. It's easily composable with other OBS plugins to replace the background with e.g. an image or a transparent color.

If you like this work, which is given to you completely free of charge, please consider supporting it by sponsoring us on GitHub:

Support and Help

Reach out to us on GitHub Discussions or the OBS Plugins forum for online / immediate help.

If you found a bug or want to suggest a feature or improvement please open an issue.

If you are looking for hands-on help or private consultation please select a sponsorship tier.

Technical Details

GPU support:

  • On Windows, we plan to support WinML acceleration.
  • On Mac we support CoreML for acceleration, which is efficient on Apple Silicon. Note: This plugin does not support cross-architecture translation (Rosetta2). Intel binaries on Apple Silicon or Apple Silicon binaries on Intel will crash.
  • On Linux CUDA, ROCM (deprecated in ONNX Runtime 1.23.0), and MIGraphX are supported if this plugin is built from source. Ensure your ONNX Runtime installation has CUDA, ROCM, or MIGraphX support. For AMD GPUs, MIGraphX is recommended as ROCM was removed from ONNX Runtime starting with version 1.23.0.
  • The goal of this plugin is to be available for everyone on every system, even if they don't own a GPU.

Number of CPU threads is controllable through the UI settings. A 2-thread setting works best.

The pretrained model weights used for portrait foreground segmentation are taken from:

Image enhancement (low light) models are taken from:

Some more information about how I built it: https://www.morethantechnical.com/2021/04/15/obs-plugin-for-portrait-background-removal-with-onnx-sinet-model/ and https://www.morethantechnical.com/2023/05/20/building-an-obs-background-removal-plugin-a-walkthrough/

Code Walkthrough

This video on YouTube will take you through the major parts of the code and explain them.

Download Trends GitHub Star History

background-segmentation
computer-vision
image-segmentation
libobs
mac-osx
obs
obs-plugin
obsproject
obs-studio
obs-studio-plugin
onnx
onnx-runtime
onnxruntime
onnxruntime-gpu
plugin
video-segmentation

royshil/obs-backgroundremoval

An OBS plugin for removing background in portrait images (video), making it easy to replace the background when recording or streaming.

C++

4,601

549 commits

updated Oct 10, 2026

See the code

README

OBS Plugin: Portrait Background Removal / Virtual Green-screen and Low-Light Enhancement

GitHub Push (main) CI Total downloads Flathub GitHub release (latest by date)

A plugin for OBS Studio that allows you to replace the background in portrait images and video, as well as enhance low-light scenes.

⬇️ Download & Install OBS Background Removal ⬇️

Or, browse versions on releases page.

Not working? Please try the Lite version (Live Background Removal Lite) developed by one of us (Kaito Udagawa).

Usage

Check out the usage guide page for usage walkthrough and recommendations.

Additional tutorial videos:

How to build from source

Windows:

git clone https://github.com/royshil/obs-backgroundremoval.git

Platforms we support building from source officially:

git clone https://github.com/royshil/obs-backgroundremoval.git
cd obs-backgroundremoval
sudo ./bin/bootstrap
./bin/setup
./bin/build
sudo dpkg -i release/obs-backgroundremoval-*-linux-gnu.deb

The supported platforms are:

  • Debian Forky (x86_64 and arm64)

We plan to add building scripts for popular platforms such as Windows, Mac, and various distributions of Linux.

Introduction

This plugin is meant to make it easy to replace the background in portrait images and video. It is using a neural network to predict the mask of the portrait and remove the background pixels. It's easily composable with other OBS plugins to replace the background with e.g. an image or a transparent color.

If you like this work, which is given to you completely free of charge, please consider supporting it by sponsoring us on GitHub:

Support and Help

Reach out to us on GitHub Discussions or the OBS Plugins forum for online / immediate help.

If you found a bug or want to suggest a feature or improvement please open an issue.

If you are looking for hands-on help or private consultation please select a sponsorship tier.

Technical Details

GPU support:

  • On Windows, we plan to support WinML acceleration.
  • On Mac we support CoreML for acceleration, which is efficient on Apple Silicon. Note: This plugin does not support cross-architecture translation (Rosetta2). Intel binaries on Apple Silicon or Apple Silicon binaries on Intel will crash.
  • On Linux CUDA, ROCM (deprecated in ONNX Runtime 1.23.0), and MIGraphX are supported if this plugin is built from source. Ensure your ONNX Runtime installation has CUDA, ROCM, or MIGraphX support. For AMD GPUs, MIGraphX is recommended as ROCM was removed from ONNX Runtime starting with version 1.23.0.
  • The goal of this plugin is to be available for everyone on every system, even if they don't own a GPU.

Number of CPU threads is controllable through the UI settings. A 2-thread setting works best.

The pretrained model weights used for portrait foreground segmentation are taken from:

Image enhancement (low light) models are taken from:

Some more information about how I built it: https://www.morethantechnical.com/2021/04/15/obs-plugin-for-portrait-background-removal-with-onnx-sinet-model/ and https://www.morethantechnical.com/2023/05/20/building-an-obs-background-removal-plugin-a-walkthrough/

Code Walkthrough

This video on YouTube will take you through the major parts of the code and explain them.

Download Trends GitHub Star History

background-segmentation
computer-vision
image-segmentation
libobs
mac-osx
obs
obs-plugin
obsproject
obs-studio
obs-studio-plugin
onnx
onnx-runtime
onnxruntime
onnxruntime-gpu
plugin
video-segmentation

Significant stargazers

(top 24 of 42)

Manjunath Janardhan

57 followers · starred Jun 2025

Julien Denize

68 followers · starred Nov 2025

Greg Hurrell

1,700 followers · starred Feb 2022

Dmitriy Kovalenko

1,954 followers · starred Jul 2022