# BXC_VideoAnalyzer_v3 **Repository Path**: ttlove999/BXC_VideoAnalyzer_v3 ## Basic Information - **Project Name**: BXC_VideoAnalyzer_v3 - **Description**: C++开发的视频行为分析系统v3系列版本 - **Primary Language**: C++ - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 71 - **Created**: 2025-12-24 - **Last Updated**: 2025-12-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 视频行为分析系统 v3 ## 作者信息 - **作者**:北小菜 - **邮箱**:bilibili_bxc@126.com - **QQ**:1402990689 - **微信**:bilibili_bxc - **哔哩哔哩**:https://space.bilibili.com/487906612 ## 开源仓库 - **v3 Gitee**:https://gitee.com/Vanishi/BXC_VideoAnalyzer_v3 - **v3 GitHub**:https://github.com/beixiaocai/BXC_VideoAnalyzer_v3 ## 相关项目 - **v1 版本**:https://gitee.com/Vanishi/BXC_VideoAnalyzer_v1 - **v2 版本**:https://gitee.com/Vanishi/BXC_VideoAnalyzer_v2 - **v4 安装包**:https://gitee.com/Vanishi/xcms - **集群管理平台2.0**:https://gitee.com/Vanishi/xcnvs ## 项目简介 视频行为分析系统 v3 是一个完整的视频智能分析解决方案,集成了视频流处理、AI算法推理、报警管理和流媒体服务等功能。系统采用 C++ 和 Python 混合架构开发,支持多平台部署(Windows/Linux),可应用于安防监控、智慧园区、工业安全等场景。 **核心特性:** - ✅ 多种 AI 检测算法(YOLOv8/YOLO11/火焰烟雾/打架/安全帽等) - ✅ 多推理引擎支持(OpenVINO/TensorRT/ONNXRuntime) - ✅ 跨平台部署(支持 Intel/NVIDIA/AMD/RK3588 等硬件) - ✅ 实时视频流分析和转发 - ✅ 自动报警视频合成 - ✅ Web 可视化管理界面 - ✅ 周界入侵区域绘制 - ✅ 多路并发视频分析 ## 系统架构 ``` ┌─────────────────────────────────────────────────────────┐ │ 视频行为分析系统 v3 │ ├─────────────────┬─────────────────┬─────────────────────┤ │ Admin 模块 │ Analyzer 模块 │ MediaServer 模块 │ │ (后台管理) │ (视频分析器) │ (流媒体服务) │ │ │ │ │ │ - Django Web │ - 视频拉流 │ - RTSP/RTMP │ │ - 算法配置 │ - AI 推理 │ - HTTP-FLV │ │ - 布控管理 │ - 报警生成 │ - HLS/WebRTC │ │ - 报警查询 │ - 视频推流 │ - 流媒体转发 │ └─────────────────┴─────────────────┴─────────────────────┘ ``` ## 模块说明 ### [Admin](Admin/) - 后台管理模块 基于 Django 开发的 Web 管理系统,提供可视化配置界面。 - **技术栈**:Python 3.8+ / Django 3.2+ / SQLite3 - **主要功能**: - 视频流管理(添加、删除、监控) - 算法配置(YOLO模型、检测类别、阈值设置) - 布控管理(绑定视频流、绘制检测区域) - 报警管理(查看报警视频、导出记录) - **访问地址**:http://127.0.0.1:9991 - **默认账号**:admin / admin888 ### [Analyzer](Analyzer/) - 视频分析器模块 基于 C++ 开发的高性能视频分析引擎,负责核心算法推理。 - **技术栈**:C++ / FFmpeg / OpenCV / 多推理引擎 - **主要功能**: - 多协议视频流拉取(RTSP/RTMP/HTTP) - AI 算法实时推理(目标检测、行为识别) - 周界入侵判断 - 报警视频自动合成 - 实时推流到流媒体服务器 - **支持的推理引擎**: - OpenVINO(Intel CPU/GPU) - TensorRT(NVIDIA GPU) - ONNXRuntime(通用,支持多平台) ### [MediaServer](MediaServer/) - 流媒体服务模块 基于 ZLMediaKit 的流媒体服务器,提供视频流分发能力。 - **技术栈**:C++ / ZLMediaKit - **主要功能**: - 多协议视频流接入 - 视频流格式转换 - 低延迟流媒体分发 - RESTful API 管理接口 - **支持协议**:RTSP、RTMP、HTTP-FLV、HLS、WebRTC - **服务端口**:HTTP-9992、RTSP-9994 ## 快速开始 ### Windows 平台(一键启动) 1. **下载项目** ```bash # 下载 ZIP 包并解压到任意目录 ``` 2. **启动系统** ```bash # 双击 VideoAnalyzer.exe 启动程序 # 观察窗口提示,无报错则启动成功 ``` 3. **访问系统** - 浏览器打开:http://127.0.0.1:9991 - 默认账号:`admin` - 默认密码:`admin888` 4. **停止系统** ```bash # 关闭窗口即可 ``` ### Linux 平台(需要编译) ```bash # 1. 编译 Analyzer 模块 cd Analyzer mkdir build && cd build cmake .. make -j4 # 2. 编译 MediaServer 模块 cd ../../MediaServer/source mkdir build && cd build cmake .. make -j4 # 3. 安装 Admin 模块依赖 cd ../../Admin python3 -m venv venv source venv/bin/activate pip install -r requirements-linux.txt # 4. 启动系统(请参考官方文档) ``` 详细编译教程请参考官方文档: - Windows 编译:https://beixiaocai.yuque.com/org-wiki-beixiaocai-vo72oa/xcnvs/zdp1wpa9g0grcgin - Linux 编译:https://beixiaocai.yuque.com/org-wiki-beixiaocai-vo72oa/xcnvs/zg6agc21bfbtau3e ## 配置文件说明 系统使用根目录的 `config.json` 作为主配置文件: ```json { "code": "v352", // 节点编号(集群模式使用) "name": "name", // 节点名称 "describe": "describe", // 节点描述 "host": "127.0.0.1", // 服务器地址(外网访问需改为局域网IP) "adminPort": 9991, // 后台管理端口 "mediaHttpPort": 9992, // 流媒体 HTTP 端口 "analyzerPort": 9993, // 分析器端口 "mediaRtspPort": 9994, // 流媒体 RTSP 端口 "mediaSecret": "V3522025...", // API 访问密钥 "uploadDir": "Admin\\static\\upload", // 上传文件目录 "modelDir": "Analyzer\\models", // 算法模型目录 "saveAlarmType": 1, // 报警保存方式 (1:本地 2:上传 3:本地+上传) "saveAlarmUrl": "http://..." // 报警上传地址 } ``` **重要提示**: - Windows 路径使用双反斜杠 `\\` - Linux 路径使用正斜杠 `/` - 必须确保 `uploadDir` 和 `modelDir` 路径正确 ## 端口说明 系统默认使用以下端口,启动前请确保端口未被占用: | 端口 | 服务 | 说明 | | --- | --- | --- | | 9991 | Admin | 后台管理 Web 服务 | | 9992 | MediaServer | 流媒体 HTTP API | | 9993 | Analyzer | 视频分析器 HTTP API | | 9994 | MediaServer | RTSP 流媒体服务 | | 9995 | 保留 | 系统预留端口 | ## 支持的算法模型 | 算法类型 | 说明 | 应用场景 | | --- | --- | --- | | YOLOv8 | 通用目标检测 | 80种常见目标检测 | | YOLO11 | 安全帽检测 | 工地安全监控 | | 火焰烟雾检测 | 火灾早期预警 | 消防安全监控 | | 抽烟检测 | 吸烟行为识别 | 禁烟区域监控 | | 打架检测 | 暴力行为识别 | 公共安全监控 | | 周界入侵 | 区域入侵检测 | 周界安防监控 | ## 版本历史 ### v3.52(当前版本 - 2025/09/25) - ✨ 新增支持接入开源集群管理平台2.0 - ✨ 新增支持视频文搜功能 - 🔧 优化后台管理框架和数据库表结构 - 🔧 优化算法增删改查配置 ### v3.51(2025/07/01) - ✨ 新增打架检测算法 - ✨ 新增火焰烟雾检测算法 - ✨ 新增抽烟检测算法 - ✨ 新增安全帽检测算法 ### v3.48(2025/03/26) - ✨ 支持接入 Qwen2.5 VL 多模态大模型 - ✨ 支持接入 MiniCPM-o 2.6 多模态大模型 ### v3.43(2024/10/02) - ✨ 新增人员管理模块 - ✨ 新增人脸检测和识别功能 - ✨ 新增无感考勤功能 ### v3.41(2024/05/20) - ✨ 新增 ONNXRuntime 推理引擎支持 - ✨ 支持 AMD、RK3588 等硬件平台 更多版本历史请查看 [v1,v2,v3 版本对比](#v1v2v3-主要区别) 章节。 ## 应用场景 - 🏢 **智慧园区**:周界入侵、人脸识别、车辆检测 - 🏭 **工业安全**:安全帽检测、禁烟区监控、防护装备检测 - 🔥 **消防安全**:火焰烟雾检测、逃生通道监控 - 🏠 **公共安全**:打架检测、人群聚集检测、异常行为识别 - 🛣 **交通监控**:车辆检测、违章停车、人车分离 ## 技术特点 ### 高性能 - C++ 核心引擎,单路视频 CPU 占用 < 10% - 支持 GPU 加速,推理速度提升 5-10 倍 - 多线程并发处理,支持 10+ 路视频同时分析 ### 低延迟 - 视频流拉取延迟 < 500ms - 算法推理延迟 < 100ms - 报警响应时间 < 2s ### 高可用 - 支持视频流断线自动重连 - 算法推理异常自动恢复 - 7x24 小时稳定运行 ## 注意事项 1. **系统要求** - Windows 10/11 或 Linux (Ubuntu 18.04+) - 内存:至少 4GB,推荐 8GB+ - 硬盘:至少 10GB 可用空间 2. **端口检查** - 确保 9991-9995 端口未被占用 - Windows 防火墙需要放行相应端口 3. **配置文件** - 首次运行必须修改 `config.json` 中的路径 - 外网访问需将 `host` 改为局域网 IP 4. **算法模型** - 模型文件必须放置在 `Analyzer/models/` 目录 - 不同推理引擎需要不同格式的模型 5. **性能优化** - Intel 平台优先使用 OpenVINO - NVIDIA 平台优先使用 TensorRT - 其他平台使用 ONNXRuntime ## 资源链接 --- ### 历史版本介绍 | 版本号 | 介绍 | | :----: | :----: | | v3.0 | [查看v3.0介绍视频](https://www.bilibili.com/video/BV1Xy4y1P7M2) | | | 主要新增支持C++版openvino算法推理功能/后台管理全面升级 | | v3.1 | [查看v3.1介绍视频](https://www.bilibili.com/video/BV1F64y1L7dq) | | | 主要新增支持C++版nvidia/tensorrt算法推理功能 | | v3.2 | [查看v3.2介绍视频](https://www.bilibili.com/video/BV12g4y167u2) | | | 主要新增兼容Linux/intel/openvino | | | v3.2【完整安装包下载链接】:https://pan.quark.cn/s/b8989d2cc312 | | v3.3 | [查看v3.3介绍视频](https://www.bilibili.com/video/BV1pK421h74U) | | | 支持Windows/Linux + intel + openvino | | | 主要新增支持摄像头管理模块,升级播放器插件模块 | | | v3.3【完整安装包下载链接】:https://pan.quark.cn/s/b8989d2cc312 | | v3.40 | [查看v3.40介绍视频](https://www.bilibili.com/video/BV1tH4y1G775) | | | 支持Windows/Linux + 不限 + api | | | 主要新增支持API类型的算法调用模块,新增支持C++版dlib库 | | v3.41 | [查看v3.41介绍视频](https://www.bilibili.com/video/BV1hJ4m1w7tP) | | | 支持Windows/Linux + intel,amd,rk3588等 + onnxruntime | | | 主要新增支持onnxruntime推理引擎,优化性能,onnxruntime可以支持AMD,RK3588等硬件 | | | v3.41【完整安装包下载链接】:https://pan.quark.cn/s/b8989d2cc312 | | v3.42 | [查看v3.42介绍视频](https://www.bilibili.com/video/BV1rf421v74R) | | | 支持Windows/Linux + intel,amd,rk3588等 + onnxruntime | | | 主要新增支持基于cnnlstm视频分类网络的算法模型 | | v3.43 | [查看v3.43介绍视频](https://www.bilibili.com/video/BV14a2NYJE6i) | | | 支持Windows/Linux + intel,amd + openvino,onnxruntime | | | 主要新增人员管理,人脸检测,人脸特征提取,人脸识别,无感考勤等功能 | | | v3.43【完整安装包下载链接】:https://pan.quark.cn/s/b8989d2cc312 | | v3.44 | [查看v3.44介绍视频](https://www.bilibili.com/video/BV14a2NYJE6i) | | | 新增支持rk3588/rk3576/rknpu推理加速/rga加速,详细介绍编译和部署全过程 | | v3.45 | [查看v3.45介绍视频](https://www.bilibili.com/video/BV1wfCBYFEVD) | | | 主要支持openvino/tensorrt/onnxruntime推理yolo,部署要求:设备必须包含支持CUDA12.0的英伟达显卡 | | v3.46 | 发布于2025/02/05 [查看v3.46介绍视频](https://www.bilibili.com/video/BV1Y7NneSEim) | | | 最大的特点是引入了MiniCPM-o 2.6多模态视觉大模型,基于lamma.cpp直接推理 | | v3.47 | 发布于2025/03/04 [查看v3.47介绍视频](https://www.bilibili.com/video/BV1Ed9RYaEha) | | | 支持arm/x86-Linux/Windows编译,支持rk3588/昇腾/算能/树莓派/英特尔/AMD/海光,支持yolo8/yolo11/yolo12/openvino/onnxruntime | | v3.48 | 发布于2025/03/26 [查看v3.48介绍视频](https://www.bilibili.com/video/BV1SFZKYnEEq) | | | 支持接入Qwen2.5 VL,Qwen2.0 VL,MiniCPM-o 2.6等多模态大模型 | | | v3.48【完整安装包下载链接】:https://pan.quark.cn/s/b8989d2cc312 | | v3.51 | 发布于2025/07/01 | | | 新增支持打架检测,火焰烟火检测,抽烟检测,安全帽检测等算法 | | | v3.51【完整安装包下载链接】:https://pan.quark.cn/s/b8989d2cc312 | | v3.52 | 发布于2025/09/25 [查看v3.52介绍视频](https://www.bilibili.com/video/BV1AQxGz4ELr) | | | v3.52新增支持接入开源集群管理平台2.0,新增支持通过开源集群管理平台2.0实现视频文搜功能,优化一系列系统设置 | | | v3.52【完整安装包下载链接】:https://pan.quark.cn/s/b8989d2cc312 | ### 历史版本介绍完整源码下载地址 ~~~ //视频行为分析系统 3.0/3.1/3.2,/3.3/3.40/3.41/3.42/3.43/3.44/3.45/3.46/3.47/3.48源码下载地址 【夸克】https://pan.quark.cn/s/18251f724618 提取码:Xw7c ~~~ ### 相关视频 * 【开源版】视频行为分析系统v1,系统实现了实时分析视频流,实时产生报警视频,实时推流:https://www.bilibili.com/video/BV1dG4y1k77o * 视频行为分析系统v1,源码讲解第1讲:拉流,解码,实时算法分析,合成报警视频,编码,推流:https://www.bilibili.com/video/BV1L84y177xc * 视频行为分析系统v1,源码讲解第2讲:音频解码,音频重采样,音频编码,合成报警视频:https://www.bilibili.com/video/BV1984y1L7zB * 【开源版】视频行为分析系统v2,兼容Linux,优化推流功能:https://www.bilibili.com/video/BV1CG411f7ak * 视频行为分析系统v3,算法模型升级至yolov8,推理加速采用C++版openvino,完善周界入侵算法,支持绘制周界入侵算法计算区域,完善后台管理模块:https://www.bilibili.com/video/BV1Xy4y1P7M2 * 视频行为分析系统v3.1,新增支持英伟达显卡推理,C++版TensorRT推理引擎推理YOLO8算法模型,Windows版提供所有依赖库,可以直接运行:https://www.bilibili.com/video/BV1F64y1L7dq? * 视频行为分析系统v3.2,兼容Linux系统,优化报警视频帧计算逻辑,提升性能,升级ffmpeg依赖库:https://www.bilibili.com/video/BV12g4y167u2 * 视频行为分析系统v3.2,Linux系统编译教程:https://www.bilibili.com/video/BV1Z94y1u7u8 * 视频行为分析系统v3.3,优化播放器/摄像头对接/算法/存储:https://www.bilibili.com/video/BV1pK421h74U * 视频行为分析系统v3.40,新增人脸检测/yolo9/yolo8/400种动作检测报警:https://www.bilibili.com/video/BV1tH4y1G775 * 视频行为分析系统v3.41,C++版OnnxRuntime推理yolo,支持rk/树莓派/香橙派/英特尔/英伟达/AMD等硬件 检测视频的异常行为,合成报警视频:https://www.bilibili.com/video/BV1hJ4m1w7tP * 视频行为分析系统v3.42,CNN+LSTM分析时序视频帧,视频分类算法:https://www.bilibili.com/video/BV1rf421v74R * 视频行为分析系统v3.43,新增人员管理/人脸检测/人脸特征提取/人脸识别/无感考勤:https://www.bilibili.com/video/BV14a2NYJE6i * 视频行为分析系统v3.44,C++版RKNPU推理yolo加速,rga预处理加速,支持rk3588/rk3576 检测视频的异常行为,合成报警视频:https://www.bilibili.com/video/BV1n9zuYKEt5 * 视频行为分析系统v3.45,C++版TensorRT推理yolo,OpenVINO推理yolo,OnnxRuntime推理yolo 检测视频的异常行为,合成报警视频:https://www.bilibili.com/video/BV1wfCBYFEVD * 视频行为分析系统v3.46,新增llama.cpp推理MiniCPM,零门槛体验视觉大模型:https://www.bilibili.com/video/BV1Y7NneSEim * 视频行为分析系统v3.47,支持arm/x86-Linux/Windows编译,支持rk3588/昇腾/算能/树莓派/英特尔/AMD/海光:https://www.bilibili.com/video/BV1Ed9RYaEha * 视频行为分析系统v3.48,接入Qwen2.5 VL,Qwen2.0 VL,MiniCPM-o 2.6等多模态大模型:https://www.bilibili.com/video/BV1SFZKYnEEq --- ## v1,v2,v3 主要区别 | 对比项 | v1/v2 | v3 | | --- | --- | --- | | **推理引擎** | Python 版 OpenVINO | C++ 版 OpenVINO/TensorRT/ONNXRuntime | | **检测算法** | YOLOv5/SSD | YOLOv8/YOLO11 等 | | **报警机制** | 检测到目标即报警 | 支持周界入侵区域检测 | | **架构设计** | 分析器和算法模块分离(C++/Python) | 分析器和算法模块合并(全 C++) | | **报警管理** | 无后台管理功能 | 完整的 Web 管理后台 | | **区域绘制** | 不支持 | 支持可视化区域绘制 | | **性能** | 较低 | 明显提升,支持 GPU 加速 | --- ## 软件截图 wensou 1 2 3 4 5 6 7 8 --- ## 开源协议 本项目自有代码使用宽松的MIT协议,在保留版权信息的情况下可以自由应用于各自商用、非商业的项目。 但是本项目也零碎的使用了一些其他的开源代码,在商用的情况下请自行替代或剔除; 由于使用本项目而产生的商业纠纷或侵权行为一概与本项目及开发者无关,请自行承担法律风险。 在使用本项目代码时,也应该在授权协议中同时表明本项目依赖的第三方库的协议。 ---
**感谢使用视频行为分析系统 v3 ❤️** 如果这个项目对您有帮助,欢迎 Star ⭐ 支持!