Visi straipsniai

Ar AI gali tiksliai atpažinti maistą iš nuotraukos?

autorius Makrosas · · 6 min. skaityti
Žmogus telefonu fotografuoja maistą lėkštėje - AI atpažįsta produktus iš nuotraukos
Nuotrauka: Nate Johnston / Unsplash

Trumpas atsakymas: taip, AI gali atpažinti maistą iš nuotraukos pakankamai gerai, kad tau būtų naudinga - jei žinai, ko iš jo tikėtis. Vidutiniškai 85-92% tikslumas tipiniuose patiekaluose. Bet yra niuansų, ir žinoti juos svarbiau nei bet koks vidurkis.

Šiame straipsnyje paaiškinsiu, kaip iš tikrųjų veikia maisto atpažinimas iš nuotraukos, kur AI laimi prieš rankinį sekimą, kur klysta, ir kaip iš jo gauti maksimaliai tikslius makro skaičius.

Kaip techniškai veikia AI maisto atpažinimas

Iš vidaus tai - vaizdo modelis (computer vision), treniruotas su milijonais patiekalų nuotraukų. Modelis dirba trim žingsniais iš eilės:

  1. Identifikuoja produktus - „čia ryžiai, čia vištienos krūtinėlė, čia brokoliai".
  2. Įvertina porcijos dydį - lėkštės dydis, perspektyva, lyginant su pažįstamais objektais (šakute, lėkšte).
  3. Apskaičiuoja maistinę vertę - grynas makro skaičiavimas pagal duomenų bazę.

Trečiasis žingsnis - tiesinė matematika. Pirmieji du - kur AI daro klaidas.

Kur AI atpažįsta maistą tikrai gerai

Atskiri produktai

Du išvirti kiaušiniai. Bananas. Saujelė riešutų. Šios nuotraukos AI atpažįsta beveik tobulai - 95%+ tikslumu. Klaida ten tik tarp panašių produktų (lazdyno riešutai vs migdolai).

Standartiniai patiekalai

Vištienos krūtinėlė + ryžiai + brokoliai. Žuvis + bulvės + salotos. Klasikinė kepta kiauliena su raugintais kopūstais. Kai patiekalas „pažįstamas" iš milijono kitų panašių, AI būna 88-92% tikslume.

Įpakuoti produktai su etiketėmis

Geras AI gali ne tik atpažinti, bet ir nuskaityti maistinės vertės etiketę. Tai 100% tikslumas - jis tiesiog skaito tai, kas jau parašyta.

Kur AI klysta dažniausiai

Aliejus, padažai, „nematomi" riebalai

Tai #1 problema. Salotos su 30g alyvuogių aliejaus turės +250 kcal, kurių AI iš nuotraukos nepamatys. Padažai (cezario, balzamiko, sojos) - panašiai. Šis netikslumas dažnai yra didžiausia klaidos priežastis. Sprendimas: kai gamini namuose, koreguok aliejų atskirai. Restoranuose - venk patiekalų su daug padažų arba pridėk +15-20% kalorijų atsargai.

Lėkštės dydžio iliuzija

Maža lėkštė atrodo pilna. Didelė - tuščia. AI vertina porciją proporcingai lėkštei, tad jei valgai iš didelio indo, tikslumas krenta. Geriausia praktika: fotografuok iš viršaus, su kažkuo žinomo dydžio kadre (šakute, šaukštu) kaip referenciu.

Lietuviški ir Baltijos patiekalai

Cepelinai, koldūnai, šaltibarščiai, kepta jautiena su grybų padažu - šie patiekalai globaliuose AI modeliuose treniruoti silpniau, nes dauguma jų mokomi su amerikietiškais ir vakarietiškais patiekalais. Lokali programa, žinanti lietuvišką virtuvę, čia turi privalumą.

Vienspalviai patiekalai

Sriuba. Košė. Šviesi vištienos krūtinėlė plonais griežinėliais. Kuo mažiau spalvinių kontrastų, tuo sunkiau AI atskirti, kur baigiasi vienas ingredientas ir prasideda kitas. Sprendimas - laisvu tekstu pridėti, kas yra patiekale.

Praktinis tikslumo testas

Vidiniame teste su Makrosas palyginome 30 lėkščių rezultatus su rankiniu sekimu (visi produktai pasverti svarstyklėmis). Skaičiai:

  • Vidutinė kalorijų klaida: ±9.4%
  • Vidutinė baltymų klaida: ±7.1%
  • Vidutinė angliavandenių klaida: ±10.3%
  • Vidutinė riebalų klaida: ±13.2% (didžiausia, dėl aliejų ir padažų)

Tai reiškia: jeigu tavo dienos tikslas 2000 kcal, AI gali rodyti tau 1810-2190 kcal vietoj realių. Tai daug? Ne, jeigu žinai. Vidutinė savaitės klaida išsilygina, ir progresui (svorio mažinimas, pataikymas į baltymų tikslą) tai pakanka.

AI maisto atpažinimas nėra tobulas. Bet jis yra greitesnis ir nuoseklesnis nei rankinis sekimas. Žmonės, kurie pamiršta sekti, neturi 0% tikslumo problemos - jie turi 100% nesekimo problemą.

Kaip iš AI gauti tikslesnius rezultatus

  1. Fotografuok iš viršaus - mažiau perspektyvos klaidų.
  2. Pridėk šakutę ar šaukštą kadre - dydžio referencas.
  3. Pataisyk AI iškart - jei mato „bulvė", o žinai, kad tai batatas, pakeisk.
  4. Pridėk tekstą prie nuotraukos - „lėkštė su šaukštu alyvuogių aliejaus" rezultatą pakeičia drastiškai.
  5. Sverk, kai svarbu - pasvėręs maistą įvesk gramus. Tikslumas iškart pakyla.

Nori išbandyti AI maisto atpažinimą lietuviškai? Makrosas atpažįsta lėkštę per ~3 sekundes ir kalba lietuviškai.

Atsisiųsk Makrosas

Apibendrinimas

AI gali atpažinti maistą iš nuotraukos pakankamai gerai, kad pakeistų rankinį sekimą daugumai žmonių. Vidutinė klaida ~10% yra mažiau nei klaida, kurią dauguma daro spėdami iš atminties arba pamiršdami sekti visiškai.

Svarbu žinoti, kur AI klysta (aliejus, padažai, lokalūs patiekalai), ir naudoti programą protingai - su laisvu tekstu, pataisymais, šakute ant lėkštės. Tada tikslumas pakyla iki 95%+, o sekimas tampa toks paprastas, kad tikrai tęsi.