【文档智能】实践:基于Yolo三行代码极简的训练一个版式分析模型

一、数据集

本文以开源的CDLA数据集做为实验,CDLA是一个中文文档版面分析数据集,面向中文文献类(论文)场景。包含以下10个label:

数据集下载地址:https://github.com/buptlihang/CDLA

数据集是labelme格式的文件,需要自行转化成yolo训练所需要的格式,最后文件放置形式如下:

注意:这个数据集有个问题就是缺乏段落标注,含相关段落标注的开源模型可以查看上篇【文档智能】包含段落的开源的中文版面分析模型

二、安装所需要的依赖

pip install ultralytics

三、配置yaml文件

cdla.yaml

#path: ./datasets/  # dataset root dir
train: cdla/images/train
val: cdla/images/dev
test:  # test images (optional)

nc: 10   # 数据集类别数量
names: [ # 数据集标签
  'Text',
  'Title',
  'Figure',
  'Figure caption',
  'Table',
  'Table caption',
  'Header',
  'Footer',
  'Reference',
  'Equation',
]

三、训练代码

from ultralytics import YOLO

# model = YOLO('yolov8n.yaml')    # 重新训练模型
model = YOLO('yolov8n.pt')        # 加载预训练模型

# Train the model
results = model.train(data='cdla.yaml', epochs=100, imgsz=640, device=0)

四、预测代码

from ultralytics import YOLO

image_path = ''  # 待预测图片路径
model_path = ''  # 权重路径
model = YOLO(model_path)

result = model(image_path, save=True, conf=0.5, save_crop=False, line_width=2)
print(result)

print(result[0].names)         # 输出id2label map
print(result[0].boxes)         # 输出所有的检测到的bounding box
print(result[0].boxes.xyxy)    # 输出所有的检测到的bounding box的左上和右下坐标
print(result[0].boxes.cls)     # 输出所有的检测到的bounding box类别对应的id
print(result[0].boxes.conf)    # 输出所有的检测到的bounding box的置信度
  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
基于YOLO的人脸识别模型是一种基于深度学习的目标检测算法,它可以实现实时的人脸检测和识别。YOLO(You Only Look Once)是一种单阶段的目标检测算法,相比于传统的两阶段方法,它具有更快的检测速度和更高的准确率。 训练一个基于YOLO的人脸识别模型需要以下步骤: 1. 数据收集:首先需要收集包含人脸的图像数据集。这些图像可以来自于公开的数据集,也可以通过自己采集。确保数据集中包含各种不同角度、光照条件和表情的人脸图像。 2. 标注数据:对收集到的图像进行标注,即给每个图像中的人脸框出一个矩形框,并标注其类别为人脸。可以使用标注工具如LabelImg来完成这个过程。 3. 数据预处理:对标注好的数据进行预处理,包括图像尺寸调整、数据增强等操作。数据增强可以通过随机裁剪、旋转、翻转等方式增加数据样本的多样性。 4. 构建模型:选择合适的YOLO模型架构,如YOLOv3或YOLOv4,并根据数据集的特点进行调整。可以使用深度学习框架如TensorFlow或PyTorch来构建模型。 5. 模型训练:使用标注好的数据集对模型进行训练训练过程中需要定义损失函数,常用的是YOLO的损失函数YOLO Loss。通过反向传播算法不断优化模型参数,直到模型收敛。 6. 模型评估:使用测试集对训练好的模型进行评估,计算模型在人脸检测和识别任务上的准确率、召回率等指标。 7. 模型应用:将训练好的模型应用于实际场景中,进行人脸检测和识别任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值