lucida-remove-background
GitHub本地移除图片背景并生成透明PNG,保留玻璃、烟雾等半透明细节。支持Lucida与BiRefNet-HR模型自动切换,处理产品图、插画及VFX素材,提供边缘优化与色彩去污选项。
Trigger Scenarios
Install
npx skills add Yuki001/game-dev-skills --skill lucida-remove-background -g -y
SKILL.md
Frontmatter
{
"name": "lucida-remove-background",
"description": "Remove image backgrounds locally with Lucida's bgr CLI and save transparent RGBA PNGs while preserving soft alpha in glass, smoke, glow and VFX, camouflage, text and logos, line art, illustrations, and print designs. Use when a user asks to remove, erase, isolate, cut out, or make the background of an image transparent; prefer Lucida for translucent or effect-heavy artwork and BiRefNet-HR for high-resolution solid physical objects or product photos."
}
Lucida Background Removal
Use the bgr executable from egeorcun/lucida. Preserve the source image and create a separate transparent PNG.
Workflow
-
Resolve the input image and confirm it exists.
-
Use the user's output path when provided. Otherwise, write
<input-stem>-transparent.pngbeside the input. Do not overwrite the source unless the user explicitly requests it. -
Check whether
bgris available:bgr --helpIf the current environment is sandboxed, run all
bgrcommands in the user's normal terminal. -
If
bgris missing, verify thatuvis available and install the CLI:uv tool install --from git+https://github.com/egeorcun/lucida.git my-bg-removerThe package requires Python 3.12 or newer. The installation exposes one executable:
bgr. -
Select the model:
- Use
lucidaby default, especially for glass, partial transparency, smoke, glow, VFX, camouflage, text or logos with soft shadows, line art, illustrations, and print or sticker designs. - Use
birefnet-hrfor high-resolution general segmentation, especially solid physical subjects, product photos, or when Lucida keeps unwanted low-alpha background haze. Expect higher compute and memory use because it processes at 2048×2048. - Read references/models.md only when an alternate model, a versioned local checkpoint, or model-loading troubleshooting is needed.
- Use
-
Run the removal command with quoted paths:
bgr remove "<input-path>" -o "<output-path>.png" --model lucidaReplace
lucidawithbirefnet-hrwhen that model better matches the subject. -
Confirm that the command succeeds and the output PNG exists. Inspect the result when image viewing is available, paying particular attention to partial transparency, holes, fine edges, retained background haze, and color fringing.
-
Return the output file to the user and state which model and optional flags were used.
Optional passes
- Add
--refinewhen the first result has visibly rough or broken edges. Treat it as a retry, not a default, because refinement adds processing and can change soft boundaries. - Keep color decontamination enabled by default. Add
--no-decontaminateonly when decontamination shifts intentional glow, translucent color, or edge color. - Change one variable per retry so the effect of the model or flag remains clear.
Examples:
bgr remove "input.jpg" -o "output.png" --model lucida --refine
bgr remove "product.jpg" -o "product-transparent.png" --model birefnet-hr
bgr remove "glow.png" -o "glow-transparent.png" --model lucida --no-decontaminate
Weight behavior
- The current
lucidaregistry entry uses the Hugging Face model IDegeorcun/lucida. On first use, Transformers downloads the published weights to its cache; allow time and network access for this download. - The
birefnet-hrregistry entry uses the Hugging Face model IDZhengPeng7/BiRefNet_HRand downloads its published weights to the same cache on first use. - The separate
lucida-v7registry entry expects a training checkpoint atdata/checkpoints/epoch_7.pth, resolved from the command's working directory. Use that entry only when the matching training checkpoint is already available at that exact path. - Do not rename the published
model.safetensorstoepoch_7.pth: the local entry expects a training-checkpoint payload containing amodelstate dictionary.
Guardrails
- Always use PNG for transparent output. JPEG cannot preserve an alpha channel.
- Keep the original dimensions unless the user explicitly requests resizing.
- Do not claim success from the command exit alone when visual inspection is possible.
- Do not switch to experimental or versioned checkpoints without explaining the choice.
Version History
- ea7d48d Current 2026-08-13 10:09


