CarbCam: Як це працює?
Як працює CarbCam?
CarbCam бере ваше фото, надсилає його до AI-сервісу, отримує оцінку компонентів, перевіряє значення за стандартними базами даних про харчування і показує вам результат.
Огляд процесу
Процес докладно
1 Зйомка фото та локальне обрізання зображення
Спочатку фото залишається повністю на вашому пристрої. Ви можете обрізати, повернути чи перезняти його. Нічого не завантажується, доки ви не натиснете «Аналізувати».
2 Запит до серверного кешу (попередня перевірка)
Перш ніж зображення взагалі буде надіслано до AI, застосунок перевіряє за допомогою хешу SHA-512 та перцептивного хешу, чи вже існує ідентичне або дуже схоже фото в серверному кеші. За наявності збігу ви одразу отримуєте збережений результат, без ще одного виклику AI. Наступний крок підтвердження позначає запис кешу як спожитий (підрахунок квоти).
3 Завантаження для аналізу AI
Якщо збігу в кеші немає, (обрізане) фото надсилається на нашу кінцеву точку аналізу. Там викликається vision-модель (Gemini, Claude або OpenAI, залежно від вашого вибору в параметрах застосунку), щоб описати зображення, назвати окремі компоненти та оцінити приблизні кількості.
4 Фонова перевірка (лише за низької впевненості)
Якщо AI-оцінка повідомляє про низьку впевненість, сервер запускає фонову перехресну перевірку за базами даних про харчування (USDA FoodData Central, Open Food Facts). Виправлені значення потрапляють у кеш: наступного разу, коли те саме чи схоже фото знайде збіг, ви побачите покращений результат. Для сканувань із високою впевненістю цей крок пропускається.
Однак для штрихкодів порівняння з Open Food Facts / USDA завжди виконується безпосередньо, оскільки поживна таблиця виробника тут є основним джерелом.
5 Редагування вами
Ви можете перевизначити будь-яке значення: кількість, вуглеводи, ккал, FPE, компонент. Під час збереження використовуються ваші значення, а не AI-оцінка. Застосунок зберігає вашу загальну поправку вуглеводів (Користувач: Xг проти AI: Yг) як різницю для статистичних цілей.
6 Збереження та синхронізація з Nightscout
Локально в базі даних SQLite. За бажанням також через синхронізацію з Nightscout у ваш екземпляр Nightscout, але лише як нотатку в таблиці лікувальних записів
(з тегом CarbCam), не як активний лікувальний запис вуглеводів/інсуліну.
Ваші розрахунки Loop/AAPS/iAPS не зазнають впливу від збережень CarbCam: страва видима лише як нотатка.
Якщо ви користуєтеся керованим Nightscout від ns.10be.de, налаштування особливо просте: введіть URL-адресу Nightscout та секрет API, готово.
Якщо ви хочете, щоб вуглеводи були активним лікувальним записом, скористайтеся кнопкою Поділитися в результаті сканування: вона надсилає значення вуглеводів через deep link до AAPS/AndroidAPS, Loop, iAPS чи Trio або відкриває системне вікно поширення.
Що таке FPE?
FPE означає жиро-білкові одиниці. Вони описують, скільки енергії від жирів та білків впливає на глюкозу крові із затримкою.
Одна FPE дорівнює приблизно 100 ккал від жирів та білків. Приклад:
- 30 г жиру + 20 г білка = (270 + 80) ÷ 100 = 3.5 FPE
Користувачі помп часто використовують FPE для налаштування параметрів подовженого болюсу (наприклад, квадратна чи подвійна хвиля). Користувачі шприц-ручок можуть використовувати FPE як приблизний орієнтир для пізнього коригувального перекусу чи невеликої післяобідньої корекції.
CarbCam показує FPE як жовтий чип у картці результату. Кольори поживних значень:
- Вуглеводи Вуглеводи
- ккал Калорії
- FPE Жиро-білкові одиниці
- Жир Жир
- Білок Білок
Крива глюкози під стравою
Коли Nightscout налаштований, CarbCam завантажує дані глюкози з вашого екземпляра Nightscout і показує криву глюкози крові у вкладці історії під кожною стравою. Часове вікно залежить від платформи і автоматично обирається навколо прийому їжі. Разом із Nightscout, CarbCam дає змогу цілеспрямовано відстежувати глюкозу після їжі.
Можливості кривої глюкози (дані Nightscout):
- Часове вікно навколо прийому їжі (залежить від платформи)
- Маркер часу прийому їжі
- Пік, точка виділена кольором (червоний/жовтий/зелений залежно від рівня)
- Підйом та кінцеве значення як ключові метрики
- IOB / COB як необовʼязкові накладені лінії
Точність
Точність залежить від типу страви:
| Тип страви | Типове відхилення | Приклади |
|---|---|---|
| Чіткі порції | ±20 % | Рис, паста, хліб |
| Складні страви | ±30 % | Рагу, запіканки |
| Дуже незвичні | ±40 % або більше | Невідомі регіональні страви |
| Пакетовані продукти | ±5 % | Автоматичне розпізнавання штрихкоду (значення виробника через Open Food Facts) |
Що покращує точність:
- Хороше освітлення та чітке фото: без тіней над тарілкою
- Усі компоненти видимі: не топіть пасту в соусі
- Орієнтир розміру: залиште в кадрі край тарілки, столові прибори чи руку
- Стандартні страви: AI добре справляється з добре відомими стравами
Що знижує точність:
- Тарілки з буфету з багатьма маленькими купками
- Компоненти, сильно вкриті соусом
- Дуже незвичні регіональні страви без чіткої довідкової бази
- Зняті під кутом збоку без орієнтира розміру
Що це означає для вашого болюсу:
- Для звичайних страв: використовуйте оцінку як відправну точку, застосовуйте власні знання і за потреби коригуйте значення перед збереженням
- Для критичних рішень щодо болюсу (дуже багато вуглеводів, ризик гіпо): завжди звіряйтеся з власними знаннями / базою даних / упаковкою
- З помпою: набирайтеся досвіду, наскільки зазвичай відхиляються ваші страви, а потім коригуйте оцінку своїм особистим коефіцієнтом
Що відбувається офлайн?
Без підключення до інтернету працюють такі функції:
- Перегляд та фільтрування історії
- Ручне створення та редагування записів
- Перегляд вкладки статистики
- Експорт даних (CSV/JSON)
- Зйомка фото та додавання їх у чергу для пізнішого аналізу
Для наступного потрібне підключення:
- Аналіз AI (фото надсилається провайдеру)
- Автоматичний пошук за штрихкодом (Open Food Facts)
- Синхронізація з Nightscout (крива глюкози, завантаження лікувальних записів)