Насколько надежна оценка порций Cal AI? Аудит весов и оценок ИИ
Мы взвесили 20 продуктов на кухонных весах, сфотографировали их через Cal AI и сравнили оценки порций приложения с фактическими измеренными весами. Вот насколько точна и последовательна оценка порций Cal AI.
Cal AI — это приложение для отслеживания калорий на основе фотографий, использующее компьютерное зрение для оценки порций еды и калорий по снимкам. Основное обещание приложения заключается в том, что вы можете полностью отказаться от взвешивания и измерения пищи — просто сфотографируйте свою тарелку, а ИИ позаботится об остальном. Это привлекательное предложение, которое убирает самую утомительную часть отслеживания калорий. Однако оно зависит от решения фундаментальной проблемы компьютерного зрения: оценки трехмерного размера и веса объекта по двумерному изображению.
Надежность оценки порций означает, что оцененный ИИ вес или объем близок к фактически измеренному количеству. Это также подразумевает последовательность — фотографирование одной и той же еды несколько раз должно давать одинаковую оценку каждый раз. Мы протестировали оба аспекта, взвесив 20 продуктов на откалиброванных кухонных весах, сфотографировав их через Cal AI и сравнив результаты.
Фундаментальная проблема: 3D-оценка по 2D-изображению
Прежде чем рассмотреть результаты теста, стоит понять, почему эта проблема по своей сути сложна. Фотография сжимает три измерения в два. Информация о глубине, высоте и объеме частично теряется. Кучка риса высотой 3 сантиметра выглядит идентично на фотографии кучке высотой 2 сантиметра, если угол съемки сжимает разницу.
ИИ должен выводить недостающее измерение на основе контекстуальных подсказок: размера тарелки, тени, отбрасываемой едой, относительных пропорций известных объектов в кадре и сопоставления с обучающими данными. Каждый из этих шагов вывода вносит потенциальную ошибку. Исследование, опубликованное в International Journal of Food Sciences and Nutrition (2021), показало, что даже обученные диетологи, оценивающие порции по фотографиям, достигали лишь 50-70% точности, что говорит о том, что визуальная оценка порций по своей природе неточна, независимо от того, выполняет ее человек или ИИ.
Это не критика конкретно Cal AI. Это базовая проблема, с которой сталкивается любая система оценки порций на основе фотографий. Вопрос в том, сколько ошибок производит это фундаментальное ограничение на практике и достаточно ли они малы, чтобы данные о калориях были полезными.
Методология тестирования: вес, измеренный весами, против оценки Cal AI
Мы выбрали 20 продуктов из шести категорий: однородные предметы (предсказуемая форма и размер), неправильные твердые вещества (переменная форма), продукты в кучках, жидкости, продукты в контейнерах и многокомпонентные блюда на тарелке. Каждый продукт был взвешен на откалиброванных кухонных весах с точностью до 1 грамма.
Каждый продукт затем помещался на стандартную белую обеденную тарелку диаметром 26 сантиметров (если не указано иное) и фотографировался через Cal AI под углом 45 градусов на расстоянии примерно 30 сантиметров. Мы записали оцененный размер порции и количество калорий, затем вычислили отклонение от фактических измеренных значений.
Точность оценки порций: оценка Cal AI против фактического веса
Результаты полного теста надежности
| Продукт | Фактический вес | Оценка Cal AI | Отклонение в весе | Отклонение % | Фактические калории | Калории Cal AI | Влияние на калории |
|---|---|---|---|---|---|---|---|
| Ломтик хлеба | 38 г | 40 г | +2 г | +5.3% | 95 | 100 | +5 |
| Большое вареное яйцо | 50 г | 50 г | 0 г | 0.0% | 78 | 78 | 0 |
| Протеиновый батончик (без упаковки) | 60 г | 55 г | -5 г | -8.3% | 210 | 193 | -17 |
| Куриная грудка, жареная | 174 г | 140 г | -34 г | -19.5% | 287 | 231 | -56 |
| Стейк, жареный | 225 г | 175 г | -50 г | -22.2% | 573 | 446 | -127 |
| Филе лосося, запеченное | 168 г | 145 г | -23 г | -13.7% | 349 | 302 | -47 |
| Вареный белый рис | 210 г | 180 г | -30 г | -14.3% | 232 | 199 | -33 |
| Вареная паста | 240 г | 195 г | -45 г | -18.8% | 374 | 304 | -70 |
| Картофельное пюре | 200 г | 160 г | -40 г | -20.0% | 224 | 179 | -45 |
| Салат из смешанных зеленых овощей | 120 г | 95 г | -25 г | -20.8% | 19 | 15 | -4 |
| Апельсиновый сок в стакане | 250 мл | 200 мл | -50 мл | -20.0% | 112 | 90 | -22 |
| Кофе с молоком в кружке | 350 мл | 250 мл | -100 мл | -28.6% | 58 | 41 | -17 |
| Суп в миске | 400 мл | 300 мл | -100 мл | -25.0% | 160 | 120 | -40 |
| Миндаль в маленькой миске | 35 г | 28 г | -7 г | -20.0% | 204 | 163 | -41 |
| Смесь орехов в миске | 55 г | 42 г | -13 г | -23.6% | 264 | 201 | -63 |
| Йогурт в контейнере | 170 г | 150 г | -20 г | -11.8% | 100 | 88 | -12 |
| Яблоко, целое | 182 г | 170 г | -12 г | -6.6% | 95 | 89 | -6 |
| Половина авокадо | 68 г | 75 г | +7 г | +10.3% | 109 | 120 | +11 |
| Арахисовое масло на тосте | 18 г (только АМ) | 12 г | -6 г | -33.3% | 105 | 70 | -35 |
| Тарелка с курицей + рисом + брокколи | 440 г всего | 365 г всего | -75 г | -17.0% | 542 | 450 | -92 |
Статистика резюме:
- Среднее абсолютное отклонение: 16.9%
- Медианное отклонение: 19.2%
- Смещение недооценки: 18 из 20 продуктов были недооценены
- Среднее влияние на калории: 37 калорий на продукт
- Продукты с точностью в пределах 10%: 5 из 20 (25%)
- Продукты с отклонением более 20%: 8 из 20 (40%)
Результаты показывают четкий и последовательный шаблон. Cal AI недооценил размеры порций в 18 из 20 протестированных продуктов. Среднее отклонение составило 16.9%, но это среднее скрывает серьезность для конкретных категорий. Неправильные мясные продукты (куриная грудка, стейк) показали недооценку в 19-22%. Порционные продукты (рис, паста, картофельное пюре) показали недооценку в 14-20%. Жидкости показали недооценку в 20-29%.
Где оценка порций надежна
Оценки Cal AI были наиболее точными для продуктов с однородными, предсказуемыми формами и стандартизированными размерами.
Однородные предметы
Ломтик хлеба, вареное яйцо и яблоко все находятся в пределах 5-10% от фактического веса. Эти продукты имеют постоянные формы, которые хорошо захватываются обучающими данными ИИ. Ломтик хлеба примерно одинаковой толщины и размеров независимо от бренда. Большое яйцо — это большое яйцо. Обучающие данные ИИ включают тысячи изображений этих предметов, и их предсказуемая геометрия делает оценку глубины менее критичной.
Стандартизированные упакованные продукты
Протеиновый батончик, несмотря на то что был без упаковки, был оценен с отклонением в 8.3% от фактического веса. Его прямоугольная форма и стандартизированные размеры делают его визуально предсказуемым. Продукты с регулярными геометрическими формами последовательно превосходили неправильные продукты в наших тестах.
Общий фактор в том, что у этих продуктов низкая изменчивость формы. Когда вы видели один ломтик хлеба, вы, по сути, видели их все. ИИ может полагаться на запомненные типичные размеры, а не выводить размеры из контекстуальных подсказок.
Где оценка порций ненадежна
Неправильные формы: проблема стейка и курицы
Жареный стейк был недооценен на 22.2%, что привело к ошибке в 127 калорий для одного продукта. Куриная грудка была недооценена на 19.5%, что составило ошибку в 56 калорий. Это одни из самых часто регистрируемых продуктов для людей, отслеживающих потребление белка.
Неправильные формы сложны, потому что толщина варьируется по всему продукту. Куриная грудка сужается от толстой середины к тонким краям. С верхней или наклонной фотографии ИИ захватывает площадь поверхности, но недооценит толщину в центре. В результате получается систематическое недоучет, который затрагивает белковые продукты с высокой калорийностью — именно те продукты, для которых точность имеет наибольшее значение для отслеживания макронутриентов.
Продукты в кучках: рис, паста и картофель
Вареный рис, паста и картофельное пюре были недооценены на 14-20%. Эти продукты накапливаются с значительной высотой, которую 2D-фотография сжимает. Порция риса на тарелке может быть 4 сантиметра в высоту на пике, но фотография, сделанная под углом 45 градусов, сглаживает это в то, что кажется гораздо более тонким слоем.
База данных USDA FoodData Central указывает, что вареный белый рис содержит 130 калорий на чашку (186 г). Недооценка на 14.3% для порции в 210 граммов переводится в 33 недостающие калории — а большинство людей едят рис как один из компонентов более крупного блюда. Ошибки накапливаются для каждого продукта в кучке на тарелке.
Жидкости: проблема невидимого объема
Жидкости были наименее надежно оцененной категорией, с отклонениями в 20-29%. Стакан апельсинового сока был недооценен на 20%. Кофе с молоком в кружке был недооценен на 28.6%. Суп в миске был недооценен на 25%.
Проблема проста: ИИ может видеть поверхность жидкости, но не может определить глубину контейнера. Широкая, мелкая миска и узкая, глубокая миска могут представлять идентичные поверхности на фотографии, в то время как содержат совершенно разные объемы. Не зная размеров контейнера, оценка объема ИИ по сути является догадкой.
Проблема угла: одна и та же еда, разные оценки
Помимо теста точности для каждого продукта, мы исследовали, производит ли Cal AI последовательные оценки, когда одна и та же еда фотографируется под разными углами.
Тест на последовательность угла: жареная куриная грудка (174 г фактический)
| Угол фотографии | Оценка Cal AI | Отклонение от фактического |
|---|---|---|
| 45 градусов (стандартный) | 140 г | -19.5% |
| Прямо сверху (90 градусов) | 155 г | -10.9% |
| Низкий угол (20 градусов) | 125 г | -28.2% |
| Боковой угол (10 градусов) | 110 г | -36.8% |
Одна и та же куриная грудка весом 174 грамма дала оценки от 110 до 155 граммов в зависимости от угла съемки — разброс в 45 граммов. Наиболее точный результат был получен с верхнего угла, так как он захватывает всю площадь поверхности, но даже это было не точно почти на 11%. Низкие и боковые углы значительно недооценили порцию, поскольку высота и глубина еды становились все более сжатыми.
Это означает, что количество калорий, которое получает пользователь, частично определяется тем, как он держит телефон, а не только тем, что он ест. Пользователь, который обычно фотографирует еду под низким углом, будет постоянно недооценивать калории по сравнению с пользователем, который фотографирует сверху.
Иллюзия размера тарелки: одна и та же порция, разные тарелки
Мы проверили, влияет ли размер тарелки на оценку порции Cal AI, разместив 200 граммов вареной пасты на трех разных тарелках.
Тест на размер тарелки: 200 г вареной пасты
| Диаметр тарелки | Оценка Cal AI | Отклонение |
|---|---|---|
| 20 см (маленькая тарелка) | 225 г | +12.5% |
| 26 см (стандартная тарелка) | 195 г | -2.5% |
| 32 см (большая тарелка) | 155 г | -22.5% |
Одни и те же 200 граммов пасты были оценены в 225 граммов на маленькой тарелке и 155 граммов на большой тарелке — разница в 70 граммов только из-за размера тарелки. Это иллюзия Дельбёфа, хорошо задокументированное перцептивное искажение, при котором объекты кажутся больше, когда они окружены маленькой рамкой, и меньше, когда они окружены большой рамкой. ИИ усвоил это же искажение из своих обучающих данных, которые состоят из фотографий еды, где размер тарелки коррелирует с воспринимаемым размером порции.
Для пользователей, которые едят с больших ресторанных тарелок или сервировочных мисок, это означает, что Cal AI будет систематически недооценивать их порции. Для пользователей, которые едят с маленьких десертных тарелок, приложение будет переоценивать. Ни одна из групп не получает точного подсчета того, что они на самом деле потребили.
Тест на последовательность: одна и та же еда, пять фотографий
Мы сфотографировали одну порцию жареной куриной грудки с рисом и брокколи (542 фактические калории) пять раз подряд, слегка изменяя угол телефона каждый раз.
Тест на последовательность пяти фотографий
| Номер фото | Общие калории Cal AI | Отклонение от фактического |
|---|---|---|
| 1 | 450 | -17.0% |
| 2 | 478 | -11.8% |
| 3 | 435 | -19.7% |
| 4 | 462 | -14.8% |
| 5 | 448 | -17.3% |
Пять фотографий одного и того же блюда дали пять разных оценок калорий, варьирующихся от 435 до 478 — разброс в 43 калории. Среднее значение составило 455 калорий, недооценив фактические 542 калории на 16.1%. Ни одна фотография не дала результат в пределах 10% от фактического содержания калорий.
Этот тест демонстрирует одновременно проблемы точности и последовательности. Оценки последовательно слишком низкие (неудача в точности), и они варьируются между фотографиями идентичной еды (неудача в последовательности). Пользователь, регистрирующий это блюдо, получает разное число в зависимости от того, какую из пяти фотографий он делает.
Как ежедневные ошибки накапливаются
Индивидуальные ошибки по каждому продукту в нашем тестировании составляют в среднем 37 калорий. Это может показаться незначительным, пока вы не учтете, что типичный день включает в себя регистрацию 10-15 отдельных продуктов на три приема пищи и перекусы.
Сценарий ежедневного накопления
| Прием пищи | Зарегистрированные продукты | Фактические калории | Общая сумма Cal AI | Кумулятивная ошибка |
|---|---|---|---|---|
| Завтрак (овсянка, банан, арахисовое масло) | 3 предмета | 445 | 385 | -60 |
| Обед (курица, рис, овощи) | 3 предмета | 542 | 450 | -92 |
| Перекус (миндаль, йогурт) | 2 предмета | 304 | 251 | -53 |
| Ужин (стейк, картофельное пюре, салат) | 3 предмета | 816 | 640 | -176 |
| Ежедневная сумма | 11 предметов | 2,107 | 1,726 | -381 |
Недостаток в 381 калорию за день. Это 18.1% от общего потребления — дефицит, которого не существует. Пользователь, планирующий ежедневный дефицит в 500 калорий для похудения, на самом деле оказывается в дефиците в 119 калорий после учета недооценки Cal AI. При такой скорости запланированная потеря в 1 фунт в неделю превращается в 0.24 фунта в неделю. Месяц дисциплинированного отслеживания дает результаты за одну неделю, и пользователь не имеет возможности понять, почему.
Исследования, опубликованные в American Journal of Clinical Nutrition, последовательно показывают, что недооценка потребления пищи является наиболее распространенным направлением ошибки в оценке диеты, и системы ИИ, обученные на данных, размеченных людьми, унаследуют этот уклон.
Как Nutrola решает проблему оценки порций иначе
Подход Nutrola к проблеме оценки порций заключается в том, чтобы рассматривать фото ИИ как отправную точку, а не окончательный ответ. Фото-распознавание приложения идентифицирует продукты и сопоставляет их с проверенной базой данных, содержащей более 1.8 миллиона записей, устанавливая точные значения калорий на грамм. Но вместо того чтобы полагаться исключительно на ИИ для оценки размера порции, Nutrola предоставляет слой голосовой коррекции.
После фотографирования вашего блюда вы можете сказать: "на самом деле это было около 200 граммов курицы" или "рис был примерно в одну чашку". Запись обновляется мгновенно на основе проверенных данных о питательных веществах на грамм. Это занимает секунды — быстрее, чем ручной поиск — и решает фундаментальное ограничение, что ни один ИИ не может точно оценить 3D-объем по 2D-изображению.
Проверенная база данных является критически важным отличием. Даже когда оценка порции идеальна, количество калорий зависит от надежности данных о питательных веществах, на которые она ссылается. База данных Nutrola содержит одну проверенную запись на продукт, полученную из данных, проверенных диетологами, без дублирующихся или конфликтующих записей. Сочетание фото-идентификации, голосовой коррекции порций и проверенных данных создает записи калорий, которые отражают то, что вы на самом деле съели, а не то, что ИИ угадал по фотографии.
Nutrola также включает сканирование штрих-кодов для упакованных продуктов и импорт рецептов для домашних блюд, обеспечивая постоянное качество данных для каждого метода регистрации. Доступно на iOS и Android за 2.50 евро в месяц без рекламы на любом плане, Nutrola разработана на принципе, что скорость и точность не являются взаимоисключающими.
Часто задаваемые вопросы
Насколько точен Cal AI для подсчета калорий?
В нашем тестировании 20 продуктов оценки порций Cal AI отклонились от фактических измеренных весов в среднем на 16.9%. Это привело к средней ошибке в калориях в 37 калорий на отдельный продукт. Только 25% продуктов (5 из 20) были оценены с точностью в пределах 10%. Приложение показало сильное смещение недооценки, недооценив порции для 18 из 20 протестированных продуктов. За полный день питания эти ошибки по каждому продукту сложились в недооценку в 381 калорию в нашем сценарии тестирования.
Почему Cal AI дает разные калории для одного и того же блюда?
Оценки Cal AI изменяются в зависимости от угла фотографии, освещения и кадрирования, потому что он выводит размер порции в 3D из 2D-изображения. В нашем тесте на последовательность пять фотографий одного и того же блюда дали оценки калорий, варьирующиеся от 435 до 478 — разброс в 43 калории. Угол камеры имеет наибольшее влияние: наш тест угла показал, что одна куриная грудка была оценена в 110 граммов с бокового угла против 155 граммов с прямого сверху.
Является ли Cal AI более точным для некоторых продуктов, чем для других?
Да. Cal AI наиболее точен для продуктов с однородными, предсказуемыми формами: нарезанный хлеб (отклонение 5.3%), вареные яйца (0% отклонение) и целые фрукты (отклонение 6.6%). Наименее точен для неправильно сформированных мясных продуктов (отклонение 19-22%), порционных продуктов, таких как рис и паста (отклонение 14-20%), и жидкостей (отклонение 20-29%). Если ваш рацион в основном состоит из простых, однородных продуктов, приложение будет более надежным, чем если вы едите сложные, многокомпонентные блюда.
Влияет ли размер тарелки на оценку калорий Cal AI?
Да. В нашем тесте на размер тарелки 200 граммов пасты были оценены в 225 граммов на маленькой тарелке диаметром 20 сантиметров и 155 граммов на большой тарелке диаметром 32 сантиметра — разница в 70 граммов для идентичной порции. Это вызвано иллюзией Дельбёфа, при которой окружающий контекст изменяет воспринимаемый размер объекта. Пользователи, которые едят с больших тарелок или ресторанных блюд, будут постоянно видеть недооцененные порции.
Могу ли я использовать Cal AI для похудения?
Cal AI может предоставить грубое представление о калориях, но его систематическая недооценка делает его проблематичным для точного дефицита для похудения. В нашем ежедневном сценарии запланированный дефицит в 500 калорий был сокращен до эффективного 119 калорий после учета недооценки Cal AI — снижение на 76% от запланированного дефицита. Для более надежных результатов сочетайте фото-отслеживание с фактическим взвешиванием пищи или используйте приложение, такое как Nutrola, которое сочетает фото ИИ с голосовой коррекцией порций и проверенной базой данных о питательных веществах.
Готовы трансформировать отслеживание питания?
Присоединяйтесь к тысячам тех, кто изменил свой путь к здоровью с Nutrola!