You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何遍历目录下所有PNG图片文件并发送至Deepstack进行人脸识别?

Deepstack批量PNG人脸注册脚本实现

前置依赖

首先确保已经安装requests库:

pip install requests

实现逻辑

  • 支持指定扫描目录,自动遍历所有后缀为.png的图片(不区分大小写,.PNG格式也会被识别)
  • 默认使用不带后缀的文件名作为人脸注册的userid,可根据需求自行修改规则
  • 采用with open方式读取文件,避免文件句柄泄露问题
  • 每张图片处理完成后直接打印接口返回结果,方便排查异常

完整代码

import os
import requests

# -------------------------- 配置项 请根据实际情况修改 --------------------------
SCAN_DIR = "/path/to/your/png/directory"  # 替换为你要遍历的PNG文件所在目录
DEEPSTACK_API = "http://localhost:80/v1/vision/face/register"  # Deepstack服务接口地址
# ---------------------------------------------------------------------------

for filename in os.listdir(SCAN_DIR):
    # 筛选PNG格式文件
    if filename.lower().endswith(".png"):
        file_full_path = os.path.join(SCAN_DIR, filename)
        # 读取图片二进制内容
        with open(file_full_path, "rb") as img_f:
            img_content = img_f.read()
        # 生成userid,当前规则为去掉文件后缀的文件名,可自行修改
        register_userid = os.path.splitext(filename)[0]
        # 调用Deepstack接口
        resp = requests.post(
            DEEPSTACK_API,
            files={"image": img_content},
            data={"userid": register_userid}
        ).json()
        # 输出处理结果
        print(f"文件:{filename} | 接口返回:{resp}")

注意事项

  1. 运行脚本前请确认Deepstack服务已经正常启动,接口地址和端口与配置项一致
  2. 若扫描目录下存在不含人脸的PNG图片,接口会返回识别失败的响应,脚本不会中断运行
  3. 如需自定义userid规则,直接修改register_userid变量的赋值逻辑即可

内容的提问来源于stack exchange,提问作者Andy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 06:57:02