Skip to content

Releases: nadermx/backgroundremover

v0.4.5

Choose a tag to compare

@nadermx nadermx released this 10 Jul 01:23

Fixes

  • -mt (mask threshold) is now honored in single-file and pipe modes, matching -if folder mode behavior (#188)
  • Matte/mask video output (-mk) is now written at the source resolution instead of 320px inference height, with quality-based encoding (#185)
  • Fixed a hang at the end of video processing when the container's packet count overestimated the number of decodable frames
  • GUI: import errors are now caught and shown in the error dialog instead of "Failed to process image: None" (#191, thanks @Naji-Ullah)

Other

  • Added CONTRIBUTING.md

pip install -U backgroundremover

v0.4.4

Choose a tag to compare

@nadermx nadermx released this 09 Jun 04:58

Restore functionality on environments where only moviepy 1.x is installable (e.g. Python 3.8).

  • Fall back to moviepy.editor import when the moviepy-2.x top-level import is unavailable
  • Use Clip.resized() (moviepy 2.x) or Clip.resize() (moviepy 1.x), whichever exists
  • Shim Image.ANTIALIAS -> LANCZOS (removed in Pillow 10), which moviepy 1.x's resize references
  • Relax dependency pin to moviepy>=1.0.3

BackgroundRemover v0.4.1

Choose a tag to compare

@nadermx nadermx released this 17 Feb 20:42

Highlights

  • ProRes 4444 default: Transparent video output now defaults to prores_ks with yuva444p10le (10-bit color with alpha) instead of qtrle. Much better compression, color fidelity, and NLE compatibility (DaVinci Resolve, Premiere, Final Cut Pro). The old qtrle codec is still available via --alpha-codec qtrle.

  • Smart worker scaling: Worker count (-wn) is now dynamically capped based on your actual GPU VRAM rather than a hard limit. The tool calculates per-worker memory (CUDA context + model + JIT trace + batch tensors) and prevents over-allocation that caused hangs.

  • Mask threshold for sharp edges: New -mt/--mask-threshold option binarizes the alpha mask at a given threshold (0-255) for hard/crisp cutouts — ideal for cartoonish images, logos, and illustrations.

  • Device diagnostics: Prints detected device, GPU name, and VRAM at startup so you can verify GPU acceleration is working.

New CLI Flags

Flag Description
-mt 128 / --mask-threshold 128 Binarize mask for sharp edges (0-255)

Fixes

  • #181: Video processing hanging with high worker counts — workers now dynamically capped to what GPU VRAM can support.
  • #122: Soft/blurry edges on cartoonish images — new --mask-threshold option for hard cutouts.
  • #145: No indication of GPU usage — now prints device info (CUDA/MPS/CPU) with GPU name and VRAM at startup.

Breaking Changes

  • Default transparent video codec changed from qtrle to prores_ks. Output files will be smaller with better color but require ProRes-compatible playback. Use --alpha-codec qtrle for the old behavior.

Upgrade

pip install --upgrade backgroundremover

BackgroundRemover v0.3.8

Choose a tag to compare

@nadermx nadermx released this 21 Dec 00:58

Highlights

  • Video pipeline stability and compatibility improvements across transparent outputs.

Fixes

  • #44: Use exact detected frame rate to reduce alpha mask drift.
  • #85: Explicitly map filtered video + optional audio so outputs aren’t “audio only.”
  • #49, #86: Added --alpha-codec / --alpha-pix-fmt options to control alpha video encoding; lossless default remains qtrle.
  • #98, #88, #152: More robust alpha merge pipeline and encoding options improve results on problematic videos.
  • #168: Corrected mask usage in transparentvideooverimage so alpha is applied consistently.

User-facing changes

  • New CLI flags: --alpha-codec (auto, qtrle, prores_ks, libvpx-vp9) and --alpha-pix-fmt.
  • README updated with alpha codec guidance and framerate override examples.

BackgroundRemover v0.3.7

Choose a tag to compare

@nadermx nadermx released this 10 Dec 03:18

Fix requirement minimum

BackgroundRemover v0.3.6

Choose a tag to compare

@nadermx nadermx released this 10 Dec 01:58

Changes in 0.3.6:

  • GUI application added (PR #175)
  • Background image now optional, doesn't hang on stdin (PR #179)
  • Better CLI validation with helpful error messages
  • Improved multiprocessing error handling
  • Warning for high worker counts

BackgroundRemover v0.3.5

Choose a tag to compare

@nadermx nadermx released this 28 Oct 23:21

Fixed

Docker Issues

  • Fixed error running on Docker (#176)
  • Resolved issue where Docker always downloads models (#105)
  • Fixed video background remover not working in Docker (#120)

Video Processing

  • Fixed transparent .mov files not being created (#135)
  • Resolved video removal producing mask only (#134)
  • Fixed invalid argument error when creating transparent mov files (#115)
  • Fixed overlay transparent over image with "invalid value" error (#116)

Runtime Errors

  • Fixed RuntimeError: operator torchvision::nms does not exist (#172)
  • Resolved "DEBUG: path to be checked: C:\Users\kroupu2net\u2net.pth" error (#164)
  • Fixed "Run out of input" error (#110)

API Issues

  • Fixed API rotating images incorrectly (#144)

Platform Support

  • Addressed torchaudio ARM64 compatibility concerns (#162)

Added

Features

  • Added support for pipe read/out (#170)
  • Added HEIC image format support (#151)
  • Added ability to fill with custom colors (blue, red, etc.) (#74)
  • Added mask generation for images (#67)

Documentation

  • Clarified how to run test cases (#169)
  • Improved guidance on using background images with images (#113)

Total Issues Resolved: 18

BackgroundRemover v0.3.4

Choose a tag to compare

@nadermx nadermx released this 08 Apr 21:45

Had a issue with requirements and importing moviepy

BackgroundRemover v0.3.2

Choose a tag to compare

@nadermx nadermx released this 08 Apr 21:01

Issue with Moviepy import. Bump version

BackgroundRemover v0.3.1

Choose a tag to compare

@nadermx nadermx released this 08 Apr 20:09

Fix longstanding video import issue. Upgrade moviepy