将 ICDAR 2015 的 Ground Truth 标注在图像数据上

article/2025/5/16 4:38:31

因为要标注数据,数据集是 ICDAR 2015 比赛中的 Challenge 4: Incidental Scene Text。

原图及标注的图像,还有给定的 ground truth 文件如下所示:

这里写图片描述

最左边是原图,中间是标注的图像,右边是 ground truth 文件内容,按顺时针顺序的坐标: x1,y1,x2,y2,x3,y3,x4,y4 ,最后是 words,但是如果是 ### 这种表示的,则表示不 care 文字的内容。

用 python 将 ground truth 框住文字,代码如下:

import os
import path
import glob
import Image, ImageDraw# ground truth directory
gt_text_dir = "/home/chenxp/Documents/Hitachi/ICDAR_2015/ICDAR2015_ch4/ch4_training_localization_transcription_gt"# original images directory
image_dir = "/home/chenxp/Documents/Hitachi/ICDAR_2015/ICDAR2015_ch4/*.jpg"
imgDirs = []
imgLists = glob.glob(image_dir)# where to save the images with ground truth boxes
imgs_save_dir = "/home/chenxp/Documents/Hitachi/ICDAR_2015/ICDAR_with_GT"for item in imgLists:imgDirs.append(item)for img_dir in imgDirs:img = Image.open(img_dir)dr = ImageDraw.Draw(img)    img_basename = os.path.basename(img_dir)(img_name, temp2) = os.path.splitext(img_basename)# open the ground truth text fileimg_gt_text_name = "gt_" + img_name + ".txt"print img_gt_text_namebf = open(os.path.join(gt_text_dir, img_gt_text_name)).read().decode("utf-8-sig").encode("utf-8").splitlines()for idx in bf:rect = []spt = idx.split(',')rect.append(float(spt[0]))rect.append(float(spt[1]))rect.append(float(spt[2]))rect.append(float(spt[3]))rect.append(float(spt[4]))rect.append(float(spt[5]))rect.append(float(spt[6]))rect.append(float(spt[7]))# draw the polygon with (x_1, y_1, x_2, y_2, x_3, y_3, x_4, y_4)dr.polygon((rect[0], rect[1], rect[2], rect[3], rect[4], rect[5], rect[6], rect[7]), outline="red")img.save(os.path.join(imgs_save_dir, img_basename))

上面代码中间有一句话:

bf = open(os.path.join(gt_text_dir, img_gt_text_name)).read().decode("utf-8-sig").encode("utf-8").splitlines()

如果没有 decode("utf-8-sig").encode("utf-8") 这句话,那么在解析 ground truth 的 txt 文件时,会在首行多处下面的东西,如下所示:

这里写图片描述

看到了吗?第一行 \xef\xbb\xbf ,这是什么鬼?

Google 一下,在 stackoverflow 上有个问答:Split function add: \xef\xbb\xbf…\n to my list:

这里写图片描述

原来是 txt 文件编码包含了 UTF-8 BOM。

最后标注的结果如下:

这里写图片描述

这里写图片描述


http://chatgpt.dhexx.cn/article/SWZVKd39.shtml

相关文章

ICDAR 2019比赛及数据集下载-任务-ICDAR2019任意形状文本的鲁棒阅读挑战

ICDAR 2019比赛及数据集下载 https://rrc.cvc.uab.es/?ch14&comtasks 任务-ICDAR2019任意形状文本的鲁棒阅读挑战 我们提议的比赛包括三个主要任务: 场景文字检测,场景文字识别场景文字发现。 注意 参赛者可以自由使用公开可用的数据集&#…

ICDAR 2019比赛及数据集下载-任务-ICDAR2019对带有部分标签的大规模街景文本的强大阅读挑战

ICDAR 2019比赛及数据集下载 https://rrc.cvc.uab.es/?ch16&comtasks 任务-ICDAR2019对带有部分标签的大规模街景文本的强大阅读挑战 LSVT数据集将包含450、000张带有文本的图像,这些文本可在街道上自由捕获,例如,店面和地标。其中50…

ICDAR2019 ReCTS task1 比赛总结

ICDAR2019 ReCTS task1 比赛总结 写在前面比赛介绍比赛方案数据集网络选择训练调参 赛后总结 写在前面 这是自己的第一篇博客,拿来总结一下今年四月份的比赛——ICDAR 2019 ReCTS,同时记录一些自己的想法,方便以后回看。 比赛介绍 链接: 比…

ICDAR 2019比赛及数据集下载-任务-任务-ICDAR 2019扫描收据OCR和信息提取的稳健阅读挑战

ICDAR 2019比赛及数据集下载-任务- https://rrc.cvc.uab.es/?ch13&comtasks 任务-ICDAR 2019扫描收据OCR和信息提取的稳健阅读挑战 数据集和注释 数据集将具有1000个完整的扫描收据图像。每个收据图像包含大约四个关键文本字段,例如商品名称,单…

【OCR】EAST算法数据处理——ICDAR_2015数据集

背景 下载地址:https://rrc.cvc.uab.es/?ch4&comdownloads 注意:该数据为开源数据,但需要注册一个账号,简单注册下即可下载; 介绍:用于文本检测任务,数据包含1000张训练样本以及500张测…

ICDAR 2019表格识别论文与竞赛综述(上)

ICDAR 2019表格识别论文与竞赛综述(上) 表格作为一种有效的数据组织与展现方法被广泛应用,也成为各类文档中常见的页面对象。随着文档数目的爆炸性增长,如何高效地从文档中找到表格并获取内容与结构信息即表格识别,成为…

ICDAR文本检测的评价方法

目录 简要介绍 文件准备 代码注释 简要介绍 具体的介绍可以看这几篇文章,讲解的很详细了,本文主要参考这三篇文章并对官方给的代码做一些解释 ICDAR2013文本检测算法的衡量方法(一)Evaluation Levels ICDAR2013文本检测算法…

技术探秘: 360数科夺得ICDAR OCR竞赛世界第一

ICDAR(国际文档分析与识别会议)是OCR识别领域最权威的会议之一。近期,360数科在ICDAR2019-SROIE(Results - ICDAR 2019 Robust Reading Challenge on Scanned Receipts OCR and Information Extraction - Robust Reading Competition) 榜单上…

TencentOCR 斩获 ICDAR 2021 三项冠军

作者:TencentOCR团队 全球 OCR 最顶级赛事,TencentOCR 以绝对领先优势斩获三冠,腾讯技术再扬威名! 一、竞赛背景 2021 年 9 月,两年一届的 ICDAR 竞赛落下帷幕,这是文字识别(OCR)领域…

ICDAR 2021竞赛 科学文献分析——表格识别综述部分(剩余部分是文档布局分析)

任务B为表格识别部分,本文暂只看表格识别摘要(不重要,想直接看表格识别部分可以跳过). 科学文献包含与不同领域的前沿创新有关的重要信息。自然语言处理的进步推动了科学文献信息自动提取的快速发展。然而,科学文献通…

ICDAR 2017 RCTW 中文场景文本检测和识别数据集

简介 ICDAR是进行场景文本检测和识别(Scene Text Detection and Recognition)任务最知名和常用的数据集。ICDAR 2017 RCTW[1](Reading Chinest Text in the Wild),由Baoguang Shi等学者提出。RCTW主要是中文,共12263张图像,其中8034作为训练…

ABCNet数据集转化(ICDAR 2015)及训练

ABCNet数据集转化(ICDAR 2015)及训练 目录 ABCNet数据集转化(ICDAR 2015)及训练一、环境配置1. detectron2 安装2. AdelaiDet 安装 二、ICDAR 2015 转化为Bezier pts格式三、网络训练1、文件目录2、训练3、训练过程中遇到的问题 一…

ICDAR 比赛技术分享

一 背景 ICDAR 2021(International Conference on Document Analysis and Recognition)于2021年9月5-10日在瑞士召开。ICDAR会议是文档分析与识别领域国际顶级会议,每两年举办一次,涵盖了文档分析与识别领域的最新学术成果和前沿…

世界人工智能大会与ICDAR有何不同?

从事人工智能领域的小伙伴对世界人工智能大会和ICDAR应该都不会陌生,它们似乎都是属于研究、讨论人工智能的一种会议,但其实它们的区别还是挺大的,具体来说,它们主要有以下的区别: 一、组织性质不同 ICDAR是Internati…

【赛事推荐】ICDAR2023国际学术竞赛,六大OCR未解难题等你来挑战!

关注公众号,发现CV技术之美 ICDAR(International Conference on Document Analysis and Recognition)是全球文档图像分析识别领域公认的权威学术会议,从1991年起每两年召开一次,今年是第17届,将于2023年9月…

AI领域著名的ICDAR是何物?有何作用?

来百度APP畅享高清图片 一、ICDAR是什么? ICDAR是International Conference on Document Analysis and Recognition(国际文档分析与识别会议)的缩写。它每两年举办一次,由国际文献识别与文本处理委员会(International…

富芮坤fr8008gp代码:堆栈设置;lv_timer_handler定时器研究和优化;广播数据中不用定义GAP_ADTVYPE_FLAGS;广播使用设备唯一地址

堆栈设置 fr8008gp使用自定义的linker脚本: ;256k bytes, which is 2M ROM ;ROM 0x00000000 0x40000 0x30000 ROM 0x10000000 0x800000 {ER_TABLE 0{*(jump_table_0)*(jump_table_1)*(jump_table_2)*(jump_table_3)*(jump_table_4)}ER_RO 0x10002000 FIXED{*(RO)}ER_BOOT …

数坤科技上市遇阻?申请材料失效,融资“数据打架”,存数亿缺口

2022年3月21日,贝多财经了解到,数坤(北京)网络科技股份有限公司- B(下称“数坤科技”)在港交所的上市申请材料已“失效”,目前已经无法正常查看或下载。这代表着,数坤科技首次冲刺上…

《数据》杂志刊登坤前署名文章:金融信创构筑产业数字化转型之路

《数据》--《产业转型研究》专刊 《数据》杂志是由北京市统计局和北京日报报业集团战略合作,专注于数据领域报道,并在全国发行的经济资讯类新闻期刊。此次清华大学互联网产业研究院产业转型顾问委员会专刊,聚焦产业转型研究,理论和…

“聚力远谋,创赢未来”坤前全国巡展广州站圆满落幕

9月28日,“聚力远谋,创赢未来”2021坤前生态合作伙伴交流全国巡展首站在广州正式启幕,来自各行各业的核心客户及坤前生态合作伙伴齐聚一堂,共话信创产业发展。 飞腾信息技术有限公司华南区域总监李荣恩先生对会议主办方坤前表达了…