CarbCam:工作原理是什麼?

CarbCam 是如何工作的?

CarbCam 獲取你的照片,將其傳送給 AI 服務,接收對各成分的估算結果, 將數值與標準營養資料庫進行校驗,然後將結果展示給你。

流程概覽

每次分析最多經過六個步驟:

1
拍照
2
裁剪
3
預檢查
4
AI 分析
5
校驗
6
儲存

流程視覺化演示:下方附有真實截圖以供對比:

CarbCam,掃描標籤頁

1. 掃描標籤頁

CarbCam,AI 分析中

2. AI 分析

CarbCam,結果

3. 結果

流程詳解

1 拍照與本地影象裁剪

照片最初完全保留在你的裝置上。你可以裁剪、旋轉,或重新拍攝。 在你點選“分析”之前不會上傳任何內容。

2 伺服器快取查詢(預檢查)

在圖片被髮送給 AI 之前,應用會透過 SHA-512 雜湊和感知雜湊 檢查伺服器快取中是否已存在相同或非常相似的照片。如果命中,你會立即得到 已儲存的結果,無需再次呼叫 AI。 隨後的確認步驟會將該快取條目標記為已消耗(計入額度)。

3 上傳給 AI 分析

如果沒有命中快取,(已裁剪的)照片會被髮送到我們的分析端點。 該端點會呼叫視覺模型(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 儲存操作的影響,這一餐僅以備註形式可見。 如果你使用ns.10be.de 的託管 Nightscout,設定會格外簡單:輸入 Nightscout 網址和 API 金鑰即可,完成。

如果你希望碳水資料主動作為治療記錄,請在掃描結果中使用分享按鈕, 它會透過深度連結將碳水數值傳送給 AAPS/AndroidAPS、Loop、iAPS 或 Trio,或開啟系統分享選單。

什麼是 FPE?

FPE 代表 脂肪蛋白質單位。 它描述了脂肪和蛋白質中的能量以延遲的方式對血糖產生的影響。

FPE = (脂肪 × 9 + 蛋白質 × 4) ÷ 100

1 個 FPE 大約相當於 100 千卡來自脂肪和蛋白質的能量。示例:

  • 30 克脂肪 + 20 克蛋白質 = (270 + 80) ÷ 100 = 3.5 FPE

胰島素泵使用者常用 FPE 來設定延時大劑量引數(例如方波或雙波)。 筆使用者可以將 FPE 作為粗略指標,用於判斷是否需要延遲加餐校正或小幅下午校正。

CarbCam 在結果卡片中以黃色標籤顯示 FPE。 營養數值配色如下:

  • Carbs 碳水化合物
  • kcal 卡路里
  • FPE 脂肪蛋白質單位
  • Fat 脂肪
  • Protein 蛋白質

餐食下方的血糖曲線

當配置了 Nightscout 後,CarbCam 會從你的 Nightscout 例項載入血糖資料, 並在歷史標籤頁中每餐下方展示血糖曲線。 時間視窗因平臺而異,會自動圍繞這一餐進行選擇。 結合 Nightscout,CarbCam 能夠實現有針對性的餐後血糖追蹤。

血糖曲線(Nightscout 資料)的功能特點:

  • 圍繞這一餐的時間視窗(因平臺而異)
  • 用餐時間的標記
  • 用顏色突出顯示的峰值點(紅/黃/綠,取決於數值高低)
  • 上升幅度和結束數值作為關鍵指標
  • IOB / COB 作為可選疊加線
這條曲線可以幫助你學習:你的身體對意麵有什麼反應?對披薩呢?對壽司呢? 透過歷史記錄中的對比功能,你可以疊加多條曲線進行比較。
血糖曲線需要有效的 Nightscout 連線。沒有 Nightscout 時,此部分不會顯示。 還沒有 Nightscout?在 NS10BE 設定託管 Nightscout 服務,即可立即將 CarbCam 連線起來。

準確性

準確度因餐食型別而異:

按餐食型別劃分的準確度
餐食型別 典型偏差 示例
清晰的分量 ±20% 米飯、意麵、麵包
複雜餐食 ±30% 燉菜、焗菜
非常不常見 ±40% 或更高 陌生的地區性菜餚
包裝食品 ±5% 自動條形碼識別(透過 Open Food Facts 獲取生產商數值)
有助於提升準確度的做法:
  • 良好的光線與清晰的照片:不要讓陰影遮住餐盤
  • 所有成分都清晰可見:不要讓醬汁把意麵完全淹沒
  • 比例參照物:將盤子邊緣、餐具或手放進畫面中
  • 常見菜品:AI 對廣為人知的菜品識別效果更好
會降低準確度的因素:
  • 自助餐盤上擺放著許多小份食物
  • 被醬汁大量覆蓋的成分
  • 沒有明確參考資料庫的非常不常見的地區性菜餚
  • 從側面斜角拍攝且沒有比例參照物
這對你的大劑量意味著什麼:
  • 對於普通餐食:將估算值作為起點,結合你自己的經驗,必要時在儲存前調整數值
  • 對於關鍵性的大劑量決策(極高碳水、低血糖風險):始終參考你自己的經驗、資料庫或包裝資訊
  • 使用胰島素泵:積累經驗,瞭解你的餐食通常會偏差多少,然後用你的個人係數校正估算值

離線時會發生什麼?

沒有網路連線時,以下功能可以正常使用:

  • 瀏覽和篩選歷史記錄
  • 手動建立和編輯條目
  • 檢視統計標籤頁
  • 匯出資料(CSV/JSON)
  • 拍照並加入佇列,稍後進行分析

以下功能需要網路連線:

  • AI 分析(照片會被髮送給提供商)
  • 自動條形碼查詢(Open Food Facts)
  • Nightscout 同步(血糖曲線、治療記錄上傳)