Files
zydi-web/app
2025-01-23 09:05:45 +00:00
..
2025-01-23 09:05:45 +00:00
2025-01-23 09:05:45 +00:00
2025-01-23 09:05:45 +00:00
2025-01-23 09:05:45 +00:00

行为分析系统

项目概述

这是一个基于视频分析的行为识别系统,能够从监控视频中识别和分析人员行为,生成分析报告。系统包含视频采集、人脸识别、行为分析和Web接口等多个模块。

系统架构

Web应用层 (app/)

  • main.py: FastAPI Web应用主程序,提供REST API接口
  • models.py: 数据模型和业务逻辑处理
  • config.py: 系统配置文件

功能模块层 (function/)

  1. 视频采集模块

    • rtsp2video.py: RTSP视频流采集和录制
    • video2image.py: 视频关键帧提取
  2. 人脸分析模块

    • face.py: 人脸检测和识别
    • face-emb.py: 人脸特征提取
    • pose.py: 人体姿态检测
  3. 行为分析模块

    • qwen.py: 基于Qwen2-VL-7B模型的视频内容分析
    • info.json: 行为和场景类别定义

主要功能

1. 视频采集

  • 支持多路RTSP视频流采集
  • 定时录制视频片段
  • SFTP自动上传备份

2. 人脸识别

  • 实时人脸检测
  • 人脸特征提取和匹配
  • 身份识别和记录

3. 行为分析

  • 人体姿态检测
  • 行为识别和分类
  • 场景理解
  • 异常行为检测

4. Web接口

  • 摄像头数据查询
  • 分析报告生成
  • 历史数据下载

数据存储

  • 使用Redis数据库存储处理结果
  • 支持多个数据库实例,用于不同摄像头数据隔离
  • 实现数据缓存和过期策略

配置说明

系统配置集中在config.py文件中,包括:

  • Redis连接配置
  • 摄像头数据库映射
  • 行为类别定义
  • 缓存策略设置
  • AI模型配置

部署要求

  • Python 3.8+
  • CUDA支持
  • Redis服务器
  • 足够的存储空间用于视频存储

使用说明

  1. 确保配置文件中的各项参数正确设置
  2. 启动Redis服务
  3. 运行视频采集模块:python rtsp2video.py
  4. 运行分析模块:
    • python video2image.py
    • python pose.py
    • python face.py
    • python qwen.py
  5. 启动Web服务:python main.py

API接口

  • GET /web/face/{camera_id}/data: 获取人脸识别数据
  • GET /web/{camera_id}/data: 获取行为分析数据
  • GET /web/report/{date}: 获取日期分析报告
  • GET /web/report/download/{date}: 下载分析报告

注意事项

  • 确保系统有足够的GPU内存用于模型推理
  • 定期清理过期数据
  • 监控系统资源使用情况
  • 及时处理错误日志