CarbCam은 사진을 받아 AI 서비스로 보내고, 구성 요소의 추정치를 받아 표준 영양 데이터베이스와 대조하여 값을 검증한 뒤 결과를 보여줍니다.
사진은 처음에 전적으로 기기에 남아 있습니다. 자르거나 회전하거나 다시 찍을 수 있습니다. “분석”을 누르기 전까지는 아무것도 업로드되지 않습니다.
이미지가 AI로 전송되기 전에, 앱은 SHA-512 해시와 지각적 해시를 통해 동일하거나 매우 유사한 사진이 서버 캐시에 이미 있는지 확인합니다. 일치하면 추가 AI 호출 없이 저장된 결과를 즉시 받습니다. 이어지는 확인 단계에서 캐시 항목이 사용됨으로 표시됩니다(할당량 계산).
캐시 일치가 없으면 (잘린) 사진이 당사 분석 엔드포인트로 전송됩니다. 비전 모델(앱 설정에서 선택한 대로 Gemini, Claude 또는 OpenAI)이 호출되어 이미지를 설명하고, 개별 구성 요소를 명명하고, 대략적인 양을 추정합니다.
AI 추정치가 낮은 신뢰도를 보고하면, 서버가 영양 데이터베이스 (USDA FoodData Central, Open Food Facts)와의 교차 확인을 백그라운드에서 시작합니다. 수정된 값은 캐시에 반영됩니다: 다음에 같거나 유사한 사진이 일치하면 개선된 결과를 봅니다. 신뢰도가 높은 스캔의 경우 이 단계는 생략됩니다.
다만 바코드의 경우, 제조사 영양표가 여기서 주요 출처이므로 Open Food Facts / USDA 비교가 항상 직접 수행됩니다.
어떤 값이든 재정의할 수 있습니다: 양, 탄수화물, kcal, FPE, 구성 요소. 저장할 때 AI 추정치가 아니라 사용자의 값이 사용됩니다. 앱은 통계 목적으로 총 탄수화물 보정(사용자: Xg vs AI: Yg)을 차이로 저장합니다.
로컬 SQLite 데이터베이스에 저장됩니다. 선택적으로 Nightscout 동기화를 통해 Nightscout 인스턴스에도 저장되지만, 처치 테이블에 메모로만
(CarbCam 태그와 함께) 저장되며 활성 탄수화물/인슐린 처치로는 저장되지 않습니다.
Loop/AAPS/iAPS 계산은 CarbCam 저장에 영향을 받지 않습니다: 식사는 메모로만 표시됩니다.
ns.10be.de의 관리형 Nightscout를 사용하면 설정이 특히 쉽습니다: Nightscout URL과 API 시크릿을 입력하면 완료입니다.
탄수화물을 처치로 적극적으로 반영하고 싶다면, 스캔 결과의 공유 버튼을 사용하세요: 딥 링크를 통해 탄수화물 값을 AAPS/AndroidAPS, Loop, iAPS 또는 Trio로 보내거나 시스템 공유 시트를 엽니다.
FPE는 지방-단백질 단위(Fat-Protein Units)를 의미합니다. 지방과 단백질의 에너지가 얼마나 지연되어 혈당에 영향을 미치는지를 나타냅니다.
1 FPE는 지방과 단백질에서 나오는 약 100 kcal에 해당합니다. 예시:
펌프 사용자는 종종 FPE를 사용하여 연장 볼루스 매개변수(예: 스퀘어웨이브 또는 듀얼웨이브)를 설정합니다. 펜 사용자는 FPE를 늦은 보정 간식이나 소규모 오후 보정의 대략적인 지표로 사용할 수 있습니다.
CarbCam은 결과 카드에서 FPE를 노란색 칩으로 표시합니다. 영양 값 색상:
Nightscout가 구성되어 있으면 CarbCam이 Nightscout 인스턴스에서 혈당 데이터를 불러와 기록 탭에서 각 식사 아래에 혈당 곡선을 표시합니다. 시간 창은 플랫폼에 따라 다르며 식사를 중심으로 자동으로 선택됩니다. Nightscout와 함께라면 CarbCam은 목표 지향적인 식후 혈당 추적을 가능하게 합니다.
혈당 곡선의 기능(Nightscout 데이터):
정확도는 식사 유형에 따라 달라집니다:
| 식사 유형 | 일반적인 편차 | 예시 |
|---|---|---|
| 명확한 1인분 | ±20 % | 밥, 파스타, 빵 |
| 복잡한 식사 | ±30 % | 스튜, 캐서롤 |
| 매우 특이함 | ±40 % 이상 | 알 수 없는 지역 요리 |
| 포장 제품 | ±5 % | 자동 바코드 감지(Open Food Facts를 통한 제조사 값) |
인터넷 연결 없이도 다음 기능이 작동합니다:
다음은 연결이 필요합니다: