EasyAIoT 人脸识别与人脸库管理实战:布控、轨迹追踪、安保取证一次讲透
  • 后端
  • 前端
  • 人工智能
  • 大模型
  • 模型推理服务
  • 微调
  • 计算机视觉
  • 音视频

【免费下载链接】easyaiot

我希望全世界都能使用这个系统,实现AI的真正0门槛,人人都能体验到AI带来的好处,而并不只是掌握在少数人手里。支持上千种垂直场景,支持AI模型定制化和AI算法定制化开发 深度融合,赋能万物智视:EasyAIoT 构筑了物联网设备(尤其是海量摄像头)的高效接入与管控网络。我们深度融合流媒体实时传输技术与前沿人工智能(AI),打造一体化服务核心。这套方案不仅打通了异构设备的互联互通,更将高清视频流与强大的AI解析引擎深度集成,赋予监控系统“智能之眼”——精准实现人脸识别、异常行为分析、风险人员布控周界入侵检测。

项目地址:https://gitcode.com/gh_mirrors/ea/easyaiot
点击查看免费下载

EasyAIoT 内置的人脸识别与人脸库管理模块,让普通摄像头也能"认出人":把重点人员照片录入人脸库,平台自动完成人脸检测、特征提取与向量比对,命中即触发告警;再配合轨迹追踪与电子身份档案,实现从布控、寻迹到取证的完整闭环。本文面向新手,一次讲透这条链路怎么用、参数怎么调。

一、能力全景:一分钟看懂人脸识别链路 📷

EasyAIoT 的人脸识别不是单一功能,而是一条贯穿"采集 → 识别 → 布控 → 取证"的流水线:

环节做了什么关键实现
人脸检测从视频流中框出人脸(YOLOv8 检测模型)VIDEO/app/services/face_recognition_service.py
特征提取把人脸转换为一串"数字指纹"(特征向量)同上,模型文件见 VIDEO/ 目录下的face_det.onnx
向量检索与人脸库中的特征做高效相似度比对VIDEO/app/services/face_vector_store.py
匹配与布控超过阈值即判定"命中",记录设备、时间、截图VIDEO/app/services/face_library_service.py
告警与取证弹出告警、关联抓拍图、写入轨迹与身份档案VIDEO/app/blueprints/face.py

这套能力的官方描述见 README_zh.md:支持对抓拍画面进行人脸比对与身份检索,完整记录匹配结果、抓拍图片与设备上下文,便于人员轨迹追溯与安防取证。

二、快速上手:从模型下载到人脸库搭建 🚀

1. 第一步永远是下载人脸特征模型

首次进入「人脸库」页面时,FaceModelSetupPanel.vue 会引导你下载识别所需的特征模型(对应后端/model/download接口,逻辑在 VIDEO/app/utils/face_model_download.py)。模型就绪后才会显示人脸库管理界面——这是新手最容易卡住的一步,看到下载进度条不用慌,等它完成即可。

2. 新建人脸库,给重点人员建档

在人脸库列表页(FaceLibrary/index.vue)点击「新建人脸库」,需要关注三个字段:

  • 库名称与业务标签:比如"园区风险人员",标签用于区分不同布控用途;
  • 相似度阈值(默认 0.55):比对结果的"及格线",后面布控章节会细讲怎么调;
  • 启用开关:停用后该库不参与识别,适合临时归档。

录入人脸支持两种方式(见 FaceEntryModal.vue):

  • 单张录入:上传一张正脸照,填写姓名、编号、备注;
  • 批量录入:同一个人一次传多张照片。多张照片的特征一起入库,能显著提升后续识别召回率,正式布控前强烈建议每人录入 2~3 张不同角度的照片。

照片文件会存入 MinIO 的face-library存储桶,特征向量进入向量库,两者都由 face_library_service.py 统一管理。

3. 摄像头自动录入:让摄像头帮你"攒人脸" 📹

没有现成照片怎么办?打开 FaceAutoEnrollDrawer.vue,为某个库配置自动录入任务:

  • 勾选要采集的摄像头;
  • 设置持续时长与抓拍间隔;
  • 选择录入模式为"待入库"。

系统会按间隔自动抓拍画面中的人脸,并汇总到「待入库工作台」(FacePendingWorkbench.vue,接口见 WEB/src/api/device/pending_enroll.ts)。你可以在工作台上批量审核、补充姓名后再正式入库,避免把误检照片混进布控库。

4. 人脸归一化:把"同一个人"的照片合并成一条档案

多次录入难免出现"同一个人被录成多条"。人脸库的「人脸归一化」功能(FaceNormalizeModal.vue)会按特征相似度(默认 0.75)自动把疑似同一人的照片分组,你确认后一键合并,人员档案从此"一人一档",轨迹与告警都会按合并后的人员归集。

三、布控实战:让摄像头自动"识人"并告警 🎯

在算法任务中开启人脸识别

创建摄像头算法任务时(AlgorithmTaskModal.vue),可以为任务开启人脸识别能力并绑定指定人脸库。实时链路是异步解耦的:算法进程把匹配请求投递到 Kafka(face_matching_kafka_service.py),由消费端完成向量比对并落库,这样即使识别量大也不会拖慢视频流分析,相关说明见 VIDEO/KAFKA_FIX_COMPLETE.md。

相似度阈值怎么调才准

阈值是布控效果的核心旋钮,建议按"先严后松"逐步调整:

  • 误报多(路人频繁告警):调高阈值,比如 0.55 → 0.65;
  • 漏报多(目标人员没告警):调低阈值,或为库里的人补拍多张照片;
  • 阈值可以在人脸库层面设置默认值,也可以在具体算法任务上覆盖,方便对不同布控等级区别对待。

告警弹窗里该看什么

命中后弹出的告警窗口由 FaceAlertModal/index.vue 呈现,左侧是告警全景原图,右侧是人脸特写、命中人员姓名与编号、相似度得分与阈值、匹配记录编号——多张人脸同框时会列出全部命中人员。这是值守人员研判的第一现场:先确认相似度是否可信,再决定是否联动处置。

四、轨迹追踪:以人寻迹的地图时间线 🗺️

单次命中只是起点,真正的价值在于跨摄像头还原一个人的活动路线。

在人员详情页(PersonDetailDrawer.vue)或告警弹窗中点击头像上的「出现轨迹」,即可调起轨迹查询。后端接口/matching/trajectory(实现见 face_library_service.py 的list_person_trajectory)会做三件事:

  1. 按人员姓名 + 日期筛出当天所有命中记录;
  2. 关联每个摄像头的经纬度坐标,按时间升序串成时间线;
  3. 同一摄像头 15 分钟内的连续命中自动合并为一个点,避免刷屏。

结果直接上图:告警中心的地图分布视图(AlertMapPanel/index.vue)把点位铺在地图上,"哪里出没、先后顺序、停留多久"一目了然,这正是"以人寻迹"的典型用法。

五、安保取证:把证据链做完整 🔍

电子身份档案:不知道名字也能串轨迹

很多场景里目标人员根本不在你的人脸库里(无名氏嫌疑人、陌生访客)。EasyAIoT 的电子身份档案(face_identity_service.py)为此而生:系统会为反复出现的人脸自动分配一个EID-日期-编号的稳定身份,即使没有姓名,也能把多个摄像头的命中串成同一条轨迹;日后确认了真实身份,还可把多个身份档案一键合并(前端见 FaceIdentityDrawer.vue)。

每条命中都是可追溯的证据

匹配记录(FaceMatchRecord,模型定义见 VIDEO/models.py)会持久化以下要素:

  • 命中时间与设备信息(摄像头名称、地图坐标、地址);
  • 人脸抓拍图与告警全景图的存储路径;
  • 相似度、阈值与所属人脸库、算法任务名;
  • 关联的告警 ID,可回跳到完整告警事件。

时间、画面、位置、算法依据四要素齐全,复盘、申诉、交接都拿得出一条可自证的证据链,这也是"机器全时盯、异常秒推送、证据自动留"值守模式的关键一环。

六、新手常见问题 ❓

  • 为什么录了人脸却没有任何告警?依次检查:特征模型是否下载完成、人脸库是否启用、任务是否绑定了该库、阈值是否设得过高。
  • 轨迹点很少甚至为空?轨迹点依赖摄像头登记了经纬度;没登记坐标的摄像头不会产生轨迹点,请先在设备管理中补全位置信息。
  • 识别时准时不准?给库内人员补拍不同角度照片、开启归一化合并重复档案,通常比反复调阈值更有效。

写在最后 📚

从"建库录人"到"自动布控",从"以人寻迹"到"证据闭环",EasyAIoT 的人脸识别与人脸库管理把安防团队最常用的一条工作流完整搬进了一个平台,且对新手足够友好——模型一键下载、人脸自动采集、待入库人工审核,几乎不需要写代码。建议从本文第二节的步骤开始动手:先建一个测试库、录两张照片、给一路摄像头开启识别,半小时内你就能在自己的监控画面里看到第一次"识人"告警。

更多能力细节可继续参考 README_zh.md 与 VIDEO/README.md。

  • 后端
  • 前端
  • 人工智能
  • 大模型
  • 模型推理服务
  • 微调
  • 计算机视觉
  • 音视频

【免费下载链接】easyaiot

我希望全世界都能使用这个系统,实现AI的真正0门槛,人人都能体验到AI带来的好处,而并不只是掌握在少数人手里。支持上千种垂直场景,支持AI模型定制化和AI算法定制化开发 深度融合,赋能万物智视:EasyAIoT 构筑了物联网设备(尤其是海量摄像头)的高效接入与管控网络。我们深度融合流媒体实时传输技术与前沿人工智能(AI),打造一体化服务核心。这套方案不仅打通了异构设备的互联互通,更将高清视频流与强大的AI解析引擎深度集成,赋予监控系统“智能之眼”——精准实现人脸识别、异常行为分析、风险人员布控周界入侵检测。

项目地址:https://gitcode.com/gh_mirrors/ea/easyaiot
点击查看免费下载
上一篇:使用 cy.autolock() 全局锁定 Cytoscape.js 节点:API 用法、底层实现与实战指南
下一篇:atenet 全功能网络守护进程解析:ATE 集群的 Envoy 控制面、ingress/egress 网关与无损失排空

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考