Releases: nadermx/backgroundremover
Release list
v0.4.5
Fixes
-mt(mask threshold) is now honored in single-file and pipe modes, matching-iffolder 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
Restore functionality on environments where only moviepy 1.x is installable (e.g. Python 3.8).
- Fall back to
moviepy.editorimport when the moviepy-2.x top-level import is unavailable - Use
Clip.resized()(moviepy 2.x) orClip.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
Highlights
-
ProRes 4444 default: Transparent video output now defaults to
prores_kswithyuva444p10le(10-bit color with alpha) instead ofqtrle. Much better compression, color fidelity, and NLE compatibility (DaVinci Resolve, Premiere, Final Cut Pro). The oldqtrlecodec 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-thresholdoption 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-thresholdoption 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
qtrletoprores_ks. Output files will be smaller with better color but require ProRes-compatible playback. Use--alpha-codec qtrlefor the old behavior.
Upgrade
pip install --upgrade backgroundremoverBackgroundRemover v0.3.8
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
BackgroundRemover v0.3.6
BackgroundRemover v0.3.5
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
Had a issue with requirements and importing moviepy
BackgroundRemover v0.3.2
Issue with Moviepy import. Bump version
BackgroundRemover v0.3.1
Fix longstanding video import issue. Upgrade moviepy