基于 VLM 的食物卡路里识别系统-python+vlm

项目描述 基于 VLM 的食物卡路里识别系统
基于 VLM 的食物卡路里识别智能体 —— 拍照即可完成”认菜 → 估分量 → 算热量 → 多轮对话”全流程的中餐饮食分析工具。识别 50 类中餐,估算分量与卡路里,并支持带上下文记忆的多轮对话。

登录网址:http://localhost:7860/

项目功能
上传菜品或混合餐盘照片加文字提问,系统识别菜名并给出置信度,估计分量克重,计算热量与蛋白/脂肪/碳水三大宏量,右侧面板实时累积本餐总热量。支持多轮对话:共指消解(”它有多少热量””再来一份”)、低置信度主动反问、”只吃了一半”按比例改账、按减脂/增肌/维持/控糖目标给个性化建议。断网时自动退化为规则计算,流水线不依赖网络。

运行环境
Windows 10,Python 3.13,CPU 推理(无 GPU)。已装 torch 2.13、transformers、gradio 6.26、peft、accelerate、opencv、scikit-learn。当前以纯规则模式(–no-llm)启动,不需要 LLM token。首次识别会联网下载 Chinese-CLIP 模型。

项目技术
视觉识别用 Chinese-CLIP(零样本/少样本/LoRA 三模式),分量估计用 GrabCut 分割加面积比调制与类先验锚,营养查询查本地 50 类营养库,多轮对话由智能体主控编排(置信度门控、共指状态机、个性化适配),可选接入 glm-5.2 纯文本 LLM 做自然语言生成,所有 LLM 调用均带规则兜底。整体为”本地视觉 + 远程纯文本 LLM + 规则兜底”三层解耦架构,Web 界面基于 Gradio。

以上系统源码经过技术整理与调试,确保能正常运行

提供最优质的资源集合

立即查看 了解详情