在现代农业领域,病虫害防控始终是保障作物产量与品质的关键环节。随着人工智能技术的不断发展,基于深度学习的图像分类方法正逐步应用于农业病虫害的智能识别中。为了推动该方向的研究,构建高质量的图像分类数据集尤为关键。本文将介绍一个涵盖常见农业害虫类别的图像分类数据集,供相关研究者和开发者参考。

一、数据集概述

病虫害数据集一共有5007张包含了11类常见病虫害图像,类别分别为:蚂蚁、蜜蜂、甲虫、毛毛虫、蠼螋、蚱蜢、蛾类、鼻涕虫、蜗牛、黄蜂、象甲,各类别数量分布均匀,每类在400张左右。适配主流深度学习模型如 ResNet、VGG、EfficientNet、ViT 等在分类任务中的训练与评估。

数据结构采用按类划分的文件夹结构,每一类虫害图像单独存放于一个以英文名称命名的文件夹中,便于直接用于 PyTorch、TensorFlow 等框架的 ImageFolder 加载接口。

二、类别定义

数据集包含以下 11 个典型农业害虫类别,涵盖了多种不同形态与危害方式的代表性虫害类型。每类图像数量分布较为均衡,适合用于监督学习模型的训练。中英文名称的对应关系如下:

类别名称 英文名称
蚂蚁 ants
蜜蜂 bees
甲虫 beetle
毛毛虫 caterpillar
蠼螋 earwig
蚱蜢 grasshopper
蛾类 moth
鼻涕虫 slug
蜗牛 snail
黄蜂 wasp
象甲 weevil

三、数据集展示

数据集中包含多个自然环境下拍摄的虫害图像,背景复杂度适中,具备较好的通用性。样本来源多样,图像中虫体大小、姿态、光照等具备一定的变异性,有助于提升模型的泛化能力。下面展示其中3个类别的数据:

四、训练集和验证集划分

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

datasets/
├── train/
│   ├── ants/
│   ├── bees/
│   ├── ...
├── val/
import os
import shutil
import random
import cv2

train_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)

 本文数据集是在一些网站上搜集的,由于搜集的图片大多没有分类,自己进行了准确地分类,模型识别效果良好。如有需求,请支持。

(1 封私信 / 4 条消息) 农业病虫害11类目标分类数据集 - 知乎

Logo

脑启社区是一个专注类脑智能领域的开发者社区。欢迎加入社区,共建类脑智能生态。社区为开发者提供了丰富的开源类脑工具软件、类脑算法模型及数据集、类脑知识库、类脑技术培训课程以及类脑应用案例等资源。

更多推荐