EasyAIoT 工程详解
1. 项目概览
EasyAIoT 是一个云边端一体化智能算法应用平台,专注于 AI 与 IoT 的深度融合。通过算法任务管理、实时流分析和模型服务集群推理等核心能力,实现了从设备接入到数据采集、AI 分析和智能决策的完整闭环,真正实现了万物互联和万物智能控制。
2. 项目结构
EasyAIoT 由五个核心模块组成,采用多语言混合编程架构,充分发挥各语言优势:
| 模块 | 技术栈 | 主要功能 |
|---|---|---|
| WEB 模块 | Vue 3, TypeScript, Ant Design Vue | 前端管理界面,提供统一的用户交互体验 |
| DEVICE 模块 | Java (JDK21) | 设备管理、产品管理、多协议支持、规则引擎 |
| VIDEO 模块 | Python | 流处理、算法任务管理、帧提取与排序、防御时间段管理 |
| AI 模块 | Python | 智能分析、模型服务集群、实时推理、模型管理 |
| TASK 模块 | C++ | 高性能任务处理,负责计算密集型任务执行 |
3. 技术栈详解
3.1 前端技术栈 (WEB 模块)
- 核心框架:Vue 3 + TypeScript
- UI 库:Ant Design Vue 4.0.7、Element UI 2.15.14
- 状态管理:Pinia 2.1.7
- 路由:Vue Router 4.3.0
- 国际化:Vue I18n 9.6.5
- 图表库:ECharts 5.5.1
- 视频播放:@easydarwin/easyplayer、@easydarwin/easywasmplayer
- 构建工具:Vite 4.5.0
- 代码规范:ESLint、StyleLint、Prettier
3.2 后端技术栈
- DEVICE 模块:Java 21,提供稳定可靠的平台架构
- VIDEO/AI 模块:Python,擅长网络编程和 AI 算法开发
- TASK 模块:C++,擅长高性能任务执行
4. 核心功能
4.1 AI 能力
- 多协议摄像头接入:支持 GB28181 和 ONVIF 主流视频监控协议
- 视觉大模型智能理解:集成 QwenVL3 视觉大模型,支持深度视觉推理和语义理解
- 实时摄像头 AI 分析:对实时视频流进行目标检测、行为分析和异常识别
- 云边端一体化算法告警监控面板:实时显示设备状态、算法任务运行、告警事件统计等
- 设备检测区域绘制:支持在设备快照图像上绘制矩形和多边形检测区域
- 智能联动告警机制:支持检测区域、防御时间段和事件告警的三重联动机制
- 大规模摄像头管理:支持接入数百路摄像头,提供端到端服务
- 算法任务管理:支持实时算法任务和快照算法任务
- 流转发:支持直接查看摄像头实时画面
- 模型服务集群推理:支持分布式模型推理服务集群
- 防御时间段管理:支持全防御模式和半防御模式
- OCR 和语音识别:基于 PaddleOCR 的高精度文字识别和语音转文字功能
- 多模态视觉大模型:支持目标识别和文字识别等多种视觉任务
- LLM 大语言模型:支持多种输入格式的智能分析和理解
- 模型部署和版本管理:支持 AI 模型的快速部署和版本管理
- 多实例管理:支持多个模型实例的并发运行和资源调度
- 摄像头快照:支持实时摄像头快照功能
- 快照存储空间管理:提供快照图像的存储空间管理
- 视频存储空间管理:提供视频文件的存储空间管理
- 快照图像管理:支持快照图像的全生命周期管理
- 设备目录管理:提供分层设备目录管理
- 告警录制:支持告警事件触发的自动录制
- 告警事件:提供全面的告警事件管理功能
- 视频回放:支持历史录像的快速检索和回放
4.2 IoT 能力
- 设备接入与管理:设备注册、认证、状态监控、生命周期管理
- 产品与物模型管理:产品定义、物模型配置、产品管理
- 多协议支持:支持 MQTT、TCP、HTTP 等多种 IoT 协议
- 设备认证与动态注册:安全接入、身份认证、设备动态注册
- 规则引擎:数据流规则、消息路由、数据转换
- 数据采集与存储:设备数据采集、存储、查询和分析
- 设备状态监控与告警管理:实时监控、异常告警、智能决策
- 通知管理:支持飞书、钉钉、企业微信、邮件、短信、Webhook 等 7 种通知方式
5. 架构特点
-
多语言混合编程架构:
- Java 构建稳定可靠的平台架构
- Python 负责网络编程和 AI 算法开发
- C++ 处理高性能任务执行
-
模块化设计:
- 各模块可独立部署,适合资源受限设备
- 支持边缘设备部署,如 RK3588 等
-
跨平台部署:
- 支持 Linux、Mac、Windows 部署
- 提供容器化部署方案
- 支持国产硬件和操作系统
-
零样本标注技术:
- 利用大模型构建零样本标注技术系统
- 通过提示工程完成自动标注
- 实现标注效率和模型精度的协同进化
6. 部署方案
6.1 平台部署
- Linux 部署:适合生产环境,稳定可靠,资源消耗低
- Mac 部署:适合开发和测试环境,与 macOS 深度集成
- Windows 部署:适合 Windows 服务器环境,降低学习曲线
6.2 容器化部署
- 提供 Docker 容器化部署方案
- 支持一键服务启动
- 适配服务器和边缘计算设备
7. 应用场景
- 智能监控:实时视频分析、异常行为检测、风险人员监控
- 安防系统:周界入侵检测、人脸识别、行为分析
- 智慧园区:设备管理、环境监测、智能控制
- 工业互联网:设备状态监控、预测性维护、生产流程优化
- 智慧城市:交通监控、环境监测、公共安全
8. 技术优势
- 云边端一体化:实现云、边缘和设备的协同工作
- 多协议支持:兼容主流视频监控协议和 IoT 协议
- AI 能力丰富:集成多种 AI 模型,支持多模态分析
- 高性能:C++ 处理计算密集型任务,Python 负责 AI 算法,Java 提供稳定架构
- 易部署:跨平台支持,提供容器化部署方案
- 可扩展性:模块化设计,支持大规模设备接入
- 智能化:零样本标注技术,降低数据标注成本
- 安全性:设备认证、数据加密、权限控制
9. 项目愿景
EasyAIoT 的愿景是让 AI 技术全球可及,实现真正的 AI 零门槛。通过云边端一体化的架构设计,让每个人都能体验到 AI 的 benefits,而不仅仅是少数特权阶层。
10. 总结
EasyAIoT 是一个功能强大、架构先进的云边端一体化智能算法应用平台,通过多语言混合编程架构,充分发挥各语言优势,实现了从设备接入到智能决策的完整闭环。它不仅支持多种 AI 能力和 IoT 功能,还具有跨平台部署、零样本标注等技术优势,为智能监控、安防系统、智慧园区等场景提供了全面的解决方案。
作为一个开源项目,EasyAIoT 欢迎各种形式的贡献,包括代码开发、文档编写和问题报告,共同推动项目的发展和完善。