paddleocr训练数据集格式
时间: 2025-02-10 18:07:27 浏览: 74
### PaddleOCR 训练数据集格式要求
对于PaddleOCR而言,在准备用于训练的数据集时,需遵循特定的结构和命名约定来确保顺利读取与处理。具体来说:
#### 文本检测(Text Detection)
文本检测任务中的图像应当被放置于指定目录下,并通过标签文件关联每张图片与其对应的边界框信息。
- **训练数据**应存放在`det_train_images`文件夹内[^4];
- 测试数据则置于`det_test_images`文件夹中;
每个样本由一张输入图像及其相应的标注组成。标注通常保存在一个单独的文字文件里,每一行代表一个矩形区域的位置坐标(xmin, ymin, xmax, ymax),以及该区域内文字的内容描述(可选)[^1]。
#### OCR识别(Recognition)
针对字符识别部分,同样需要构建类似的组织方式:
- 图像存储路径可以是类似于`rec_train_data`这样的名称;
- 对应的标签可以通过CSV或其他表格形式提供,其中至少包含两列:一是指向对应图像文件相对路径的字段;二是记录着这张图上所显示的确切字符串内容的另一栏位[^3]。
为了便于理解如何设置这些参数,下面给出一段Python脚本示例,展示怎样加载并解析上述提到的一种常见类型的标签文件——即采用`.txt`扩展名且内部按照行分割多个对象实例的情况下的实现方法:
```python
def load_label_file(label_path):
labels = []
with open(label_path, 'r', encoding='utf8') as f:
lines = f.readlines()
for line in lines:
parts = line.strip().split('\t')
img_name = parts[0]
boxes_and_texts = [part.split(',') for part in parts[1:]]
label_info = {
"image": img_name,
"annotations": [{"box": list(map(int, box[:4])), "text": ','.join(box[4:])} for box in boxes_and_texts]
}
labels.append(label_info)
return labels
```
此函数接受单个参数`label_path`表示标签文件的具体位置,返回值是一个列表,里面包含了所有已解析好的条目。每一个条目的字典结构都清晰地标明了所属图片的名字(`img_name`)还有围绕目标物体绘制出来的多边形顶点座标连同其上的文字说明(`boxes_and_texts`)[^2]。
阅读全文
相关推荐








