diff --git a/configs/birefnet.yaml b/configs/birefnet.yaml new file mode 100644 index 0000000..abcaac1 --- /dev/null +++ b/configs/birefnet.yaml @@ -0,0 +1,61 @@ +# Same as default.yaml but with the BiRefNet segmentation backend instead of +# anime-seg. BiRefNet is a general salient-object segmenter (not anime-specific), +# so it can find subjects anime-seg misses. It ships custom modelling code, so it +# needs trust_remote_code (handled in code) plus timm / einops / kornia, and the +# first run downloads weights from HuggingFace (set HF_ENDPOINT behind a firewall). +screen_color: null + +model: + model_name: hustvl/vitmatte-base-composition-1k + device: cuda + matting_method: vitmatte + fallback_to_chroma_alpha: false + +segmentation: + enabled: true + backend: birefnet + model_name: ZhengPeng7/BiRefNet + device: cuda + input_size: 1024 + +trimap: + sure_bg_threshold: 0.92 + sure_fg_threshold: 0.12 + unknown_radius_ratio: 0.012 + fg_safe_radius_ratio: 0.006 + seg_core_threshold: 0.60 + seg_loose_threshold: 0.08 + mode: directional + seg_low: 0.15 + bg_hue_proj_min: 4.0 + +alpha_post: + chroma_suppress: true + chroma_suppress_bg_low: 0.35 + chroma_suppress_bg_high: 0.80 + chroma_suppress_strength: 1.0 + +foreground: + enabled: true + method: ml + fallback_to_unmix: true + ml_regularization: 0.00001 + edge_low: 0.005 + edge_high: 0.995 + min_unmix_alpha: 0.08 + unmix_strength: 0.70 + local_strength: 0.45 + local_blur_radius: 11 + local_alpha_threshold: 0.92 + local_bg_confidence_max: 0.20 + green_excess_margin: 0.015 + bg_confidence_weight: 0.70 + +despill: + enabled: true + edge_low: 0.005 + strength: 0.92 + green_excess_margin: 0.015 + edge_expand_radius: 2 + alpha_weight_floor: 0.35 + color_margin_lab: 4.0