问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

YOLO算法在水果新鲜程度检测中的应用

创作时间:
作者:
@小白创作中心

YOLO算法在水果新鲜程度检测中的应用

引用
CSDN
1.
https://blog.csdn.net/zhiqingAI/article/details/136969433

YOLO(You Only Look Once)系列算法是一类流行的一阶段实时目标检测模型,在水果检测领域有着广泛的应用。因其高效性和实时性而受到青睐,可用于识别和定位图像中不同种类的水果以及水果的新鲜度。

YOLO系列算法在水果检测中的应用

  1. YOLOv3已被用于水果商品的检测分类。通过训练带有标记水果数据集的YOLOv3模型,它可以检测出图像中的苹果以及其他类型的水果,并且根据不同的项目需求,还可以区分是否损坏。

  2. YOLOv5YOLOv8都是对YOLO系列算法的进一步迭代和优化。YOLOv5以其轻量级、快速响应和较高的准确性著称,适用于诸如水果识别、计价及新鲜程度检测等多种应用场景,并可通过集成到GUI应用如PyQt中,提供用户友好的交互界面。

  3. YOLOv8在YOLOv5的基础上继续改进,可能引入了新的骨干网络架构、 Anchor-Free 检测头或其他优化策略,这些改进有助于提高对水果特征的捕捉能力和检测精确度,从而在水果目标检测系统中表现更优。

YOLOv3、YOLOv5、YOLOv8,都可以通过训练特定的数据集来实现对水果的检测,包括但不限于苹果、香蕉、橙子等各种水果的类别识别、位置定位以及质量评估(如新鲜度检测)。

YOLO算法在水果检测中的具体应用

1. YOLO算法水果新鲜程度检测

  • 类别

  • nc: 12

  • names: ['Apple', 'Fresh apple', 'Fresh banana', 'Fresh guava', 'Fresh orange', 'Rotten banana', 'Rotten guava', 'applerotation', 'ripeApple', 'rotten apple', 'rotten orange', 'unripeApple']

  • 数据集

  • 可视化

2. YOLO算法水果好坏检测

  • 类别

  • nc: 6

  • names: ['Fresh Apple', 'Fresh Banana', 'Fresh Orange', 'Rotten Apple', 'Rotten Banana', 'Rotten Orange']

  • 数据集

  • 1千左右YOLO算法水果好坏-新鲜度检测数据集

  • 可视化


水果质量检测(不同场景)

  • data.yaml

    train: E:\python_code\dataset\Fruit_Quality_data\train/images
    val: E:\python_code\dataset\Fruit_Quality_data\valid/images
    test: E:\python_code\dataset\Fruit_Quality_data\test/images
    nc: 6
    names:
    
  • bad apple

  • bad banana

  • bad orange

  • good apple

  • good banana

  • good orange

    
    
  • 数据集合模型

  • YOLOv7水果质量检测权重+3000数据集

  • YOLOv3水果质量检测检测权重+3000数据集

  • YOLOv5水果质量检测检测权重+数据集+pyqt界面

  • YOLOv8水果质量检测权重+数据集

  • YOLOv8水果质量检测检测权重+3000数据集+pyqt界面

  • YOLOv5水果质量检测检测权重+数据集

3. YOLO水果检测

  • 类别

  • nc: 5

  • names: ['Apple', 'Banana', 'Kiwi', 'Orange', 'Pear']

  • 数据集和模型

  • 2000张YOLO算法水果检测数据集

  • 1万多YOLO算法水果检测数据集(数据增强图像)

  • YOLOv5水果检测数据集 fruit-detect-yolov5-5.zip

  • YOLOv5水果检测数据集 fruit-detect-yolov5-4.zip

  • YOLOv5水果检测数据集data3-fruit-detect-yolov5-3.zip

  • YOLOv5水果检测数据集dataset2 fruit-detect-yolov5-2.zip

  • YOLOv5水果检测数据集 fruit-detect-yolov5-1.zip

  • YOLOv5水果和蔬菜检测数据集-Fruits-Vegetables -dataset-yolov5.zip

  • 四类别YOLO水果检测数据集

  • YOLOv7水果新鲜程度检测+训练好的权重+数据集

  • YOLOv7水果识别+水果检测模型+水果检测数据集

  • YOLOv5水果识别+水果检测模型+水果检测数据集

  • YOLOv5水果新鲜程度检测+练好的水果新鲜程度检测模型+水果新鲜程度检测数据集

  • YOLOv3水果新鲜度检测+练好的水果新鲜程度检测模型+水果新鲜程度检测数据集

  • 水果新鲜程度检测数据集

  • YOLOv5水果新鲜程度检测+练好的水果新鲜程度检测模型+pyqt界面+水果新鲜程度检测数据集

  • YOLOv3水果检测+两种训练好的水果检测模型+水果检测数据集

  • YOLOv5水果检测+两种训练好的水果检测模型+pyqt界面+水果检测数据集

  • YOLO水果检测数据集 fruit-dataset.rar

  • 可视化

4. YOLO水果外观好坏-是否新鲜检测

  • 类别

  • nc: 6

  • names: ['bad_apple', 'apple', 'ugly_apple', 'bad_banana', 'banana', 'ugly_banana']

  • 数据集

  • YOLOv5水果外观好坏-是否新鲜检测数据集

  • 可视化

5. YOLOv5算法运行步骤

YOLOv5模型训练步骤:

  1. 环境准备:
  • 安装必要的依赖库,包括Python、PyTorch、torchvision等。
  • 克隆YOLOv5仓库,通常可以通过GitHub获取源代码或者使用下载好的项目资源包:
    git clone https://github.com/ultralytics/yolov5.git
    cd yolov5
    
  1. 数据准备:
  • 准备并标注好您的数据集,确保它们按照COCO格式或者YOLO格式(txt)进行组织,包含train和val两个子目录,每张图片都有对应的.json标注文件或者.txt文件记录边界框坐标和类别标签。
  • 在data目录下创建相应的.yaml文件,配置数据集路径和其他参数。
  1. 模型配置:
  • 根据需要在models目录下的.yaml文件中调整模型结构、类别数量(nc参数)、训练参数等。
  1. 启动训练:
  • 运行训练脚本,指定所需的.yaml配置文件、权重文件(可选,若初次训练则无需提供预训练权重)以及其他训练参数:
    python train.py --img 640 --batch 16 --epochs 300 --data <your_dataset.yaml> --weights '' # 若无预训练权重
    或
    python train.py --weights yolov5s.pt --data <your_dataset.yaml> # 使用预训练权重
    
  1. 监控训练过程:
  • 训练过程中会在终端输出损失值和mAP指标,并且TensorBoard可以可视化训练进度。
  1. 保存和评估模型:
  • 训练完成后,最佳模型会被自动保存至runs/train/expname目录下,可以根据验证集上的性能指标选择最优模型进行后续部署或微调。

YOLOv5模型检测步骤:

  1. 加载模型:
  • 使用训练得到的最佳权重文件进行推理检测:
    python detect.py --weights runs/train/expname/best.pt --source test_images/ --output results/
    
  1. 运行检测:
  • detect.py脚本将读取指定源文件夹中的图片或视频,然后使用加载的模型进行对象检测,并将带有预测框的结果保存到指定输出目录。
© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号