HivisionIDPhotos-证件照-免费开源的AI证件照制作工具

HivisionIDPhoto 旨在开发一种实用的证件照智能制作算法。

它利用一套完善的模型工作流程,实现对多种用户拍照场景的识别、抠图与证件照生成。

HivisionIDPhoto 可以做到:

  1. 轻量级抠图(仅需 CPU 即可快速推理)
  2. 根据不同尺寸规格生成不同的标准证件照、六寸排版照
  3. 美颜(waiting)
  4. 智能换正装(waiting)

HivisionIDPhotos的项目地址

🔧 环境安装与依赖

  • Python >= 3.7(项目主要测试在 python 3.10)
  • onnxruntime
  • OpenCV
  • Option: Linux, Windows, MacOS

1. 克隆项目

bash 复制代码
git clone https://github.com/Zeyi-Lin/HivisionIDPhotos.git
cd  HivisionIDPhotos

2. (重要)安装依赖环境

建议 conda 创建一个 python3.10 虚拟环境后,执行以下命令

bash 复制代码
pip install -r requirements.txt

3. 下载权重文件

Release下载权重文件hivision_modnet.onnx (24.7MB),存到根目录下。

🚀 运行 Gradio Demo

bash 复制代码
python app.py

运行程序将生成一个本地 Web 页面,在页面中可完成证件照的操作与交互。

🚀 Python 推理

1. 证件照制作

输入 1 张照片,获得 1 张标准证件照和 1 张高清证件照的 4 通道透明 png

python 复制代码
python inference.py -i images/test.jpg -o ./idphoto.png -s '(413,295)'

2. 增加底色

输入 1 张 4 通道透明 png,获得 1 张增加了底色的图像)

python 复制代码
python inference.py -t add_background -i ./idphoto.png -o ./idhoto_ab.jpg  -c '(0,0,0)' -k 30

3. 得到六寸排版照

输入 1 张 3 通道照片,获得 1 张六寸排版照

python 复制代码
python inference.py -t generate_layout_photos -i ./idhoto_ab.jpg -o ./idhoto_layout.jpg  -s '(413,295)' -k 200

⚡️ 部署 API 服务

API 文档:Python | RestAPI(waiting)

启动后端

plain 复制代码
python deploy_api.py

请求 API 服务 - Python

1. 证件照制作

输入 1 张照片,获得 1 张标准证件照和 1 张高清证件照的 4 通道透明 png

bash 复制代码
python requests_api.py -u http://127.0.0.1:8080 -i images/test.jpg -o ./idphoto.png -s '(413,295)'

2. 增加底色

输入 1 张 4 通道透明 png,获得 1 张增加了底色的图像

bash 复制代码
python requests_api.py -u http://127.0.0.1:8080 -t add_background -i ./idphoto.png -o ./idhoto_ab.jpg  -c '(0,0,0)' -k 30

3. 得到六寸排版照

输入 1 张 3 通道照片,获得 1 张六寸排版照

bash 复制代码
python requests_api.py -u http://127.0.0.1:8080 -t generate_layout_photos -i ./idhoto_ab.jpg -o ./idhoto_layout.jpg  -s '(413,295)' -k 200

🐳 Docker 部署

1. 拉取或构建镜像

以下方式三选一

拉取镜像:

该镜像构建于 ARM 架构机器(如 Mac M1),x86 架构机器使用请用 Dockerfile 构建

用这种方式的,在第 2 步开始把镜像名hivision_idphotos改为linzeyi/hivision_idphotos

bash 复制代码
docker pull linzeyi/hivision_idphotos:v1

Dockrfile 构建镜像:

在确保将模型权重文件hivision_modnet.onnx放到根目录下后,在根目录执行:

bash 复制代码
docker build -t hivision_idphotos .

Docker compose:

确保将模型权重文件 hivision_modnet.onnx 放在根目录下后,在根目录下执行:

bash 复制代码
docker compose build

镜像打包完成后,运行以下命令启动 Gradio 服务:

bash 复制代码
docker compose up -d

2. 运行 Gradio Demo

等待镜像封装完毕后,运行以下指令,即可开启 Gradio Demo 服务:

bash 复制代码
docker run -p 7860:7860 hivision_idphotos

在你的本地访问http://127.0.0.1:7860即可使用。

3. 运行 API 后端服务

现在docker镜像可能需要科学上网

bash 复制代码
docker run -p 8080:8080 hivision_idphotos python3 deploy_api.py
相关推荐
葫三生1 分钟前
《论三生原理》神话学构想与“神话历史”理论、《古史中的神话》思路异同?
大数据·人工智能·科技·深度学习·算法
昇腾知识体系8 分钟前
昇腾 950 RegBase 性能优化:从 msprof 采数到优化手法
人工智能·华为·性能优化·知识图谱
七牛云行业应用11 分钟前
Cursor Origin发布:同一天GitHub宕机,AI原生代码托管来了
人工智能·github·agent·ai编程·ai-native
MobotStone13 分钟前
WorkBuddy 技术解析:核心并不神秘,真正壁垒在产品化、生态与规模工程
人工智能·agent
AI人工智能集结号15 分钟前
GEO监测平台怎么选?先确认它能回答哪些业务问题
人工智能
揽秀亭长17 分钟前
论文降AI率踩坑记录:不是简单换几个词就可以
人工智能
老金带你玩AI28 分钟前
30分钟拿执照,2500元租到200平,我去亦庄做OPC了
人工智能
lisw0529 分钟前
生成式人工智能带来的电子垃圾难题
人工智能·电子垃圾
小王毕业啦31 分钟前
2011-2024年 各地级市养老服务信息面板数据 xlsx
大数据·人工智能·数据挖掘·数据分析·社科数据·实证分析·经管数据
幂律智能32 分钟前
幂律智能联合创始人石玏受邀出席第二十六届投洽会,签约共建产业生态
人工智能·生态