[hide-toggle name="项目简介"]
HivisionIDPhoto 旨在开发一种实用、系统性的证件照智能制作算法。
它利用一套完善的AI模型工作流程,实现对多种用户拍照场景的识别、抠图与证件照生成。
HivisionIDPhoto 可以做到:
1.轻量级抠图(纯离线,仅需 CPU 即可快速推理) 2.根据不同尺寸规格生成不同的标准证件照、六寸排版照 3.支持 纯离线 或 端云 推理 4.美颜 5.智能换正装(waiting)
[/hide-toggle]
DEMO: ~~ https://ai.liuyuan.top ~~
1. 环境搭建
测试环境:OpenCloudOS 9
Python>=3.7
Conda(建议)
使用Conda搭建虚拟环境点此查看
conda create venv python==3.10
完成后进入搭建的环境中
conda activate venv
2. 配置项目
如果没有pip则先行安装pip
#CentOS
sudo yum update
sudo yum install python3-pip
有则下一步安装所需依赖
pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
pip3 install -r requirements-app.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
3. 下载人像抠图模型权重文件
方式一:脚本下载
python scripts/download_model.py --models all
# 如需指定下载某个模型
# python scripts/download_model.py --models modnet_photographic_portrait_matting
方式二:直接下载
模型均存到项目的hivision/creator/weights
目录下:
人像抠图模型 | 介绍 | 下载 |
---|---|---|
MODNet | MODNet官方权重 | 下载(24.7MB) |
hivision_modnet | 对纯色换底适配性更好的抠图模型 | 下载(24.7MB) |
rmbg-1.4 | BRIA AI 开源的抠图模型 | 下载(176.2MB)后重命名为rmbg-1.4.onnx |
birefnet-v1-lite | ZhengPeng7 开源的抠图模型,拥有最好的分割精度 | 下载(224MB)后重命名为birefnet-v1-lite.onnx |
如果下载网速不顺利:前往SwanHub下载。
4. 人脸检测模型配置(可选)
拓展人脸检测模型 | 介绍 | 使用文档 |
---|---|---|
MTCNN | 离线人脸检测模型,高性能CPU推理(毫秒级),为默认模型,检测精度较低 | Clone此项目后直接使用 |
RetinaFace | 离线人脸检测模型,CPU推理速度中等(秒级),精度较高 | 下载后放到hivision/creator/retinaface/weights 目录下 |
Face++ | 旷视推出的在线人脸检测API,检测精度较高,官方文档 | 使用文档 |
5. GPU推理加速(可选)
在当前版本,可被英伟达GPU加速的模型为birefnet-v1-lite
,并请确保你有16GB左右的显存。
如需使用英伟达GPU加速推理,在确保你已经安装CUDA与cuDNN后,根据onnxruntime-gpu文档找到对应的onnxruntime-gpu
版本安装,以及根据pytorch官网找到对应的torch
版本安装。
# 假如你的电脑安装的是CUDA 12.x, cuDNN 8
# 安装torch是可选的,如果你始终配置不好cuDNN,那么试试安装torch
pip install onnxruntime-gpu==1.18.0
pip install torch --index-url https://download.pytorch.org/whl/cu121
完成安装后,调用birefnet-v1-lite
模型即可利用GPU加速推理。
TIPS: CUDA 支持向下兼容。比如你的 CUDA 版本为 12.6,
torch
官方目前支持的最高版本为 12.4(<12.6),torch
仍可以正常使用CUDA。
⚡️ 运行 Gradio Demo
python app.py
运行程序将生成一个本地 Web 页面,在页面中可完成证件照的操作与交互。
贡献者们:
Zeyi-Lin、SAKURA-CAT、Feudalman、swpfY、Kaikaikaifang、ShaohonChen、KashiwaByte