Default to BiRefNet + CPU; add --seg-backend to pick the segmenter
- Segmentation backend now defaults to birefnet (ZhengPeng7/BiRefNet); anime-seg is selected at runtime with --seg-backend anime-seg, which also swaps in the matching weights (unknown backends raise). Config files stay for detailed tuning, not backend selection. - Default device is now cpu everywhere (dataclass defaults, default.yaml, birefnet.yaml); pass --device cuda for GPU. Avoids a hard CUDA-required failure on machines without a CUDA-enabled PyTorch build. - Docs: README + workflow status note updated (backend via --seg-backend, CPU default, examples no longer force --device cuda). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -30,6 +30,7 @@ def main(
|
||||
fg_safe_radius_ratio: float | None = typer.Option(None, "--fg-safe-radius-ratio", min=0.0),
|
||||
despill: bool | None = typer.Option(None, "--despill/--no-despill"),
|
||||
trimap_mode: str | None = typer.Option(None, "--trimap-mode", help="Trimap mode (segmentation pipeline): directional | seg | directional-hard-bg"),
|
||||
seg_backend: str | None = typer.Option(None, "--seg-backend", help="Segmentation backend: birefnet (default) | anime-seg"),
|
||||
) -> None:
|
||||
try:
|
||||
settings = override_settings(
|
||||
@@ -45,6 +46,7 @@ def main(
|
||||
fg_safe_radius_ratio=fg_safe_radius_ratio,
|
||||
despill=despill,
|
||||
trimap_mode=trimap_mode,
|
||||
seg_backend=seg_backend,
|
||||
)
|
||||
|
||||
if input_dir is not None:
|
||||
|
||||
Reference in New Issue
Block a user