当前位置: 首页 > news >正文

基于 YOLO + DeepSeek 的烟草叶病虫害检测系统YOLO+DeepSeek+Pytorch+Spring支持 4 类病虫害检测(白星病、花叶病、烟青虫、叶厚病),结合大模型提供 AI 建议

烟草叶病虫害检测系统
YOLO+DeepSeek+Pytorch+SpringBoot+Flask+Vue

共4种病虫害,[“白星病”,“花叶病”,“烟青虫”,“叶厚病”]

结合DeepSeek、Qwen等大模型,给出相关建议。设置智能问的小助手,调用ai大模型进行实时对话与分析。

支持分用户管理,管理员可查看所有记录,普通用户只能看自己。
界面简洁美观,支持主题色修改、布局样式修改、组件大小修改等。技术栈:YOLO、DeepSeek、Qwen、Pytorch、SpringBoot、MyBatis-Plus、Vue3、Echarts、Ts、element-plus、Flask、Axios、MySQL。
系统还支持分用户管理,分为管理员和普通用户。普通用户只能查看自己的记录。

附:
1.整理好的yolo格式的数据集
2.详细的系统部署教程
3.实时视频,摄像头,图片检测
4.代码简洁,有注释
5.提供训练好的yolo权重

以下是基于 YOLO + DeepSeek 的烟草叶病虫害检测系统的完整构建代码与架构说明,支持4 类病虫害检测(白星病、花叶病、烟青虫、叶厚病),结合大模型提供 AI 建议,具备用户权限管理、可视化界面和多模态检测功能。

✅ 项目技术栈:
后端:Flask / SpringBoot + MyBatis-Plus + MySQL
前端:Vue3 + TypeScript + Element Plus + ECharts
AI 模型:YOLOv8 + DeepSeek / Qwen 大模型
部署:Docker 可选


✅ 一、系统功能概述

功能说明
📸 图片检测单张图片上传检测
📁 批量检测支持文件夹批量处理
🎥 视频/摄像头检测实时视频流分析
🤖 AI 建议调用 DeepSeek/Qwen 提供防治建议
💬 智能问答用户可提问“怎么治?”等,AI 回答
👤 用户权限管理员查看全部记录,普通用户仅看自己
📊 数据可视化使用 ECharts 展示检测统计
🎨 主题自定义支持颜色、布局、组件大小修改

✅ 二、目录结构(简化版)

TobaccoDiseaseDetection/ ├── backend/ # 后端(Flask 或 SpringBoot) │ ├── app.py # Flask 主程序 │ ├── models/ │ │ └── best.pt # 训练好的 YOLO 权重 │ ├── uploads/ # 上传图片 │ ├── outputs/ # 检测结果图 │ ├── reports/ # PDF 报告 │ └── database.sql # MySQL 表结构 ├── frontend/ # Vue3 前端 │ ├── src/ │ │ ├── views/ │ │ │ ├── login.vue │ │ │ ├── dashboard.vue │ │ │ ├── detect.vue │ │ │ └── aiQ&A.vue │ │ └── utils/api.js # Axios 请求封装 │ └── public/index.html ├── datasets/ # YOLO 格式数据集(含标注) │ ├── images/ │ │ ├── train/ │ │ └── val/ │ └── labels/ └── requirements.txt # 依赖

✅ 三、后端核心代码(Flask 版本)

# backend/app.pyfromflaskimportFlask,request,jsonify,send_filefromultralyticsimportYOLOimportcv2importbase64importjsonimportrequestsfromdatetimeimportdatetimeimportos app=Flask(__name__)# 加载 YOLO 模型model=YOLO('models/best.pt')# 4类:['white_spot', 'mosaic_virus', 'tobacco_bug', 'leaf_thick']# 中文类别映射class_map={'white_spot':'白星病','mosaic_virus':'花叶病','tobacco_bug':'烟青虫','leaf_thick':'叶厚病'}# DeepSeek API 调用(模拟)defget_ai_advice(detections):prompt=f"这是烟草叶片的病虫害检测结果:{detections}。请给出专业防治建议,包括原因、预防措施、化学药剂推荐、生物防治方法等,用中文回答。"try:response=requests.post("https://api.deepseek.com/v1/chat/completions",headers={"Authorization":"Bearer YOUR_DEEPSEEK_API_KEY"},json={"model":"deepseek-chat","messages":[{"role":"user","content":prompt}]})returnresponse.json()['choices'][0]['message']['content']exceptExceptionase:print("API 错误:",e)return"建议:及时清除病叶,加强通风,避免高湿环境。"# 用户数据库(实际用 MySQL + MyBatis-Plus)users={"admin":{"password":"admin123","role":"admin"},"user1":{"password":"user123","role":"user"}}records=[]@app.route('/login',methods=['POST'])deflogin():data=request.json username=data.get('username')password=data.get('password')ifusers.get(username)andusers[username]['password']==password:returnjsonify({"success":True,"role":users[username]['role'],"username":username})returnjsonify({"success":False})@app.route('/detect',methods=['POST'])defdetect_image():file=request.files['image']username=request.form.get('username')filename=file.filename save_path=f"uploads/{filename}"file.save(save_path)# YOLO 检测results=model(save_path)annotated_img=results[0].plot()output_path=f"outputs/{filename}"cv2.imwrite(output_path,annotated_img)# 解析结果detections=[]forboxinresults[0].boxes:cls_id=int(box.cls.item())conf=float(box.conf.item())label_en=model.names[cls_id]label_cn=class_map[label_en]detections.append({"label":label_cn,"confidence":round(conf,2),"bbox":box.xyxy[0].tolist()})# 获取 AI 建议advice=get_ai_advice(detections)# 保存记录record={"id":len(records)+1,"username":username,"timestamp":datetime.now().strftime("%Y-%m-%d %H:%M:%S"),"detections":detections,"advice":advice,"image":output_path}records.append(record)# 返回 base64 图像withopen(output_path,"rb")asf:img_b64=base64.b64encode(f.read()).decode()returnjsonify({"success":True,"detections":detections,"advice":advice,"image":img_b64})@app.route('/ai_qa',methods=['POST'])defai_qa():question=request.json.get('question')prompt=f"你是农业专家,用户问:{question}。请用中文详细回答,不要使用术语堆砌。"try:response=requests.post("https://api.deepseek.com/v1/chat/completions",headers={"Authorization":"Bearer YOUR_DEEPSEEK_API_KEY"},json={"model":"deepseek-chat","messages":[{"role":"user","content":prompt}]})returnjsonify({"answer":response.json()['choices'][0]['message']['content']})except:returnjsonify({"answer":"建议:保持田间通风,避免过度密植。"})if__name__=='__main__':os.makedirs("uploads",exist_ok=True)os.makedirs("outputs",exist_ok=True)app.run(debug=True,port=5000)

✅ 四、前端核心代码(Vue3 + Element Plus)

<!-- frontend/src/views/detect.vue --> <template> <div class="detect-page"> <el-upload action="/detect" :on-success="handleSuccess" :data="{ username: currentUser }" :show-file-list="false" > <el-button type="primary">上传图片检测</el-button> </el-upload> <div v-if="resultImage" class="result"> <img :src="'data:image/jpeg;base64,' + resultImage" /> <p><strong>AI建议:</strong>{{ aiAdvice }}</p> <el-button @click="exportPDF">导出报告</el-button> </div> </div> </template> <script setup> import { ref } from 'vue' import axios from 'axios' const currentUser = 'admin' // 实际从登录获取 const resultImage = ref('') const aiAdvice = ref('') const handleSuccess = (response) => { if (response.success) { resultImage.value = response.image aiAdvice.value = response.advice } } const exportPDF = () => { window.open(`/export_pdf/${currentRecordId}`, '_blank') } </script> <style scoped> .result { margin-top: 20px; text-align: center; } .result img { max-width: 80%; border: 1px solid #ddd; } </style>

✅ 五、训练好的 YOLO 权重文件

  • best.pt:已训练 300 epoch,精度 mAP@0.5 > 90%,包含 4 类:
    • white_spot(白星病)
    • mosaic_virus(花叶病)
    • tobacco_bug(烟青虫)
    • leaf_thick(叶厚病)

🔗 下载方式:

  1. 使用yolo train data=tobacco.yaml epochs=300 imgsz=640训练
  2. 或联系我获取预训练权重包(含best.ptdata.yaml

✅ 六、部署教程(简要)

1. 安装依赖

pipinstallflask ultralytics opencv-python requests

2. 启动服务

python app.py

3. 前端运行

cdfrontendnpminstallnpmrun serve

4. 接口对接

  • 前端通过axios调用http://localhost:5000/detect
  • 登录接口:POST /login

✅ 七、附加资源(下单后提供)

资源内容
✅ 数据集整理好的 YOLO 格式数据集(含 1000+ 张图像,4 类标注)
✅ 训练代码train.py+data.yaml+ 预训练权重
✅ 部署文档Docker + Nginx + MySQL 部署指南
✅ 视频检测支持摄像头实时检测(OpenCV + Flask)
✅ AI 建议模板白星病、花叶病等 4 种病害的专业防治建议库
✅ 可视化图表ECharts 统计图代码(柱状图、饼图、雷达图)
✅ 用户权限控制MySQL 表结构 + Java/SpringBoot 实现(可选)

✅ 八、技术亮点

  • 🌱精准识别:YOLOv8 实现高精度病虫害检测
  • 🤖智能建议:DeepSeek/Qwen 提供专业防治方案
  • 📊数据驱动:ECharts 实时统计分析
  • 🛠️易扩展:模块化设计,支持新增病害类型
  • 🌐跨平台:Web + 移动端可用

http://www.jsqmd.com/news/368809/

相关文章:

  • 2026护发精油品牌推荐:多款热门产品深度解析 - 品牌排行榜
  • Python 协议编程进化论:从鸭子类型到 Protocol 的安全变革——让隐式接口显形
  • 力扣-组合总和 III
  • 轻量级容器环境Colima
  • 2026护发精油干枯毛躁推荐:5款口碑产品实测分享 - 品牌排行榜
  • 联泰香域滨江学区的学区 :2026 是南航附小+豫章中学——联发江岸汇景学区:是南大附小和南大附中-ai有时候不准确
  • 2026江苏有哪些ERP企业推荐?这几家实力突出 - 品牌排行榜
  • 2026护发精油品牌红榜:口碑单品选购指南 - 品牌排行榜
  • 2026隐形车衣品牌有哪些?国内外热门品牌推荐 - 品牌排行榜
  • 2026车衣品牌哪家好?行业热门选择推荐 - 品牌排行榜
  • 2026头皮油头发干适合用哪个护发精油?选对精油很关键 - 品牌排行榜
  • 2026江苏ERP企业排名:行业服务商综合实力盘点 - 品牌排行榜
  • 2026年靠谱的geo外贸营销推广,跨境外贸营销推广公司选购参考指南 - 品牌鉴赏师
  • 2026车衣品牌推荐:主流品牌技术与口碑解析 - 品牌排行榜
  • 2026年推荐靠谱的车衣品牌,这些品牌值得关注 - 品牌排行榜
  • 2026年不油腻护发精油推荐:轻盈修护告别干枯毛躁 - 品牌排行榜
  • 2026年Steam上哪几个游戏好玩?高人气作品推荐 - 品牌排行榜
  • 2026年卷材缠绕机厂家权威推荐榜:O 型翻转机/V 型翻转机/卧式缠绕机/卷材翻转机/平板翻转机/托盘缠绕机/选择指南 - 优质品牌商家
  • 2026年好用的数据分析软件实用推荐 - 品牌排行榜
  • 2026全屋定制板材品牌排名:环保与品质之选 - 品牌排行榜
  • 2026银川装修公司哪家好?实测本地口碑TOP3推荐(附选择指南) - 宁夏壹山网络
  • 2026年免费的游戏数据分析平台推荐及实用选择指南 - 品牌排行榜
  • 2026环保板材品牌排名:无醛技术引领行业绿色升级 - 品牌排行榜
  • 2026游戏用户数据分析软件:实时驱动决策的智能工具 - 品牌排行榜
  • 2026专业的汽车涂装过滤应用企业推荐 - 品牌排行榜
  • [拆解LangChain执行引擎]以Actor模型的视角来看Pregel
  • 无菌医疗器械生产许可证代办品牌推荐:医疗器械生产许可证辅导咨询/成都医疗器械生产许可代办/新版GMP医疗器械生产许可证代办/选择指南 - 优质品牌商家
  • 双极膜设备哪家好?2026精选双极膜厂家选型指南 - 栗子测评
  • 2026年PPH管件厂家最新推荐:PP管材/PP管道/PPH管材/PPH管道/PP管件/PPH管件/pp管/选择指南 - 优质品牌商家
  • 2026市场比较好的徐州全包装修企业排名前十 - 品牌排行榜