ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

OCR Invoices Pre-NER BIO Format 标注模板完整指南:发票预标注数据准备一条龙

OCR Invoices Pre-NER BIO Format 标注模板完整指南:发票预标注数据准备一条龙 OCR Invoices Pre-NER BIO Format 标注模板完整指南发票预标注数据准备一条龙【免费下载链接】label-studioLabel Studio is a multi-type data labeling and annotation tool with standardized output format项目地址: https://gitcode.com/GitHub_Trending/la/label-studio发票信息抽取管线里OCR 文本要先经人工校对才能用于 NER 训练。Label Studio 社区标注模板「OCR Invoices Pre-NER BIO Format」把这套预标注数据准备变成可直接套用的流程框选 token、校对转写最后导出 BIO 就绪的 token 序列。数据流一张发票图到一条 BIO 语料这一节解决数据从哪来、到哪去的问题一张发票图要经过四个阶段才变成 NER 训练能用的语料。输入每个任务的data字段只需一个image键值是发票图片的 URL 或 base64。OCR 检测识别OCR 模型输出带坐标的文本 token。token 即发票上的每个词条或字段每个 token 对应一个 bounding box矩形框。有预检测时框已生成没有就手动框选。人工校对Pre-NER 阶段标注者逐个核对框内转写文本可修改错字。所有 token 初始标签都是OOutside实体外部。导出标注结果按区域 id 聚合成坐标 文本 标签的 token 列表。NER 训练输入把该列表按阅读顺序排列在其上标注 B-实体开始与 I-实体内部标签。BIO 约定即 B-、I-、O 三者组合。仓库中的 ner-tagging-invoices-bio-format 模板就是为第 5 步准备的。这个模板的产出不是最终 NER 语料而是一份全部标为 O 的 token 序列。配置拆解三个控件如何协同这一节解决配置怎么写的问题Image、RectangleLabels、TextArea 三个控件组合成一份完整可运行的配置。View !-- The image to annotate -- Image nameimage value$image zoomControltrue/ !-- Bounding-box control that will receive the rectanglelabels results coming from your OCR model (from_name label) -- RectangleLabels namelabel toNameimage choicesingle !-- You only emit the generic O class, but feel free to add more labels -- Label valueO background#FFA500/ /RectangleLabels !-- Per-region transcription box (from_name transcription). Because perRegiontrue, one TextArea is linked to each rectangle. -- TextArea nametranscription toNameimage perRegiontrue editabletrue rows1 requiredtrue placeholderType or correct OCR text…/ /View这段配置与仓库 config.yml 中的 config 段一致。注意两点value$image从任务数据取图每个矩形产出两条结果from_name分别为label和transcription。完整配置可直接复制使用。Image图片展示与缩放Image负责展示发票图片。它决定了坐标的参照系标注结果的坐标以图片原始尺寸的百分比0–100存储而非像素值。参数类型默认值本文取值说明namestring—image控件名称其他控件 toName 的绑定目标valuestring—$image从任务数据取图片 URL 或 base64zoomControlbooleanfalsetrue显示缩放控件支持放大观察这么配的原因发票小字号多zoomControltrue让你能放大看清字段而百分比坐标让不同分辨率的票据可以共用一套配置。RectangleLabels框选 token 并打 O 标签RectangleLabels创建带标签的矩形框是 OCR 预检测结果的落点。本模板只定义了一个标签O橙色填充便于肉眼识别。参数类型默认值本文取值说明namestring—label控件名称结果的 from_nametoNamestring—image绑定的 Image 控件choicesingle | multiplesinglesingle每个矩形只能选一个标签maxUsagesnumber—未设置单标签每任务最大使用次数opacityfloat0.6未设置矩形填充透明度strokeWidthnumber1未设置边框粗细canRotatebooleantrue未设置是否显示旋转控制choicesingle保证一个框只属于一个类别导出时无需处理多标签歧义。标签集本身很轻注释也说明可以按需要扩充。TextArea逐框转写校对TextArea提供转写输入。perRegion 表示按区域标注与整图标注不同它让每个矩形框绑定一个独立输入框。参数类型默认值本文取值说明namestring—transcription控件名称结果的 from_nametoNamestring—image绑定的 Image 控件perRegionboolean—true按区域标注每个矩形一个输入框editablebooleanfalsetrue提交后仍可编辑文本rowsnumber11输入框行数单行可用 Enter 提交requiredbooleanfalsetrue强制每个区域都有转写内容placeholderstring—Type or correct OCR text…输入提示文案maxSubmissionsstring—未设置每区域最多提交次数skipDuplicatesbooleanfalse未设置是否禁止重复提交displayModetag | region-listtag未设置默认 tagtag 模式输入框在标注区region-list 模式集中在 Regions 面板perRegiontrue 是整个模板的关键。它让一个矩形一段文本成为硬绑定选中哪个框输入框就对应哪段 OCR 文本。rows1再配合 Enter 直接提交校对节奏快无需点击 Add 按钮。上手四步 从建项目到导出这一节解决怎么跑起来的问题建项目、导数据、标注、导出每步附一个常见卡点。建项目贴配置新建项目在 Labeling Setup 选择 Custom template粘贴上文完整配置并保存。卡点toName必须与Image的name完全一致否则控件不绑定框选不可用。导入任务数据在项目 Import Data 页上传 JSON 文件或经 API 与 S3、GCS 等存储后端导入参考 tasks.md 与 storage.md。数据形态只需一个image键{ data: { image: https://your-domain.com/invoices/1024.png } }这里的 URL 换成你自己的可访问地址即可base64 数据同样支持。卡点image用了相对路径时浏览器无法解析必须换成完整 URL。标注操作序列框选一个 token → 在输入框核对并修正转写文本 → 按 Enter 提交 → 继续下一个框。有 OCR 预检测时只需核对框位与文本。卡点requiredtrue意味着存在未填转写的框时Submit 会被拦截无法提交整条任务。导出在 Export 页选择 JSON 格式下载流程见 export.md。卡点导出的 x、y、width、height 是 0–100 的百分比需乘以original_width、original_height才能还原像素坐标。导出结果怎么读 这一节解决导出物怎么用的问题同一条标注里的 rectanglelabels 与 textarea 记录靠相同 id 配对。每个矩形区域产出两条记录片段如下字段取自仓库文档示例实际字段以仓库实际为准{ result: [ { id: X_12fGk, type: rectanglelabels, from_name: label, to_name: image, original_width: 1920, original_height: 1280, image_rotation: 0, value: { x: 3.1, y: 8.2, width: 20, height: 16, rectanglelabels: [O], rotation: 0 } }, { id: X_12fGk, type: textarea, from_name: transcription, to_name: image, value: { text: [Invoice No. 1024] } } ] }逐字段看rectanglelabels 记录from_name为label对应 RectangleLabels 控件。value.x、value.y是旋转前左上角坐标width、height是宽高均为百分比。original_width、original_height记录原图像素尺寸image_rotation记录图片旋转角度。rectanglelabels数组即该框的标签本模板固定为[O]。textarea 记录from_name为transcription。value.text是数组对应该区域提交的全部转写文本单行提交时通常只有一个元素。两条记录的id相同示例中的X_12fGk说明它们来自同一个矩形区域。按 id 聚合后每个 token 就同时拥有坐标、文本与标签。变成 NER 训练输入的方法按阅读顺序先 y 后 x 排序取出各 token 的text组成 token 序列初始标签全为 O。后续在该序列上打 B-/I- 标签即得 BIO 训练语料。仓库的 ner-tagging-invoices-bio-format 模板以granularityword的 Text 控件承接这一步界面如下。进阶从单一 O 标签到细粒度实体这一节解决能否提前标实体类型的问题发票字段类型已知时标签集直接扩展即可无需两遍标注。可直接替换原 RectangleLabels 片段的扩展配置RectangleLabels namelabel toNameimage choicesingle Label valueO background#FFA500/ Label valueB-Vendor background#4CAF50/ Label valueB-InvoiceNo background#2196F3/ Label valueB-Amount background#F44336/ Label valueB-Date background#9C27B0/ /RectangleLabelschoicesingle保持不变每个框仍只选一个标签。标注者在框选时直接选实体类型Pre-NER 阶段即产出带类型的 token省去后续转换。扩展标签应保留 BIO 前缀约定B-xxx、I-xxx、O下游解析代码才能统一处理。适用场景字段类型稳定供应商、发票号、金额、日期且希望一遍完成。若你倾向先框选校对、后分类的两步流程保持默认 O 标签把实体分类留给 NER 模板即可。总结与资源索引本节收口要点并集中给出资源。OCR Invoices Pre-NER BIO Format 只做一件事Image 展示发票RectangleLabels 以 O 标签框选 tokenTextArea perRegion 完成逐框转写校对。导出的坐标 文本 Otoken 序列正是 NER 训练的标准输入。预标注数据准备照此流程即可复用。资源相对路径模板配置 config.ymlconfig.yml后续 NER 标注模板ner-tagging-invoices-bio-format/config.ymlImage 标签文档image.mdRectangleLabels 标签文档rectanglelabels.mdTextArea 标签文档textarea.mdView 标签文档view.md任务数据导入指南tasks.md导出指南export.md模板界面截图ocr-invoices-pre-ner-bio-format.jpg【免费下载链接】label-studioLabel Studio is a multi-type data labeling and annotation tool with standardized output format项目地址: https://gitcode.com/GitHub_Trending/la/label-studio创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表