Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

lipcoder/pi-face

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

89 Commits

Repository files navigation

Pi-Face · 人脸识别签到系统

Pi-Face 是一个基于 InspireFace 的人脸识别签到小系统,搭配海康摄像头使用,提供:

  • 实时人脸识别与签到记录\
  • 抓拍图片落盘 + CSV 日志\
  • 一个简单的 Web 看板查看记录和统计

人脸识别核心来自:https://github.com/HyperInspire/InspireFace

1. 整体架构概览

系统由三部分组成:

  1. Python 服务(app)
    • face_runtime.py:从海康rtsp视频流中实时做人脸识别,并写入 CSV 日志
    • build_feature_db.py:从已知人脸目录构建/增量更新特征库
  2. Go Web 服务(web)
    • web/main.go:读取 CSV 日志文件,提供 JSON API 和静态页面
    • web/static/index.html:Tailwind + Chart.js 的前端看板
  3. Docker
    • dockerfile:多阶段构建 Go + Python
    • entrypoint.sh:同时启动三个服务

2. Python 端

2.1 配置(config.py)

支持环境变量覆盖,如 DATA_ROOT、RTSP 配置、SEARCH_THRESHOLDVIDEO_SOURCE 等。

2.2 build_feature_db.py

  • know/ 读取图片
  • 文件名作为人名
  • 增量更新特征库(已有的 label 自动跳过)
  • 输出 feature_hub.db + label_map.json

2.3 face_runtime.py

  • 从 MJPEG 视频流取帧
  • 检测 → 特征提取 → 搜索最近邻
  • 保存人脸截帧到 unknow/
  • 写入 CSV 日志,包含:时间、图片路径、姓名、相似度、阈值、状态等
  • 自动处理掉线、自动重连

3. Web 看板(Go)

3.1 API

  • /api/records(搜索、筛选、分页、时间倒序)
  • /api/stats基于 MATCH 统计:
    • 每周签到人员的表格
  • /image?path=... 访问抓拍图片(带路径安全检查)

3.2 前端

Tailwind + Chart.js,无需构建。 包含图表、统计面板、记录表格、详情弹窗。

4. 使用方法

4.1 Docker(推荐)

创建:

docker compose up --build

启动:

docker run -it --rm -v ./data:/data face-runtime

看板:http://localhost:8080/

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

AltStyle によって変換されたページ (->オリジナル) /