云边端一体化?AIoT全流程闭环的“真”开源的智能算法应用平台正式发布!
零门槛体验,让AI算法开发从未如此简单高效
引言:重新定义AI算法平台体验
在AI技术快速发展的今天,算法开发者面临着前所未有的挑战:复杂的模型训练流程、繁琐的环境配置、高昂的学习成本、多语言技术栈的整合难题……这些问题让许多优秀的算法创意止步于概念阶段。
今天,我们隆重推出EasyAIoT——一个真正意义上的算法王炸级AI智能算法应用平台。我们创新性地采用Java、Python、C++三合一语言混编架构,规避单一语言短板,构建了一个"开发复杂度高、使用简易化"的AIoT平台,实现真正意义上的零门槛AI体验。
项目地址:https://gitee.com/soaring-xiongkulu/easyaiot
项目概述:重新构想AI算法应用
设计哲学:各取所长,完美融合
Java擅长平台构建和设备管理但不适合网络编程和AI开发,Python精通网络和AI算法执行但不擅长高性能任务,C++在高性能计算方面无可匹敌但在其他领域略显不足。EasyAIoT创新性地采用三语言混编架构,构建了一个"开发不太Easy,但使用极其Easy"的AI算法应用平台。
平台定位:零门槛AI体验
EasyAIoT致力于打破AI技术使用壁垒,实现真正意义上的零门槛AI体验。我们的目标是将AI能力带给全球用户,让全球用户无需专业技术背景即可享受AI带来的便捷价值,而非仅局限于少数技术从业者。
核心价值:全链路闭环
平台支持百级摄像头接入,覆盖RTSP流、视频、图像、语音、文本等多模态数据的全生命周期处理,包含采集、标注、训练、推理、导出、分析、告警、录像、存储、部署等完整流程,集成PaddleOCR文字识别、语音转文本、多模态视觉大模型(物体识别、文字识别)及LLM大语言模型等核心能力。
整体由五大可独立拆分的核心模块组成,既支持云端大规模设备接入与集群部署,也可在RK3588等受限边缘设备上单独部署单个模块,灵活适配千种垂直场景,广泛应用于安全监控、智能交通、工业防护、智慧食堂、矿山安全等领域。
项目地址:https://gitee.com/soaring-xiongkulu/easyaiot
技术架构:创新性的三语言混编
模块化设计理念
EasyAIoT实际上不是一个单一项目,而是五个独立又可协同的核心项目:
🌐 WEB模块
基于Vue 3 + TypeScript的前端管理界面,集成Element Plus组件库,支持多终端自适应。提供设备管理、AI模型训练、数据可视化、智能分析、权限控制等完整功能。通过WebRTC实现实时语音对讲,适配监控场景远程交互需求。
📱 DEVICE模块(Java)
基于Java Spring Boot架构的设备管理模块,负责平台稳定性保障:
- 设备接入与注册:支持摄像头、温湿度传感器、可燃气体探测器等多类型IoT设备接入,兼容ONVIF、MQTT等协议,支持设备SN号绑定、产品型号关联与批量注册
- 设备状态监控:实时展示设备在线/离线状态、激活状态与运行参数,支持设备标识、所属产品等多条件筛选查询,生成设备状态统计报表
- 设备远程控制:下发云台控制、开关指令等操作,支持设备参数配置修改,记录设备操作日志与状态变更历史
- 产品管理:创建自定义产品型号,关联对应协议类型,配置产品属性与功能模板,实现设备与产品的精准绑定与分类管理
- 规则引擎:基于Node-RED的可视化规则配置,支持数据流转规则、消息路由、数据转换,实现设备间智能联动控制
- 数据标注:数据集管理、图像/视频标注工具、视频流帧捕获
- 算法商店:提供20+预训练模型,覆盖安全监控、交通管理等多场景
🎥 VIDEO模块(Python)
基于Python的视频处理模块,负责视频流处理与传输:
- 多协议视频流处理:支持RTSP、GB28181、RTMP、HTTP-FLV、WS-FLV、HLS等协议,实现视频流推流、转发、拉流与实时播放,适配电脑端、移动端、微信端等多终端
- 实时监控功能:提供多屏观看、云台控制、语音对讲、录像回放等核心能力,支持监控通道布防与视频画面全屏展示
- 视频存储与管理:配置本地硬盘或分布式存储路径,设置录像存储时长,支持按时间、设备ID检索录像文件
- 平台级联:支持多平台级联部署,实现跨平台视频流共享与设备统一管控
🧠 AI模块(Python)
基于Python的人工智能处理模块,集成先进的AI算法,负责视频分析和智能决策:
- 模型训练:支持YOLOv8目标检测模型训练,支持GPU/CPU训练模式自动切换
- 模型导出:支持多种格式导出(ONNX、TorchScript等),支持模型量化优化边缘部署效率
- 模型部署:支持将模型部署为RESTful API服务,提供模型服务的启动、停止、状态查询等功能
- 多模态支持:PaddleOCR文字识别、语音转文本、多模态视觉大模型(物体识别、文字识别)
- 大语言模型集成:LLM大语言模型支持RTSP流、视频、图像、语音、文本等多种数据
- 实时推理分析:基于视频流或传感器数据执行AI推理,识别违规行为与异常事件
- 违规抓拍与告警:自动抓拍违规行为图片/视频,触发声光报警或短信通知
⚡ TASK模块(C++)
基于C++的高性能任务处理模块,专为计算密集型任务设计,确保系统响应速度:
- 高性能计算:基于C++的优化计算引擎,支持10万级数据非阻塞处理
- 边缘推理:支持在边缘设备上进行实时AI模型推理
- 任务调度:高效的任务调度和资源管理机制
- 并发处理:支持多线程并发处理
- 内存优化:低内存占用设计,适合资源受限的边缘环境
数据流转架构
各模块之间通过精心设计的接口进行数据交互,形成高效的数据处理流水线:
- 设备层:通过DEVICE模块接入各类IoT设备
- 数据处理层:VIDEO和TASK模块处理原始数据
- 智能分析层:AI模块进行深度分析和推理
- 应用展示层:WEB模块提供可视化管理和控制
存储方案
- 关系型数据库:存储系统配置与用户数据
- MinIO分布式对象存储:管理数据集、模型文件与训练日志
- 容器化部署:Docker实现全模块容器化打包,Docker Compose负责单机编排,Kubernetes支撑云端集群弹性伸缩
项目地址:https://gitee.com/soaring-xiongkulu/easyaiot
核心AI能力:重新定义智能分析
全面的AI技术栈
- 百级摄像头接入:支持大规模摄像头集群管理
- 全流程覆盖:采集、标注、训练、推理、导出、分析、告警、录像、存储、部署
- 多模态支持:PaddleOCR文字识别、语音转文本、多模态视觉大模型
- 大语言模型集成:LLM大语言模型支持RTSP流、视频、图像、语音、文本等多种数据
- 丰富生态支持:提供20+预训练模型,覆盖安全监控、交通管理等多场景
革命性的零样本标注技术
我们创新性地依托大模型构建了零样本标注技术体系,其核心流程包括:
- 自动生成:通过大模型自动生成标注数据
- 智能优化:借助提示词技术完成自动标注优化
- 人机协同校验:标记低置信度标注数据,提供人工审核界面,支持标注结果修改、删除与保存
- 持续进化:训练出的小模型通过迭代实现自我优化
这一技术体系的目标是彻底解放人力,大幅降低人工成本,实现标注效率与模型精度的协同进化。
多场景预训练模型
内置24种预训练模型,覆盖:
- 安全监控:火焰、烟雾、跌倒、安全帽识别
- 交通管理:车牌、电动车、大货车识别
- 工业防护:安全手套、煤块识别
- 违规行为检测:吸烟、玩手机、占道经营
- 异常事件识别:交通事故、地面积水
IoT能力:企业级设备管理
完整的设备生命周期管理
- 设备接入:支持多种协议的设备注册与认证,兼容ONVIF、MQTT等协议
- 状态监控:实时设备状态监控与异常告警,支持设备标识、所属产品等多条件筛选查询
- 产品管理:灵活的产品定义与物模型配置,实现设备与产品的精准绑定
- 安全管理:多层次的安全认证与权限控制,支持动态令牌生成
强大的规则引擎
基于Node-RED的可视化规则配置,支持复杂的数据流转和业务逻辑:
- 规则链配置:基于Node-RED可视化界面创建规则链,支持规则启用/禁用与批量导入导出
- 自定义业务逻辑:通过Function节点编写数据处理脚本,实现10万级数据非阻塞处理,支持数据清洗、过滤、统计分析与按条件分组
- 设备联动控制:设置触发条件(如员工离岗超时、气体浓度超标),关联执行动作(如关气关电、自动关断气源),实现设备间联动响应
- 规则日志与监控:记录规则执行日志与触发历史,监控规则运行状态
数据智能分析
全面的数据采集、存储、查询与分析能力:
- 平台运营数据:统计总访问数、成交额、下载数等核心指标,展示访问来源分布与流量趋势曲线
- AI分析数据:统计模型训练次数、标注进度、告警事件数量,生成违规行为分类统计图表
- 能耗与环境数据:远程自动抄表统计水电能耗,监测仓库温湿度、挡鼠/隔墙状态
部署灵活性:云边端无缝衔接
独立部署优势
EasyAIoT的五大核心模块可以独立部署,这一设计带来了前所未有的灵活性:
- 云端部署:全模块部署,支持大规模设备接入
- 边缘部署:在RK3588等受限设备上单独部署所需模块
- 混合部署:根据业务需求灵活组合模块
一键部署方案
项目采用统一安装脚本install_all.sh进行一键部署。该脚本支持Docker容器化部署,可以快速安装和启动所有服务模块。强制Docker(≥v29.0.0)与Docker Compose(≥v2.35.0)版本适配,优化容器运行稳定性。
应用场景适配
这种架构使得EasyAIoT能够适配千种垂直场景,广泛应用于:
- 安全监控:火焰、烟雾、跌倒检测
- 智能交通:车牌识别、交通事故预警
- 工业防护:安全帽、安全手套检测
- 智慧食堂:人流统计、行为分析
- 矿山安全:违规操作、危险区域预警
核心优势:技术领先,体验卓越
多语言混编架构
结合Java的平台稳定性、Python的AI能力、C++的运算效率,为不同场景提供最优技术解决方案。规避单一语言短板,构建开发复杂度高、使用简易化的AIoT平台。
零样本标注技术
革命性的人工智能标注体系,依托大模型自动生成标注数据,人机协同校验优化,大幅降低人工成本,实现标注效率与模型精度协同进化。
云边端灵活部署
五大核心模块可独立部署,完美适配从受限边缘设备(如RK3588)到大规模云端集群的各种环境,兼顾大规模云端应用与边缘端轻量化需求。
丰富生态支持
提供20+预训练模型,覆盖安全监控、交通管理等多场景,配套完善的技术支持与定制化服务。
持续迭代优化
定期更新部署文档与脚本,强制容器版本适配,确保系统稳定性和部署体验。
应用场景:全方位覆盖,精准解决
人群密度管控
适用于校园操场、商场大厅、景区热门区域等需管控人群密度的场景。
周界防护
适用于校园围墙、工厂栏杆、建筑外立面等防止人员违规攀爬的场景。
跌倒检测
适用于校园楼梯间、养老院、居家老人活动区域等关注人员跌倒风险的场景。
异常逗留识别
适用于小区单元楼、商业体公共区域、企业敏感区域等防范人员异常逗留的场景。
肢体冲突预警
适用于校园操场、工厂休息区、商业步行街等需防范肢体冲突的场景。
非法闯入检测
适用于工厂生产区、仓库、小区私密区域等防止非法闯入的场景。
公共场所控烟
适用于校园厕所、商场电梯、企业办公楼楼道等公共场所控烟场景。
人流统计管控
适用于小区大门、商业体出入口、工厂门禁处等需统计人流或管控出入的场景。
区域越界预警
适用于施工区域隔离带、厂区安全边界、景区危险区域警戒线等防止越界的场景。
环境安全检查
适用于校园卫生区、工厂生产车间、商业体公共区域等需要管理检查的场景。
火灾早预警
适用于工厂车间、仓库、校园宿舍等需要火灾早预警的场景。
扩展应用领域
可拓展至交通(车牌识别、交通事故)、商业(客流统计、扒窃识别)、家庭(老人跌倒、宠物异常)等多领域场景。
项目地址:https://gitee.com/soaring-xiongkulu/easyaiot
系统展示:直观体验,一目了然
核心功能界面展示
分析页


数据标注






模型训练








模型推理





设备管理












规则引擎


系统管理




技术实现:稳定可靠的企业级代码
设备控制核心逻辑
EasyAIoT的DEVICE模块采用Java Spring Boot架构,提供专业级的设备控制实现,支持大规模设备并发控制,具备完善的错误处理机制。
核心代码示例:
@ComponentpublicclassSinkApiDeviceControl{@Value("${sink.api.url}")privateString sinkApiUrl;// 下发设备控制指令publicbooleansendDeviceControlCommand(String deviceId,String command,Map<String,Object> params){HttpHeaders headers =newHttpHeaders(); headers.setContentType(MediaType.APPLICATION_JSON);DeviceControlRequest request =newDeviceControlRequest(); request.setDeviceId(deviceId); request.setCommand(command); request.setParams(params);HttpEntity<DeviceControlRequest> entity =newHttpEntity<>(request, headers);try{ResponseEntity<DeviceControlResponse> response =newRestTemplate().postForEntity(sinkApiUrl +"/device/control", entity,DeviceControlResponse.class);return response.getStatusCode().is2xxSuccessful()&& response.getBody().isSuccess();}catch(Exception e){ log.error("设备控制指令下发失败:", e);returnfalse;}}}安全认证体系
多层次安全认证体系,支持动态令牌生成,完善的权限管理,确保系统安全可靠。
设备授权鉴权机制:
publicclassDeviceAuthUtil{// 生成设备访问令牌publicstaticStringgenerateDeviceToken(String deviceId,String secretKey){Map<String,Object> claims =newHashMap<>(); claims.put("deviceId", deviceId); claims.put("exp",System.currentTimeMillis()+3600000);// 1小时有效期returnJwts.builder().setClaims(claims).signWith(SignatureAlgorithm.HS256, secretKey.getBytes()).compact();}// 校验设备令牌有效性publicstaticbooleanvalidateDeviceToken(String token,String secretKey){try{Jwts.parser().setSigningKey(secretKey.getBytes()).parseClaimsJws(token);returntrue;}catch(Exception e){returnfalse;}}}AI模型管理
完整的模型生命周期管理,支持分布式训练,自动化模型优化,确保AI能力的持续提升。
模型训练与导出核心逻辑:
import torch from ultralytics import YOLO import minio from pathlib import Path classAIModelManager:def__init__(self, minio_config):# 初始化MinIO客户端,用于读取数据集和模型文件 self.minio_client = minio.Minio( endpoint=minio_config["endpoint"], access_key=minio_config["access_key"], secret_key=minio_config["secret_key"], secure=minio_config.get("secure",False)) self.bucket_name = minio_config["bucket_name"]defload_pretrained_model(self, model_version="yolov8n"):"""加载预训练模型(YOLOv8n或YOLOv11n)""" model_path =f"{model_version}.pt"# 从MinIO下载预训练模型文件(若本地不存在)ifnot Path(model_path).exists(): self.minio_client.fget_object( bucket_name=self.bucket_name, object_name=f"models/{model_path}", file_path=model_path )# 初始化YOLO模型return YOLO(model_path)deftrain_model(self, model, dataset_path, epochs=100, batch_size=16, img_size=640):"""模型训练逻辑(优化后训练流程)"""# 从MinIO下载数据集配置文件 self.minio_client.fget_object( bucket_name=self.bucket_name, object_name=f"datasets/{dataset_path}/data.yaml", file_path="data.yaml")# 启动训练,记录训练日志 results = model.train( data="data.yaml", epochs=epochs, batch=batch_size, imgsz=img_size, device="0"if torch.cuda.is_available()else"cpu", project="runs/train", name="exp", exist_ok=True)# 保存训练日志与结果 self._save_train_logs(results)return results defexport_model(self, model, export_format="onnx"):"""模型导出为指定格式(onnx/torchscript等)""" export_path = model.export(format=export_format)# 导出文件上传至MinIO self.minio_client.fput_object( bucket_name=self.bucket_name, object_name=f"exported_models/model.{export_format}", file_path=export_path )return export_path def_save_train_logs(self, results):"""保存训练日志,支持后续查询跟踪""" log_content =f"训练完成时间: {results.start_time}\n" log_content +=f"mAP50: {results.box.map50}\n" log_content +=f"损失值: {results.box.loss}\n"withopen("train_logs.txt","w", encoding="utf-8")as f: f.write(log_content)# 日志上传至MinIO self.minio_client.fput_object( bucket_name=self.bucket_name, object_name="train_logs/train_logs.txt", file_path="train_logs.txt")高性能任务处理
基于C++的高性能计算引擎,支持边缘推理,低内存占用设计,适合各种边缘设备部署。
功能介绍:全链路能力覆盖
设备管理模块
- 设备接入与注册:支持摄像头、温湿度传感器、可燃气体探测器等多类型IoT设备接入,兼容ONVIF、MQTT等协议,支持设备SN号绑定、产品型号关联与批量注册
- 设备状态监控:实时展示设备在线/离线状态、激活状态与运行参数,支持设备标识、所属产品等多条件筛选查询,生成设备状态统计报表
- 设备远程控制:下发云台控制、开关指令等操作,支持设备参数配置修改,记录设备操作日志与状态变更历史,支持设备批量删除与批量配置
- 产品管理:创建自定义产品型号,关联对应协议类型,配置产品属性与功能模板,实现设备与产品的精准绑定与分类管理
流媒体管理模块
- 多协议视频流处理:支持RTSP、GB28181、RTMP、HTTP-FLV、WS-FLV、HLS等协议,实现视频流推流、转发、拉流与实时播放,适配电脑端、移动端、微信端等多终端
- 实时监控功能:提供多屏观看、云台控制、语音对讲、录像回放等核心能力,支持监控通道布防与视频画面全屏展示,留存录像文件用于后续追溯
- 视频存储与管理:配置本地硬盘或分布式存储路径,设置录像存储时长,支持按时间、设备ID检索录像文件,实现录像文件的导出与删除操作
- 平台级联:支持多平台级联部署,实现跨平台视频流共享与设备统一管控,适配大规模监控网络的分层管理需求
数据标注模块
- 数据集管理:支持图片、视频、视频流帧捕获等多类型数据集创建,配置数据集名称、分类与描述,支持数据集批量上传与压缩包导入
- 自动化标注:集成零样本标注技术,调用大模型自动生成标注数据,支持矩形、多边形等标注工具,实现目标对象精准框选与标签关联
- 人机协同校验:标记低置信度标注数据,提供人工审核界面,支持标注结果修改、删除与保存,记录标注人、标注时间与修改历史
- 数据集预处理:按比例划分训练集、验证集与测试集,支持数据集用途重置,一键同步数据集至MinIO存储,生成数据集配置文件
模型训练与管理模块
- 模型创建与配置:新建自定义模型,关联目标数据集,选择预训练模型,配置训练参数(epochs、batch_size、img_size等)
- 训练任务调度:支持GPU/CPU训练模式自动切换,展示训练任务进度、开始时间与当前状态,支持训练任务暂停、重启与终止操作
- 训练结果分析:生成训练损失曲线与评估指标图表,输出训练结果CSV文件与最佳模型文件
- 模型版本管理:记录模型版本迭代历史,支持模型推理、导出与部署操作,关联对应训练任务与数据集,实现模型全生命周期追踪
AI智能分析模块
- 多场景预训练模型:内置24种预训练模型,覆盖安全监控(火焰、烟雾、跌倒、安全帽识别)、交通管理(车牌、电动车、大货车识别)、工业防护(安全手套、煤块识别)等场景,支持模型快速部署启用
- 实时推理分析:基于视频流或传感器数据执行AI推理,识别违规行为(如吸烟、玩手机、占道经营)与异常事件(如交通事故、地面积水),输出识别结果与置信度
- 违规抓拍与告警:自动抓拍违规行为图片/视频,触发声光报警或短信通知,记录告警时间、设备ID与违规类型,生成告警统计报表与历史记录
- 定制化算法开发:支持自定义AI算法接入与训练,适配垂直领域需求(如矿山煤块识别、电力设施入侵检测),实现算法多版本管理与切换
规则引擎模块
- 规则链配置:基于Node-RED可视化界面创建规则链,支持规则启用/禁用与批量导入导出,配置规则名称、描述与触发条件
- 自定义业务逻辑:通过Function节点编写数据处理脚本,实现10万级数据非阻塞处理,支持数据清洗、过滤、统计分析与按条件分组
- 设备联动控制:设置触发条件(如员工离岗超时、气体浓度超标),关联执行动作(如关气关电、自动关断气源),实现设备间联动响应
- 规则日志与监控:记录规则执行日志与触发历史,监控规则运行状态,支持规则参数修改与逻辑优化,确保联动控制精准有效
系统管理模块
- 用户与权限管理:创建多角色用户账号,配置部门归属与手机号码,设置账号启用/禁用状态,分配菜单操作权限与功能访问权限,记录用户登录日志
- 组织架构管理:搭建集团、分公司、部门多级组织架构,配置部门负责人与排序优先级,支持部门启用/关闭与批量删除,适配企业级组织管理需求
- 菜单与字典管理:自定义系统菜单显示状态与排序,配置菜单权限标识与组件路径;维护字典分类与字典数据(如订单状态、用户角色),支持字典数据修改与删除
- 日志与监控:记录系统操作日志、设备预警日志与风险事件记录,监控系统资源占用(CPU、内存、存储),生成系统运行状态报表
数据统计与分析模块
- 平台运营数据:统计总访问数、成交额、下载数等核心指标,展示访问来源分布与流量趋势曲线,按时间段(日/周/月)生成运营报表
- AI分析数据:统计模型训练次数、标注进度、告警事件数量,生成违规行为分类统计图表,支持按场景、设备维度筛选分析结果
- 能耗与环境数据:远程自动抄表统计水电能耗,监测仓库温湿度、挡鼠/隔墙状态,生成能耗超限提醒与环境参数趋势报表
部署安装:一键部署,开箱即用
项目采用统一安装脚本install_all.sh进行一键部署。该脚本支持Docker容器化部署,可以快速安装和启动所有服务模块。
部署要求
- Docker版本:≥v29.0.0
- Docker Compose版本:≥v2.35.0
部署优势
- 一键安装:统一脚本自动完成所有模块的安装和配置
- 容器化部署:全模块容器化打包,确保环境一致性
- 版本适配:强制容器版本适配,优化容器运行稳定性
- 持续更新:定期更新部署文档与脚本,确保部署体验
社区与开源:用爱发电的技术情怀
在这个假开源横行的时代,EasyAIoT选择了一条不同的道路。我们坚持真开源的理念,所有的代码、文档、设计都完全开放,致力于构建一个健康、活跃的开源社区。
我们的承诺
- 完全开放:所有核心功能完全开源
- 持续维护:定期更新,长期支持
- 社区驱动:倾听社区声音,共同发展
加入我们
🌟 真开源不易,如果这个项目对您有帮助,请您点亮一颗Star再离开,这将是对我最大的支持!
我们相信,开源不仅是代码的共享,更是智慧的碰撞和技术的传承。每一个Star都是对我们坚持的认可,也是我们继续前进的动力。
演示环境与支持
在线演示
- **演示地址**:http://36.111.47.113:8888/ - **账号**:admin - **密码**:admin123 欢迎访问演示环境,亲身体验EasyAIoT的强大功能!
结语:开启智能算法新篇章
EasyAIoT不仅仅是一个技术项目,更是我们对AI算法应用未来发展的思考和实践。通过创新的三语言混编架构、革命性的零样本标注技术、灵活的云边端部署方案,我们为AI算法开发开辟了新的可能性。
在这个技术快速演进的时代,我们选择用开源的方式,与全球开发者共同探索智能算法的边界。无论你是算法初学者还是资深专家,EasyAIoT都将为你提供一个强大的技术平台和温暖的开发者社区。
项目地址:https://gitee.com/soaring-xiongkulu/easyaiot
让我们一起,用代码书写智能算法的未来,用开源精神推动技术进步。加入EasyAIoT社区,共同构建更加智能、互联的世界!
温馨提示:本项目完全开源免费,采用APACHE LICENSE 2.0开源协议,欢迎技术交流与贡献。如有商业应用需求,请遵循相关开源协议。
联系方式
如需了解更多信息或加入技术交流群,欢迎通过以下方式联系我们:

期待您的Star和交流沟通,共同推进EasyAIoT向前发展! ⭐