使用yolov5训练自动驾驶目标检测数据集BDD100K
创作时间:
作者:
@小白创作中心
使用yolov5训练自动驾驶目标检测数据集BDD100K
引用
CSDN
1.
https://blog.csdn.net/qq_37555071/article/details/118934037
BDD100K是伯克利发布的开放式驾驶视频数据集,包含10万个视频和10个任务,旨在评估自动驾驶图像识别算法的进展。本文将详细介绍如何使用YOLOv5训练BDD100K数据集,包括数据预处理、环境配置、模型结构修改、迁移学习、训练过程和性能评估等多个方面。
一、什么是BDD100K
BDD100K是伯克利发布的开放式驾驶视频数据集,其中包含10万个视频和10个任务(因为把交通灯的颜色也区分了出来,实际上是13类分类任务),目的是方便评估自动驾驶图像识别算法的的进展。该数据集具有地理,环境和天气多样性,从而能让模型能够识别多种场景,具备更多的泛化能力。
由于硬件限制,我只里训练其中的图片数据,数据集按Train、Valid、Test三个部分,比例可以按照7:2:1分配,共近10张图片。
二、数据预处理
Bdd100k的标签是由Scalabel生成的JSON格式,虽然伯克利提供Bdd100k数据集的标签查看及标签格式转化工具。由于没有直接从bdd100k转换成YOLO的工具,因此我们首先得使用将bdd100k的标签转换为coco格式,然后再将coco格式转换为yolo格式。
YOLO家族独特的标签数据集格式为:每个图片文件.jpg,都有同一命名的标签文件.txt。标签文件中每个对象独占一行,格式为
<object-class> <x> <y> <width> <height>。
其中:
<object-class>表示对象的类别序号:从0 到 (classes-1)。<x> <y> <width> <height>参照图片宽度和高度的相对比例(浮点数值),从0.0到1.0。注意: 是矩形的中心,而不是左上角位置。
如下图所示:
(1)bdd 转化为coco格式
我的目的是识别包括不同颜色交通灯在内的所有交通对象,因此我们需要对原版的bdd2coco.py进行一些修改,以获取交通灯颜色并产生新的类别。这是修改完的核心代码:
for label in i['labels']:
annotation = dict()
category=label['category']
if (category == "traffic light"):
color = label['attributes']['trafficLightColor']
category = "tl_" + color
if category in id_dict.keys():
empty_image = False
annotation["iscrow
热门推荐
如何评估两厢车的性能?两厢车的配置和驾驶体验有哪些关键点?
AI直播课程编程:定义、优势与未来趋势
什么课程可以帮助编程的
“三八”国际妇女节,阅读汲取力量,女性绽放光芒!
纯净水长期喝增加骨骼健康风险?专家这样说
GPT系列模型原理详解:从GPT-1到GPT-3的技术演进
如何看股票筹码集中度,筹码集中度有什么分析技巧
紫微斗数小限(紫微斗数小限是虚岁还是实岁)
NBA球衣号码背后的故事:巨星交易中的号码更迭与情谊纠葛
农业肥料创新:未来趋势助力提升作物产量与土壤健康
全国人大代表何小鹏:科技创新改变生活
家用SUV,有必要选择四驱的吗?你的建议是什么?
网球力量训练注意事项
公司命名与工作室起名策略
3亿元营收瓶颈难破 川大智胜步入关键期
从新手到高手:AI写作三步骤带你跨越写作难题
猫咪叫怎么办?教你几招轻松应对猫咪的叫声烦恼
电瓶车交通事故起诉:法律依据与实务操作指南
2024交通事故赔偿案件怎样取证,怎样提交交通事故诉讼证据
一文详解:减刑和假释的条件、程序及限制
2024赛季日本联赛大结局:神户成功卫冕,冈山队史首次升入顶级联赛
回眸2024剧集:现实题材亮眼 创新表达获赞
孕期如何避开二手烟?这些防护措施请收好
《原神》娜维娅养成材料需求一览
《王者荣耀》中的貂蝉与周瑜 谁更强 对比两位英雄的技能与特点
网球人都应该了解的积分系统“UTR”
成语故事《举案齐眉》:夫妻相敬如宾的美好典范
房产证过户需要本人去办理吗
胶带的多功能用途:从日常修复到创意手工艺
第五跖骨基底部骨折的分型及治疗方案