CarbCam – Jak to działa?
Jak działa CarbCam?
CarbCam robi zdjęcie, wysyła je do serwisu AI, otrzymuje oszacowanie składników, weryfikuje wartości za pomocą standardowych baz danych wartości odżywczych i wyświetla wynik.
Przegląd procesu
Proces w szczegółach
1 Robienie zdjęcia & lokalne kadrowanie
Zdjęcie pozostaje najpierw w całości na Twoim urządzeniu. Możesz je przyciąć, obrócić, zrobić od nowa. Dopiero po dotknięciu „Analizuj“ coś zostaje przesłane.
2 Zapytanie do pamięci podręcznej serwera (Precheck)
Zanim zdjęcie zostanie wysłane do AI, aplikacja sprawdza za pomocą hasha SHA-512 i hasha percepcyjnego, czy identyczne lub bardzo podobne zdjęcie już istnieje w pamięci podręcznej serwera. W przypadku trafienia otrzymujesz zapisany wynik natychmiast — bez kolejnego wywołania AI. Następny krok Confirm oznacza wpis w pamięci podręcznej jako zużyty (zliczanie limitu).
3 Przesyłanie do analizy AI
Jeśli nie ma trafienia w pamięci podręcznej, przycięte zdjęcie jest wysyłane do naszego punktu końcowego analizy. Tam wywoływany jest model wizyjny, który opisuje obraz, nazywa poszczególne składniki i szacuje przybliżone ilości.
4 Weryfikacja w tle (tylko przy niskiej pewności)
Jeśli szacunek AI zgłasza niską pewność, serwer uruchamia w tle krzyżową weryfikację z bazami danych wartości odżywczych (USDA FoodData Central, Open Food Facts). Skorygowane wartości trafiają do pamięci podręcznej — przy następnym trafieniu tego samego lub podobnego zdjęcia zobaczysz ulepszony wynik. Przy skanach z wysoką pewnością ten krok jest pomijany.
Dla kodów kreskowych porównanie z Open Food Facts / USDA jest jednak zawsze wykonywane bezpośrednio, ponieważ tabela wartości odżywczych producenta jest tutaj źródłem głównym.
5 Edycja przez Ciebie
Możesz nadpisać każdą wartość — ilość, węglowodany, kcal, FPE, składnik. Przy zapisywaniu używane są Twoje wartości, nie szacunek AI. Aplikacja zapisuje Twoją całkowitą korektę węglowodanów (Użytkownik: Xg vs AI: Yg) jako różnicę do celów statystycznych.
6 Zapisywanie & synchronizacja z Nightscout
Lokalnie w bazie danych SQLite. Opcjonalnie dodatkowo przez synchronizację Nightscout do Twojej instancji Nightscout — ale tylko jako Note w tabeli Treatment
(z tagiem carbcam lub 10becarbcam), nie jako aktywny Treatment węglowodanów/jednostek insuliny.
Obliczenia Loop/AAPS/iAPS nie są zmieniane przez zapisy CarbCam — posiłek jest widoczny tylko jako notatka.
Jeśli korzystasz z Managed Nightscout z ns.10be.de, konfiguracja jest szczególnie prosta: wpisz adres URL Nightscout i API secret — gotowe.
Jeśli chcesz, aby węglowodany były aktywnym Treatment, użyj przycisku Udostępnij w wyniku skanowania — wysyła on wartość węglowodanów przez Deep-Link do Loop/iAPS/Trio lub otwiera systemowy arkusz udostępniania.
Co to jest FPE?
FPE oznacza jednostki tłuszczowo-białkowe. Opisują one, ile energii z tłuszczu i białka wpływa z opóźnieniem na poziom glukozy we krwi.
Jedna FPE odpowiada ok. 100 kcal z tłuszczu i białka. Przykład:
- 30 g tłuszczu + 20 g białka = (270 + 80) ÷ 100 = 3,5 FPE
Użytkownicy pomp często wykorzystują FPE do parametryzacji bolusa przedłużonego (np. Square-Wave lub Dual-Wave). Użytkownicy penów mogą traktować FPE jako przybliżony wskaźnik późniejszej korekty przekąską lub niewielkiej korekty popołudniowej.
CarbCam wyświetla FPE jako żółtą etykietę na karcie wyniku. Kolory wartości odżywczych:
- KH Węglowodany
- kcal Kalorie
- FPE Jednostki tłuszczowo-białkowe
- Tłuszcz Tłuszcz
- Białko Białko
Krzywa BG pod posiłkiem
Jeśli Nightscout jest skonfigurowany, CarbCam ładuje dane BG z Twojej instancji Nightscout i wyświetla w zakładce Historia pod każdym posiłkiem krzywą poziomu glukozy. Okno czasowe zależy od platformy i jest automatycznie wybierane wokół posiłku. Razem z Nightscout, CarbCam umożliwia celowe śledzenie BG po posiłku.
Funkcje krzywej BG (dane Nightscout):
- Okno czasowe wokół posiłku (zależne od platformy)
- Znacznik momentu posiłku
- Szczyt wyróżniony kolorem (czerwony/żółty/zielony w zależności od wysokości)
- Wzrost i wartość końcowa jako wskaźniki
- IOB / COB jako opcjonalne linie nakładki
Dokładność
Dokładność zależy od rodzaju posiłku:
| Rodzaj posiłku | Typowe odchylenie | Przykłady |
|---|---|---|
| Proste porcje | ±20 % | Ryż, makaron, chleb |
| Złożone posiłki | ±30 % | Gulasze, zapiekanki |
| Bardzo nietypowe | ±40 % lub więcej | Nieznane dania regionalne |
| Produkty w opakowaniach | ±5 % | Automatyczne rozpoznawanie kodu kreskowego (wartość producenta) |
Co poprawia dokładność:
- Dobre oświetlenie & wyraźne zdjęcie — bez cieni na talerzu
- Całe składniki widoczne — nie zatapić makaronu w sosie
- Punkt odniesienia wielkości — zostaw krawędź talerza, sztućce, rękę w kadrze
- Standardowe dania — AI radzi sobie dobrze ze znanymi potrawami
Co pogarsza dokładność:
- Talerze z bufetu z wieloma małymi porcjami
- Składniki mocno zakryte sosem
- Bardzo nietypowe dania regionalne bez odpowiednika w bazach danych
- Zdjęcie z boku bez punktu odniesienia wielkości
Co to oznacza dla Twojego bolusa:
- Przy zwykłych posiłkach: szacunek jako punkt wyjścia, nałóż własną wiedzę, w razie potrzeby skoryguj wartość przed zapisaniem
- Przy krytycznych decyzjach bolusowych (bardzo dużo węglowodanów, ryzyko hipoglikemii): zawsze sięgnij po własną wiedzę / bazę danych / etykietę produktu
- Z pompą: zbieraj doświadczenie, o ile Twoje posiłki typowo odbiegają — i koryguj szacunek własnym współczynnikiem
Co działa offline?
Bez połączenia z internetem działają następujące funkcje:
- Przeglądanie i filtrowanie historii
- Ręczne tworzenie i edycja wpisów
- Wyświetlanie zakładki Statystyki
- Eksport danych (CSV/JSON)
- Robienie zdjęć i zapisywanie do późniejszej analizy
Poniższe funkcje wymagają połączenia:
- Analiza AI (zdjęcie jest wysyłane do dostawcy)
- Automatyczne rozpoznawanie kodów kreskowych (Open Food Facts)
- Synchronizacja z Nightscout (krzywa BG, przesyłanie Treatment)