Windows10+Darknet+YOLOv3训练自己数据(GPU)——1.数据集准备

本文介绍了如何在Windows10环境下使用Darknet和YOLOv3训练自己的数据集。首先,创建符合VOC标准的数据集,包括将图像放入JPEGImages文件夹,统一命名,并将视频帧转换为图片。接着,利用labelImg软件进行对象标注,生成Annotations文件夹中的.xml文件。注意检查标注文件中width和height不为0的问题,通过代码修正。完成这些步骤后,自定义数据集的准备工作基本完成。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.创建VOC数据集

VOC数据集是YOLO模型训练的传统标准文件格式,在模型训练前首先需要创建自己的VOC数据集。下载Pascal VOC数据集,然后把官方VOC数据集里面的内容删除,只保留各个文件夹,然后将自己的数据放置在对应的文件夹中,这样确保待训练的数据格式不出错。该文件夹的主要内容如下所示:

└── VOCdevkit     #根目录
    └── VOC2012   #不同年份的数据集,这里只下载了2012的,还有2007等其它年份的
        ├── Annotations        #存放xml文件,与JPEGImages中的图片一一对应,解释图片的内容等等
        ├── ImageSets          #该目录下存放的都是txt文件,txt文件中每一行包含一个图片的名称,末尾会加上±1表示正负样本
        │   ├── Action
        │   ├── Layout
        │   ├── Main
        │   └── Segmentation
        ├── JPEGImages         #存放源图片
        ├── SegmentationClass  #存放的是图片,语义分割相关
        └── SegmentationObject #存放的是图片,实例分割相关

(1)准备好自己用来训练模型的图像,将其存放至上述的JPEGImages 文件夹中,统一命名为000001.jpg , 000002.jpg……格式。

在此过程中可能存在将视频分解为图片来作为训练样本的情况,如果训练的原始数据均为图片,直接阅读 ③,通过Python来统一命名图片。

①首先获取视频的帧数,代码如下:

# -*- coding: utf-8 -*-
import cv2

filename = r"C:\Users\Lenovo\Desktop\lettuce_imgdata\videos\G-L-4.avi"
video_cap = cv2.VideoCapture(filename)  # 读取视频

#读取视频帧数
frame_count = 0
all_frames = []
while(True):
    ret, frame = video_cap.read()
    if ret is False:
        break
    all_frames.append(frame)
    frame_count = frame_count + 1
frame_num = len(all_frames)
print(frame_num)

② 得到视频

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值