Нейросеть считает калории по фото тарелки с едой на экране смартфона
Распознавание блюда и КБЖУ по фото — так работает Нутритрэк

Нейросеть считает калории по фото за 3–5 секунд — без взвешивания, без ручного поиска по базе. Но многие думают: «наверное, врёт». Это честный вопрос. Погрешность есть у любого метода — даже кухонные весы не учитывают потери при варке. Ниже — как именно работает распознавание еды по фото, где алгоритм уверен, а где стоит ему помочь, и почему домашние супы и салаты с майонезом — самый сложный случай.

Как нейросеть считает калории по фото: механика за 60 секунд

Когда ты отправляешь снимок тарелки, происходит несколько шагов почти одновременно. Сначала — распознавание блюда: модель компьютерного зрения определяет, что именно на фото. Борщ, гречка с котлетой, оливье — каждый вариант имеет характерный визуальный профиль. Затем результат сопоставляется с базой продуктов, где хранятся КБЖУ на 100 г.

Дальше — оценка порции. Это самый нетривиальный шаг. Алгоритм анализирует размер тарелки, заполненность, толщину слоя еды. Опорные точки — типичная посуда, пропорции. Не идеально, но лучше, чем «примерно полтарелки» на глаз.

После этого модель умножает граммаж на справочные значения КБЖУ и возвращает итог. Весь процесс — несколько секунд.

🧮

Формула проста: Калории = (г порции / 100) × ккал на 100 г. Та же математика, что при ручном подсчёте. Разница — в скорости и в том, кто делает оценку граммажа: ты или алгоритм.

Точность распознавания блюда у современных моделей высокая для типичных блюд с чётким визуальным профилем. Сложнее — с многослойными или смешанными блюдами: запеканка, солянка, домашние котлеты разного состава. Там разумно скорректировать вручную.

629 продуктов русской кухни: почему база важнее алгоритма

Даже самое точное распознавание бесполезно, если в базе нет нужного блюда или цифры взяты «средние по больнице». Когда мы собирали базу русской кухни, дошли до 629 позиций — и это не просто список. Борщ со сметаной, щи, рассольник, плов по-узбекски, оливье с майонезом «Провансаль» — у каждого блюда своя калорийность, которая сильно зависит от рецептуры.

Возьмём борщ. Постный — около 35–45 ккал/100 г. С мясом и ложкой сметаны — уже 65–80 ккал/100 г. Разница в полтора раза. Если база хранит только «среднее», ошибка гарантирована. Поэтому в нашей базе продуктов и КБЖУ у борща несколько вариантов с разными составами.

Практический вывод: чем точнее ты описываешь блюдо при подтверждении результата — «борщ со свининой, со сметаной» против просто «борщ» — тем точнее итог. Нейросеть делает первую версию. Ты её уточняешь.

Подробнее о том, как устроен подсчёт для составных рецептов, читай в статье как считать калории в готовых блюдах и рецептах.

Экран Нутритрэк с нормой калорий и КБЖУ

Не хочешь считать вручную?

Пройди минутный тест — Нутритрэк рассчитает твою норму калорий и КБЖУ и соберёт персональный план.

Узнать норму →
Смартфон наводят на тарелку домашней еды
Нейросеть распознаёт блюдо по фото и подставляет КБЖУ из базы.

Точность подсчёта по фото: честные цифры и сравнение методов

Сразу честно: абсолютной точности нет ни у одного метода. Даже лабораторный анализ блюда даёт погрешность, потому что один и тот же рецепт у разных хозяек — разный продукт.

Метод подсчётаТипичная погрешностьСкорость
Взвешивание + ручной поиск10–15%2–5 мин на блюдо
Оценка на глаз без инструментов30–50% и вышемгновенно
ИИ считает КБЖУ по фото15–25% для типичных блюд3–5 сек
Фото + ручная корректировка порции10–20%15–30 сек

Погрешность 15–25% звучит много. Но сравни с альтернативой: человек, который «считает на глаз», систематически занижает калорийность домашней еды — особенно там, где есть масло, майонез или сметана. Эти ингредиенты визуально незаметны, а калорийно весомы. Столовая ложка майонеза — это плюс 90–100 ккал к оливье, которые глаз не видит вообще.

По тому, что пользователи фотографируют в приложении, мы видим закономерность: чаще всего забывают про заправки и масло при жарке. Именно поэтому приложение отдельно спрашивает об этом при подтверждении блюда.

Где алгоритм ошибается чаще всего — и что с этим делать

Есть несколько ситуаций, где посчитать калории по фотографии сложнее всего. Не потому что алгоритм плохой — просто физика снимка не даёт нужной информации.

  • Супы. На фото видна поверхность. Сколько там мяса на дне, сколько картошки — неизвестно. Алгоритм опирается на типичный рецепт. Если твой борщ жирнее среднего — скорректируй.
  • Салаты с майонезом. Количество заправки визуально не определить. Оливье с тремя ложками майонеза и с половиной — разные блюда по калориям.
  • Домашняя выпечка. Пирог, блины, оладьи — состав теста у всех разный. Здесь лучше воспользоваться таблицей калорийности готовых блюд или ввести рецепт вручную.
  • Блюда под соусом. Паста под сливочным соусом, картошка с подливой — соус часто добавляет 50–150 ккал на порцию, но на фото сливается с основным блюдом.

Хорошая новость: приложение показывает, из чего сложился результат. Если видишь, что состав распознан неточно — поправь. Это занимает 10–15 секунд и делает итог куда надёжнее.

Как использовать распознавание еды по фото и не сойти с ума от точности

Главное, что стоит понять: цель не в том, чтобы попасть в ±5 ккал. Цель — видеть реальную картину питания и управлять ею. Для этого достаточно систематической точности, а не идеальной.

Если ты весишь 75 кг и хочешь сбросить 5 кг, твой дефицит — примерно 300–400 ккал в день (15–20% от нормы, которую считают по формуле Миффлина — Сан Жеора). Погрешность в 100–150 ккал на одном блюде не перекроет этот дефицит, если ты фиксируешь всё. Проблема не в погрешности алгоритма — проблема в блюдах, которые вообще не фиксируются. Горсть орехов на ходу. Хлеб к супу. Соус.

🧮

Норма белка при снижении веса: 1.6–2.2 г на кг массы тела. При 75 кг — это 120–165 г белка в день. Примерно: 200 г куриной грудки + 200 г творога 5% + 3 яйца. Приложение считает это автоматически при каждом добавлении блюда.

Используй калькулятор калорий, чтобы сначала понять свою норму. Потом — фотографируй каждый приём пищи. Не взвешивай с точностью до грамма, просто не пропускай. Через неделю увидишь паттерны, которые на глаз невидимы.

Частые вопросы

Насколько точно нейросеть считает калории по фото?

Для типичных блюд погрешность составляет 15–25% — это сравнимо с ручным подсчётом без взвешивания, но гораздо быстрее. Для сложных домашних блюд (супы, салаты с майонезом) точность выше, если уточнить состав вручную после распознавания.

Как ИИ определяет размер порции по фотографии?

Алгоритм анализирует размер посуды, заполненность тарелки и пространственные пропорции. Это не взвешивание, поэтому оценка граммажа — приблизительная. Если порция нестандартная, лучше скорректировать её вручную в приложении.

Можно ли посчитать калории по фотографии домашнего супа или борща?

Да, но с оговоркой: алгоритм видит только поверхность и опирается на типичный рецепт. Борщ с жирной свининой и борщ постный — разные блюда. Уточни вариант при подтверждении, и результат будет значительно точнее.

Что делать, если приложение неправильно распознало блюдо?

Скорректировать вручную — это занимает 10–15 секунд. Нажми на результат, измени название или состав. Ручная правка поверх автоматического распознавания — самый точный сценарий работы с приложением.

Чем отличается распознавание еды по фото от ручного ввода?

Скоростью и порогом входа: фото делается за секунду, ручной поиск требует знать название и вес блюда. По итоговой точности — сопоставимо, если корректировать результат. Фото лучше подходит для повседневного использования, ручной ввод — для блюд по точному рецепту.

Редакция Нутритрэк

Редакция Нутритрэк

Редакция Нутритрэк

Команда Нутритрэк разбирает питание простым языком: как считать калории и КБЖУ, какая норма твоя и как удержать результат без жёстких диет. Все статьи автора →