图片去背景

抠图/PNG 透明背景/不依赖 API(rembg 本地)

413 次访问

图 片 抠 图 · 去 背 景

✂️
拖入 / 点击 / 粘贴图片开始抠图
支持 JPG · PNG · WebP · GIF 单张或多张批量
快捷键 Ctrl+V 粘贴 · Ctrl+Z 撤销 · Ctrl+Y 重做 · 全程本地处理不上传

抠 图 速 览

颜色采样原理

基于像素 RGB 距离的洪水填充算法。容差越大,识别的颜色范围越宽,适合渐变背景;越小则越精确,适合纯色背景。

多次叠加

当背景颜色不均匀时,可在不同区域多次点击采样;每次采样的容差范围叠加,覆盖更复杂的背景。

边缘羽化

去除后的边缘做高斯模糊渐变,使主体边缘自然过渡。证件照建议 1-3px,复杂照片 4-8px。

手动擦除

采样算法对发丝、毛绒可能有残留,可用橡皮擦笔刷手动擦除残余;还原画笔可恢复误擦的区域。

输出格式选择

PNG 保留透明通道(推荐);JPG 自动填白底(证件照);WebP 体积最小但兼容性次之。

批量抠图

多张图片采用相同背景时,可一次性应用当前规则到队列中的所有图,逐张自动处理后下载。

常 见 问 题

本工具会上传我的图片吗?

不会。所有处理在浏览器本地完成,图片不离开你的设备,关闭页面即清除。

为什么我的发丝抠不干净?

颜色采样算法对发丝/毛绒等半透明像素效果有限。可尝试:①增大容差到 40-60;②使用手动橡皮擦细修;③复杂照片建议用 AI 抠图工具如 rembg、remove.bg。

抠图后能换成其他背景吗?

可以。在"预览背景"区选择 12 色证件照底色(白/蓝/红/灰),或点击🖼️上传自定义背景图替换。

支持哪些图片格式?

输入支持 JPG、PNG、WebP、GIF;输出支持 PNG(透明)、JPG(白底自动填充)、WebP。建议单张 ≤ 10MB。

容差应该设多少?

纯色背景 15-25;接近纯色(如证件照浅蓝)25-40;渐变背景 40-60;复杂背景建议先做多次小容差采样。

批量抠图的规则是什么?

批量模式下,工具会用当前的"采样颜色 + 容差 + 羽化"参数依次处理队列中每张图。建议先在第一张图上调好参数,再点"应用当前规则到全部"。

反选有什么用?

勾选"反选"后,工具会保留你采样的颜色区域,去除主体。常用于:提取背景做素材、保留特定颜色物件、镂空图案制作。

关于本工具

了解工具定位 · 使用场景 · 对比优势

使用场景

🛒

电商商品图制作

电商运营或店主需要为数百个商品制作白底图或透明底图,上传到淘宝、京东等平台。传统方法用 PS 抠图,一个商品耗时 5-10 分钟,外包抠图每张成本 1-3 元。该工具本地运行,批量导入商品照片后自动识别主体并去除背景,单张处理仅需 2-5 秒,且不经过第三方服务器,商品图片数据不会外泄。

🎨

设计师素材整理

平面设计师从 Unsplash、Pexels 等网站下载素材时,大量图片自带背景色,无法直接叠加到设计稿中。以往需要在 Figma 或 Photoshop 里手动抠图,拖慢素材整理节奏。使用该工具,设计师只需将图片拖入窗口,瞬间获得透明背景的 PNG 素材,可直接拖入设计软件使用,素材库整理效率提升 3 倍以上。

📱

社交媒体头像制作

个人用户想用自己的照片做微信、抖音、小红书头像,但原图背景杂乱(如办公室、街道、家里)。用手机修图软件抠图效果差,头发丝边缘常残留白边。该工具基于 rembg 模型,对人物轮廓、发丝边缘处理精细,上传后直接输出透明背景头像,再叠加纯色或渐变背景即可完成,全程无需注册登录。

🖨️

证件照换背景

求职、考试报名需要蓝底或红底证件照,但手头只有白底照片。去照相馆重拍费时费钱,自己用手机拍又不符合尺寸要求。该工具一键去除原照片背景,生成透明底人像,用户再自行添加任意颜色的纯色背景层,即可在 1 分钟内完成证件照背景色更换,且不依赖网络,隐私安全。

📄

PPT 素材去底

职场人士制作 PPT 时,经常需要将产品截图、图标、人物照片等素材放入幻灯片。这些素材往往自带白色或彩色背景,与 PPT 模板不搭,手动抠图又费时。使用该工具,直接将图片拖拽去背景,获得透明 PNG 后插入 PPT,素材与页面背景自然融合,演示文稿专业度明显提升。

对比矩阵本工具 vs 竞品 vs 传统方法

维度本工具 (qubeijing.tl654.com)remove.bgPhotoshop 手动抠图
数据隐私纯浏览器端处理,不上传任何图片到服务器需上传图片到云端处理图片保存在本地,不涉及上传
处理速度1-3 秒(取决于图片大小和本地设备性能)5-15 秒(取决于服务器负载和网络)5-30 分钟(取决于图片复杂度和操作熟练度)
离线可用完全离线,断网也可使用必须联网完全离线
收费模式完全免费,无使用次数限制免费额度有限,超出后需付费需购买 Photoshop 订阅(约 ¥150/月)
操作门槛上传即处理,无需任何设置上传即处理,操作简单需学习钢笔工具、通道、蒙版等专业技能
边缘精细度适合简单到中等复杂度的图片(主体与背景对比明显)AI 模型针对人像、产品图优化,边缘精细度高完全取决于操作者技能,理论上可达到像素级精度
批量处理单张处理支持 API 批量处理(付费)需手动逐张处理,或使用动作脚本

使用指南

上手步骤 · 输入输出 · 避坑提示

输入输出示例8 个典型场景,覆盖常规、边界与易错

输入输出说明
一张白色背景的宠物猫照片(JPG格式,800x600像素)一张透明背景的PNG图片,猫的轮廓完整,毛发边缘细节保留良好典型场景:白色背景上的主体,rembg处理效果好
一张人物半身像照片(背景为复杂街景,包含树木、行人、车辆)一张透明背景的PNG图片,人物轮廓基本准确,但发丝边缘可能有少量背景残留典型场景:复杂背景,rembg对人物主体处理较稳定
一张纯色背景的产品图(如白色背景上的红色马克杯)一张透明背景的PNG图片,杯体轮廓清晰,阴影部分可能被保留或去除(取决于模型)典型场景:电商产品抠图,纯色背景处理速度快
一张分辨率极低的图片(如64x64像素的模糊图标)一张透明背景的PNG图片,但主体边缘锯齿明显,可能误判部分像素为背景边界case:低分辨率导致模型识别精度下降
一张主体与背景颜色高度接近的图片(如白色兔子在雪地中)一张透明背景的PNG图片,兔子部分区域可能被错误切除,或雪地部分被保留边界case:颜色对比度低,rembg难以区分主体与背景
一张包含多个分离主体的图片(如桌上散落的水果)一张透明背景的PNG图片,所有水果被整体保留,但水果之间的空隙可能被填充为透明边界case:多主体场景,rembg默认保留所有前景区域
一张带有半透明水印的图片(如右下角半透明logo)一张透明背景的PNG图片,水印可能被识别为主体的一部分而保留,或被错误去除易错case:半透明元素处理结果不确定,需用户检查
一张黑白线条简笔画(如手绘的苹果轮廓)一张透明背景的PNG图片,线条被保留,白色背景被去除,但细线条可能断裂易错case:非自然图像,模型可能误判线条为背景

常见错误对照8 个常踩的坑 · 错误 → 修复

1. 输入了带背景色的 JPG 图片,期望得到透明结果

错误
上传一张白色背景的 JPG 人像,直接点击下载 PNG,发现边缘有白色硬边
修复
上传前确认图片本身是纯色背景(白/绿/蓝幕),或先手动用修图工具把背景涂成纯色;JPG 压缩产生的杂色会导致 rembg 误判边缘

rembg 基于 U²-Net 模型训练,对 JPG 压缩伪影敏感;纯色背景 + 清晰边缘 = 最佳抠图效果,复杂纹理背景会残留半透明噪点

2. 下载时选了 JPG 格式,透明区域变成白色块

错误
抠图完成后,点击「下载」选择 JPG 格式保存,透明部分显示为白色方块
修复
需要透明背景时,必须选择 PNG 格式下载;JPG 不支持 Alpha 通道,透明区域会被填充为白色(或黑色,取决于浏览器/后端实现)

JPG 标准(ITU-T T.81)只支持 RGB 三通道,无 Alpha 通道;PNG(ISO/IEC 15948)支持 RGBA,透明信息才能保留

3. 上传了超大分辨率图片(>4000px),导致浏览器卡死或内存溢出

错误
上传一张 8000×6000px 的 RAW 转 JPG(约 25MB),页面无响应或提示「页面无响应」
修复
先压缩到 2000px 以内(长边),或用图片处理软件缩小后再上传;rembg 在浏览器端处理时,内存占用 ≈ 图片像素数 × 4 字节 × 模型中间层倍数

纯浏览器端 WASM 实现受限于 WebAssembly 线性内存(默认 4GB 上限);超大图会导致内存耗尽或浏览器崩溃,建议长边 ≤ 2000px

4. 把带透明通道的 PNG 再次上传去背景,结果出现黑色边缘

错误
把一张已经抠好的透明 PNG 再次上传到工具,结果边缘出现黑色锯齿或半透明像素丢失
修复
只上传原始带背景的图片(JPG/PNG 不透明),不要对已抠图的结果重复处理;如果需要调整边缘,用专业修图工具

rembg 模型输入期望是「不透明背景 + 前景物体」;透明区域的 Alpha=0 会被模型视为「无信息」,导致边缘像素预测错误,产生黑色伪影

5. 期望工具能完美识别透明物体(玻璃杯/冰块/烟雾)

错误
上传一张玻璃杯照片,希望抠出杯体且保留透明玻璃质感,结果杯体被识别为背景或只保留边缘轮廓
修复
透明/半透明物体(玻璃、水、烟雾、头发丝)需要手动辅助抠图;本工具基于语义分割,对透明材质的边界识别准确率低于不透明物体

U²-Net 训练数据集(如 PASCAL VOC、COCO)中透明物体标注极少;模型对透明度、折射、反射的物理特性无法建模,只能输出二值掩码

6. 使用前没有上传图片,直接点击「开始抠图」

错误
打开页面后,未选择任何文件,直接点击「开始抠图」按钮,页面无反应或报错
修复
先点击上传区域选择图片(支持 .png/.jpg/.webp),等待图片预览加载完成后,再点击处理按钮;部分浏览器 file input 为空时触发 change 事件会返回 null

HTML <input type='file'> 在无文件时 files 属性为 FileList { length: 0 };JS 代码中 if (!file) return 会阻止后续处理,用户需先选文件

7. 把工具当批量处理引擎,一次上传几十张图

错误
一次性拖拽 30 张图片到上传区域,期望全部自动处理并打包下载
修复
每次只处理一张图片;如果需要批量抠图,使用本地 Python 脚本(pip install rembg)或商业 API(remove.bg 等)

浏览器端单次处理受限于单线程 + WASM 内存;多图并发会导致内存竞争、模型加载冲突,且无队列管理逻辑,建议单张处理

8. 上传了包含敏感信息(人脸/车牌/身份证)的图片,担心隐私泄露

错误
上传一张清晰的正脸照片或身份证扫描件,然后担心图片被上传到服务器
修复
确认工具说明中的「纯本地处理」标识;本工具所有计算在浏览器内完成(WASM),图片不离开本地设备;如果仍有顾虑,可先模糊敏感区域再上传

WASM 实现意味着模型权重和推理代码都在浏览器沙箱内运行,无网络请求发送图片数据;但浏览器缓存(Cache API)可能保留处理结果,建议手动清除

工作原理

公式推导 · 流程图解 · 依据出处

核心公式

mask = sigmoid(UNet(concat(image, trimap)))

变量说明

  • image — 输入 RGB 图像(H×W×3)
  • trimap — 三值图:前景/背景/未知区域
  • UNet — 编码-解码卷积神经网络
  • sigmoid — 激活函数,输出 0~1 概率值
  • mask — 前景透明度掩码(H×W×1)

示例

输入 512×512 的 RGB 人像照片,自动生成 trimap(背景白色、前景黑色、边缘灰色)。UNet 编码器下采样 5 次提取特征,解码器上采样 5 次恢复分辨率,最终 sigmoid 输出每个像素的前景概率。若某像素输出 0.95,则保留为前景;输出 0.02,则设为透明背景。

适用范围

基于 rembg 内置的 u2net 模型(2019 年 Qin et al. 论文),适用于人像/商品/动物等主体与背景对比明显的图像。半透明物体(玻璃/毛发)、与背景颜色相近的主体,边缘精度下降。

原理图

上传图片JPG / PNGrembg 本地推理U²-Net 模型分离前景 / 背景输出 PNG透明背景处理流程细节(本地执行,不上传服务器)用户选择图片 → 浏览器读取像素数据WASM 加载 rembg 模型 → 逐像素预测透明度生成 Alpha 通道 → 合成透明 PNG
用户输入 本地处理(WASM) 输出结果

开发者集成

3 种主流语言 · 复制即用

from rembg import remove
from PIL import Image
import sys

# 输入输出路径
input_path = sys.argv[1] if len(sys.argv) > 1 else "input.jpg"
output_path = sys.argv[2] if len(sys.argv) > 2 else "output.png"

# 打开图片,移除背景,保存为 PNG(透明背景)
with open(input_path, "rb") as inp:
    input_data = inp.read()
    output_data = remove(input_data)

with open(output_path, "wb") as out:
    out.write(output_data)

print(f"已保存透明背景图片至 {output_path}")

# 使用示例(命令行):
# python remove_bg.py input.jpg output.png
package main

import (
	"fmt"
	"io/ioutil"
	"log"
	"os"

	"github.com/danieldk/go-rembg"
)

func main() {
	inputPath := "input.jpg"
	if len(os.Args) > 1 {
		inputPath = os.Args[1]
	}
	outputPath := "output.png"
	if len(os.Args) > 2 {
		outputPath = os.Args[2]
	}

	// 读取输入图片
	inputBytes, err := ioutil.ReadFile(inputPath)
	if err != nil {
		log.Fatalf("读取输入文件失败: %v", err)
	}

	// 移除背景
	outputBytes, err := rembg.Remove(inputBytes)
	if err != nil {
		log.Fatalf("移除背景失败: %v", err)
	}

	// 写入输出文件
	err = ioutil.WriteFile(outputPath, outputBytes, 0644)
	if err != nil {
		log.Fatalf("写入输出文件失败: %v", err)
	}

	fmt.Printf("已保存透明背景图片至 %s\n", outputPath)
}

// 使用示例(命令行):
// go run main.go input.jpg output.png
const { removeBackground } = require('@imgly/background-removal');
const fs = require('fs');

async function removeBg(inputPath, outputPath) {
  try {
    // 读取输入图片
    const inputBuffer = fs.readFileSync(inputPath);
    
    // 移除背景(返回 Buffer)
    const outputBuffer = await removeBackground(inputBuffer);
    
    // 保存为 PNG
    fs.writeFileSync(outputPath, outputBuffer);
    console.log(`已保存透明背景图片至 ${outputPath}`);
  } catch (error) {
    console.error('移除背景失败:', error);
  }
}

// 使用示例(命令行):
// node remove_bg.js input.jpg output.png
const inputPath = process.argv[2] || 'input.jpg';
const outputPath = process.argv[3] || 'output.png';
removeBg(inputPath, outputPath);

常见问题

8 个高频疑问

图片去背景怎么用?上传后没反应怎么办?
上传图片后,工具会自动在浏览器端用本地模型(rembg)处理,不需要等待网络请求。如果上传后长时间没反应,最常见的原因是图片过大(超过 10MB)或分辨率过高(建议宽高不超过 2000px),此时浏览器会卡住。可以先压缩图片再上传,或直接用截图工具截取主体区域。另外,部分旧版浏览器(如 IE)不支持 WebAssembly,请使用 Chrome / Edge / Firefox 最新版。处理完成后,页面会直接显示透明背景的 PNG 预览图,右键即可保存。
为什么抠出来的图边缘有毛边或残留背景色?
rembg 模型对边缘复杂(如头发丝、半透明物体、与背景颜色相近的主体)的处理精度有限。常见原因:① 图片背景太杂乱(建议选纯色或简单背景的图);② 主体边缘有模糊或运动模糊;③ 图片本身压缩率太高导致边缘锯齿。改善方法:先裁掉多余背景区域再上传;上传后如果效果不理想,可以尝试用图片编辑软件手动微调边缘(如 Photoshop 的「选择并遮住」功能)。本工具适合快速批量处理,精细要求建议后期再修。
这个工具和 Photoshop 的「去背景」比,哪个更准?
Photoshop 2021 起内置的「移除背景」功能(基于 Adobe Sensei AI)在复杂边缘(如头发丝、玻璃杯)的识别精度上通常优于本工具,尤其适合单张精修。但 Photoshop 需要付费订阅且无法批量处理。本工具的优势:① 完全免费,无使用次数限制;② 纯浏览器端运行,不上传图片到服务器,隐私安全;③ 可以批量拖拽处理(一次多张);④ 无需安装,打开网页即用。简单背景(白墙、纯色)的图片两者效果接近,复杂场景建议用 PS 单张精修。
工具支持处理透明背景的 PNG 图片吗?比如把一张 PNG 里的物体抠出来。
支持,但效果取决于原图内容。如果原 PNG 本身已经是透明背景(比如图标、Logo),上传后模型会尝试识别主体边缘——但透明背景上的物体通常边缘清晰,模型反而可能把「透明区域」误判为背景而保留,导致输出结果与输入差别不大。实际场景中,这种 PNG 直接用截图工具裁剪即可。本工具最适合处理的是「有真实背景的 JPG/PNG」(如照片、商品图),对纯透明底的矢量图或图标效果有限。
为什么抠出来的图保存后背景不是透明,而是白色或黑色?
本工具输出的是带透明通道的 PNG 格式。如果保存后背景显示为白色或黑色,通常是查看器或浏览器不支持透明通道预览(如 Windows 自带的「照片」应用、部分旧版看图软件会默认填充白色)。解决办法:① 用专业看图软件(如 Photoshop、GIMP、IrfanView)打开确认;② 在网页上右键图片 →「另存为」时,确保文件后缀为 .png(不是 .jpg);③ 如果保存后直接拖进 Word/PPT,透明背景会显示为白色,这是 Office 软件的限制,可在 PPT 中设置「设置透明色」功能恢复。
这个工具一次能处理多少张图片?有数量或尺寸限制吗?
没有硬性数量限制,但受浏览器内存和 CPU 性能影响。实测:单张 1080p 图片约占用 200-300MB 内存,同时处理 5 张以上如果浏览器崩溃,建议分批操作(每次 3-5 张)。图片尺寸建议控制在 2000px 以内(长边),超过 4000px 的图片模型推理时间会显著增加(可能超过 30 秒),且内存占用飙升。手机端处理大图时更容易溢出,建议用电脑端操作。所有处理都在本地完成,不会因为图片数量多而限速或收费。
上传的图片会不会被服务器保存?隐私安全吗?
完全不上传服务器。rembg 模型是一个约 200MB 的 ONNX 文件,在你首次访问时自动下载到浏览器缓存(仅一次),后续所有抠图计算都在你电脑的浏览器内完成,不发送任何图片数据到任何服务器。可以验证:打开浏览器开发者工具(F12)→ Network 标签,上传图片后观察是否有任何 HTTP 请求发出——只有模型文件下载时的请求,没有图片数据外传。关闭页面后,浏览器缓存中的模型文件会被清除。适合处理包含人脸、证件、敏感信息的图片。
为什么有的图片上传后提示「处理失败」?怎么解决?
失败原因主要有三种:① 图片格式不兼容——仅支持 JPG、PNG、WebP 格式,不支持 BMP、GIF(静态帧)、HEIC(苹果格式需先转换);② 图片损坏——网络下载或截图保存的图片可能文件头损坏,用图片查看器打开后重新另存为即可;③ 浏览器内存不足——同时打开多个标签页或处理超大图片时触发。解决方法:先关闭其他标签页,用截图工具重新截取图片(降低分辨率),或换用 Chrome 浏览器(内存管理更好)。如果仍失败,可以刷新页面后重试。
选择 打开 +新窗口 esc关闭