news 2026/7/23 19:31:45

易拉罐正反面识别数据集下载,支持yolo,coco json,pasical voc xml格式的标注信息,平均正确识别率为99.5%,训练集2373张图片

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
易拉罐正反面识别数据集下载,支持yolo,coco json,pasical voc xml格式的标注信息,平均正确识别率为99.5%,训练集2373张图片

易拉罐正反面识别数据集

本数据集专门用于易拉罐正反面识别任务,支持多种主流标注格式,包括 YOLO、COCO JSON 和 Pascal VOC XML。数据集平均正确识别率达到 99.5%,包含 2373 张训练图片。

可识别的标签信息

数据集包含以下两种标签类别:

  • Normal:易拉罐正面
  • Reverse:易拉罐反面

数据分割

数据集按照以下比例进行划分:

  • 训练集:2373 张图片
  • 验证集:229 张图片
  • 测试集:114 张图片

预处理

所有图片统一调整为 640×640 分辨率,确保输入尺寸一致。

训练效果展示

数据集下载

数据集支持以下格式下载:

  • YOLO v26
  • YOLO v12
  • YOLO v11
  • YOLO v9
  • YOLO v8
  • YOLO v7
  • COCO JSON
  • Pascal VOC XML

YOLO 模型训练指南

训练步骤:

  1. 下载数据集并解压到当前文件夹
  2. 克隆训练仓库:YOLOProject:基于 YOLO 的模型训练项目 - AtomGit
  3. 将训练脚本复制到数据集文件夹下
  4. 根据使用的 YOLO 版本运行对应脚本,例如使用 YOLOv8 时执行:python train_yolov8.py

模糊图片在模型训练中的优势分析

数据集中包含的模糊图片并非数据缺陷,而是一种精心设计的数据增强策略,能为模型训练带来以下显著优势:

  • 提升模型鲁棒性:现实场景中可能存在运动模糊、对焦不准或光线不足的情况。在训练集中引入模糊样本,可以迫使模型学习更本质的特征,而不是过度依赖清晰的边缘或纹理细节,从而提升模型在复杂、非理想成像条件下的识别能力。
  • 模拟真实世界噪声:监控摄像头、手机等设备在低光照或快速移动时极易产生模糊。包含此类图片的数据集能让模型提前"见识"并适应这种噪声,减少在实际部署时因图像质量下降而导致的性能骤降。
  • 防止模型过拟合:如果训练集全是高清、摆拍的完美图片,模型容易记住这些特定场景下的"干净"特征,而对新的、稍有模糊的图片泛化能力差。模糊图片作为一种有效的正则化手段,可以增加数据分布的多样性,防止模型过拟合到有限的清晰样本上。

总结:数据集中包含的模糊图片,与"水平翻转"、"剪切形变"、"随机遮挡"等增强操作一样,都是为了构建一个更接近真实世界复杂分布的数据环境,从而训练出更健壮、更泛化、更实用的模型。

模型验证与测试

验证测试代码

# 需要安装:pip install ultralytics from ultralytics import YOLO import cv2 ===================== 1. 加载 YOLO 模型 ===================== 自动下载预训练模型(yolov8n 最轻量快速),也可换 yolov8s/m/l/x model = YOLO("best.pt") ===================== 2. 推理配置 ===================== image_path = "326_jpg.rf.8ad64cc0668df32c4e5f59b50e899e9c.jpg" # 你的图片路径 save_result = True # 是否保存标注后的图 ===================== 3. 执行推理 ===================== results = model.predict( source=image_path, conf=0.01, # 置信度阈值(低于该值忽略) save=False, # 关闭默认保存,自定义保存 verbose=False # 关闭冗余日志 ) ===================== 4. 解析结果:目标区域 + 标注信息 ===================== print("=" * 50) print("YOLO 推理结果(目标区域 + 标注信息)") print("=" * 50) 获取图片(用于绘制框) img = cv2.imread(image_path) 遍历所有检测目标 for idx, result in enumerate(results): boxes = result.boxes # 所有检测框 for box in boxes: # ========== 提取目标区域(坐标) ========== # xyxy: 左上角 x, 左上角 y, 右下角 x, 右下角 y x1, y1, x2, y2 = box.xyxy[0].cpu().numpy() # 宽高 w = x2 - x1 h = y2 - y1 # ========== 提取标注信息 ========== cls_id = int(box.cls[0]) # 类别 ID cls_name = model.names[cls_id] # 类别名称 conf = float(box.conf[0]) # 置信度 # ========== 打印信息 ========== print(f"目标 {idx + 1}:") print(f" 标注类别:{cls_name}") print(f" 置信度:{conf:.2f}") print(f" 目标区域坐标:") print(f" 左上角 ({x1:.1f}, {y1:.1f})") print(f" 右下角 ({x2:.1f}, {y2:.1f})") print(f" 宽×高:{w:.1f} × {h:.1f}") print("-" * 30) # ========== 在图片上绘制检测框 ========== cv2.rectangle(img, (int(x1), int(y1)), (int(x2), int(y2)), (0, 255, 0), 2) cv2.putText(img, f"{cls_name} {conf:.2f}", (int(x1), int(y1) - 10), cv2.FONT_HERSHEY_SIMPLEX, 0.5, (0, 255, 0), 2) ===================== 5. 保存/显示结果 ===================== if save_result: cv2.imwrite("yolo_result.jpg", img) print("✅ 标注图片已保存为:yolo_result.jpg") 显示图片(可选) cv2.imshow("YOLO Result", img) cv2.waitKey(0) cv2.destroyAllWindows()

测试验证结果

识别到的标签信息

{ "predictions": [ { "x": 232, "y": 203, "width": 230, "height": 248, "confidence": 0.968, "class": "Reverse", "class_id": 1, "detection_id": "495f70cb-2244-4ac3-b4b2-41b322558135" } ] }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/23 19:27:49

Profinet--TIAPortal V19安装与项目实战指南

一、TIA Portal V19的安装 1.1 主要流程 1、参考文章 西门子博途 TIA Portal v19 中文版图文安装教程(超级详细) 2、主要流程 1、“ 西门子接触重启提示批处理.bat ” 管理员权限运行; 2、打开文件夹“ TIA_Portal_STEP7_Prof_Safety_WinC…

作者头像 李华
网站建设 2026/7/23 19:25:17

智能查重工具革新:从算法原理到论文降重实战

1. 项目概述:科研查重工具的痛点与革新第一次在知网查重时那种忐忑不安的心情,相信每个写过论文的人都深有体会。就像拆盲盒一样,你永远不知道系统会给你一个怎样的重复率数字——这种不确定性让多少研究生熬白了头发。传统查重工具存在几个致…

作者头像 李华
网站建设 2026/7/23 19:23:58

Llama2架构解析与工程实践优化指南

## 1. Llama2架构全景解析作为Meta开源的下一代大语言模型,Llama2在模型结构上延续了Transformer解码器的经典设计,但在细节层面进行了多项关键优化。与第一代Llama相比,Llama2系列包含70亿、130亿和700亿三种参数规格,其中Llama2…

作者头像 李华
网站建设 2026/7/23 19:19:30

verilog HDLBits刷题[Counters]“Exams/ece241 ”---Counter 1000

一、题目From a 1000 Hz clock, derive a 1 Hz signal, called OneHertz, that could be used to drive an Enable signal for a set of hour/minute/second counters to create a digital wall clock. Since we want the clock to count once per second, the OneHertz signal…

作者头像 李华
网站建设 2026/7/23 19:18:17

法律AI智能体架构设计与性能调优实战

1. 法律AI智能体架构性能调优实战背景去年接手某跨国律所的智能合同审查系统改造项目时,我们团队遇到了典型的AI智能体性能瓶颈——当同时处理200份合同时,系统响应时间从平均3秒骤增至27秒。这个案例让我意识到,法律AI领域的性能调优与通用A…

作者头像 李华