7类茶叶嫩芽图像分类数据集

在茶叶育种、溯源管理与自动采摘等智能农业场景中,茶树品种的识别与分类是一项关键任务。不同茶叶品种在嫩芽期表现出显著的形态差异,例如颜色、叶缘结构、芽头密度等。因此,基于图像的茶叶品种分类不仅具备实际应用价值,也为农业人工智能研究提供了丰富的实验素材。

本文将介绍一个面向茶树嫩芽图像分类任务的标准化数据集:茶叶嫩芽分类数据集,涵盖多个常见优质茶叶品种,支持图像分类模型的训练与评估。

一、📦 数据集概述

该数据集收集了多个茶树品种在嫩芽生长期的实拍图像,图像内容清晰地呈现了各品种在芽头阶段的颜色、形态和质感等特征,适用于构建深度学习图像分类模型。

每张图像都按所属茶树品种进行了标注,并存放在对应的类别文件夹下,可直接用于监督式图像分类任务。


二、🏷️ 类别标签定义

数据集中共包含 7 种茶叶品种,均为典型的地方优质品种,类别标签如下:

类别名数量简要介绍
Anji_White_Tea

383

安吉白茶,浙江特色白化变异茶种,芽色浅绿偏白
Huangshan_Variety

357

黄山品系,具有黄山大叶种血统,叶面宽厚
Longjing_43

271

龙井43号,广泛种植的龙井核心品系,芽头扁直
Nongkangzao62农抗早,芽头密集、萌发早,适宜高产
Shucha_Early_Tea

223

舒茶早,早生品种,嫩芽披毫,颜色浅绿
Wanzhe_95

207

皖浙95号,杂交优良品种,芽叶鲜绿、整齐
Wuniuzao

306

乌牛早,著名早生品种,发芽整齐、颜色鲜亮

数据集中所有图像均来自茶园实拍,拍摄设备统一,背景自然,部分样本为单芽特写,部分为多芽集中视角,以增加模型的泛化能力。

图像均为 .jpg 格式,分辨率适中,适合直接用于训练 ResNet、MobileNet、EfficientNet 等主流图像分类网络。

三、📁 数据组织结构

数据采用常规图像分类数据结构组织,每个类别对应一个文件夹,方便直接加载:

tea_bud_classification_dataset/
├── Anji_White_Tea/
│   ├── image_001.jpg
│   ├── image_002.jpg
│   └── ...
├── Huangshan_Variety/
├── Longjing_43/
├── Nongkangzao/
├── Shucha_Early_Tea/
├── Wanzhe_95/
└── Wuniuzao/

四、🧠 推荐模型与使用方式

本数据集可用于训练或微调多种分类模型,包括但不限于:

模型特点
ResNet18/50经典卷积网络,精度高、稳定性好
MobileNetV2/V3轻量化网络,适合移动端部署
EfficientNet参数效率高,适合多类别扩展
ViT / Swin-T基于 Transformer,适合结构建模

五、📊 应用场景

该数据集可广泛应用于茶叶品种识别相关的各类实际场景,包括:

  • 🌿 自动品种识别系统:用于茶园育种管理、茶苗选型等;

  • 📦 智能包装分拣设备:通过视觉识别进行品种归类;

  • 🧪 茶叶品控质量检测:结合形态与色彩分析评估品种纯度;

  • 🤖 采摘机器人视觉系统:提前识别目标品种,实现有选择性采摘;

六、训练集和验证集划分

这段代码用于将图像分类数据集中每个类别下约20%的图像从训练集划分为验证集(可自行修改比例)。它首先读取训练集根目录下的所有类别文件夹,并对每个类别中的图像文件列表进行随机打乱,然后按比例选取20%的图像作为验证集。对于选中的图像,程序会将其从训练集路径移动到验证集对应类别的子文件夹中(若目标文件夹不存在则自动创建),从而完成数据集的训练集与验证集划分操作,适用于基于文件夹结构的图像分类任务。其中文件存放结构和划分代码分别如下:

datasets/
├── train/
│   ├── Anji_White_Tea/
│   ├── Huangshan_Variety/
│   ├── ...
├── val/
import os
import shutil
import random
import cv2train_root = "../datasets/train"
val_root = "../datasets/val"name_list = os.listdir(train_root)
for name in name_list:image_root = os.path.join(train_root, name)image_list = os.listdir(image_root)# 随机打乱文件名列表random.shuffle(image_list)num_images = len(image_list)num_val = int(num_images * 0.2)val_names = image_list[:num_val]for image_name in val_names:image_path = os.path.join(image_root, image_name)print(image_path)save_root = os.path.join(val_root, name)if not os.path.exists(save_root):os.makedirs(save_root)save_image_path = os.path.join(save_root, image_name)print(save_image_path)if os.path.exists(save_image_path) is False:shutil.move(image_path, save_image_path)

下载链接 :7类茶叶嫩芽图像分类数据集

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/diannao/89056.shtml
繁体地址,请注明出处:http://hk.pswp.cn/diannao/89056.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Elasticsearch】Linux环境下安装Elasticsearch

一,前言 Elasticsearch(简称 ES)是一个基于 ​​Apache Lucene​​ 构建的开源分布式搜索与分析引擎。它支持​​实时数据处理​​,提供近实时的全文搜索能力,并通过 ​​JSON 格式的 RESTful API​​ 实现数据索引与检…

【数据结构--树于哨兵查找-1】

查找 从前到后- 线性查找 -就是顺序查找. 哨兵法查找–节省每次都要判断是否越界的这一步骤利于节省开销&#xff0c;从而提升效率。 参考我的程序 #include <stdio.h> #include <stdlib.h> #include <time.h> #include <stdbool.h>#define SIZE …

MyBatis修改(update)操作

1. 三步法口诀 “接口收对象&#xff0c;SQL全赋值&#xff0c;主键定目标” 2. 详细记忆点 | 步骤 | 口诀 | 说明与示例 | |--------------|----------------|----------------------------------------------------------------------------| | 1. 写接口 | “接口收对象…

Spring Boot 入门学习

一、 Web应用开发概述 什么是Web应用 1. Web应用 &#xff08;Web Application&#xff09;是一种运行在Web服务器上的软件程序&#xff0c;由用户通过Web浏览器进行访问和交互。 2.Web应用与传统的桌面应用不同&#xff0c;它不需要在个人计算机上安装特定的软件&#xff0…

深度解读概率与证据权重 -Probability and the Weighing of Evidence

以下是I.J.古德&#xff08;I.J. Good&#xff09;的经典著作 《概率与证据权衡》&#xff08;Probability and the Weighing of Evidence, 1950&#xff09; 的中文详细总结&#xff1a; 本文由「大千AI助手」原创发布&#xff0c;专注用真话讲AI&#xff0c;回归技术本质。拒…

跟着AI学习C#之项目实战-电商平台 Day6

&#x1f4c5; Day 6&#xff1a;后台管理系统开发&#xff08;Admin Panel&#xff09; ✅ 今日目标&#xff1a; 创建管理员页面布局实现商品管理&#xff08;CRUD&#xff09;实现订单管理&#xff08;查看、状态变更&#xff09;添加权限控制&#xff08;仅管理员可访问&…

使用OpcUaHelper在C# WinForms中连接OPC UA服务器并读取数据

使用OpcUaHelper在C# WinForms中连接OPC UA服务器并读取数据 下面是一个完整的示例&#xff0c;展示如何使用OpcUaHelper库在C# WinForms应用程序中连接OPC UA服务器并读取数据。 1. 准备工作 首先&#xff0c;确保你已经安装了OpcUaHelper NuGet包。可以通过NuGet包管理器控…

鸿蒙应用开发中的数据存储:SQLite与Preferences全面解析

在鸿蒙&#xff08;HarmonyOS&#xff09;应用开发中&#xff0c;数据存储是构建功能完整、用户体验良好的应用程序的关键环节。鸿蒙系统提供了多种数据存储解决方案&#xff0c;其中SQLite数据库和Preferences&#xff08;偏好设置&#xff09;是最常用的两种方式。本文将深入…

夏至之日,共赴实时 AI 之约:RTE Open Day@AGI Playground 2025 回顾

每年 RTE 开发者社区的重磅活动—— RTE Open Day &#xff0c;也在六月的 AGI Playground 现场开启今年的行程。这是 RTE Open Day 第五期现场&#xff0c;这期我们的关键词是 「Real-Time AI」 和 「Voice Agent」&#xff0c;不仅有来自社区的 16 个项目&#xff0c;还有两场…

Tomcat性能调优指南

文章目录 一、Tomcat性能调优概述为什么需要调优Tomcat&#xff1f; 二、Tomcat架构与性能关键点三、JVM调优1. 内存配置优化2. 垃圾回收优化3. 其他JVM优化参数 四、连接器(Connector)调优1. NIO vs APR/Native2. 高级NIO配置 五、线程池优化六、会话管理优化1. 会话超时配置2…

Swift 小技巧:用单边区间优雅处理模糊范围

进入正题之前先科普一下 Swift 区间的知识。 Swift 中的区间有两种类型&#xff1a;闭区间和半开区间。 闭区间&#xff1a;用 a...b 表示&#xff0c;包含 a 和 b。半开区间&#xff1a;用 a..<b 表示&#xff0c;包含 a 但不包含 b。 举个例子 想判断一个数字是否在 0 …

Tang Prime 20K板OV2640例程

准备用Tang Prime 20K开发板进行OV2640摄像头采集验证。 Tang Primer 20K是由开源硬件厂商SiPEED矽速科技推出&#xff0c;是一款以 GW2A-LV18PG256C8/I7 为主芯片的核心板&#xff0c;准备了 2 个扩展板&#xff0c;Dock 和 Lite。板卡包含有HDMI输出&#xff0c;DVP接口&…

基于Anaconda环境开发IntelliJ IDEA实用JSON转Java实体插件

在软件开发中&#xff0c;将JSON数据转换为Java实体类是常见需求。借助Anaconda环境强大的包管理能力与IntelliJ IDEA的插件开发体系&#xff0c;我们可以打造一款高效实用的JSON转Java实体插件&#xff0c;显著提升开发效率。下面将从需求分析、技术选型、开发实现到优化部署&…

idea运行到远程机器 和 idea远程JVM调试

一、idea运行到远程机器 适用场景&#xff0c;本地连接不上远程机器的部分组件&#xff0c;如&#xff1a;redis、数据库。 缺点&#xff1a;每次修改程序&#xff0c;会复制所有的 依赖和class 启动比较慢。 工作原理&#xff1a;远程机器和本机器&#xff0c;都会启动一个端口…

微信小程序接入腾讯云短信验证码流程

以下是针对 AA公司微信小程序接入腾讯云短信验证码 的 全流程操作指南&#xff0c;包含资质申请、签名/模板配置、代码对接的完整解决方案&#xff1a; 一、资质申请&#xff08;必须通过审核才能发短信&#xff09; 1️⃣ 进入资质管理页 路径&#xff1a;腾讯云控制台 → 短…

阿里云OSS文件上传完整实现方案

一、前言 阿里云对象存储服务(OSS)是一种海量、安全、低成本、高可靠的云存储服务。本文将详细介绍如何在Spring Boot项目中集成阿里云OSS实现文件上传功能。 二、准备工作 1. 获取OSS配置信息 在开始前&#xff0c;您需要准备以下OSS配置信息&#xff1a; endpoint: OSS服…

【软考--软件设计师】10.2 关系型数据库

10 模式分解 分解 模式分解:将一个关系模式分解为多个子模式 模式分解就是模式规范化的工具&#xff0c;模式分解使用无损连接和保持函数依赖来衡量模式分解后是否导致原有模式中部分信息丢失。 无损连接 保持函数依赖 11、事务管理 事务的ACID性质: (1)原子性(Atomicit…

python训练day44 预训练模型

预训练模型发展史 预训练模型的训练策略 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pyplot as plt# 设置中文字体支持 plt.rcParams["…

[论文阅读]MISSRce

论文title: MISSRec: Pre-training and Transferring Multi-modal Interest-aware Sequence Representation for Recommendation

Redis学习笔记——黑马点评 附近商铺到UV统计 完结

前言&#xff1a; 今天完结了Redis的所有实战篇。 学习收获&#xff1a; GEO数据结构&#xff1a; GEO就是Geolocation的简写形式&#xff0c;代表地理坐标。Redis在3.2版本中加入对Geo的支持&#xff0c;存储、管理和操作地理空间数据的特殊数据结构&#xff0c;它能高效处…