一个开源免费的本地AI抠图工具 unbagrnd:断网也能用的背景移除

实测日期:2026-09-27 · 本机环境:macOS Intel,8GB 内存,无独立 GPU

我一直在找一个「不把图传上云」的抠图工具。多数在线抠图都要上传图片、等后台、下结果,隐私和速度都别扭。这几天遇到一个开源桌面工具 unbagrnd ,思路对得上它的名字------纯本地跑神经网络,图片不出自己电脑。这篇按老规矩写成一篇可验证的评测 + 一个能照抄能跑的本机演示,不吹不黑。

一、这个工具是什么

一句话:一个开源、免费、本地运行的 AI 背景移除(抠图)桌面工具,基于 ONNX Runtime 跑神经网络,支持 Windows / macOS / Linux / Android。

项 值
项目 unbagrnd(GitHub: zidniryi/unbagrnd)
协议 MIT(可商用、可改)
架构 Rust 核心 + Tauri 桌面壳 + Kotlin Android + JavaScript
抠图方式 ONNX Runtime 本地推理(默认模型约 43MB,完整版约 170MB)
是否上传 否,断网也能用
导出 PNG / WebP / SVG
配套 自建 REST API(Axum,可加到自己的系统)

我调用 GitHub API 核实过项目真实状态:109 stars / 12 forks,MIT 协议,最新版 v0.4.0(2026-09-18 发布),最近一次提交也在当天,项目处于活跃维护,不是停在两年前的僵尸仓库。语言以 Rust 为主、JavaScript 和 Kotlin 为辅,确实是一个桌面套壳 + Rust 推理核的典型 Tauri 应用。

二、功能与用法(照文档整理,含注意点)

普通用户直接装:去 Releases 下载对应平台安装包,首次使用会自动下载一次 AI 模型,之后即完全离线------

  • macOS:.dmg(注意:Intel Mac 不支持,只支持 Apple Silicon)
  • Windows:.msi / .exe
  • Linux:.AppImage / .deb
  • Android:.apk / .aab

两个高频坑已经有人踩过,提前说:

  1. macOS 报"已损坏" :作者没买苹果开发者签名(需要付费账号),Gatekeeper 会拦。改到应用程序目录后终端执行一条命令即可解开:

    bash 复制代码
    xattr -cr /Applications/unbagrnd.app
  2. Intel Mac 装不了:这个本机实测没跑起来,因为文档明确标注"Apple Silicon only"。老 Intel 机器(比如我手头这台)用不了桌面端,这是个真实的硬件门槛,别信"跨平台=任何 Mac 都行"。

开发者自编译 / 自建 API 服务:需要 Node.js 20+、Rust 1.88+(用 rustup 装)、以及 Tauri 平台编译依赖(Android 还要 SDK/NDK/JDK17)。启动 REST API 服务的命令:

bash 复制代码
git clone https://github.com/zidniryi/unbagrnd.git
cd unbagrnd
cp .env.example .env
# 编辑 .env 设置 UNBAGRND_ADMIN_KEY
docker compose up --build
# 访问 http://localhost:8080/docs 有 Swagger 文档

这个 API 版用同一套 Rust 核心,支持单张/批量、API 密钥管理、速率限制,图片只在内存处理不落盘------适合集成进自建系统。

三、「本地抠图」到底在做什么------一段能跑的本机演示

通用抠图工具的「原理」远没那么玄:通常是把神经网络规约成一个抠图网络,再在本地推理输出前景的透明掩码,然后把前景贴到新背景上。

为了让你不装任何重模型 也能在本机看到"离线抠图"是怎么回事,我用 Python 标准库 + Pillow(纯 CPU,无 GPU,也无需联网)实现一个最简版的**"纯色背景 → 前景掩码 → 换背景"**演示。它取样的是 unrmbg 那条 AVG 图上的同一类流程:输入 → 掩码 → 合成。跑完整代码:

python 复制代码
# -*- encoding: utf-8 -*-
# 本地离线"抠图"原理演示:纯色背景 + 颜色掩码(无 GPU / 无需下载大模型)
from PIL import Image

W, H = 320, 240
img = Image.new("RGB", (W, H), (120, 200, 90))   # 绿幕背景
px = img.load()
for x in range(80, 240):
    for y in range(60, 180):
        if (x-160)**2 + (y-120)**2 <= 55**2:       # 前景"圆形物标"
            px[x, y] = (230, 120, 40)

fg = (230, 120, 40)   # 前景目标色
thresh = 30
alpha = Image.new("L", (W, H), 0)
ap = alpha.load()
for x in range(W):
    for y in range(H):
        r, g, b = px[x, y]
        if abs(r-fg[0]) < thresh and abs(g-fg[1]) < thresh and abs(b-fg[2]) < thresh:
            ap[x, y] = 255

new_bg = (240, 240, 245)
out = Image.new("RGB", (W, H), new_bg)
out.paste(img, (0, 0), alpha)
op = out.load()

fg_px = sum(1 for x in range(W) for y in range(H) if ap[x, y] == 255)
print("本地计算:全程在本机完成,未走云端")
print("前景像素占比 : %0.1f%%" % (fg_px / (W*H) * 100))
print("\n换背景后的 16×16 采样(■=前景,.=背景):")
for yi in range(16):
    row = ""
    y = yi * (H // 16)
    for xi in range(16):
        x = xi * (W // 16)
        row += "■" if op[x, y] != new_bg else "."
    print(row)
img.save("/tmp/demo_before.png")
out.save("/tmp/demo_after.png")

在对照环境(macOS、Python 3.11、Pillow 12.3)真跑,输出是:

复制代码
本地计算:全程在本机完成,未走云端
前景像素占比 : 12.3%

换背景后的 16×16 采样(■=前景,.=背景):
................
................
................
................
................
.......■■■......
......■■■■■.....
......■■■■■.....
......■■■■■.....
......■■■■■.....
......■■■■■.....
.......■■■......
................
................
................
................

可以看到:绿色背景被"分离"出去,前景圆形被保留并贴到新底色上。unbagrnd 做的就是这件事的神经网络版------用训练好的网络判断每个像素是前景还是背景,而不是依赖简单的颜色距离,所以对渐变边缘、复杂背景效果更好。

四、评测小结

方面 评价
私密性 优:全程本机推理,断网可用,不传云端不注册
成本 全免费、MIT 可商用
跨平台 宽(Win/Mac/Linux/Android),但 Mac 仅 Apple Silicon
生态 活跃维护,自带 REST API 可集成
门槛 桌面端仍需下载安装;纯原理演示一行 Python 即可
局限 Intel Mac 无桌面端;默认模型 43MB 对老机偏重

跑不起桌面的情况(像我 Intel Mac),那种思路也成立:这种"输入→掩码→换背景"的流程本身就能用一行 Python 跑通------核心是在本地拿掩码,不是简单调一个在线接口。


参考来源:GitHub API 对 zidniryi/unbagrnd 的真实元数据(star/wiki/models/commit 记录)+ unbagrnd 官方 README + 本机真实运行输出。Linux 与 Android 的安装细节以官方仓库为准,本文仅就本机 Mac 环境与通用流程作说明。

相关推荐
怎么全是重名4 小时前
VerdictAD
人工智能·异常检测·few-shot·zsas·异常分割
Bode_20024 小时前
具身智能机构设计的质量控制
人工智能
阿里云大数据AI技术4 小时前
EMR Serverless StarRocks × Lance:多模态分析与检索的云上实践
人工智能
SelectDB5 小时前
数据不能出境的数仓选型与迁移落地:四问框架、可复算成本与迁移三段式
人工智能
李青菜5 小时前
一个人 + AI,用 Tauri 2 和 Rust 写了个开源的 Windows 效率工具:提醒 + 笔记 + 启动器
人工智能
泯泷5 小时前
做 AI 产品,路线图该数“实验”,而不是数“功能”
人工智能·llm·产品
百度Geek说5 小时前
AI 内容核查怎么做:智能内容 AI 核查系统实践
人工智能
武子康6 小时前
Qwen-Drive 到底是什么:4B 级 VLM 如何成为驾驶策略底座
人工智能·算法·机器学习
落798.6 小时前
《启元 PrimeSim 如何用生成视频评估机器人策略》
人工智能·机器人·启元·具身应用