← 返回博客

如何用一张照片计算卡路里

Berry Best 团队撰写12 分钟阅读
AI 卡路里计算器拍照卡路里计算器卡路里记录饮食记录营养
如何用一张照片计算卡路里

用照片算卡路里,就是给你的餐拍一张照,让 AI 模型认出每样食物、估算份量,再对照营养数据,几秒内给出卡路里和三大营养素。这是估算,不是测量:研究显示平均误差从不到 1% 到约 38% 不等,取决于这盘食物有多复杂。

这个范围听起来很宽,事实也是如此。但大多数人真正在用的替代方法,并不是实验室级的食物秤,而是在数据库里打字乱猜,或者干脆不记。这篇指南会讲清楚拍照算卡路里怎么运作、哪里靠得住、哪里靠不住,以及怎样在你每天真正吃的食物上拿到最诚实的数字,从一包椰浆饭(nasi lemak bungkus)到一盘鸡饭都适用。

为什么很多人手动记卡路里会半途而废?

手动记录有个「坚持不下去」的问题。每一餐你都得做好三件事:正确说出食物名称、选对数据库条目、估准份量。错一样,数字就不对。一天几餐、连续几个星期都要这样做,累积下来的工夫会让你最终放弃。

吃东南亚食物就更麻烦了。在一般的数据库里打「经济饭(nasi campur)」,会跳出几十个条目,跟你的那盘饭几乎没关系,因为经济饭就是你当天从二十个菜盘里随手夹的那几样。这种麻烦不是自律问题,而是设计问题。

拍照记录把这三个步骤压缩成一个你本来就不假思索会做的动作:把手机对准盘子。最好的记录方法不是最精确的那种,而是一个月后你还在用的那种。

AI 食物识别是怎么运作的?

拍照卡路里计算器同时做两件事:认出食物是什么,以及估算有多少。

  1. 识别。 照片会送进一个用大量已标注食物照片训练出来的电脑视觉模型。它学会了各种菜的视觉特征,比如炒粿条油亮的深色面条,或椰浆饭里饭、参巴和蛋分开的几小堆,然后为盘里的每样食物给出最可能的判断。
  2. 份量估算。 从一张平面的 2D 照片,app 要靠盘子大小、食物堆的高度和画面里熟悉的物件来推断体积。这是比较难的一步,大部分误差都出在这里。
  3. 营养对照。 每样认出来的食物会对应到营养数据,再乘以估算份量,得出卡路里、蛋白质、碳水化合物和脂肪。

较新的 app 还多了第四步:你可以补一句说明(「多参巴」「去皮」「饭减半」),估算就会更新。这个小小的修正,往往比照片本身更重要。

拍照算卡路里有多准?

老实说:有用,但不精确。《Annals of Medicine》上的一项 2023 年系统性综述 汇总了 52 项 AI 图像饮食评估研究。各研究的平均卡路里误差从 0.10% 到 38.3% 不等,作者发现照片里是单一、简单的食物时,误差较低。咖喱这类混合菜,以及食物互相叠在一起的盘子,被认错的风险较高。整体来说,AI 的表现落在受过训练的人工估算者的范围内。

实际上,这代表:

  • 一根香蕉、一粒水煮蛋或一片面包,通常都估得不错。
  • 一盘饭配两样分得清楚的菜,是个公平的考验,结果通常接近到足以拿来规划饮食。
  • 一碗咖喱面或淋满汁的扁担饭(nasi kandar) 是最难的情况,因为汁把蛋白质和油都盖住了。

正确的心态是:把它当成一个懂行的朋友瞄一眼你的盘子,给你一个快速又合理的估计。几天几星期下来,随机的高估和低估会部分抵消,真正决定成效的是趋势。但固定的误差,比如每次都漏掉煮菜的油,是不会抵消的。所以下面的技巧就是针对这些。

拍照算卡路里在哪些情况下会出错?

大部分估错的情况,都来自这四种:

  • 看不见的油脂。 煮进菜里的油、椰浆、牛油和酥油(ghee)都看不见。根据 USDA FoodData Central,一汤匙棕榈油约 120 千卡,而一道小贩大火快炒的菜,用油随时超过一汤匙。
  • 看不见的糖。 拉茶里的炼奶、甜品里的椰糖(gula melaka),照片里都看不出来。
  • 叠高或很深的食物。 高高的汉堡或一大碗深的面,会把底下的东西藏起来,体积很难判断。
  • 没有比例参照。 食物塞满整个画面、看不到盘边或餐具,模型就没有东西可以用来衡量份量。

常见马来西亚食物有多少卡路里?

心里有个大概的参考值,就能一眼看出哪个估算明显不对。以下数字来自已发表的资料,只适用于表中列出的份量。你光顾的档口份量可能更大或更小。

食物 分析份量 约多少卡路里 来源
椰浆饭(含配料) 395 克一盘 约 740 千卡 Yeo et al., Foods 2021
白斩鸡饭 412 克一盘 约 780 千卡 Yeo et al. 2021
炒粿条 380 克一盘 670 千卡 Malaysian Dietary Guidelines 2020
炒面(mee goreng) 300 克一盘 519 千卡 Malaysian Dietary Guidelines 2020
印度煎饼(roti canai) 1 片(84 克) 266 千卡 Malaysian Dietary Guidelines 2020
拉茶(teh tarik) 1 杯(250 毫升) 140 千卡 Malaysian Dietary Guidelines 2020

根据马来西亚食物成分数据库(MyFCD),单是椰浆饭的椰浆饭底,每 100 克就约 169 千卡,所以饭只是其中一部分,炸鸡、参巴和花生才是其余的大头。想看逐样拆解,可以读我们的椰浆饭卡路里和嘛嘛档食物卡路里指南。

如果你的 app 说一整盘炒粿条只有 350 千卡,那就是该检查份量或把油加进去的信号。

怎样拍才能让卡路里估算最准?

以下习惯不花额外时间,却能修正上面大部分的误差:

  • 用 45 度角拍。 斜斜的角度能同时拍到面积和高度,有助于估算份量。从正上方往下拍,会把一堆饭拍扁。
  • 画面里放个大小参照。 汤匙、叉子、标准盘子或你的手,都能让模型有个比例可对照。
  • 光线要均匀。 日光胜过档口昏暗的黄灯;浓重的阴影和偏色会干扰识别。
  • 吃第一口之前就拍。 拍下完整的份量,而不是吃了一半的残局。
  • 补一句说明。 「炸的,不是蒸的」「少甜(kurang manis)」「加饭」或「两块鸡」,能补上镜头看不到的部分。
  • 把杂饭拆开记。 吃经济饭时,确认每样菜都分开列出,让炸鱼、咖喱和青菜各自估算。如果你常吃经济饭,我们的小贩经济饭减肥指南会告诉你哪些菜卡路里累积得最快。

拍照、手动输入、扫条码,哪个最好?

没有哪一种在所有场合都最好,它们各自适合不同情况。

方法 最适合 速度 费力程度 准确度说明
拍照(AI) 小贩、餐馆、家常菜和混合菜 几秒 很低 看得见的食物估得不错;除非你补充说明,否则会漏掉看不见的油和糖
手动输入 简单食物和常重复的食谱 慢 高 准不准全看你选的数据库条目和份量猜测
扫条码 有包装、有标签的产品 快 低 对标签上的份量很精确;没标签的食物完全用不上
食物秤 备赛、临床饮食 最慢 最高 对生食材最精确;外食时不实际

在马来西亚和新加坡,大多数人一个星期外食好几次,而且常在没有营养标签的档口吃。这种时候,拍照,或简单用文字、语音描述一下,往往是唯一可行的办法。包装零食则是营养标签或条码比较占优势的地方。

怎样开始用照片记录每一餐?

你不需要建立新习惯,只要做一个小小的替换。下一餐时:

  1. 开吃前,斜角拍一张清楚的照片,让汤匙或盘边入镜。
  2. 让 app 认出食物,看看估算结果。
  3. 改正明显不对的地方,再补一句烹调方式或额外加的东西。
  4. 存起来,继续吃饭。整个流程比在数据库里搜索还快。

之后看的是每周平均,而不是单一餐。如果你还没算出每日卡路里目标,可以用 TDEE 计算器,再读我们的减肥一天要吃多少卡路里指南。等记卡路里变得轻松后,记录三大营养素就是自然的下一步。

如果你想用自己的三餐试试看,Berry Best 让你用拍照、文字或语音把食物记录给它的 AI 教练 Berry,然后显示卡路里和三大营养素,你可以直接在同一个对话里修改。

资料来源

以下文献保留英文原标题。

延伸阅读

常见问题

拍照真的可以算卡路里吗?
可以。拍照卡路里计算器会用图像识别认出盘里的每样食物,再根据盘子大小、食物堆的高度等视觉线索估算份量,然后对照营养数据算出卡路里和三大营养素。结果是估算值,所以拍完要看一眼,把认错的菜或估太多的份量改过来。
AI 卡路里计算 app 准不准?
要看是什么餐。《Annals of Medicine》2023 年的一项系统性综述发现,不同研究的平均卡路里误差从不到 1% 到约 38% 都有,单一、简单的食物远比咖喱这类混合菜准。整体来说,AI 的表现和受过训练的人工估算差不多:足够指导日常饮食选择,但不够精确到临床用途。
AI 认得出椰浆饭这类马来西亚食物吗?
大多数现代食物识别模型都认得椰浆饭、印度煎饼(roti canai)、鸡饭这些常见本地菜,但本地菜比较考验 AI,因为参巴、咖喱汁和油会盖住底下的东西。菜名认对的机会通常比份量估对高。顺手补一句「多参巴、炸鸡腿」,估算就准很多。
拍照记录比用秤称食物好吗?
论精确度不如,但论坚持通常更胜一筹。厨房秤是最精确的方法,备赛或医疗饮食值得用。日常减肥的话,拍照记录几秒就搞定,在小贩中心也能用,那里根本不可能拿出秤来。一份每天都坚持的合理记录,胜过一份你中途放弃的完美记录。
为什么拍照算出来的卡路里好像偏低?
最常见的原因是看不见的油脂。食用油、椰浆(santan)、牛油和糖都融进食物里,照片上看不出来,所以估算只算到镜头看得见的部分。油炸、汁多和快炒的菜影响最大。告诉 app 这道菜是怎么煮的,或把油当成一个单独项目加进去,就能补上这个差距。