kCalori: AI, která pozná jídlo z fotky, a měření, které to dokazuje

Vlastní aplikace pro iPhone od nápadu po App Store. Na ní ukazujeme mobilní aplikaci, AI integraci, web i automatizace. Obsahu na sítě se věnuje samostatná studie.

potravin v otevřené databázi kcalori.cz (září 2026, licence ODbL)
10 453
Klient
vlastní produkt
Období
od února 2026, na App Storu od 24. 5. 2026
Co pokrývá
Mobilní aplikace · AI integrace · Weby a e-shopy · Interní systémy a automatizace
Technika
SwiftUI, WKWebView, HealthKit, Apple Watch, Claude API, Supabase, Cloudflare Pages, n8n
Přesnost AI · kCaloriměřeno na 52 fotkách

kCalori je naše aplikace na App Storu. AI v ní poznává jídlo z fotky.

94 %z původních 76 %, a za méně než polovinu ceny silnějšího modelu
výchozí stav: 76 %, po opravách: 88 %, v provozu: 94 %, vždy silnější: 90 %.70809010076 %výchozí stavvýchozí88 %po opraváchopravy94 %v provozuprovoz90 %vždy silnějšísilnější
+18 bodů přesnosti23 % fotek na silnější modelzdroj

Zadání

Kalorický deník, který nebude otravovat. Zapsat jídlo má trvat pár vteřin: vyfotit talíř, zkontrolovat a hotovo. Aby to fungovalo, nestačí, že AI jídlo „nějak pozná“. Číslo v deníku musí sedět, jinak aplikace lže každý den.

Co jsme postavili

  • Aplikaci pro iPhone ve SwiftUI s napojením na Zdraví (HealthKit), synchronizací přes iCloud, widgety a aplikací pro Apple Watch. Deník je webová vrstva uvnitř aplikace. Rozhraní se proto dá zlepšovat bez čekání na schválení každé verze v App Storu.
  • AI rozpoznávání jídla z fotky přes Claude API. Levný model zpracuje každou fotku. Silnější dostane jen ty, kde si levný není jistý.
  • Web kcalori.cz s veřejnými tabulkami živin a otevřenou databází potravin pod licencí ODbL 1.0. Tabulky přivádějí lidi z vyhledávačů.
  • Automatizace na vlastním serveru v n8n: denní přehled čísel, stahování dat o potravinách a výroba obsahu pro sítě (ta má vlastní studii).

Měření: proč nestačilo „použít lepší model“

První odhad zněl: přesnost zvedne dražší model. Než jsme ho nasadili, sestavili jsme sadu 52 fotek se známými hodnotami: 30 balených výrobků se štítkem (Open Food Facts) a 22 uvařených talířů (Wikimedia Commons). Na ní jsme přeměřili celou cestu od fotky po zápis v deníku, ne jen odpověď modelu.

Ukázalo se, že jídlo model poznal od začátku skoro vždy. Chyba byla v kaloriích na 100 g, tedy v čísle, které uživatel nevidí, a proto ho nikdy neopraví. Gramáž si upraví posuvníkem. Hustotu ne.

Varianta Přesnost Silnější model dostal Cena za 1 000 fotek
levný model na všechno (výchozí stav) 76 % 0 % fotek 3,02 USD
levný model po opravách 88 % 2 % fotek 3,64 USD
levný model + silnější tam, kde je slabý (v provozu) 94 % 23 % fotek 4,48 USD
silnější model na všechno 90 % 100 % fotek 9,42 USD

Varianta v provozu je přesnější než silnější model na všechno, a to za méně než polovinu ceny. Silnější model totiž plete fotky, které levný zvládá. Proto se mu posílají jen ty, kde je levný slabý.

Co rozhodlo

  1. Značka jako klíč do databáze. U balených výrobků model nově vrací značku. Podle ní se přesná hodnota dohledá v databázi 8 501 výrobků se štítkem, místo aby ji model hádal z paměti.
  2. Vlastní referenční hodnoty pro polévky, nápoje a omáčky. Předtím třeba gulášová polévka dostávala hustotu guláše.
  3. Dva spouštěče silnějšího modelu: nejistota levného modelu a značkový výrobek, který v databázi chybí. Původní práh nejistoty se při měření ukázal jako mrtvý: na 52 fotkách nesepnul ani jednou.

Proč to říkáme klientům

Stejný postup používáme u každé AI integrace. Napřed sada se známými výsledky, pak měření, teprve potom nasazení. Na konci dostanete číslo a na stejné sadě si můžete kdykoli ověřit, že se po další změně nic nezhoršilo.

Chcete podobné měření nebo aplikaci pro svou firmu?

Popsat zakázku