# ai-view-platform **Repository Path**: Glacier_J/ai-view-platform ## Basic Information - **Project Name**: ai-view-platform - **Description**: ai 集成平台 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-25 - **Last Updated**: 2026-05-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AI-View-Platform 基于 Ultralytics YOLO 的 AI 集成平台,提供从数据管理、模型训练、评估到推理部署的全流程可视化支持。 ## 技术栈 | 层 | 技术 | |---|------| | 前端 | React 19 + TypeScript + Vite 8 + Ant Design 6 | | 后端 | Python + FastAPI + SQLModel + SQLite | | AI 引擎 | Ultralytics YOLO (v5/v8/v11) + PyTorch | | 可视化 | Recharts + matplotlib | | 状态管理 | Zustand | ## 项目结构 ``` AI-View-Platform/ ├── backend/ # Python 后端 │ ├── main.py # FastAPI 入口 + lifespan │ ├── core/ │ │ ├── config.py # 配置管理 (Settings) │ │ └── database.py # SQLite 初始化 + session │ ├── models/ │ │ ├── workspace.py # 工作空间 │ │ ├── scene.py # 场景模块注册 │ │ ├── dataset.py # 数据集 (含版本/父ID) │ │ ├── model.py # 模型注册 (含预训练) │ │ └── training.py # 训练任务 (含Fork关系) │ ├── api/v1/ │ │ ├── system.py # GPU/CPU/磁盘监控 │ │ ├── workspaces.py # 工作空间 CRUD │ │ ├── datasets.py # 数据集管理 + 统计 │ │ ├── models.py # 模型管理 + 预训练列表 │ │ ├── trainings.py # 训练流水线 + WebSocket + Fork │ │ ├── evaluations.py # 模型评估 (mAP/F1/矩阵) │ │ ├── inferences.py # 推理 (图片/批量/摄像头WS) │ │ └── scenes.py # 场景模块管理 │ ├── services/ │ │ └── training.py # 训练进程管理 │ └── utils/ │ └── response.py # 统一响应格式 ├── frontend/ # React 前端 │ └── src/ │ ├── App.tsx # 路由 + 布局 │ ├── layouts/ │ │ └── MainLayout.tsx # 侧边栏 + 工作空间选择 │ ├── pages/ │ │ ├── system/ # 系统监控面板 │ │ ├── datasets/ # 数据集管理 │ │ ├── models/ # 模型管理 │ │ ├── training/ # 训练工作台 (三栏布局) │ │ ├── evaluation/ # 评估对比 │ │ ├── inference/ # 推理演示 │ │ ├── scenes/ # 场景模块 │ │ └── demo/ # 效果对比演示 │ ├── stores/ │ │ ├── training.ts # 训练状态 (Zustand) │ │ └── workspace.ts # 工作空间状态 │ └── services/ │ └── api.ts # Axios 封装 ├── scenes/ # 可迁移场景模块 │ └── bird-detection/ # 鸟类检测示例 │ ├── module.yaml # 模块元信息 │ ├── config.yaml # 推理/预处理参数 │ ├── preprocess.py # 预处理管线 │ ├── postprocess.py # 后处理管线 │ └── README.md # 模块使用说明 ├── models/ # 模型文件存储 ├── datasets/ # 数据集存储 └── results/ # 训练/评估/推理结果 ``` ## 核心功能 ### 数据集管理 - 支持 YOLO / COCO / VOC 格式导入与标注解析 - 数据集版本控制 (parent_id 树形追溯) - 类别分布统计与可视化 ### 模型管理 - Ultralytics YOLO 系列统一管理 (YOLOv5/v8/v11) - 预训练模型列表与一键下载 - 模型配置编辑、格式导出 (ONNX / TensorRT / OpenVINO) ### 训练工作台 - **三栏布局**: 实验列表 (280px) + 主区域 + 上下文面板 (可折叠) - **新建实验**: 单页配置面板,含数据集分布图、预设模板 (4种)、资源估算 - **实时监控**: loss/mAP 指标曲线、GPU 面板 (温度/功耗/利用率)、日志流、暂停/恢复控制 - **结果分析**: F1 曲线 (含置信度滑块)、与父实验的 Delta 对比 - **实验对比**: 覆盖叠加曲线、最优/最差值高亮 (2-5 个实验) ### 实验 Fork - 基于任意实验 Fork 出新实验(继承配置) - parent_id 追溯形成实验谱系树 ### 模型评估 - mAP50 / mAP50-95 / 精确率 / 召回率 / F1 - 混淆矩阵可视化 - 导出评估报告 (PDF) ### 推理部署 - 图片推理 (含标注框渲染) - 批量推理 (目录级) - 摄像头 WebSocket 实时流推理 ### 模块化场景方案 - 特定场景封装为独立目录(含配置、模型引用、预处理/后处理脚本) - 可独立迁移到其他项目,开箱即用 - 示例: `scenes/bird-detection/` — 监控摄像头鸟类检测识别 ## 快速开始 ### 环境要求 - Python 3.10+ (推荐 conda 环境) - Node.js 20+ - GPU (可选,用于训练加速) ### 1. 后端 ```bash cd backend # 创建 conda 环境 conda create -n yolo11-env python=3.11 -y conda activate yolo11-env # 安装依赖 pip install -r requirements.txt # 启动服务 (端口 8000) python main.py # 或 uvicorn main:app --reload --port 8000 ``` ### 2. 前端 ```bash cd frontend # 安装依赖 npm install # 启动开发服务器 (端口 5173) npm run dev ``` 访问 `http://localhost:5173` 即可使用平台。 ### 3. 使用场景模块 ```bash # 鸟类检测模块示例 cd scenes/bird-detection # 查看模块说明 cat README.md # 修改 config.yaml 配置摄像头源和模型路径后运行 python preprocess.py # 数据预处理 # ... 接入平台训练/推理流程 python postprocess.py # 结果后处理 ``` ## API 概览 | 模块 | 路径 | 主要端点 | |------|------|---------| | 系统 | `/api/v1/system` | `GET /info` — GPU/CPU/磁盘状态 | | 工作空间 | `/api/v1/workspaces` | CRUD | | 数据集 | `/api/v1/datasets` | 导入/列表/统计/版本/删除 | | 模型 | `/api/v1/models` | 注册/列表/预训练/删除 | | 训练 | `/api/v1/trainings` | 创建/启动/暂停/恢复/停止/Fork/对比/删除 | | 评估 | `/api/v1/evaluations` | `POST /run` / `GET /confusion-matrix` / `GET /f1-curve` | | 推理 | `/api/v1/inferences` | `POST /image` / `POST /batch` / `WS /camera` | | 场景 | `/api/v1/scenes` | 注册/列表/详情/配置更新 | | 训练监控 | `WS /api/v1/trainings/ws/{job_id}` | 训练指标实时推送 | ## 配置 主要配置通过 `backend/core/config.py` 中的 `Settings` 类管理,支持 `.env` 文件覆盖: | 变量 | 默认值 | 说明 | |------|--------|------| | `DATABASE_URL` | `sqlite:///./data.db` | 数据库连接 | | `CORS_ORIGINS` | `http://localhost:5173` | 前端地址 | | `MODELS_DIR` | `../models` | 模型文件目录 | | `DATASETS_DIR` | `../datasets` | 数据集目录 | | `SCENES_DIR` | `../scenes` | 场景模块目录 | | `RESULTS_DIR` | `../results` | 训练/评估/推理结果目录 |