rembg

Media

Intro

rembg 是一个自动去除图片背景的工具。它可以作为命令行、Python 库、HTTP server 或 Docker 容器使用,适合把“抠图”这种本来需要手工处理的步骤放进脚本里。

My Use

我主要用它处理R包的sticker。它不是 Photoshop 的替代品,而是一个批处理入口:先自动去背景,得到可用的透明 PNG,再按需要用 ImageMagick 或设计工具收尾。

When to Use / Not Use

适合

  • 人像、物体、产品图去背景
  • 批量生成透明 PNG 素材
  • 在脚本里处理一组图片
  • 快速生成封面、贴纸、头像素材
  • 搭配 ImageMagick 做后续裁剪、缩放和压缩

不适合

  • 边缘极复杂、毛发很多、背景和主体颜色接近的图片
  • 需要像素级精修的商业素材
  • 对模型输出稳定性要求很高的自动化生产流程
  • 不想下载模型或没有合适 Python 环境的场景

Gotchas

  • 新版安装要根据硬件选择 extra:CPU 通常用 rembg[cpu,cli]
  • 首次运行会下载模型,离线环境要提前准备模型缓存
  • 输出通常是带 alpha 的 PNG,后续转 JPG 会丢失透明通道
  • 自动抠图不是魔法,复杂边缘经常需要人工修
  • GPU 版本依赖 ONNX Runtime、CUDA 或 ROCm,环境比 CPU 版麻烦

My Setup

# 安装 CLI(CPU)
pip install "rembg[cpu,cli]"

# 单张图片去背景
rembg i input.jpg output.png

# 批量处理目录
rembg p input-dir output-dir

# 使用轻量模型
rembg i -m u2netp input.jpg output.png

Story

去背景曾经是典型的“打开软件、慢慢抠”的活。rembg 把它变成了一条命令:效果不总是完美,但足够快,尤其适合先得到一个可编辑的透明素材。我的使用方式很简单:先自动化拿到 80 分结果,再决定要不要花人工时间补最后 20 分。

Minimal Example

# 本地图片去背景
rembg i input.jpg output.png

# 批量去背景
rembg p photos cutouts

# 通过管道处理远程图片
curl -s https://example.com/input.png | rembg i > output.png

References