车牌识别与定位数据集-CCPD2020

CCPD2020-voc 数据集结构说明

整体结构

复制代码
CCPD2020-voc/
├── train/          # 训练集(5769个样本)
│   ├── Annotations/      # XML标注文件(5769个)
│   ├── JPEGImages/       # 原始图像文件(5769张)
│   ├── plates/           # 裁剪出的车牌图像(5769张)
│   └── train.txt         # 训练集图像文件名列表
├── val/            # 验证集(1001个样本)
│   ├── Annotations/      # XML标注文件(1001个)
│   ├── JPEGImages/       # 原始图像文件(1001张)
│   ├── plates/           # 裁剪出的车牌图像(1001张)
│   └── val.txt           # 验证集图像文件名列表
└── test/           # 测试集(5006个样本)
    ├── Annotations/      # XML标注文件(5006个)
    ├── JPEGImages/       # 原始图像文件(5006张)
    ├── plates/           # 裁剪出的车牌图像(5006张)
    └── test.txt          # 测试集图像文件名列表

数据集展示

文件夹说明

1. Annotations/ 文件夹

  • 格式: PASCAL VOC格式的XML标注文件
  • 内容 : 每张图像对应一个XML文件,包含:
    • 图像基本信息(文件名、尺寸)
    • 车牌位置信息(边界框坐标)
    • 类别标签("plate"表示车牌)

XML文件示例结构:

复制代码
<annotation>
    <filename>图像文件名.jpg</filename>
    <size>
        <width>720</width>      # 图像宽度
        <height>1160</height>    # 图像高度
        <depth>3</depth>         # 通道数(RGB=3)
    </size>
    <object>
        <name>plate</name>       # 类别名称(车牌)
        <bndbox>
            <xmin>311</xmin>     # 边界框左上角x坐标
            <ymin>485</ymin>     # 边界框左上角y坐标
            <xmax>406</xmax>     # 边界框右下角x坐标
            <ymax>524</ymax>     # 边界框右下角y坐标
        </bndbox>
    </object>
</annotation>

2. JPEGImages/ 文件夹

  • 内容: 包含车牌的完整场景图像
  • 格式: JPG格式
  • 用途: 用于目标检测训练,需要检测出图像中的车牌位置

3. plates/ 文件夹

  • 内容: 从原始图像中裁剪出的车牌区域图像
  • 格式: JPG格式
  • 用途: 可能用于车牌字符识别任务(本训练代码主要用于定位,不使用此文件夹)

4. *.txt 文件(train.txt/val.txt/test.txt)

  • 内容: 每行一个图像文件名

  • 格式: 纯文本,每行一个文件名

  • 示例:

    00360785590278-91_265-311&485_406&524-406&524_313&520_311&485_402&489-0_0_3_24_28_24_31_33-117-16.jpg
    00373372395833-90_96-276&514_387&548-387&548_276&547_276&516_384&514-0_0_3_26_25_31_33_32-157-19.jpg

文件名编码说明

图像文件名包含丰富的信息(以CCPD数据集命名规则):

复制代码
00360785590278-91_265-311&485_406&524-406&524_313&520_311&485_402&489-0_0_3_24_28_24_31_33-117-16.jpg

各部分含义:

  • 00360785590278: 时间戳或唯一标识
  • 91_265: 车牌角度信息
  • 311&485_406&524: 车牌边界框坐标(xmin&ymin_xmax&ymax)
  • -406&524_313&520_311&485_402&489: 车牌四个角点坐标
  • 0_0_3_24_28_24_31_33: 车牌字符信息
  • 117-16: 其他属性

注意: 训练代码主要使用XML标注文件中的边界框信息,不需要解析文件名。

数据统计

数据集 图像数量 XML标注数量 说明
train 5769 5769 用于模型训练
val 1001 1001 用于验证和调参
test 5006 5006 用于最终测试评估
总计 11776 11776 完整数据集

标注格式转换

训练代码会将PASCAL VOC格式(XML)转换为YOLO格式(TXT):

VOC格式(XML):

  • 使用绝对像素坐标:xmin, ymin, xmax, ymax
  • 例如:xmin=311, ymin=485, xmax=406, ymax=524

YOLO格式(TXT):

  • 使用归一化相对坐标:class_id x_center y_center width height
  • 所有坐标值在0-1之间
  • 例如:0 0.497917 0.451724 0.131944 0.033621
    • 0: 类别ID(车牌=0)
    • 0.497917: 中心点x坐标/图像宽度
    • 0.451724: 中心点y坐标/图像高度
    • 0.131944: 边界框宽度/图像宽度
    • 0.033621: 边界框高度/图像高度

使用流程

  1. 数据准备: 数据集已经是VOC格式,包含train/val/test三个子集
  2. 格式转换: train.py会自动将VOC格式转换为YOLO格式
  3. 训练: 使用YOLOv8模型进行车牌检测训练
  4. 评估: 在test集上评估模型性能
相关推荐
格林威2 分钟前
C# 相机图像阴影校正:使用OpenCvSharp实现工业相机阴影平场校正功能
人工智能·数码相机·opencv·计算机视觉·c#·机器视觉·工业相机
桃西西呀6 分钟前
9月1日起AI图要被标记了,机器怎么一眼认出哪张是 AI 画的?
人工智能·机器学习·llm
招财小梗10 分钟前
沈阳AI企业咨询可定制数字化方案吗?
大数据·人工智能·python
其实防守也摸鱼11 分钟前
教育信息技术应用创新---基础软件信息赛(题库)
大数据·运维·人工智能·web安全·自动化
Zzj_tju11 分钟前
Prompt Injection 防御:隔离不可信上下文的最小复现
人工智能·深度学习·机器学习·自然语言处理·prompt
合合技术团队12 分钟前
论文解读|合合信息与上海交通大学打造DocIQ模型,AI为文档图像质量“做体检”
人工智能·计算机视觉
Superzhangaa12 分钟前
太希智能全栈自研背后的机器人逻辑
人工智能·机器人·开源
陈年老古董16 分钟前
矿物分类实战:从传统机器学习到深度学习(含PyTorch实现)
笔记·深度学习·学习·机器学习·分类
枫叶丹418 分钟前
小模型与本地 Agent:不是更小的替代品,而是新的系统分工
人工智能·chatgpt·agent·codex
空堂与归21 分钟前
RNN记不住长序列怎么办?用 LSTM 三门一通道接旁路
人工智能·rnn·nlp·lstm