Od zboží na váze k nabídce správných položek
Zákazník položí ovoce nebo zeleninu na samoobslužnou váhu a potřebuje najít správnou položku v sortimentu. Pro Bizerbu jsme vyvinuli řešení, které tento krok usnadňuje pomocí počítačového vidění. Kamera pořídí snímek zboží a model nabídne pravděpodobné položky, ze kterých zákazník dokončí výběr.
Naše práce zahrnuje rozpoznávání přímo na váze, přípravu a trénování modelů i cloudové zázemí pro dohled nad zařízeními. Součástí dodávky je integrace s váhami, distribuce nových verzí a podpora provozu.
Jak do sebe řešení zapadá
Rozpoznání probíhá lokálně na zařízení. Azure poskytuje zázemí pro obrazová data, trénování, správu verzí a monitoring. Každé vážení tak nepotřebuje čekat na vyhodnocení obrazu v cloudu; provozní data naopak pomáhají zlepšovat další verze modelu.
Schéma odděluje lokální rozpoznávání od cloudového zázemí. Šipky zachycují funkční vazby a životní cyklus modelu, nikoli detailní síťovou topologii.
Rozpoznávání v rytmu běžného nákupu
Po položení zboží systém počká na ustálení hmotnosti, pořídí snímek a vyhodnotí jej modelem strojového učení. Na displeji se zobrazí nabídka kandidátů. Zákazník vybere správnou položku a pokračuje ve vážení a tisku etikety.
V popsaném nasazení pro Fajne se pracuje s pěti návrhy sortimentu. Důležité proto není jen to, zda model určí správný produkt na první pokus, ale také zda jej zařadí do nabídky, kterou zákazník vidí. Tomu odpovídá i testování: vedle rychlosti sledujeme úspěšnost rozpoznání mezi prvními pěti kandidáty.

Ukázka výstupu rozpoznávání z testovací dokumentace. Zobrazené skóre se vztahuje k tomuto snímku, nikoli k celkové přesnosti systému.
Model se učí z reálného sortimentu
Ovoce a zelenina mění vzhled podle odrůdy, osvětlení, obalu i způsobu položení na váhu. S novou sezónou navíc přicházejí další položky. Vývoj proto zahrnuje práci s obrazovými daty: jejich třídění, označování, trénování a porovnávání verzí na společné testovací sadě.
Pro trénování využíváme Azure Machine Learning, Python a modely rodiny YOLO. Chybně rozpoznané příklady a požadavky na nový sortiment se vracejí do přípravy dalších modelů. Nová verze musí projít kontrolou kvality i rychlosti na cílovém zařízení.

Příprava trénovacích dat v Azure Machine Learning. Označené objekty pomáhají modelu spojit podobu zboží s kategorií sortimentu.
Od testu k provozu na prodejně
U modelu 0.9.20 uvádí testovací dokumentace Fajne průměrný čas celého cyklu 1 540 ms, z toho 467 ms pro samotné rozpoznání, při ověřování na 50 váhách. Jde o výsledek konkrétního testovaného nasazení. Celý cyklus zahrnuje i vážení, ustálení a pořízení snímku.
Provozní dohled sleduje dostupnost zařízení, dobu rozpoznávání a využití prostředků. Telemetrie a logy v Azure pomáhají odlišit problém modelu od potíží konkrétní váhy. GitHub Actions a kontejnerové balíčky podporují řízené vydávání verzí; provozní tým má k dispozici dokumentaci a postupy pro nasazení.
Technologie a naše role
| Oblast | Technologie | Co dodáváme |
|---|---|---|
| Rozpoznávání zboží | YOLO, Python, OpenCV, PyTorch | Model a integraci s váhou |
| Příprava modelů | Azure Machine Learning, Azure Storage | Zpracování dat, trénování a ověřování verzí |
| Provoz | Azure Monitor, Log Analytics | Telemetrii a dohled nad zařízeními |
| Vydávání verzí | Docker, GitHub Actions, Azure Container Registry | Balíčkování a distribuční proces |
Co spolupráce přináší
Bizerba získala propojený systém od rozpoznání produktu až po provozní podporu. Zákazník vybírá z krátké nabídky, provozní tým má podklady pro řešení problémů a vývoj může model přizpůsobovat novému sortimentu. Model na váze i jeho další rozvoj jsou součástí jednoho řešení.