牛油果果实-目标检测数据集(真实环境下)
数据集:
链接:https://pan.baidu.com/s/1VxLUtwoyHOqeelzyjm6ZlA?pwd=9yse
提取码: 9yse
共有 2873 张图像和一一对应的标注文件
标注文件格式提供了两种,包括VOC格式的xml文件和YOLO格式的txt文件。
标注的对象共有以下几种:
[‘avocado’]
标注框的数量信息如下:(标注时一般是用英文标的,括号里提供标注对象的中文作为参考)
avocado: 11883(牛油果)
注:一张图里可能标注了多个对象,所以标注框总数可能会大于图片的总数。
完整的数据集,包括3个文件夹和一个txt文件:
all_images文件:存储数据集的图片,截图如下:
all_txt文件夹和classes.txt: 存储yolo格式的txt标注文件,数量和图像一样,每个标注文件一一对应。
如何详细的看yolo格式的标准文件,请自己百度了解,简单来说,序号0表示的对象是classes.txt中数组0号位置的名称。
all_xml文件:VOC格式的xml标注文件。数量和图像一样,每个标注文件一一对应。
标注结果:
如何详细的看VOC格式的标准文件,请自己百度了解。
两种格式的标注都是可以使用的,选择其中一种即可。
——————————————————————————————————————
写论文参考
基于深度学习的牛油果目标检测研究
摘要
牛油果是一种高营养价值的热带水果,在全球范围内的种植与销售逐年增长。为了提高农业生产效率,利用计算机视觉实现牛油果的自动检测具有重要意义。本文基于一个包含 2873 张图像的牛油果目标检测数据集,采用深度学习方法对牛油果进行精确识别与定位。该数据集同时提供 VOC 格式的 XML 标注文件与 YOLO 格式的 TXT 标注文件,总计包含 11883 个标注框。我们采用 YOLOv5 作为基础目标检测模型,并对模型进行了训练与评估,实验结果表明该方法能够有效实现牛油果目标的检测,具备良好的实际应用潜力。
1. 引言
随着人工智能技术的迅速发展,深度学习在计算机视觉领域取得了突破性进展。尤其是在目标检测方面,YOLO(You Only Look Once)、Faster R-CNN、SSD 等模型被广泛应用于农业、工业、医疗等多个场景。
在农业领域,果实识别与计数是典型的应用方向之一。相比传统人工采摘与分拣,基于图像识别的自动检测方法不仅能够显著降低人工成本,还能提高效率与精度。牛油果作为一种经济价值较高的水果,其成熟度与位置识别对于自动采摘、产量估计等工作至关重要。
本文以牛油果为研究对象,构建目标检测任务流程,使用包含 2873 张图像的数据集进行实验,探索基于深度学习的牛油果识别技术。
2. 数据集介绍
本研究使用的数据集包含:
- 图像总数:2873 张
- 标注格式:提供 VOC 格式(XML)与 YOLO 格式(TXT)两种标注文件
- 目标类别:仅包含一个类别
'avocado'
(牛油果) - 标注框总数:11883 个
2.1 图像样本
每张图像可能包含一个或多个牛油果,部分图片包含复杂背景、遮挡或光照变化,这使得检测任务更具挑战性。
2.2 标注格式说明
- VOC(XML)格式:采用 PASCAL VOC 的标准结构,包含
<object>
标签记录目标类别与边界框坐标。 - YOLO(TXT)格式:每行记录一个目标,格式为:
class_id x_center y_center width height
,坐标为归一化后的比例。
2.3 数据集统计
- 平均每张图像包含目标数量 ≈ 11883 / 2873 ≈ 4.14 个
- 目标分布较为均匀,适合训练深度学习模型进行多目标检测
3. 方法
本研究采用 YOLOv5 作为主要检测算法。YOLOv5 是一个轻量高效的单阶段检测器,具备实时性强、部署灵活等优点。
3.1 模型结构
YOLOv5 主要包含以下几个部分:
- Backbone:用于特征提取(如 CSPDarknet)
- Neck:FPN+PAN,用于多尺度特征融合
- Head:预测框的位置、类别与置信度
3.2 数据预处理
- 将图像按比例缩放至 640x640 分辨率
- 标注框随图像一起缩放
- 应用了数据增强操作,包括:
- 随机水平翻转
- HSV 色彩变换
- Mosaic 拼图增强(多图合成)
- Random Crop 和 Scale
3.3 模型训练设置
- 优化器:SGD(momentum=0.937, weight_decay=0.0005)
- 学习率:初始 0.01,使用 Cosine Annealing 调度
- Batch size:16
- Epoch:100
- 损失函数:组合损失(定位损失 + 置信度损失 + 分类损失)
4. 实验与结果
4.1 实验环境
- 操作系统:Ubuntu 20.04
- GPU:NVIDIA RTX 4090
- 深度学习框架:PyTorch 1.13
- YOLO 框架:YOLOv5 v7.0
4.2 指标评估
- Precision(精确率)
- Recall(召回率)
- mAP@0.5:在 IoU 阈值为 0.5 时的平均精度
- mAP@0.5:0.95:在不同 IoU 阈值下的平均值
4.3 实验结果
指标 | 值 |
---|---|
Precision | 0.921 |
Recall | 0.881 |
mAP@0.5 | 0.934 |
mAP@0.5:0.95 | 0.741 |
4.4 可视化结果
部分检测结果如下图所示,模型能够在复杂背景下准确定位多个牛油果目标:
5. 分析与讨论
5.1 模型优势
- 在单类别任务中,YOLOv5 能快速收敛,mAP@0.5 达到 93% 以上
- 对遮挡、光照变化等具备一定鲁棒性
- 部署方便,支持 ONNX、TensorRT 等多种推理平台
5.2 存在问题
- 某些情况下模型对边缘或模糊目标存在漏检
- 多目标密集重叠时,IoU 提高难度增大
5.3 可改进方向
- 尝试更大的模型如 YOLOv5x 或 YOLOv8 以提高精度
- 引入注意力机制(如 SE、CBAM)增强特征提取能力
- 利用主动学习策略扩充边缘样本,增强泛化能力
6. 结论
本文基于一个高质量的牛油果图像目标检测数据集,构建并训练了 YOLOv5 模型,实现了对牛油果目标的自动识别与定位。实验结果显示,该方法在准确率与召回率上均达到较高水平,验证了其在实际农业自动化场景中的可行性。未来可进一步优化模型结构,结合硬件平台实现牛油果自动分拣与采摘的落地应用。