Коротко: фотография хорошо отвечает на вопрос «что на тарелке» и плохо на вопрос «сколько в этом калорий». По одному снимку сильные модели ошибаются в среднем на 20–36% калорий блюда, приложения из магазина недосчитывают в среднем 27–38%. Точность поднимают датчиком глубины, списком ингредиентов и ручными исправлениями. Кроме датчика, всё это вводит человек, и это та самая работа, ради отмены которой он делал фото.
Ниже — что снимок видит, чего на нём нет, 18 источников с числом ошибки на одном графике, как точность поднимают и открытые данные для тех, кто хочет проверить сам.
Что фотография видит#
Распознавание еды работает неплохо, и это честная часть обещания. В исследовании 2025 года система назвала правильно 189 из 220 блюд Sahoo 2025. В сравнении четырёх приложений MyFitnessPal узнал 97% компонентов блюд. По снимку модель видит:
- что за еда: рис, салат, хлеб, курица, суп;
- сколько штук: одно яйцо или два, одна котлета или две;
- какую часть тарелки занимает еда, какой у неё цвет и поверхность;
- тарелку, миску и приборы рядом.
Этого достаточно, чтобы сократить поиск по базе с тысяч позиций до нескольких. Для калорий нужно больше.
Чего на снимке нет#
Рецепт#
Одно и то же карри готовят на томатах, кокосовом молоке, сливках или гхи. Суп бывает на бульоне и со сливками. Снимок показывает готовую поверхность, а не то, из чего она получилась.
Жирность и часть туши#
Постный и жирный фарш после готовки выглядят одинаково. Так же выглядят разные части свинины и курицы, особенно когда вытопившийся жир остался в блюде. В гайде по скрытым калориям есть проверенный пример USDA: сырая говядина с 95% постного мяса и фарш 80/20 отличаются на 111 ккал на 100 г.
Масло#
Масло покрывает овощи, сидит в панировке, впитывается в рис и соус. Блеск не говорит, сколько граммов добавили и сколько осталось на сковороде. В проверке NIH все четыре приложения недосчитали примерно по 30 г жира на обед.
Ингредиенты внутри и под слоем#
Сахар в глазури, сливочное масло в рисе, сыр внутри котлеты, второй слой под соусом. Их на снимке нет вообще.
Порция в граммах#
Снимок показывает, какую часть тарелки занимает еда, но не сколько она весит. Размер тарелки, расстояние до камеры, угол и высота горки меняют оценку в разы, а еда ещё и закрывает сама себя. В работе Fridolfsson занижение росло вместе с порцией.
Итог простой: калории складываются из названия, порции и рецепта. Снимок надёжно даёт только первое. А то, чего он не видит, — масло, жирность, сыр, — это прежде всего жир и белок, поэтому состав ошибается сильнее, чем сумма калорий.
Что показали проверки точности#
Мы собрали 164 записи о точности калорий по фото с 2015 года по сентябрь 2026: научные работы, препринты, редакционные и личные тесты, заявления компаний. У 18 из них есть число, которое можно поставить на одну шкалу; способы счёта у них разные, поэтому это не рейтинг. Остальные — в открытых данных, с причиной.
Одна строка — один источник. Откройте строку, чтобы увидеть, что именно считали и где это опубликовано.
● Внешние проверки
NIH · 4 приложения · 2026102 обеда · абстракт конференции 27,5–37,6% →
Смещение, по среднему занижению. Средний обед 918 ккал. Среднее занижение: MyFitnessPal −327, Lose It! −333, Cal AI −345, Appediet −252 ккал. Делим на 918 — в среднем недобор 35,6 / 36,3 / 37,6 / 27,5% обеда. Отдельные блюда разбросаны вокруг этих цифр в обе стороны, так что типичный промах на блюдо — другое число.
Абстракт конференции, полной статьи пока нет. Финансирование NIH. Анализ 102 обедов отделён от дополнительных блюд из пресс-релиза.
Tanabe · 6 моделей · 2025Снимки Nutrition5k · 6 моделей 39,8–129,5%
Средняя ошибка на блюдо. Шесть моделей на снимках Nutrition5k, с дообучением и без: 129,5; 92,8; 55,7; 46,7; 41,5 и 39,8% средней ошибки на блюдо (MAPE).
Числа, взятые из более ранних работ, не считаются новыми проверками. Эксперименты с подсказкой объёма — другой протокол, не включены.
Coburn · 8 моделей · 2025806 фото с масштабными метками 23,3–86,3%
Средняя ошибка на блюдо. Восемь моделей на 806 снимках с масштабной меткой: 23,3–86,3% средней ошибки на блюдо (MAPE) в базовом протоколе.
Препринт. Масштабная метка на каждом снимке помогает с порцией. Промпты с метаданными — отдельное условие. Средние по моделям, не разброс отдельных блюд.
Fridolfsson · 3 модели · 202552 фотографии еды 35,8–64,2%
Средняя ошибка на блюдо. GPT-4o и Claude 3.5 Sonnet — по 35,8% средней ошибки на блюдо (MAPE); Gemini 1.5 Pro — 64,2%. Чем больше порция, тем сильнее занижение.
Опубликовано в 2025, тестировали в сентябре 2024. Постановочные снимки с приборами и взвешенными порциями.
Rodríguez · ChatGPT-5 · 2025195 блюд · фото / фото и ингредиенты 6,9–35,0%
Средняя ошибка на блюдо. Одни и те же 195 блюд, разный ввод. Только фото: 20,1–35% по трём наборам снимков, 30,5% в целом. Фото плюс подробный список ингредиентов: 6,9–18,6%, 13,9% в целом. Средняя ошибка на блюдо (MAPE).
Одна работа, разный ввод. 6,9% относятся к 25 домашним блюдам с подробным списком ингредиентов. Прогоны без фото не включены.
Li · 4 приложения · 20246 составных блюд · 4 приложения 15,4–59,3%
Ошибка суммы шести блюд. Наш расчёт по строкам целых блюд из таблицы 10, шесть блюд, с которыми справились все четыре приложения: MyFitnessPal 59,3%, HealthifyMe 39,6%, Foodvisor 26,6%, Fastic 15,4% от суммы эталонных калорий (WAPE).
Маленькая общая выборка; молочный чай исключён, потому что Foodvisor не дал результата. Эталон — записи диетологов. Финансирование и конфликты не заявлены.
Serra · SNAQ · 202330 женщин · дневник за 7 дней ≥14,8%
Недобор суммы, по среднему занижению за день. Дневник в приложении: в среднем 1905,5 ккал/сутки против измеренного расхода 2235,2. Сумма дневника ниже на 14,8%. Собственные −12,8% статьи — среднее индивидуальных процентов.
Научное финансирование; SNAQ получил оплату за исследовательскую версию. Расход как эталон предполагает стабильный вес; пропущенные записи идут в счёт приложения.
Herzig · SNAQ · 202048 приёмов · датчик глубины и список 12,7%
Средняя ошибка на приём пищи. 12,7% средней ошибки на приём пищи (MAPE), в среднем 41,2 ккал. iPhone с датчиком глубины, продукт выбирали из заданного списка, границы на снимке можно было поправить вручную.
Академическое исследование; авторы благодарят разработчиков SNAQ и не заявляют конфликтов. Это ввод с подсказками, а не голое фото.
Keenoa · 202072 участника · дневник за день 15,6–19,5% →
Недобор суммы, по среднему занижению за день. Эталонный дневник 2006,3 ккал/сутки; записи приложения 1615,3; после проверки диетологом 1693. Суммы ниже на 19,5% и 15,6%.
Эталон — другой дневник, тоже с ошибками. Результат включает ведение дневника и проверку человеком, а не только оценку по снимку.
◆ С участием разработчиков, обзоры и заявления
Bayern 1 · 2026Неделя · формула не раскрыта 6,0–>20,0%
Отклонение за неделю, формула не раскрыта. Foodvisor — около 6% отклонения за неделю; у остальных сообщены отклонения больше 20%. Верх диапазона неизвестен.
Редакционный тест четырёх приложений без полного эталона и формулы. Недельный итог может прятать разнонаправленные ошибки отдельных блюд. Дата на странице 3 июня 2026; в метаданных 12 июня.
Tom’s Guide · Gemini · 20263 блюда · расчётные границы 5,3–27,2%
Ошибка суммы трёх блюд, расчётные границы. Эталоны 175 / 295 / 328 ккал; Gemini отвечал диапазонами 115–175 / 255–305 / 370–445. Ближние и дальние края диапазонов дают 5,3–27,2% от суммы.
Фото плюс текстовое описание. Личный дневник как эталон, три блюда. Границы из диапазонов ответов, а не измеренное среднее.
SnapCalorie FAQ · 2025Архив 2025 · та же цифра в 2026 ≈15,0%
Заявление компании, формула не раскрыта. FAQ заявляет около 15% средней ошибки калорий. Та же фраза в архиве от 21 января 2025 и на живой странице 5 сентября 2026.
Дата — когда архив зафиксировал заявление, а не дата теста. Названа база Nutrition5k, но не формула, не версия приложения и не независимая проверка.
Kakao & Karotte · Lifesum · 20257 блюд · личный тест 34,6%
Ошибка суммы семи блюд. Семь блюд, все завышены: лишние 660 ккал из 1905 эталонных — 34,6% от суммы (WAPE); в среднем на блюдо 41,9%.
Напечатанная на сайте сумма 1406 ккал не сходится с его же строками, которые дают 1905; мы берём строки. На странице партнёрские ссылки.
Passio Nutrition AI · 202526 участников · дневник за день ≥20,1%
Недобор суммы, по среднему занижению за день. Среднее занижение 1814 кДж/сутки при измеренном расходе 9017 кДж: сумма ниже на 20,1%. Собственные 15% статьи — среднее индивидуальных отношений.
Академические авторы собрали приложение на движке Passio; платили научный совет и благотворительный фонд, Passio дал алгоритм бесплатно. Авторская проверка собственного процесса.
FeastGood · 20241 блюдо · итог у 3 из 6 приложений 0,7–11,8%
Ошибка на одном блюде. Одно блюдо на 440 ккал; три приложения дали итог: 437, 470 и 388 ккал — ошибка 0,7%, 6,8% и 11,8%. Ещё три приложения сопоставимого итога не дали.
Для MyFitnessPal порции выбраны из стандартных вариантов. Партнёрские ссылки раскрыты. Одно удачное блюдо мало говорит об обычной точности.
SnapCalorie · 2023Заявление · глубина и проверка <20,0%
Заявление компании, формула не раскрыта. Основатель в TechCrunch 26 июня 2023: средняя ошибка калорий меньше 20%. Сервис тогда использовал датчик глубины и проверку людьми.
Ни формулы, ни независимой проверки. Более поздние 15% укладываются в прежнее «меньше 20%».
CALO mama · 2022120 блюд · автоматически / после правки 1,6–10,1% →
Смещение, по средней разнице. Средний эталон 562 ккал. Автоматическая оценка в среднем 505 ккал (−57), после ручной правки 571 (+9). В среднем это промах на 10,1% и 1,6%; измеренная ошибка на блюдо не опубликована.
Оплачено разработчиком Link & Communication; два автора — его сотрудники, ещё один — по консультационному контракту. Рецензировано, но не независимо. Японское CALO mama — не Calorie Mama.
Nutrition5k · 2021Фото / глубина / известная масса 9,5–26,1%
Средняя ошибка на блюдо. Средняя ошибка на блюдо, нормированная: только фото 26,1%; с глубиной 18,8%; с объёмом 16,5%; с известной массой блюда 9,5%.
Исследователи Google оценивают собственные модели на собственном наборе. 9,5% требуют известной массы и не относятся к одному фото.
→ смещение суммы: насколько сумма всех оценок не дотянула до настоящей; отдельные блюда разбросаны вокруг неё в обе стороны. У Bayern 1 верх диапазона неизвестен. ◇ заявление компании. Пунктир — границы, рассчитанные из диапазонов ответов.
Цвет говорит, кто измерял, а не насколько хорош результат. Ошибку строки считают по-разному (средняя на блюдо, ошибка суммы, смещение по среднему занижению, заявление) и на разных блюдах, поэтому ось — не рейтинг, а строки нельзя усреднить в одну «точность рынка».
Что видно на графике.
По одному снимку ошибка идёт на десятки процентов. Сильные модели — GPT-4o, Claude, ChatGPT-5 — ошибаются в среднем на 20–36% калорий блюда. Слабые — на 64–130%.
Приложения из магазина занижают. В проверке NIH на 102 обедах MyFitnessPal, Lose It!, Cal AI и Appediet недосчитали в среднем 252–345 ккал из 918, то есть 27–38% обеда. Это средний перекос; на отдельных блюдах ошибка бывает и больше. В сравнении Li на одинаковых шести блюдах четыре приложения ошиблись на 15–59% суммы.
Маленькие цифры получены с помощью. 12,7% у Herzig — датчик глубины и выбор продукта из заданного списка. 9,5% у Nutrition5k — модели сказали точный вес блюда. 1,6% у CALO mama — это среднее смещение после ручных исправлений в исследовании, которое оплатил разработчик; среднюю ошибку на блюдо там не публиковали.
Компании цифру ошибки не публикуют. В проверенных нами материалах Foodvisor, MyFitnessPal, Lose It!, YAZIO, Lifesum, Calorie Mama и BiteSnap ни разу не назвали ошибку калорий, только процент распознавания или размер базы. Cal AI писал «90% точности», потом «80%», без определения, что это. SnapCalorie: «меньше 20%» в 2023 году, «около 15%» с 2025-го, набор блюд и формула не раскрыты.
Как точность поднимают#
Все хорошие результаты на графике получены одним из четырёх способов.
- Датчик глубины или второй ракурс. У Nutrition5k ошибка падает с 26% по одному фото до 19% с глубиной; с известной массой блюда — до 9,5%. Herzig получил 12,7% на iPhone с датчиком глубины.
- Список ингредиентов. ChatGPT-5 на тех же 195 блюдах: 30,5% только по фото и 13,9% с подробным описанием ингредиентов.
- Заданное меню. В работе Herzig пользователь выбирал продукт из списка, а модель считала только объём. Больничные и кафетерийные наборы работают так же.
- Ручные исправления. У CALO mama среднее смещение упало с 10% до 1,6% после правки пользователем. У Keenoa проверка диетологом сократила недобор с 19,5% до 15,6%.
Каждый способ добавляет информацию, которой не было в пикселях. Ничего из этого не делает сам снимок точнее.
Цена точности#
Подсказки работают, но кроме датчика глубины каждую из них вводит человек. Исследование Sahoo показывает разрыв: система распознала 86% блюд, а верно внесённых после исправлений оказалось 68% Sahoo 2025. Чтобы довести результат фото до правды, пользователь всё равно решает:
- то ли блюдо распознано;
- чего не хватает и что лишнее;
- как приготовлено;
- учтены ли масло, соус и сахар;
- сколько съедено.
Это тот же ввод, что и руками, только после того, как вы разобрались, что именно угадала модель. Одной общей поправкой это не лечится: на одном снимке система дорисовала заправку, на другом пропустила впитавшееся масло, на третьем угадала порцию и промахнулась с рецептом. Правило «моя камера обычно занижает на 15%» не работает, потому что каждый раз не хватает разных данных.
Фото сокращает поиск блюда, а проверять состав и порцию всё равно приходится. Эта проверка и есть основной ввод, и удобнее делать её один раз, в шаблоне знакомого блюда, чем после каждого снимка. Систематический обзор 52 работ пришёл к тому же: методы слишком разные для одной цифры точности, а инструменты не готовы к самостоятельному использованию Shonkoff 2023.
Как работает Calk#
Calk начинает с блюда, а не с его снимка. В шаблоне заранее стоят те параметры, которые снимок не видит и которые обычно меняются:
- белок или главный ингредиент;
- способ приготовления;
- масло, соус, сахар, соль и добавки;
- порция.
Сохраните блюдо в избранное через ♥. В следующий раз откройте его во вкладке еды и нажмите «Съесть», это два действия. Если изменилась одна деталь, поменяйте только её, и блюдо пересчитается. Состав виден целиком и редактируется, одинаковые параметры всегда дают одинаковое число, а изменившийся ингредиент назван прямо. Не нужно разбираться, что угадала модель, прежде чем это править.
Подробнее — в статье как работают шаблоны блюд и в сравнении способов подсчёта калорий.
Данные для журналистов и исследователей#
Всё, на чём стоит этот разбор, лежит в открытом виде: CSV и JSON, 164 записи, проверено 5 сентября 2026.
- 18 записей на графике, включая заявления компаний и личные тесты, с исходным числом из публикации, нашей формулой пересчёта, условиями теста и раскрытыми связями с разработчиком.
- 71 проверенная запись без точки на графике и причина: только распознавание, нет эталона, число в ккал без среднего блюда, перепечатка другого исследования, противоречивые таблицы.
- 75 отвергнутых кандидатов с причиной, включая сеть из 11 сайтов, которые выдают выдуманное «исследование» с несуществующим DOI за независимую проверку.
Для каждой записи: кто измерял, кто публиковал, дата публикации и теста, версия продукта, выборка, эталон, исходная метрика, цитата или таблица, цепочка перепечаток. Данные можно использовать и цитировать со ссылкой на Calk и эту статью. Нашли проверку, которой здесь нет, или ошибку в строке — напишите на support@calk.me с пометкой «press»: проверим и при необходимости обновим данные.


