CTW1500数据集介绍

官网

https://ctwdataset.github.io/

数据标注格式

每行共32个数字,前四个数字为该弯曲文本在整张图上的矩形框坐标值,剩下的28个值为14个点,为相对于矩形框左上角得误差补偿即为与左上角坐标所形成的差值,形成封闭的弯曲文本框,其计算方式可以简单的理解为:

1.将前4个坐标值的矩形框从原图中截取出来

2.在截取之后的图中取14个点的坐标值
————————————————
版权声明:本文为CSDN博主「tumi678」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/tumi678/article/details/97752544

查看标注结果

# -*- encoding: utf-8 -*-
"""
@date: 2021/3/30 10:43 上午
@author: xuehuiping
"""

from PIL import Image, ImageDraw

label_file_name = '/Users/xuehuiping/data/ctw1500/train/text_label_curve/0005.txt'

img_file_name = '/Users/xuehuiping/data/ctw1500/train/text_image/0005.jpg'

im = Image.open(img_file_name)
draw = ImageDraw.Draw(im)  # 实例化一个对象

lines = open(label_file_name).readlines()
for line in lines:
    # print(line)
    cells = line.strip().split(',')
    tmp = cells[4:]
    xy = []
    for i in range(len(tmp)):
        if i % 2 == 0:
            xy.append(int(tmp[i]) + int(cells[0]))
        else:
            xy.append(int(tmp[i]) + int(cells[1]))
    # print(xy)
    draw.polygon(
        xy, fill=(0, 255, 0))

im.show()

数据举例

原文地址:https://www.cnblogs.com/xuehuiping/p/14596256.html