AI 食物识别有多准确?你可以期待什么
发布于 2026 年 4 月
AI 拍照记录餐食比手动搜索食物数据库快得多。但在切换之前,一个常见的问题是:它到底有多准确?坦白地说,这取决于你吃的是什么以及你怎么拍。下面介绍这项技术能做到什么、做不到什么。
食物识别 AI:这项技术是如何运作的
食物识别 AI 就是把计算机视觉 App 到餐盘上:一个用带标注的食物图片训练出来的模型,识别照片里有什么,并估算每样有多少。同一类模型既驱动着面向消费者的卡路里 App,也驱动着餐厅、医院和健康平台所使用的商业食物识别 API。每一种实现都经过同样的五个阶段。
- 检测。模型找出图片中所有含有食物的区域,把它们与盘子、桌子和背景分开。
- 分割。每个食物区域会被拆分成不同的单项,所以一盘炒菜会被识别为蛋白质、蔬菜、米饭和酱汁,而不是一个整体。
- 分类。每个区块都会与模型训练过的食物类别进行匹配。这是目前已经可靠的环节:现代模型能识别数千种菜品。
- 体积和分量估算。模型会根据每种食物相对于餐盘、餐具或其他参照物的视觉大小,推断其分量。几乎所有误差都来自这个阶段,而不是分类阶段。
- 营养查询。每种已识别的食物按估算份量换算,并匹配对应的卡路里和宏量营养素数值。
当你给一餐拍照时,AI 视觉模型会分析图像,识别出每种食物。它会观察形状、颜色、质地和上下文,判断盘子里有什么。识别出食物后,系统会根据视觉线索估算份量,包括每样食物相对于盘子、餐具或画面中其他参照物的大小。
根据这些估算,它使用已识别食物的营养数值计算卡路里和宏量营养素。整个过程通常只需几秒钟。
准确度如何?
对于常见且清晰可见的餐食,AI 食物识别的准确度相当不错。一盘鸡胸肉、米饭和蒸蔬菜,正是 AI 表现良好的那类餐食:各个组成部分都看得见,份量可以估算,而且这些食物模型已经见过很多次。至于估算究竟有多接近,没有人能诚实地把它归结为一个百分比。2023 年发表在《Annals of Medicine》上的一篇系统综述筛查了 14,059 篇文献,保留了 2010 年至 2023 年间发表的 52 篇,发现这些研究中热量的平均相对误差从 0.1% 到 38.3% 不等。作者无法把这些研究合并成一个数字,因为食物图像数据库和报告的结果差异太大,无法进行荟萃分析。这篇综述能确定的是方向:单一或简单食物的图像误差更低。
混合菜品的准确度会下降。一碗炖菜、一份焗菜或咖喱中有部分或完全被遮住的食材。AI 能识别出这是什么菜,但看不到里面有什么,所以估算更多依赖典型食谱,而不是你锅里的实际内容。误差范围会变大。
酱汁、油和调味汁一直是难点。淋了橄榄油的沙拉和淋了清淡油醋汁的沙拉,在照片中看起来几乎一样。两者的热量差异却可能很大。炒菜前倒进锅里的食用油,在最终的照片中完全看不见。
带营养标签的包装食品,更适合手动录入或扫描条形码。一份 200g 的特定品牌酸奶有已知、准确的营养成分。当准确数据就印在包装上时,AI 估算只会带来不必要的不确定性。
影响准确度的因素
有几个实际因素会影响 AI 对某张照片的表现:
- 光线。光线充足的照片能为模型提供更多视觉信息。光线不足会让质地变得平淡、颜色失真,使食物更难被正确识别。
- 角度。俯拍照片(从餐盘正上方拍摄)通常效果最好。侧面角度可能让部分食物被其他食物挡住,使分量估算不那么可靠。
- 食物摆放。在盘中分开摆放、份量清晰的食物,比堆叠或混在一起的更容易分析。如果你有多样食物,拍照前把它们分开摆放会有帮助。
- 参照物。在画面中包含盘子边缘、叉子或其他熟悉的物体,有助于模型校准份量。一块鸡肉放在叉子旁边和什么都不放,看起来的大小差别很大。
混合餐比单一食物更难识别
米饭和西兰花旁的一块烤鸡胸,是边缘清晰的三种不同形状。咖喱、炖菜、砂锅菜或拌了酱汁的沙拉则是一整团视觉上的混合体,各成分相互重叠、彼此遮挡,密度也各不相同。AI 对第二类餐食的估算准确度明显更低,这也是判断照片估算是否接近的最大单一因素。
2023 年发表在 Annals of Medicine 上的系统综述涵盖了 2010 年至 2023 年间发表的 52 项研究,发现热量的平均相对误差在 0.10% 到 38.3% 之间,并报告误差“单一食物图片往往比多种食物图片更小”。它直接点出了难处理的情况:“混合菜肴(如咖喱)的图片,或盛有多种相互重叠、高度不一或边界不清的食物的餐盘,出现分类或分割错误的风险更高”。在所综述研究中体积估算误差最低的 22 项结果里,68% 来自单一食物图片。
2024 年发表在 IEEE Journal of Biomedical and Health Informatics 上的一项研究,以称重的参照餐为基准分析 GPT-4V,给出了差距的具体数字。一次估算一种食物,在 32 种食物中得到的平均绝对卡路里误差为 69.2 kcal。估算整个进餐过程,在 10 次进餐中得到的误差为 151.2 kcal,大约翻了一倍。原因在于误差叠加:份量是误差的主要来源,而混合菜肴需要对每个组成部分分别判断份量,每一次判断都带有各自的误差。
这一点尚无定论。2025 年发表在 Nutrients 上的一项研究分析了 195 道菜,发现食材数量与误差之间只有弱相关(r 不高于 0.37),并得出结论:组分数量并不是关键决定因素。老实说,视觉上能否区分开比食材数量更重要:一个盘子里放着六种清楚分开的食物,比一个碗里混着三种食物更容易识别。
这在实际中意味着什么
- 在拌匀之前拍照。趁各个组成部分还分得清时拍,而不是拍搅拌好的一碗。
- 在合理的情况下,把混合餐分成两张照片来拍。两个单独的估算胜过一个综合估算。
- 对任何混合、带酱汁或分层的食物,都要修正估算。在所有研究中,脂肪都是最常被低估的营养素,而酱汁中的油在照片里是看不见的。
- 把自制炖菜和咖喱当作最差情况,在这一餐很重要时,按食材记录而不是拍照记录。
和什么比?
有意义的比较不是 AI 对比一个完美数字,而是 AI 对比你原本会怎样记录这餐,而那种方式同样不准确。
2018 年发表在 Nutrients 上的一项研究请 38 名营养专业人员根据食物图片估算份量。他们的餐盘估算只有 23.7% 落在实际称重值的 10% 以内,平均绝对百分比误差为 47.6%。在 CVPR 2021 上发表的 Nutrition5k 研究在其约 5,000 道菜的数据集之外做了一个较小规模的人工对照:4 名营养师和 16 名普通人对 10 道比数据集平均水平更简单的菜进行了估算。营养师的平均误差为 41%,普通人为 53%。请把它看作在有利样本上的量级参考,而不是总体估计。
手动在应用中记录也有自己的偏差,不过比表面数字显示的要小。2021 年发表在 Advances in Nutrition 上的一项荟萃分析汇总了 11 项关于膳食记录应用的研究,发现它们平均每天低估能量摄入 202 kcal(95% CI:319 至 85 kcal)。这个差距大部分来自食物成分表,而不是记录本身:在应用和参照方法使用同一张成分表的研究中,汇总的少报量降至每天 57 kcal(95% CI:少报 116 kcal 至多报 2 kcal),研究间的异质性降为零。在一天 2,000 卡路里的情况下,这不到 3%,所以对照匹配数据库认真手动输入,确实是更准确的方法。
所以,对混合菜肴的照片估算并不精确,营养师看着同一盘菜也一样。认真的手动输入在准确度上胜过两者,但在能否坚持下去上输给两者。拍照记录改变的不是准确度,而是你是否会记录这一餐;一餐记录了、估算还能修正,胜过根本没记录。
对准确度宣传保持怀疑
有些网站为卡路里 App 公布听起来很精确的准确率数字,其中一些引用的研究和 DOI 根本不存在。没有任何 App 对其正式发布的产品进行过公开发表、经同行评审的验证。如果一个数字背后没有具名的期刊、样本量和方法,就把它当作营销。我们的也一样:本页的数字引用的是独立研究,而不是我们自己的测试。
“差不多”就够了吗?
对大多数人来说,是的。两位数的误差单独看起来很大,但要结合背景来看。
手动查数据库也不是完全准确的。用户提交的数据库存在错误,不同来源的份量定义不同,而家常菜很少与数据库条目假定的做法完全一致。家常菜手动记录的实际准确度,比大多数人以为的要低。
更重要的是,就记录而言,一致性比精确度更重要。如果你在比较 AI 记录 App 和传统数据库 App,VitaCal 与 MyFitnessPal 对比介绍了两种记录方式在实际使用中的区别。如果 AI 对你经常吃的某一餐系统性地偏差 15%,你记录的摄入量在相对意义上仍然反映了你的实际摄入。你每周的趋势、你对饮食调整的反应,以及你长期的进展,都仍然有意义。记录的目的是建立觉察、发现规律,而不是对每一餐做到实验室级别的测量。
让记录失败的不是误差幅度,而是因为记录太慢或太费力而放弃这个习惯。AI 拍照记录直接解决了这个问题。
如何获得更好的结果
几个简单的习惯就能提高 AI 估算的质量:
- 在确认记录前,检查 AI 识别出的内容。如果漏掉了某种食材或识别错了什么,你可以在保存前修改。
- 在光线良好的地方从正上方拍照。这只多花一秒钟,却能带来可测量的差异。
- 对于准确度很重要的餐食,把各个组成部分分开记录,而不是作为一整盘记录。这样模型处理每一项时任务都更清晰。
- 包装食品用手动输入。有营养标签就用标签。把 AI 记录留给它真正有优势的餐食:熟食、餐厅餐食,以及任何你原本需要搜索的食物。
VitaCal 的做法
想了解提供拍照记录的各款应用之间如何比较,请看 AI 卡路里追踪拍照识别应用指南。
在记录任何内容之前,VitaCal 会向你展示 AI 在照片中识别出的确切内容。你可以看到各种食物、估算的份量,以及由此得出的卡路里和宏量营养素。如果有什么不对,可以在确认前调整份量或删除条目。未经你核对,不会记录任何内容。
如果你想看看 AI 记录在实际中如何运作,免费试用 VitaCal。免费版每周包含五次 AI 分析,且没有广告。