Ibnuck/poster-schedule-information-extraction
Multimodal Visual-Text Dataset for Poster Schedule Information Extraction A ready-to-train Indonesian document AI dataset combining pixels, OCR tokens, spatial layout, and BIO entity labels. Overview What it is 127 Indonesian seminar and religious-study event posters with multimodal token-level annotations Primary task Schedule information extraction as token classification Modalities Image + text + 2D spatial layout Coordinates… See the full description on the dataset page: https://huggingface.co/datasets/Ibnuck/poster-schedule-information-extraction.
<p align="center"> <img src="assets/dataset-banner-v2.svg" alt="Poster Schedule Information Extraction dataset banner" width="100%"> </p>
<h1 align="center">Multimodal Visual-Text Dataset for Poster Schedule Information Extraction</h1>
<p align="center"> A ready-to-train Indonesian document AI dataset combining <strong>pixels</strong>, <strong>OCR tokens</strong>, <strong>spatial layout</strong>, and <strong>BIO entity labels</strong>. </p>
<p align="center"> <img alt="Task" src="https://img.shields.io/badge/task-token%20classification-7c3aed"> <img alt="Documents" src="https://img.shields.io/badge/documents-127-06b6d4"> <img alt="Labels" src="https://img.shields.io/badge/token%20labels-24-f59e0b"> <img alt="Language" src="https://img.shields.io/badge/language-Indonesian-ef4444"> <img alt="LayoutLMv3" src="https://img.shields.io/badge/optimized%20for-LayoutLMv3-2563eb"> </p>
Overview
From poster pixels to structured event information:original poster→OCR tokens and source boxes→standard LayoutLM boxes (0–1000)→BIO labels
Dataset Snapshot
<table> <thead> <tr> <th align="center">Split</th> <th align="center">Documents</th> <th align="center">Share</th> </tr> </thead> <tbody> <tr><td align="center"><code>train</code></td><td align="center"><strong>101</strong></td><td align="center">79.5%</td></tr> <tr><td align="center"><code>validation</code></td><td align="center"><strong>12</strong></td><td align="center">9.4%</td></tr> <tr><td align="center"><code>test</code></td><td align="center"><strong>14</strong></td><td align="center">11.0%</td></tr> <tr><td align="center"><strong>Total</strong></td><td align="center"><strong>127</strong></td><td align="center"><strong>100%</strong></td></tr> </tbody> </table>
Quick Start
from datasets import load_dataset
dataset = load_dataset(
"Ibnuck/poster-schedule-information-extraction"
)
print(dataset)
sample = dataset["train"][0]
print(sample["document_id"])
print(sample["original_size"])
print(sample["tokens"][:10])
print(sample["bboxes"][:10])
print(sample["ner_tags"][:10])
sample["image"].show()Expected split structure:
DatasetDict({
train: 101 documents
validation: 12 documents
test: 14 documents
})Dataset Schema
For every example:
len(tokens) == len(bboxes) == len(ner_tags)<details> <summary><strong>Complete 24-label vocabulary</strong></summary>
</details>
Why Multimodal?
Event posters rarely follow a fixed reading order. Important information can be separated by icons, typography, columns, portraits, or decorative elements. Text alone misses these visual cues.
This dataset lets a model learn from three complementary signals:
That combination makes it a natural fit for LayoutLMv3 and related document-understanding architectures.
OCR Compatibility
The annotations are aligned at the word level: each item in tokens represents one OCR word and has one corresponding bboxes entry and one ner_tags entry.
The source annotations were created from Google Cloud Vision API output. For the closest consistency between training and inference, Google Cloud Vision API with word-level text and bounding boxes is therefore recommended. This reduces differences in word segmentation, reading order, and detected text regions between the OCR used to build the dataset and the OCR used during deployment.
Other OCR engines can also be used, provided that their output is prepared as follows:
- split detected text into individual words;
- provide one bounding box for every word;
- preserve a consistent reading order;
- normalize x and y coordinates independently to the LayoutLM range
0–1000; and - ensure that
len(tokens) == len(bboxes)before sending the inputs to the model.
Different OCR engines may segment words or detect their boundaries differently, so end-to-end performance can differ even when the same trained model is used.
Collection and Annotation
- Poster images were collected into two source categories:
seminarandkajian. - Before OCR, each image was resized without changing its aspect ratio so that its longest side targeted 1000 pixels.
- Google Cloud Vision API produced tokens and pixel coordinates on that resized canvas.
- OCR tokens were manually assigned schedule-related entity labels.
- The published
bboxeswere derived by normalizing x coordinates against the OCR-canvas width and y coordinates against its height, each to the0–1000range. - Documents were divided using a rare-label-aware strategy with a fixed random seed of
42.
The split strategy attempts to retain examples containing infrequent labels across the evaluation splits where possible.
Only the standard bboxes field is published. The temporary OCR canvas is part of source-data validation and conversion, not part of the public training schema.
Data Integrity Checks
The published artifacts were validated before upload:
- 127/127 images decoded successfully
- All 127 source annotation files were converted using their corresponding OCR canvas dimensions
- Token,
bboxes, and label sequences are aligned for every document - Every source box fits the OCR canvas used during conversion
- Every published LayoutLM box contains four ordered coordinates within the inclusive range
0–1000 - All three remote splits load successfully with Hugging Face Datasets
- Validation errors found: 0
Intended Uses
- LayoutLMv3 token classification
- Multimodal document understanding
- Indonesian event-information extraction
- OCR and spatial-layout experimentation
- Low-resource document AI research
- Benchmarking preprocessing and annotation pipelines
Limitations and Responsible Use
- The dataset is small and focuses on Indonesian seminar and religious-study event posters.
- Layout, typography, OCR quality, and entity frequency vary considerably.
- OCR output and human annotations may contain errors.
- Source OCR processing used integer dimensions after aspect-ratio-preserving scaling; small rounding differences may occur if the conversion is independently reimplemented.
- Results may not generalize to other languages, regions, document types, or current events.
- Names, portraits, contact details, logos, and organizational information may appear in source posters.
- Do not treat automatically extracted dates, locations, links, or speaker names as verified facts without checking the original document.
License and Image Rights
The author-created annotations, schema, split definitions, and documentation are covered only to the extent described in the repository's custom license.
Poster images, OCR-reproduced poster text, logos, photographs, trademarks, and other third-party materials are excluded from that grant and may remain protected by their respective rights holders. Permission to use the annotations does not automatically grant permission to reuse or redistribute the underlying poster material.
Please review LICENSE before using this dataset.
Suggested Citation
@misc{ahraza2026poster_schedule_dataset,
author = {Ibnu Taufick Ahraza},
title = {Multimodal Visual-Text Dataset for Poster Schedule Information Extraction},
year = {2026},
publisher = {Hugging Face},
howpublished = {\url{https://huggingface.co/datasets/Ibnuck/poster-schedule-information-extraction}}
}Author
Ibnu Taufick Ahraza Information-extraction research project associated with Universitas Pembangunan Nasional “Veteran” Yogyakarta.
 
<p align="center"> <strong>Built for Indonesian document AI research.</strong><br> Questions, feedback, and collaboration ideas are welcome in the repository's Community tab. </p>
