大家好,我是 Java陈序员

在日常生活中,我们需要各式各样的证件照。有时候需要不同的尺寸,一寸、两寸、小二寸...而有的时候需要不同的背景,白底、蓝底、红底...

拍摄不同格式的证件照,需要我们往返于摄像馆,十分麻烦,又需要支出一定的花费!

今天,给大家介绍一款免费的 AI 证件照制作工具,使用 AI 帮助我们一键生成不同尺寸、背景的证件照!

关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。

项目介绍

HivisionIDPhotos —— 一个轻量级的 AI 证件照制作工具,利用一套完善的模型工作流程,实现对多种用户拍照场景的识别、抠图与证件照生成。

一键生成!轻量级 AI 证件照制作工具!_API

功能特色

  • 轻量级抠图:仅需 CPU 即可快速推理
  • 功能齐全:根据不同尺寸规格生成不同的标准证件照、六寸排版照
  • 快速高效:能够在几秒钟内处理图像,生成符合标准的证件照
  • 跨平台支持:支持多种操作系统,无论是 Windows、macOS 还是 Linux 用户都能轻松使用
  • 易于集成:提供清晰的 API 文档和示例代码,方便开发者快速集成到自己的项目中

一键生成!轻量级 AI 证件照制作工具!_AI_02

项目体验

HivisionIDPhotos 提供了一个简单易用的 Web 界面供使用,我们只需要上传图像,选定好预设尺寸、背景色、渲染方式、设置 KB 大小等就能快速生成标准照、高清照和六寸排版照。

一键生成!轻量级 AI 证件照制作工具!_Python_03

在预设尺寸中,工具帮我们设定好了一些常用证件照的尺寸,如教师资格证、英语四六级考试、电子驾驶证等,我们直接选定使用。当然也可以自定义尺寸!

一键生成!轻量级 AI 证件照制作工具!_证件照_04

背景色中,除了提供常用的蓝底、白底、红底外,还支持自定义颜色。

一键生成!轻量级 AI 证件照制作工具!_Docker_05

自定义颜色需要输入对应的红(R)、绿(G)、蓝(B)值。

可能有时候因为一些官方要求,生成的证件照有大小要求,HivisionIDPhotos 也支持我们在生成证件照的时候,设置大小。

一键生成!轻量级 AI 证件照制作工具!_Docker_06

下面是一些生成证件照的效果图:

一键生成!轻量级 AI 证件照制作工具!_Python_07

一键生成!轻量级 AI 证件照制作工具!_API_08

一键生成!轻量级 AI 证件照制作工具!_Python_09

一键生成!轻量级 AI 证件照制作工具!_API_10

快速上手

环境安装与依赖

环境依赖

  • Python >= 3.7
  • onnxruntime
  • OpenCV
  • Option: Linux, Windows, MacOS

1、拉取代码

git clone https://github.com/Zeyi-Lin/HivisionIDPhotos.git

2、安装依赖环境

cd  HivisionIDPhotos
pip install -r requirements.txt
pip install -r requirements-app.txt

3、下载权重文件 hivision_modnet.onnx (24.7MB),并存到项目的 hivision/creator/weights 目录下

下载地址:https://github.com/Zeyi-Lin/HivisionIDPhotos/releases/tag/pretrained-model

运行 Gradio Demo

python app.py

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

启动成功后,浏览器访问:http://localhost:7860/

运行 API 服务

python deploy_api.py

API 服务提供了以下 3 个 API:

1、生成证件照(底透明):发送一张 RGB 图像,输出一张标准证件照和一张高清证件照

curl -X POST "http://127.0.0.1:8080/idphoto" \
-F "input_image=@demo/images/test.jpg" \
-F "height=413" \
-F "width=295"

2、添加背景色:送一张 RGBA 图像,根据 color 添加背景色,合成一张 JPG 图像

curl -X POST "http://127.0.0.1:8080/add_background" \
-F "input_image=@test.png" \
-F "color=638cce" \
-F "kb=200"

3、生成六寸排版照:发送一张 RGB 图像(一般为添加背景色之后的证件照),根据 size 进行照片排布,然后生成一张六寸排版照

curl -X POST "http://127.0.0.1:8080/generate_layout_photos" \
-F "input_image=@test.jpg" \
-F "height=413" \
-F "width=295" \
-F "kb=200"

项目提供了 cURLPythonJavaJavaScript 的请求示例,详细的使用可参考文档:

https://github.com/Zeyi-Lin/HivisionIDPhotos/blob/master/docs/api_CN.md

Docker 部署

1、拉取镜像

docker pull linzeyi/hivision_idphotos:v1

2、运行 Gradio Demo

docker run -p 7860:7860 hivision_idphotos

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

3、运行 API 后端服务

docker run -p 8080:8080 hivision_idphotos python3 deploy_api.py

HivisionIDPhotos 利用先进的 AI 技术,自动识别人脸并调整照片的背景、光线和尺寸,确保输出的证件照满足各种官方要求。大家快去安装体验吧~

项目地址:https://github.com/acmenlei/codecv

最后

推荐的开源项目已经收录到 GitHub 项目,欢迎 Star

https://github.com/chenyl8848/great-open-source-project

或者访问网站,进行在线浏览:

https://chencoding.top:8090/#/

一键生成!轻量级 AI 证件照制作工具!_Python_11

大家的点赞、收藏和评论都是对作者的支持,如文章对你有帮助还请点赞转发支持下,谢谢!