library_name: transformers
language:
- ru
license: apache-2.0
base_model: PekingU/rtdetr_r50vd_coco_o365
tags:
- generated_from_trainer
model-index:
- name: RT-DETR俄罗斯车牌检测及类型分类模型
results: []
RT-DETR俄罗斯车牌检测及类型分类模型
该模型是基于PekingU/rtdetr_r50vd_coco_o365在未知数据集上微调的版本。在评估集上取得如下结果:
- 损失值:4.1673
- 平均精度(mAP):0.8829
- mAP@50:0.9858
- mAP@75:0.9736
- 车牌及类型mAP:-1.0
- 大型目标mAP:0.9689
- 中型目标mAP:0.9125
- 普通车牌mAP:0.857
- 警用车牌mAP:0.9087
- 小型目标mAP:0.696
- 召回率@1:0.8686
- 召回率@10:0.9299
- 召回率@100:0.9357
- 车牌及类型召回率@100:-1.0
- 普通车牌召回率@100:0.9169
- 警用车牌召回率@100:0.9545
- 大型目标召回率:0.9844
- 中型目标召回率:0.958
- 小型目标召回率:0.8354
模型描述
俄罗斯机动车车牌检测模型,当前支持2种类型:普通车牌(n_p)和警用车牌(p_p)
使用场景与限制
使用示例:
from transformers import AutoModelForObjectDetection, AutoImageProcessor
import torch
import supervision as sv
DEVICE = torch.device("cuda" if torch.cuda.is_available() else "cpu")
model = AutoModelForObjectDetection.from_pretrained('Garon16/rtdetr_r50vd_russia_plate_detector').to(DEVICE)
processor = AutoImageProcessor.from_pretrained('Garon16/rtdetr_r50vd_russia_plate_detector')
path = '图片路径'
image = Image.open(path)
inputs = processor(image, return_tensors="pt").to(DEVICE)
with torch.no_grad():
outputs = model(**inputs)
w, h = image.size
results = processor.post_process_object_detection(
outputs, target_sizes=[(h, w)], threshold=0.3)
detections = sv.Detections.from_transformers(results[0]).with_nms(0.3)
labels = [
model.config.id2label[class_id]
for class_id
in detections.class_id
]
annotated_image = image.copy()
annotated_image = sv.BoundingBoxAnnotator().annotate(annotated_image, detections)
annotated_image = sv.LabelAnnotator().annotate(annotated_image, detections, labels=labels)
grid = sv.create_tiles(
[annotated_image],
grid_size=(1, 1),
single_tile_size=(512, 512),
tile_padding_color=sv.Color.WHITE,
tile_margin_color=sv.Color.WHITE
)
sv.plot_image(grid, size=(10, 10))
训练与评估数据
使用自建数据集训练 - https://universe.roboflow.com/testcarplate/russian-license-plates-classification-by-this-type
训练过程
训练超参数
训练过程中使用以下超参数:
- 学习率:5e-05
- 训练批次大小:32
- 评估批次大小:8
- 随机种子:42
- 优化器:使用adamw_torch,参数为betas=(0.9,0.999),epsilon=1e-08,无额外参数
- 学习率调度器类型:线性
- 学习率预热步数:300
- 训练轮次:20
训练结果
训练损失 |
轮次 |
步数 |
验证损失 |
mAP |
mAP@50 |
mAP@75 |
车牌及类型mAP |
大型目标mAP |
中型目标mAP |
普通车牌mAP |
警用车牌mAP |
小型目标mAP |
召回率@1 |
召回率@10 |
召回率@100 |
车牌及类型召回率@100 |
普通车牌召回率@100 |
警用车牌召回率@100 |
大型目标召回率 |
中型目标召回率 |
小型目标召回率 |
无记录 |
1.0 |
109 |
64.6127 |
0.035 |
0.0558 |
0.0379 |
-1.0 |
0.0039 |
0.0663 |
0.0191 |
0.0508 |
0.0071 |
0.1523 |
0.3009 |
0.3361 |
-1.0 |
0.3179 |
0.3543 |
0.7625 |
0.3788 |
0.1157 |
...(后续表格内容保持原格式不变)... |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|