Principal Product Architect / Intrapreneur · 2018 Demonstration
Product-Package OCR Pipeline
A custom text-recognition pipeline for reading item details from product packaging where off-the-shelf OCR failed on custom fonts. Delivered as a demo and roadmap; not deployed.
Extracting reliable text from product packages was beyond what standard OCR could handle. Varied layouts, typefaces, colors, and image quality all contributed to noise-heavy output unsuitable for downstream pipelines.
Engineered a customized recognition model built on a modified FastText algorithm, with a bespoke pixel-intensity-variation detection, segmentation, and classification pipeline tuned specifically for product package imagery.
Demonstration: the pipeline read packaging text that CNN-based OCR of the time could not, on the demo set. I delivered the demo and a product roadmap before leaving in November 2019. No deployment or business outcome is claimed.
Off-the-shelf OCR is trained on clean document imagery. Product packaging is the opposite: high visual noise, overlapping type on complex backgrounds, irregular font choices, and photography that varies by supplier. Rather than attempting to clean inputs to fit a general model, the pipeline was designed around the specific characteristics of packaging imagery. Pixel-intensity variation served as a segmentation signal, and the classification layer was tuned to the attribute vocabulary the business cared about.
Modifying FastText rather than choosing a heavier model was a deliberate engineering decision: the throughput requirements favored a lean, fast algorithm that could be tuned precisely over a more capable but opaque neural network that would be harder to maintain and explain to downstream consumers.
This is the clearest from-scratch ML engineering example in the portfolio. Algorithm modification, custom pipeline, and domain-specific tuning rather than API integration. It is also one of the two vision efforts here that stayed a demonstration, alongside the product profiling work, and I list it as such.