一、整体要求
1、对图片上的表格画横和竖的物理实线,在完成横和竖的实线后表格形成m*n的长方形格子区域,对语义上是相关的物理格子进行合并,标注是表头的格子区域。
2、最终交付的标注数据为 JSON 格式文件。
二、 标注对象
元素 | 定义 | 备注 | 例子 |
---|---|---|---|
横线(紫线) | 划分表格多少行的线 | x1,horizontal_line | 100,horizontal_line |
竖线(蓝线) | 划分表格多少列的线 | y1, vertical_line | 100,vertical_line |
黄色格子 | 语义上是相关的物理格子 | x1,x2,y1,y2,span_cell;1*n 或者 m*1 | 100,100,200,200,span_cell |
红色格子 | 语义上是表头的区域 | x1,x2,y1,y2,table_header | 100,100,200,200,span_cell |
颜色只是做区别,可以不用
标注样例:
样例名 | 图片 | 标注图 |
---|---|---|
有线表 | ||
三线表 | ||
无线表 | ||
三、标注数据前统计(元数据信息字段(参考下图数据视角和数据采集采样构造))
表格一级属性 | 表格二级属性 | 一级分类 | 二级分类 | 样例 | 如何标注 | 需要外部标注吗 |
---|---|---|---|---|---|---|
CV | is_exist_chemical | is_exist_markush_group | R_alpha | 人标 | ||
x | x | x | R_pic | 人标 | ||
x | x | is_exist_markush_core | x | 人标 | ||
x | x | is_exist_ocsr | x | x | 人标 | |
x | is_line_table | is_vertical_line_table | x | x | 机器标 | |
x | x | is_horizontal_line_table | x | 机器标 | ||
x | line_type | real line | x | 待研究 | ||
x | x | 虚线 | x | 待研究 | ||
x | is_table_header_span | is_table_header_logical_span | x | 人标 | ||
x | x | is_table_header_physical_span | x | 人标 | ||
x | rotate | 90degree | x | x | 待研究 | |
其它角度 | 待研究 | |||||
x | is_tian | x | x | 人标 | ||
x | table_header_type | 表头双线 | x | 待研究 | ||
x | x | 表头灰底 | x | 待研究 | ||
格子密度 | 每行平均格子数 | 行和列达到一定程度就是密集格子表 | 机器标 | |||
每列平均格子数 | 机器标 | |||||
每行平均像素/格子数 | 机器标 | |||||
每列平均像素/格子数 | 机器标 | |||||
空白格占总逻辑上应该有格子的比例 | 机器标 | |||||
NLP | is_has_compound | x | x | 人标 | ||
x | is_parellel_text | x | x | 人标 | ||
x | compound_list_type | is_compound_first_coloum is_field_first_row |
x | 人标 | ||
x | x | is_compound_first_row is_field_first_coloum |
x | 人标 | ||
x | languague | x | x | 一般为英文,以格子半数以上是什么语言为准 |
机器标 | |
x | 多列为compound | x | x | 人标 | ||
预测属性 | is_predict_dod_ok | x | x | x | x | |
x | is_predict_box_ok | x | x | x | x | |
x | is_predict_line_ok | x | x | x | x | |
x | is_predict_span_ok | x | x | x | x | |
x | is_predict_ocsr_ok | mask_not_small_tail | x | x | x | |
x | x | mask_not_spe_pic | x | x | x | |
x | x | mask_not_index | x | x | x | |
x | x | mask_real_line | x | x | x | |
x | x | mask_not_alpha | x | x | x | |
x | is_predict_tsr_ok | x | x | x | x | |
x | is_predict_ocr_ok | x | x | x | x |
四、标注原则:
1)画线规则:
1.画横或者竖线的,第一依据是在需要画线的范围内,范围内本来有一条图片的实线存在,则沿着实线画横或者竖线。
2.无实线的,则在空白中间上画,即文本框格子的相互中间区域
2)直线穿过原则:画线不能穿过分子式、完整字符之间等有颜色的像素字符,不包括span_cell格子的区域
3)边界原则:边界线跟实际表格区域不多于5 pt(肉眼可见能分开线与表格内的字符元素)
4)标注顺序规则:
1.确定横线(紫线)是否画好 2.确定竖线(蓝线)是否画好 3.确定合并区域(黄色边格子)是否画好 4.确定表头区域(红色边格子)是否画好
5)忽视水印影响问题
三、常见标注错误(持续补充):
错误类型 | 违反规则 | 错误分析 | 样例 | 图片 |
---|---|---|---|---|
线段不对 | x | 第一行物理像素上分开,逻辑上不应该分开 | jm200712h(pdb_FLT3_Cl).pdf_5_3 | |
格子不对 | x | 少合并格子 | x | x |
x | x | 合并格子多合并冗余物理格子 | jm2014887(OT_Glucokinase_cl_papp_vdss).pdf_6_15 | |
x | x | 合并格子多合并冗余物理格子 | jm2014887(OT_Glucokinase_cl_papp_vdss).pdf_6_10 | |
x | x | x | jm2012968(OT_GPR40,FFA1_cl).pdf_8_4 |
五、标注检查规范:
线错的情况分类
线不准的情况分类
-
缺线数量
-
多线数量
格子不准的情况分类
1. 多格子数量
2. 少格子数量
六、标注质量指标(交付数据的质控标准)
-
线错数
-
线缺数
-
线多数
-
格缺数
-
格多数
七、数据标注流程
-
数据采集,算法提供预标注的表格图片,表格图片来自表格检测的标注数据
-
数据预处理,表格图片会经过掩盖ocsr分子处理
-
数据管理,元数据信息字段(同DOD数据标注任务)
4.模型预标注,在通过模型预标注之后,需要检查预标注结果以此来挖掘试标注的不足之处,随后根据不足之处进行补充标注。
八、标注数据范围和计划
元素 | 是否算法预标注 | 是否需要标注和基于预标注修正 |
---|---|---|
横线 | 是 | 是 |
竖线 | 否 | 是 |
黄线 | 否 | 是 |
语义表达形式 | 否 | 是 |
事件 | 数据规模 | 工期 | 人员配比 | 交付要求 |
---|---|---|---|---|
预标注 | 100 | x | x | 准确率≥99% |
第一批标注 | 30W图片 | x | x | 准确率≥99% |
5.交付标注文件夹格式和文件格式
文件夹格式
数据集1
|-- images
| |-- pdf文件名_物理页码_form表格序号.jpg
| |-- PMC6589332_12_form1.jpg
| |-- XXX.jpg
|-- voc_labels
| |-- pdf文件名_物理页码_form表格序号.xml
| |-- PMC6589332_12_form1.xml
| |-- XXX.xml
|-- coco.json
XXX.xml文件 voc数据格式
<?xml version="1.0" ?>
<annotation>
<folder/>
<filename>PMC6589332_11.jpg</filename>
<size>
<width>773</width>
<height>1000</height>
<depth>3</depth>
</size>
<object>
<supercategory>table_header</supercategory>
<name>table_header</name>
<bndbox>
<xmin>243.93609898386438</xmin>
<ymin>133.85618575895674</ymin>
<xmax>721.0680585873672</xmax>
<ymax>351.1486631451231</ymax>
</bndbox>
</object>
</annotation>
coco.json 文件 coco数据格式
{
"images": [
{
"id": 0,
"width": 1984,
"height": 2806,
"file_name": "0064177888b53c6667f6ce67f2efe82f01c40_0_form1.png",(文件名称!!)
}
],
"annotations": [
{
"id": 0,
"image_id": 50,
"category_id": 1
"area": 100802.70731920577,
"bbox": [
x,
y,
w,
h
]
}],
"categories": [
{
"supercategory": "table_header",
"id": 1,
"name": "Table1_title"
}]
}