# 最新YOLO实现的番茄成熟度实时检测 **Repository Path**: deeppython/TomatoRipenessDet ## Basic Information - **Project Name**: 最新YOLO实现的番茄成熟度实时检测 - **Description**: No description available - **Primary Language**: Python - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-11 - **Last Updated**: 2025-11-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 基于 YOLO 系列的**番茄成熟度检测系统** ![License](https://img.shields.io/badge/License-AGPL--3.0-brightgreen) ![Python](https://img.shields.io/badge/Python-3.10%2B-blue) ![PyTorch](https://img.shields.io/badge/PyTorch-2.2%2B-orange) ## 项目简介 一套开箱即用的 **番茄成熟度/品质** 实时检测系统(支持 **YOLOv5 ~ YOLOv12**),面向 **图片 / 视频 / 浏览器摄像头** 三种输入。提供**双画面对比**、置信度/IoU 调节、CSV 导出、带框图片/视频一键下载与 **SQLite** 持久化;内置 **登录/注册/跳过** 与自动数据库迁移,适合研究复现与工程落地。 ## 资源下载 * **YOLOv5-12 项目(8 合一)合集**:[https://mbd.pub/o/bread/mbd-ZZ2Zm51w](https://mbd.pub/o/bread/mbd-ZZ2Zm51w) * **YOLOv12 完整资源**:[https://mbd.pub/o/bread/YZWZlJZraw==](https://mbd.pub/o/bread/YZWZlJZraw==) * **YOLOv11 完整资源**:[https://mbd.pub/o/bread/ZZ2Zm5py](https://mbd.pub/o/bread/ZZ2Zm5py) * **YOLOv10 完整资源**:[https://mbd.pub/o/bread/ZZyalpdv](https://mbd.pub/o/bread/ZZyalpdv) * **YOLOv9 完整资源**:[https://mbd.pub/o/bread/ZZ2Xl5lu](https://mbd.pub/o/bread/ZZ2Xl5lu) --- ## 核心特性(精简) * **多模型支持**:YOLOv5~YOLOv12 一键切换,统一推理接口。 * **多输入形态**:图片/视频/摄像头实时检测,**左右同步帧**对比显示。 * **成熟度类别**:示例含 *绿色 / 红色 / 损坏*(可自定义与扩展)。 * **可视化与导出**:阈值滑块、类别统计;**带框图片/视频下载**、**CSV 导出**、结果入库(SQLite)。 * **账号体系**:登录/注册/跳过,密码哈希,自动库表迁移。 * **工程化细节**:路径跨平台、进度/暂停/继续/停止控制,摄像头**90s 环形缓冲导出 MP4**。 ## 快速开始 > 推荐:**Conda + Python 3.10+** ```bash # 1) 创建并激活环境 conda create -n tomato python=3.10 -y conda activate tomato # 2) 安装依赖(请按本机 CUDA 选择官方 PyTorch 2.2+ 发行版) pip install -r requirements.txt # 3) 启动服务 python app.py # 浏览器访问 http://127.0.0.1:5000 (首次为登录页,右下角可“跳过”) ``` ## 目录结构(示例) ``` tomato_web/ ├── app.py ├── models/ # YOLO 推理封装(可扩展/降级模式) ├── services/ # SQLite 封装 / 任务管理 ├── static/ # CSS / JS / 图标 ├── templates/ # 页面模板 ├── uploads/ outputs/ # 上传与标注输出 ├── exports/ # CSV / 导出集合 ├── weights/ # 模型权重(.pt) └── requirements.txt ``` ## 使用要点 * **切换模型**:将 `.pt` 放入 `weights/`,在“模型选择”页或 API 切换。 * **自定义类别/后处理**:保证推理输出为 `[{ "class_id":int, "class_name":str, "score":float, "bbox":[x1,y1,x2,y2] }, ...]`;或在后处理映射你的结构。 * **典型类别**:`["绿色","红色","损坏"]`,可在 `datasets/label_name.py` 或引擎默认列表中调整。 ## 常见问题(简版) * **登录缺少列(如 email)**:已内置自动迁移;如仍失败,删除旧 `results.db` 或检查权限后重试。 * **视频两侧不同步**:后端**同时推送**原始帧与标注帧保持同步;刷新或更换浏览器可排查前端缓存。 * **权重加载报错**:优先使用标准 YOLO 结构或按本工程接口实现;改进结构需同步调整加载与后处理。 ## 许可证 本项目以 **AGPL-3.0** 开源;使用的第三方模型/数据请遵循其各自许可。 ## 贡献 欢迎提交 Issue / PR(附环境、最小复现与截图/日志)。谢谢!