|
|
2 months ago | |
|---|---|---|
| .. | ||
| BiRefNet | 2 months ago | |
| __pycache__ | 2 months ago | |
| README.md | 2 months ago | |
| birefnet-matting.py | 2 months ago | |
| requirements_python.txt | 2 months ago | |
| server.py | 2 months ago | |
| start-server.bat | 2 months ago | |
基于 FastAPI 的图像背景移除服务,使用 BiRefNet 模型进行高质量图像抠图。
birefnet-matting/
├── server.py # FastAPI 服务器主程序
├── birefnet-matting.py # BiRefNet 图像处理脚本
├── start-server.bat # 启动服务器脚本
├── requirements_python.txt # Python 依赖
├── rec/ # 服务器接收图片的文件夹
├── send/ # 服务器处理结果的文件夹
└── BiRefNet/ # BiRefNet 模型目录
birefnet-matting/
└── test-client/ # 测试客户端目录
├── test-client.py # 测试客户端程序
├── start-test-client.bat # 启动测试客户端脚本
├── test-send/ # 测试:要发送的图片文件夹
└── test-rec/ # 测试:接收处理结果的文件夹
方式一:自动安装(推荐)
直接运行启动脚本,会自动创建虚拟环境并安装依赖:
start-server.bat 会自动安装服务器依赖test-client/start-test-client.bat 会自动安装客户端依赖方式二:手动安装
# 创建虚拟环境
python -m venv .venv
# 激活虚拟环境(Windows)
.venv\Scripts\activate
# 安装依赖
pip install -r requirements_python.txt
pip install -r BiRefNet\requirements.txt
将要处理的图片放入 test-client/test-send 文件夹。
支持的格式:.jpg, .jpeg, .png, .bmp, .webp, .tiff, .tif
双击根目录下的 start-server.bat 启动 FastAPI 服务器。
http://localhost:8000http://localhost:8000/docshttp://localhost:8000/healthtest-client 文件夹start-test-client.bat 启动测试客户端test-client/test-rec 文件夹1. 测试客户端 (test-client/test-client.py)
├─ 从 test-client/test-send 文件夹打包图片
├─ 生成 test-client/test-send/test_images.zip
└─ 发送 POST 请求到服务器
2. 服务器 (server.py)
├─ 接收 zip 文件,保存到 rec 文件夹
├─ 解压到 rec 文件夹
├─ 调用 birefnet-matting.py 处理图片
├─ 处理结果保存到 send 文件夹
├─ 打包成 send/processed_images.zip
└─ 返回 zip 文件
3. 测试客户端接收
├─ 接收处理后的 zip 文件
└─ 解压到 test-client/test-rec 文件夹
接收 zip 图包,处理后返回处理后的 zip 文件。
请求:
multipart/form-datafile (zip 文件)响应:
application/zip健康检查接口。
Swagger API 文档(自动生成)。
.jpg, .jpeg.png.bmp.webp.tiff, .tifstart-server.batCtrl+Crec/ - 服务器接收上传的图片send/ - 服务器处理后的图片和 zip 文件test-client 文件夹,双击 start-test-client.battest-client/test-send/ - 放入要处理的图片test-client/test-rec/ - 接收处理结果