Indonesian License Plate Generator
A synthetic-data generator that composites realistic Indonesian vehicle plates onto scenes and emits YOLO labels for the plate and every character, so a detector never has to wait on hand-photographed, hand-annotated data.
This exists because of a bottleneck the Smart Gate work ran straight into. A plate detector needs thousands of annotated plates, hand-photographing and hand-boxing them is slow, and the set you end up with only covers whatever region codes happened to drive past the camera. Generating them fixes both problems at once, and generating labelled data where collecting it is the real constraint is how most industrial computer vision gets its rare cases at all.
It ports the architecture of a well-known synthetic plate generator and reworks it for Indonesian plates end to end: a 37-class annotation scheme (digits, letters, plus a whole-plate class), a region-code table covering real province and city prefixes with population-weighted sampling so the distribution resembles actual traffic rather than being uniform, and four plate colour variants across car and motorcycle layouts.
Glyphs are baked once from a plate-specific TTF font, auto-detecting symbol-mapped versus Unicode encodings so swapping in a different font needs no code changes, into a reusable component library. They are then composited per plate, perspective-warped, optionally dirtied with noise and grime, and dropped onto a background. Everything a detector needs, the plate's bounding box and each individual character's box, is written out as YOLO labels alongside the image, so a set is trainable the moment it is generated. Character-level boxes are the part that matters most, since hand-annotating those on real photographs is the single most tedious step in building an OCR training set.
Background variety and OCR-oriented crop exports are still open items.
- Ported a synthetic plate-generation pipeline and reworked it for Indonesian plates: real region-code prefixes, four color variants, and separate car and motorcycle layouts
- Built a font-agnostic glyph baker that auto-detects symbol-mapped versus Unicode TTFs, so a new plate font drops in without touching the compositing code
- Emits ready-to-train YOLO labels (37 classes: 0-9, A-Z, plate) directly from the same perspective-warp step that places the plate onto a scene
- 1
- Actively maintained