EasyAIoT 工程详解

4 阅读6分钟

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. 架构特点

  1. 多语言混合编程架构

    • Java 构建稳定可靠的平台架构
    • Python 负责网络编程和 AI 算法开发
    • C++ 处理高性能任务执行
  2. 模块化设计

    • 各模块可独立部署,适合资源受限设备
    • 支持边缘设备部署,如 RK3588 等
  3. 跨平台部署

    • 支持 Linux、Mac、Windows 部署
    • 提供容器化部署方案
    • 支持国产硬件和操作系统
  4. 零样本标注技术

    • 利用大模型构建零样本标注技术系统
    • 通过提示工程完成自动标注
    • 实现标注效率和模型精度的协同进化

6. 部署方案

6.1 平台部署

  • Linux 部署:适合生产环境,稳定可靠,资源消耗低
  • Mac 部署:适合开发和测试环境,与 macOS 深度集成
  • Windows 部署:适合 Windows 服务器环境,降低学习曲线

6.2 容器化部署

  • 提供 Docker 容器化部署方案
  • 支持一键服务启动
  • 适配服务器和边缘计算设备

7. 应用场景

  • 智能监控:实时视频分析、异常行为检测、风险人员监控
  • 安防系统:周界入侵检测、人脸识别、行为分析
  • 智慧园区:设备管理、环境监测、智能控制
  • 工业互联网:设备状态监控、预测性维护、生产流程优化
  • 智慧城市:交通监控、环境监测、公共安全

8. 技术优势

  1. 云边端一体化:实现云、边缘和设备的协同工作
  2. 多协议支持:兼容主流视频监控协议和 IoT 协议
  3. AI 能力丰富:集成多种 AI 模型,支持多模态分析
  4. 高性能:C++ 处理计算密集型任务,Python 负责 AI 算法,Java 提供稳定架构
  5. 易部署:跨平台支持,提供容器化部署方案
  6. 可扩展性:模块化设计,支持大规模设备接入
  7. 智能化:零样本标注技术,降低数据标注成本
  8. 安全性:设备认证、数据加密、权限控制

9. 项目愿景

EasyAIoT 的愿景是让 AI 技术全球可及,实现真正的 AI 零门槛。通过云边端一体化的架构设计,让每个人都能体验到 AI 的 benefits,而不仅仅是少数特权阶层。

10. 总结

EasyAIoT 是一个功能强大、架构先进的云边端一体化智能算法应用平台,通过多语言混合编程架构,充分发挥各语言优势,实现了从设备接入到智能决策的完整闭环。它不仅支持多种 AI 能力和 IoT 功能,还具有跨平台部署、零样本标注等技术优势,为智能监控、安防系统、智慧园区等场景提供了全面的解决方案。

作为一个开源项目,EasyAIoT 欢迎各种形式的贡献,包括代码开发、文档编写和问题报告,共同推动项目的发展和完善。