个人开源项目 · 多模态应用

LightCal 食光 AI 饮食与健康记录

面向个人饮食与健康记录,从相册照片识别食物并估算克重与营养,支持逐项校正后保存,汇总饮食、饮水、运动与体重等日常记录。

用户问题

记录一餐需要查找食物、填写份量并核对营养,混合餐食和剩余量也需要分别处理。项目探索用照片生成可修改的餐食条目,降低手动整理的步骤。

食物种类、烹饪方式与份量会影响估算,因此将用户校正和确认保存放入主流程。

我的工作与协作

构建 SwiftUI 客户端与 FastAPI 后端,串联照片分析、结果校正、餐食确认和每日汇总;支持食物搜索、手动记录、条码查询及多类健康记录。

整理 README、配置示例、Docker 和 CI,形成可复现运行的 MIT 开源项目。

产品流程

默认使用 Qwen 视觉模型直接估算:上传照片并预处理,逐项返回食物、数量、烹饪方式、置信度、克重与营养;后端解析结果、合并重复项并执行规则校正。

用户检查或修改后独立保存至 SQLite 饮食记录;支持剩余量调整与摄入重算,并与饮水、运动、体重等记录汇总展示。

关键决策

  • 将营养和克重呈现为估算值,保留逐项修改入口,由用户确认后保存。
  • 将模型分析与记录保存分开,便于用户复核和纠错。
  • 区分普通照片主路径与深度识别实验路线;默认通过相册识别,当前相机深度拍摄需要有效深度数据和 GPU 服务。

结果与迭代

查看手机外框演示 ↗ :点击手机里的“+”可展开实际快捷菜单,浏览相册选图、文字描述、手动添加、条码、搜索食物、常吃收藏及运动等页面。首页、记录、发现与我的均已重新截图,共收录 16 张未改动的 App 截图;相机与收藏保留开发环境的真实异常状态。拍照与文字的复核、保存步骤及语音使用条件仍为明确标注的说明。网页只切换预览,识别、录音和保存需运行 App。

  • 已公开发布 het2333/lightcal ,采用 MIT 许可证。
  • 2026.10.15 的 GitHub CI 通过,包括 264 项 Python 自动化测试与 iOS 模拟器编译。
  • 自动化测试使用测试替身,验证接口和业务逻辑;该结果不代表真实餐食的营养估算准确率。

当前阶段

面向个人使用和开发研究的单用户原型。开源仓库包含小型食物示例库,模型服务、完整数据库与可选 GPU 深度服务需单独配置。

下一步验证

完善相机普通照片回退,建立有标注的真实餐食评测集,并收集用户对估算结果的修改记录。营养估算误差、真实使用反馈与留存数据待补充。

多模态接口与记录保存

SwiftUI 客户端连接 FastAPI;默认相册图片通过 POST /v6/describeMeal 进入 Qwen 视觉分析。后端解析结构化食物结果,合并重复项并执行规则校正;用户逐项修改、确认后独立保存 SQLite 记录。

当前为单用户原型。相机深度路线需要有效深度与 GPU 服务;自动化测试使用测试替身,不代表真实营养估算精度。