# YOLOv8Web **Repository Path**: lism/yolov8web ## Basic Information - **Project Name**: YOLOv8Web - **Description**: FuturoGen - YOLOv8 Web Platform是一个基于YOLOv8的目标检测Web平台,提供从数据管理、图像标注、模型训练到模型导出的一站式解决方案。 - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 54 - **Created**: 2025-09-11 - **Last Updated**: 2025-09-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # FuturoGen - YOLOv8 Web Platform 一个基于Python Flask的Web应用,用于YOLOv8目标检测模型的图片标注、数据集管理、模型训练和模型导出,由Boyan开发。 ## 功能特性 1. **项目管理**:创建、列出、删除项目 2. **图片管理**: - 上传单张或多张图片 - 通过ZIP文件批量上传图片 - 拖拽上传图片 3. **图片标注**: - 基于Web的边界框标注功能 - 图片间导航(上一张/下一张) - 项目内标签(类别)管理:添加、编辑、删除 - 标注数据实时保存到数据库,并自动生成YOLOv8 `.txt` 格式的标注文件 4. **数据集划分**:批量将图片标记为训练集、验证集、测试集或未分配 5. **模型训练**: - 实际调用 `ultralytics` 库进行模型训练 - 训练任务在后台线程中运行,前端实时显示训练日志和进度 - 自动准备训练所需的数据集目录结构和 `data.yaml` 文件 6. **模型导出**:将训练好的模型导出为ONNX、TorchScript等多种格式 ## 技术栈 - **后端**:Python 3.9+, Flask, Flask-SQLAlchemy, threading, OpenCV (cv2), Pillow (PIL.Image), ultralytics, python-dotenv, PyYAML - **前端**:HTML5, CSS3, JavaScript, Bootstrap 5, Jinja2, Fabric.js - **数据库**:SQLite - **部署**:直接运行 `python app.py` ## 项目结构 ``` yolov8_web_platform/ ├── app.py # Flask应用入口 ├── requirements.txt # 项目依赖 ├── .env # 环境变量配置 ├── models.py # 数据库模型 ├── routes.py # 路由处理 ├── README.md # 项目说明文档 ├── static/ # 静态文件目录 │ ├── uploads/ # 上传图片存储目录 │ ├── datasets/ # 数据集目录 │ └── models/ # 模型存储目录 └── templates/ # HTML模板目录 ├── base.html # 基础模板 ├── index.html # 首页 ├── project_detail.html # 项目详情页 ├── images.html # 图片管理页 ├── annotate.html # 图片标注页 ├── dataset.html # 数据集划分页 ├── train.html # 模型训练页 └── export.html # 模型导出页 ``` ## 安装与运行 1. 克隆或下载项目代码 2. 安装依赖: ```bash pip install -r requirements.txt ``` 3. 运行应用: ```bash python app.py ``` 4. 在浏览器中访问 `http://localhost:5005` ##运行截图 ![输入图片说明](ftyolo1.jpg)![输入图片说明](ftyolo2.jpg) ![输入图片说明](ftyolo3.jpg)![输入图片说明](ftyolo4.jpg) ![输入图片说明](ftyolo5.jpg)![输入图片说明](ftyolo6.jpg) ## 使用说明 1. **创建项目**:在首页点击"创建项目"按钮,输入项目名称和描述 2. **上传图片**: - 进入项目详情页,点击"图片管理" - 可以上传单张/多张图片、ZIP压缩包或通过拖拽上传 3. **图片标注**: - 在项目详情页点击"图片标注" - 先创建标签(类别),然后选择标签在图片上绘制边界框 - 使用"上一张"/"下一张"导航到不同图片 - 点击"保存标注"保存当前图片的标注结果 4. **数据集划分**: - 在项目详情页点击"数据集划分" - 选择图片并设置为训练集、验证集、测试集或未分配 5. **模型训练**: - 在项目详情页点击"模型训练" - 点击"开始训练"按钮启动训练过程 - 可实时查看训练进度和日志 6. **模型导出**: - 训练完成后,在项目详情页点击"模型导出" - 选择需要的导出格式(ONNX、TorchScript等) - 点击"导出"按钮完成模型导出 ## 注意事项 - 应用默认运行在5005端口 - 所有数据存储在本地SQLite数据库中 - 上传的图片和训练的模型都保存在本地目录中 - 首次运行时会自动创建所需的目录和数据库 ## 许可证 本项目由Boyan开发,仅供学习和研究使用。 ## 感谢阿里通义灵码