+-
一个轻量级且高效的AI证件照制作工具,支持 美颜、轻量级抠图、多种尺寸证件照生成、纯离线或端云推理等功能。

HivisionIDPhotos

一个轻量级且高效的AI证件照制作工具,利用AI模型工作流程实现多种拍照场景的证件照生成,支持轻量级抠图、多种尺寸证件照生成、纯离线或端云推理等功能。

Github地址

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

在线体验

https://huggingface.co/spaces/TheEeeeLin/HivisionIDPhotos

一个轻量级且高效的AI证件照制作工具,支持 美颜、轻量级抠图、多种尺寸证件照生成、纯离线或端云推理等功能。

项目特点

  • 轻量级抠图:仅需CPU即可快速推理。

  • 多样化生成:可生成标准证件照、六寸排版照等。

  • 推理方式灵活:支持纯离线或端云推理。

  • 美颜功能:支持证件照美颜。

  • 智能换正装:该功能正在开发中。

使用方法

准备工作

  • 环境要求

    • Python >= 3.7(建议使用Python 3.10)。

    • 支持的操作系统:Linux、Windows、MacOS。

  • 克隆项目

  • gitclonehttps://github.com/Zeyi-Lin/HivisionIDPhotos.git
    cdHivisionIDPhotos
  • 安装依赖

  • pip install -r requirements.txt
    pip install -r requirements-app.txt
  • 下载模型权重文件

    • 使用脚本下载:

      python scripts/download_model.py --models all

    • 或手动下载并放置到hivision/creator/weights目录下。

  • 人脸检测模型配置(可选)

    • 默认使用MTCNN模型。

    • 可选RetinaFace模型,需下载权重文件并放置到hivision/creator/retinaface/weights目录下。

    • 也可使用Face++的在线API,需配置API密钥。

    运行Gradio Demo

    • 运行命令:

      python app.py

    • 访问本地Web页面(如http://127.0.0.1:7860)进行证件照操作与交互。

    Python推理

    • 核心参数:

      • -i:输入图像路径。

      • -o:保存图像路径。

      • -t:推理类型(如idphotohuman_matting等)。

      • --matting_model:人像抠图模型权重选择。

      • --face_detect_model:人脸检测模型选择。

    • 示例命令:

      • 制作证件照:

        python inference.py -i demo/images/test0.jpg -o ./idphoto.png --height 413 --width 295

      • 人像抠图:

        python inference.py -t human_matting -i demo/images/test0.jpg -o ./idphoto_matting.png --matting_model hivision_modnet

    部署API服务

    • 启动后端:

      python deploy_api.py

    • 请求API服务:参考docs/api_CN.md文档。

    Docker部署

    • 拉取或构建镜像:

      • 拉取最新镜像:

        docker pull linzeyi/hivision_idphotos

      • 使用Dockerfile构建镜像:

        docker build -t linzeyi/hivision_idphotos .

      • 使用docker-compose构建:

        docker compose build

    • 运行服务:

      • 启动Gradio Demo服务:

        docker run -d -p 7860:7860 linzeyi/hivision_idphotos

      • 启动API后端服务:

        docker run -d -p 8080:8080 linzeyi/hivision_idphotos python3 deploy_api.py

      • 同时启动两个服务:

        docker compose up -d

    性能参考

    • 测试环境:Mac M1 Max 64GB,非GPU加速。

    • 测试图片分辨率:512x715(1)与764x1146(2)。

    • 模型组合及性能:

      • MODNet + mtcnn:内存占用410MB,推理时长(1)为0.207s,推理时长(2)为0.246s。

      • MODNet + retinaface:内存占用405MB,推理时长(1)为0.571s,推理时长(2)为0.971s。

      • birefnet-v1-lite + retinaface:内存占用6.20GB,推理时长(1)为7.063s,推理时长(2)为7.128s。