CoolFace
Datasetpublic

Yesianrohn/openocr-web-images

OpenOCR Web Images 从网络爬取的多语言图片数据集,配套多个 OCR 模型的打标结果,用于 OCR 模型 训练/评估数据构建。 数据集结构 data_download/ en/ # 英文候选图片 data/train-part*.parquet # 图片数据,字段见下方"图片数据字段" labels/ ppocrv6/part*/label-*.parquet # PP-OCRv6 打标结果 hunyuanocr/part*/label-*.parquet # HunyuanOCR (VLM) 打标结果 ch/ # 中文候选图片,目前只有图片,还没跑打标 data/train-part*.parquet mlt/ # 多语言候选图片,目前只有图片,还没跑打标… See the full description on the dataset page: https://huggingface.co/datasets/Yesianrohn/openocr-web-images.

sourceHugging Faceupdated 1mo agoView on Hugging Face
0likes64downloads
Dataset Card

OpenOCR Web Images

从网络爬取的多语言图片数据集,配套多个 OCR 模型的打标结果,用于 OCR 模型 训练/评估数据构建。

数据集结构

data_download/
  en/                          # 英文候选图片
    data/train-part*.parquet   # 图片数据,字段见下方"图片数据字段"
    labels/
      ppocrv6/part*/label-*.parquet     # PP-OCRv6 打标结果
      hunyuanocr/part*/label-*.parquet  # HunyuanOCR (VLM) 打标结果
  ch/                          # 中文候选图片,目前只有图片,还没跑打标
    data/train-part*.parquet
  mlt/                         # 多语言候选图片,目前只有图片,还没跑打标
    data/train-part*.parquet

label_common.py            # 打标框架公共基础设施(断点恢复/批处理/写盘调度)
label_ppocrv6.py           # PP-OCRv6 打标脚本
run_label_ppocrv6.sh       # PP-OCRv6 多卡/多机启动脚本
label_hunyuanocr.py        # HunyuanOCR 打标脚本
run_label_hunyuanocr.sh    # HunyuanOCR 多卡/多机启动脚本
ch/mlt 目前只有下载好的图片、还没有跑任何模型打标;en 三个模型的 打标都还在跑,labels/<model>/part*/ 下已经写出的 shard 是当前进度, 后续会持续更新(追加新的 shard,不会覆盖/删除已有数据)。

图片数据字段(en|ch|mlt/data/*.parquet)

字段类型说明
idint64原始 url 列表里的行号,全局稳定唯一,跨模型打标结果按它 join
urlstring原始图片 url
imageImage图片二进制(下载失败为 null)
width/heightint32图片宽高(下载失败为 -1)
formatstring图片格式,如 JPEG/PNG
bytes_sizeint64原始文件字节数
statusstringok / httpxxx / netxxx / decode_xxx 等,非 ok 表示下载失败
errorstring失败原因

标注数据字段(en/labels/<model>/part*/*.parquet)

三个模型的标注字段完全对齐(除 model 外一致),可直接按 id 与图片数据、 或不同模型的标注结果互相 join 对比:

字段类型说明
idint64对应图片数据里的 id
urlstring原始图片 url
modelstringppocrv6 / hunyuanocr
statusstringok / notext / skippeddownloadfailed / errorxxx
textstring该图检测到的所有文本框识别文字,按检测顺序换行拼接(不做阅读顺序合并/分栏排版)
num_boxesint32识别到的文本框数量
itemsstring(JSON)数组,每项 {text, rec_score, det_score, box};box 为4点[[x,y]x4](左上起顺时针,原图像素坐标);hunyuanocr 是生成式模型、没有置信度分数,rec_score/det_score 固定为 null
infer_msfloat64该图所在批次的单图平均推理耗时(ms)
errorstring失败原因

用法示例

python
from datasets import load_dataset

# 加载英文图片
images = load_dataset("Yesianrohn/openocr-web-images", name="en_images")["train"]

# 加载 PP-OCRv6 的打标结果
labels = load_dataset("Yesianrohn/openocr-web-images", name="en_ppocrv6")["train"]

# 按 id 关联查看某一张图 + 它的标注
row = images.filter(lambda r: r["id"] == 12345)[0]
lbl = labels.filter(lambda r: r["id"] == 12345)[0]

复现/继续打标

bash
pip install paddleocr paddlepaddle-gpu pyarrow pillow numpy   # ppocrv6
pip install transformers torch pyarrow pillow numpy accelerate  # hunyuanocr

DATASET_DIR=data_download/en bash run_label_ppocrv6.sh
DATASET_DIR=data_download/en bash run_label_hunyuanocr.sh

两个脚本均支持单机多卡(NUM_GPUS)、多机扩展(NODE_RANK/SHARDS_PER_BLOCK) 以及断点续跑(重复执行同一条命令即可,已完成的 shard 会被自动跳过,不会 重复处理),细节见脚本内注释。