Point a phone at a perfume bottle and get its name, notes and closest matching oils. It feels like magic, but it is a chain of fairly understandable steps.
Step 1: find the bottle
An object-detection model locates the bottle in the frame and crops away background clutter: hands, desks, keyboards. It can also estimate bottle shape, cap style and liquid colour, which are useful clues.
Step 2: read the label
Optical character recognition (OCR) reads the text on the label. Luxury labels are hard: tiny serif fonts, gold foil, curved glass and reflections. Good systems run several passes at different crops and contrasts, then merge what they read.
Step 3: understand what was read
OCR returns fragments like “FENDI” or “LIFE ESS”. A matching engine compares these with a database of brands and perfume names, tolerating spelling errors and partial words. If only the brand is readable, a helpful system asks the user to pick from that brand's perfumes rather than guessing.
Step 4: learn from corrections
When a user confirms or corrects the answer, that feedback can be stored so the same bottle is recognised instantly next time.
Tips for accurate results
- Photograph the label straight on, in good light, filling the frame.
- Avoid reflections from windows and lamps.
- If the label is stylised, type the name too.
Try our Perfume Decoder, which works this way across a library of tens of thousands of reference perfumes.