Hvordan AI Estimerer Porsjonsstørrelser fra Bilder: En Teknisk Dypdykk

En grundig gjennomgang av hvordan AI bruker dybdeestimering, referanseobjekter og volummodellering for å estimere porsjonsstørrelser fra et enkelt fotografi.

Medically reviewed by Dr. Emily Torres, Registered Dietitian Nutritionist (RDN)

Å identifisere hva slags mat som ligger på tallerkenen din er bare halve utfordringen med AI-drevet kalorioppfølging. Den andre halvdelen, og kanskje den vanskeligste, er å finne ut hvor mye mat som faktisk er der. En porsjon pasta kan være 200 kalorier eller 800 kalorier, avhengig av mengden. Å få dette estimatet riktig er det som skiller et nyttig verktøy for ernæringsoppfølging fra en kuriositet.

Denne artikkelen tar en dyp teknisk gjennomgang av hvordan AI-systemer estimerer porsjonsstørrelser fra fotografier, med fokus på dybdeestimering, skalering med referanseobjekter, volummodellering og de pågående utfordringene forskere og ingeniører står overfor for å gjøre disse estimatene mer nøyaktige.

Hvorfor Porsjonsestimering Er Vanskeligere Enn Matgjenkjenning

Matgjenkjenning er i bunn og grunn et klassifiseringsproblem. Systemet må velge fra et begrenset sett av matkategorier. Porsjonsestimering, derimot, er et regresjonsproblem. Systemet må forutsi en kontinuerlig verdi (gram eller milliliter) kun basert på visuell informasjon.

Flere faktorer gjør dette spesielt utfordrende:

  • 2D-til-3D-problemet: Et fotografi komprimerer den tredimensjonale virkeligheten til et todimensjonalt bilde. Dybdeinformasjon går tapt, noe som gjør det vanskelig å skille mellom et tynt lag med mat og en tykk haug.
  • Variabel tetthet: En kopp med bladgrønt og en kopp med granola har samme volum, men helt forskjellige vekter og kaloriinnhold. Systemet må estimere både volum og tetthet.
  • Perspektivforvrengning: Vinkelen bildet er tatt fra påvirker hvor store matvarer ser ut. En tallerken tatt ovenfra ser annerledes ut enn den samme tallerkenen tatt i en 45-graders vinkel.
  • Uklare skaleringsreferanser: Uten et kjent referanseobjekt i bildet er det umulig å bestemme absolutt størrelse. En nærbilde av en liten småkake kan se identisk ut med et bilde av en stor pizza tatt fra lengre unna.

Dybdeestimering fra Et Enkelt Bilde

Et av de viktigste gjennombruddene som muliggjør porsjonsestimering fra bilder, er monokulær dybdeestimering, evnen til å utlede dybdeinformasjon fra et enkelt bilde i stedet for å kreve stereokameraer eller spesialisert maskinvare.

Hvordan Monokulær Dybdeestimering Fungerer

Det menneskelige synssystemet utleder dybde fra mange ledetråder: overlapping av objekter (nærmere objekter skjuler de som er lenger unna), relativ størrelse (mindre objekter er vanligvis lenger unna), teksturgradienter (teksturer blir finere på større avstand) og atmosfærisk perspektiv (fjerne objekter ser mer uklare ut).

Dype læringsmodeller kan lære disse samme ledetrådene fra store datasett med bilder parret med dybdekart. Når de brukes på matfotografi, kan disse modellene estimere hvilke deler av en matvare som er nærmere kameraet og hvilke som er lenger unna, og dermed rekonstruere den tredimensjonale formen av maten fra et flatt bilde.

Dybdekart og Matvolum

Et dybdekart tildeler en avstandverdi til hver piksel i bildet. For matestimering betyr dette at systemet kan fastslå at midten av en bolle med suppe er på en dybde, mens kanten av bollen er på en annen dybde. Forskjellen mellom disse dybdene, kombinert med de oppdagede grensene av maten, gjør at systemet kan estimere volum.

Moderne smarttelefonkameraer med LiDAR-sensorer (tilgjengelig på nyere iPhone Pro- og iPad Pro-modeller) kan fange faktisk dybdedata sammen med fargebildet, noe som gir mye mer nøyaktig dybdeinformasjon enn algoritmisk estimering alene. Matsporingsapper kan utnytte denne maskinvaren når den er tilgjengelig, mens de faller tilbake på monokulær estimering på enheter uten dybdesensorer.

Referanseobjekt Skalering

Uten et kjent referansepunkt er den absolutte størrelsen på objekter i et fotografi uklar. Referanseobjekt skalering løser dette problemet ved å bruke objekter med kjente dimensjoner for å etablere en størrelsesskala for hele bildet.

Vanlige Referanseobjekter

Referanseobjekt Kjente Dimensjoner Nøyaktighetsfordel
Standard middagstallerken 25-27 cm diameter Etablerer overordnet skala for måltidet
Gaffel eller skje ~19 cm lengde Gir skala selv i nærbilder
Kredittkort 8.56 x 5.4 cm Presis og universelt standardisert
Smarttelefon Varierer etter modell, men kjent Kan oppdages og måles algoritmisk
Hånd Varierer, men kan estimeres fra demografi Omtrentlig skalering når ingen annen referanse er tilgjengelig

Automatisk Referansedeteksjon

I stedet for å kreve at brukerne plasserer et referansekort ved siden av maten (som skaper friksjon og motvirker bruk), prøver moderne systemer å oppdage vanlige referanseobjekter automatisk. Tallerkener, boller, bestikk og bord vises ofte i matbilder og kan fungere som størrelsesreferanser hvis systemet kan identifisere dem.

Nutrolas porsjonsestimeringssystem ser automatisk etter tallerkener, boller og bestikk i bildet for å etablere skala. Når disse objektene oppdages, bruker systemet deres typiske dimensjoner for å kalibrere størrelsen på matvarene. Når ingen referanseobjekt finnes, stoler systemet på lærte priorer om typiske matporsjoner og kan be brukeren om bekreftelse.

Tallerkenbasert Kalibrering

En spesielt effektiv tilnærming er tallerkenbasert kalibrering. Standard middagstallerkener i de fleste land faller innenfor et smalt størrelsesområde (25 til 27 cm i diameter). Ved å oppdage den elliptiske konturen av en tallerken i bildet og anta en standard størrelse, kan systemet etablere en pålitelig skala for alt på tallerkenen.

Denne tilnærmingen fungerer godt fordi tallerkener nesten alltid er til stede i måltidsbilder, deres elliptiske form er lett å oppdage uavhengig av kameravinkel, og perspektivforvrengningen av ellipsen faktisk koder informasjon om kameravinkelen, noe som hjelper med å korrigere perspektiveffekter på maten.

Volumestimeringsteknikker

Når systemet har identifisert maten, estimert dybden og etablert skala, må det kombinere denne informasjonen for å estimere volumet av hver matvare.

Geometriske Primitiver

En tilnærming er å tilnærme matvarer som kombinasjoner av enkle geometriske former:

  • Sylindere for høye matvarer som drikker, stablede pannekaker eller lagdelte kaker
  • Halvkuler for runde matvarer som skjeer med ris, hauger med potetmos eller porsjoner med iskrem
  • Rektangulære prismer for skiver med brød, blokker med ost eller barer
  • Truncated cones for boller med suppe eller frokostblanding (bolleformen hjelper med å definere volumet)
  • Uregelmessige polyedre for matvarer med komplekse former som kyllinglår eller hele frukter

Systemet passer en eller flere av disse primitivene til det oppdagede matområdet og beregner volumet fra de tilpassede formene og den etablerte skalaen.

Voxel-basert Rekonstruksjon

En mer sofistikert tilnærming involverer voxel-basert rekonstruksjon, der matvaren modelleres som et tredimensjonalt rutenett av små kuber (voxels). Hver voxel klassifiseres som enten inneholdende mat eller tom basert på dybdekartet og segmenteringsmasken. Det totale volumet er deretter summen av alle matholdige voxels.

Denne metoden håndterer uregelmessige former bedre enn geometriske primitivene, men krever mer datakraft. Den er spesielt nyttig for matvarer som ikke følger enkle former, som et revet stykke brød eller en uregelmessig skåret frukt.

Nevralt Volumestimering

Den nyeste tilnærmingen hopper over eksplisitt geometrisk modellering helt. I stedet trenes et nevralt nettverk end-to-end for å forutsi matvolum direkte fra bildet. Disse modellene lærer implisitte representasjoner av matgeometri fra store datasett med matbilder parret med faktiske vektmålinger.

Denne tilnærmingen har vist lovende resultater fordi den kan fange subtile visuelle ledetråder som korrelerer med volum, som måten lys reflekteres fra overflaten av en væske eller skygge mønsteret kastet av en haug med mat. Den unngår også feilakkumulering som kan oppstå når dybdeestimering, segmentering og geometrisk tilpasning utføres som separate trinn.

Fra Volum til Vekt til Kalorier

Å estimere volum er ikke det siste steget. For å beregne kalorier må systemet konvertere volum til vekt (ved hjelp av matens tetthet) og vekt til kalorier (ved hjelp av ernæringskomposisjonsdata).

Matens Tetthetsdatabaser

Ulike matvarer har svært forskjellige tettheter. En kopp olje veier omtrent 220 gram, mens en kopp mel veier omtrent 120 gram, og en kopp popcorn veier omtrent 8 gram. Nøyaktige tetthetsdata er avgjørende for å konvertere volumestimater til vektestimater.

Produksjonssystemer opprettholder databaser som kartlegger matvarer til deres tettheter, og tar hensyn til variasjoner i tilberedningsmetode (kokt vs. rå, hakket vs. hel) og vanlige serveringsstiler.

Matvare Tetthet (g/mL) Vekt per 1 kopp (g) Kalorier per kopp
Vann 1.00 237 0
Helmelk 1.03 244 149
Kokt hvit ris 0.74 175 205
Rå spinat 0.13 30 7
Peanøttsmør 1.09 258 1517
Olivenolje 0.92 218 1909

Ernæringskomposisjon

Når systemet har et vektestimat i gram, ser det opp den ernæringsmessige sammensetningen per gram fra en omfattende matdatabase. Disse databasene er vanligvis avledet fra autoritative kilder som USDA FoodData Central, supplert med data fra matprodusenter og regionale ernæringsdatabaser.

Nutrolas database dekker mer enn 1.3 millioner matvarer, inkludert merkede produkter, restaurantmenyartikler og generiske matvarer med fullstendige makro- og mikronæringsprofiler. Denne omfattende dekningen sikrer at når en matvare og porsjon er identifisert, er den ernæringsmessige beregningen presis.

Nøyaktighetsutfordringer og Hvordan De Blir Adressert

Til tross for sofistikasjonen til disse teknikkene, forblir porsjonsestimering fra bilder en ufullkommen vitenskap. Å forstå kildene til feil bidrar til å sette realistiske forventninger og fremhever de pågående forbedringene innen feltet.

Kjente Kilder til Feil

Variasjon i kameravinkel: Den samme porsjonen ser annerledes ut avhengig av om bildet er tatt ovenfra, fra en 45-graders vinkel, eller fra nær bordnivå. Bilder tatt ovenfra gir generelt de mest nøyaktige estimatene fordi de minimerer perspektivforvrengning, men mange brukere holder naturlig telefonen i en vinkel.

Skjult mat: Mat som er skjult under sauser, ost eller andre pålegg kan ikke måles direkte visuelt. Systemet må anta den skjulte porsjonen basert på den synlige rettens type og typisk tilberedning.

Uregelmessige beholdere: Ikke-standard boller, krus og beholdere gjør tallerkenbasert skalering mindre pålitelig. En liten porsjon i en stor bolle ser annerledes ut enn en stor porsjon i en liten bolle, selv om matområdet ser likt ut.

Individuelle tilberedningsforskjeller: To personer som lager "en bolle havregryn" kan bruke svært forskjellige mengder havre og vann, noe som resulterer i samme tilsynelatende volum, men forskjellig kaloriinnhold.

Strategier for Å Forbedre Nøyaktighet

Multi-vinkel opptak: Noen systemer ber brukerne ta bilder fra flere vinkler, noe som muliggjør stereorekonstruksjon og mer nøyaktig volumestimering. Dette forbedrer nøyaktigheten betydelig, men legger til friksjon i loggingsprosessen.

Brukerfeedbacksløyfer: Når brukere veier maten sin og bekrefter eller korrigerer den estimerte porsjonen, skaper dette treningsdata som forbedrer modellen over tid. Nutrola oppfordrer brukere til av og til å bekrefte porsjoner med en kjøkkenvekt for å kalibrere både AI-en og brukerens egen porsjonsbevissthet.

Kontekstuelle priorer: Systemet kan bruke kontekstuell informasjon for å forbedre estimater. Hvis en bruker er på en spesifikk restaurantkjede, kan systemet bruke kjente serveringsstørrelser. Hvis en bruker regelmessig logger en spesifikk frokost, kan systemet lære deres typiske porsjon.

Konfidensbevisste estimater: I stedet for å presentere et enkelt tall, gir sofistikerte systemer et konfidensintervall. Hvis systemet er usikkert på porsjonen, kan det presentere estimatet som et intervall (for eksempel 300 til 450 kalorier) og be brukeren om å gi ytterligere informasjon.

Nåværende Nøyaktighetsbenchmark

Forskning fra International Conference on Image Analysis and Processing har vist at toppmoderne systemer for estimering av matvolum oppnår gjennomsnittlige absolutte prosentfeil mellom 15 og 25 prosent. For sammenligning har studier vist at trente dietetikere som estimerer porsjoner fra bilder oppnår feil på omtrent 10 til 15 prosent, mens utrente individer i gjennomsnitt har feil på 30 til 50 prosent.

Dette betyr at AI-porsjonsestimering allerede er betydelig bedre enn hva de fleste kan gjøre uten hjelp, og nærmer seg nøyaktigheten til trente fagfolk. Kombinert med hastighets- og bekvemmelighetsfordelen, gjør dette AI-assistert oppfølging til en betydelig forbedring over manuell logging for de fleste brukere.

Bruker Kalibreringens Rolle

En ofte undervurdert aspekt av AI-porsjonsestimering er rollen til bruker kalibrering over tid. Etter hvert som en bruker logger måltider og av og til gir korreksjoner, bygger systemet en profil av deres typiske porsjonsstørrelser og matpreferanser.

For regelmessige brukere betyr dette at systemet blir stadig mer nøyaktig. Hvis du pleier å servere deg større porsjoner ris enn gjennomsnittet, lærer systemet å justere oppover for dine risestimater. Hvis du vanligvis bruker mindre olje enn standardoppskriften, kan systemet ta hensyn til det.

Nutrola utnytter denne personaliseringen for å gi stadig mer tilpassede porsjonsestimater jo lenger du bruker appen. Nye brukere drar nytte av befolkningsgjennomsnitt, mens erfarne brukere får personlige estimater kalibrert til deres spesifikke vaner.

Praktiske Tips for Mer Nøyaktige Porsjonsestimater

Mens AI håndterer det meste av arbeidet, kan brukere forbedre nøyaktigheten ved å følge noen enkle retningslinjer:

  1. Fotografér ovenfra når det er mulig. Bilder tatt ovenfra gir mest informasjon om matens overflateareal og minimerer perspektivforvrengning.
  2. Inkluder hele tallerkenen i bildet. Tallerkenens kant fungerer som et viktig referanseobjekt for skalering.
  3. Unngå ekstreme nærbilder. Systemet trenger kontekst for å vurdere størrelse. Et bilde som kun viser maten uten omgivende objekter gir ingen skaleringsreferanse.
  4. Fotografér før blanding. En salat med synlige separate ingredienser er lettere å analysere enn en som er blandet sammen.
  5. Bruk godt lys. Skygger og lavt lys kan skjule matgrenser og dybdeledetråder.
  6. Bekreft eller korriger av og til. Å bruke en kjøkkenvekt en gang i uken for å verifisere AI-estimatet hjelper med å kalibrere både systemet og din egen intuisjon.

FAQ

Hvor nøyaktig er AI-porsjonsestimering sammenlignet med å bruke en matvekt?

En matvekt gir nøyaktighet innen 1 til 2 gram, noe som er langt mer presist enn noen visuell estimeringsmetode. AI-porsjonsestimering fra bilder oppnår vanligvis nøyaktighet innen 15 til 25 prosent av den faktiske vekten. Imidlertid betyr bekvemmelighetsfordelen ved AI-estimering (som tar 2 sekunder mot 30 sekunder eller mer med en vekt) at flere faktisk logger konsekvent, noe som ofte betyr mer for langsiktige resultater enn perfekt presisjon.

Påvirker kameravinkelen nøyaktigheten av porsjonsestimering?

Ja, betydelig. Bilder tatt ovenfra (ser rett ned på tallerkenen) gir best nøyaktighet fordi de viser hele overflatearealet av maten med minimal perspektivforvrengning. Bilder tatt i 45-graders vinkel er de mest vanlige og gir fortsatt gode estimater. Veldig lave vinkler (nær bordnivå) er de minst nøyaktige fordi mesteparten av maten er skjult av tallerkenens forkant.

Kan AI estimere porsjoner for væsker som supper og smoothies?

Væsker utgjør en unik utfordring fordi volumet deres bestemmes av beholderen snarere enn deres egen form. AI-systemer estimerer væske-porsjoner ved å identifisere beholderens type og fyllingsnivå. En bolle med suppe fylt til randen har et annet volum enn en som er fylt halvveis. Nøyaktigheten er generelt god når beholderen har en standard form, men mindre pålitelig med uvanlige beholdere.

Hvorfor overvurderer eller undervurderer AI noen ganger porsjonen min?

Vanlige årsaker til overvurdering inkluderer tett plating som ser større ut enn den er, garnityr som legger visuell bulk uten betydelige kalorier, og bruk av store tallerkener som får systemet til å anta at mer mat er til stede. Vanlige årsaker til undervurdering inkluderer mat skjult under annen mat, tette kaloririke matvarer som ser små ut, og uvanlige serveringsstiler. Å gi tilbakemelding når estimater er feil hjelper systemet med å forbedre seg.

Må jeg ha en telefon med LiDAR-sensor for nøyaktig porsjonsoppfølging?

Nei. Selv om telefoner med LiDAR kan gi mer nøyaktig dybdeinformasjon, kan moderne AI-modeller estimere dybde ganske godt fra et standard kamerabilde alene. Nøyaktighetsforskjellen mellom LiDAR-utstyrte og standard telefoner har blitt mindre ettersom programvarebasert dybdeestimering har forbedret seg. Nutrola fungerer nøyaktig på enhver moderne smarttelefon.

Hvordan håndterer systemet matvarer som er stablet eller lagdelt?

For synlig stablede matvarer som pannekaker eller lagdelte smørbrød, kan systemet telle lag og estimere tykkelse fra sideprofilen. For matvarer med skjulte lag som lasagne eller burritos, stoler systemet på lærte sammensetningsmodeller som estimerer den typiske indre strukturen basert på den synlige utsiden og rettens type.

Klar til å forvandle ernæringssporingen din?

Bli en del av tusenvis som har forvandlet helsereisen sin med Nutrola!