【计算机毕设/任务书-免费领取源码】 基于SpringBoot的“懒人美食帮”极简烹饪与智能食谱推荐平台的设计与实现

1. 研究目的
构建面向“懒人”的极简化、标准化智能食谱引擎:将复杂的烹饪流程解构为“备料-制作”两大核心模块,设计步骤极简(≤5步)、耗时极短(≤15分钟)、工具极简(仅基础厨具)的“懒人食谱”。利用AI图像识别与自然语言处理技术,实现用户上传食材图片即可获得“用现有食材能做啥”的智能食谱推荐,极大降低烹饪的决策与启动成本。
打造个性化、场景化的营养饮食规划与智能购物助手:基于用户的身体数据(年龄、性别、体重、目标)、口味偏好、饮食禁忌及时间预算,自动生成“一周懒人食谱计划”,并一键生成对应食材购物清单。与生鲜电商平台API对接,实现“食谱直达购物车”的无缝体验,解决“吃什么”和“买什么”的核心难题。
创建互动式、游戏化的沉浸式烹饪引导与学习社区:通过短视频、GIF动图、计时器、语音指导等富媒体形式,提供沉浸式、无干扰的“手把手”烹饪引导。引入“烹饪打卡挑战”、“黑暗料理大赛”、“食材消灭计划”等游戏化任务与社区活动,激励用户坚持烹饪,形成“学-做-晒-评”的UGC内容生态,营造积极有趣的烹饪氛围。
探索食材边角料创新利用与减少食物浪费的解决方案:建立“边角料改造”知识库,提供将常见剩余食材(如西兰花根、胡萝卜头)转化为美味小食的创意食谱。通过数据分析预测用户剩菜可能性并提前推送解决方案,引导用户进行可持续的、创造性的烹饪实践,赋予平台环保与社会责任价值。
2. 研究要求
用户角色与核心用例分析:
平台运营/审核员: 内容审核:审核用户提交的食谱与社区内容,确保质量、安全性与合规性。
社区运营:策划与执行线上活动(如#早餐挑战#),管理话题,维护社区氛围。
数据监控:监测食谱流行度、用户行为数据,识别优质创作者与内容。
美食内容创作者/达人: 食谱发布:上传符合“极简”标准的原创食谱(需包含分步图文/视频、食材清单、难度标签)。
个人主页:管理发布的食谱,展示粉丝与互动数据,建立个人品牌。
互动与变现:回复粉丝评论,可参与平台“达人食谱”计划获得激励(如流量、实物)。
智能找菜:拍摄冰箱/厨房现有食材照片,获取智能食谱推荐;搜索“快手段”、“低脂”、“微波炉”等条件筛选食谱。 烹饪新手/懒人用户:
极简烹饪:跟随步骤极简、多媒体(短视频/GIF)引导的食谱操作,使用内置计时器,记录烹饪心得与成品照片。
饮食规划:设定个人健康目标,获取个性化一周食谱计划,一键生成并同步购物清单到电商APP。
社区互动:分享烹饪成果,参与话题挑战,关注美食达人,收藏食谱。
系统管理员:负责系统配置、用户管理、数据安全、接口维护。
功能性需求:
智能食谱发现与推荐:支持基于图像识别的食材推荐、多维度条件搜索、个性化首页推荐流。
结构化食谱创建与沉浸式引导:提供富媒体食谱编辑器,支持步骤化、计时器、多媒体的烹饪引导。
个性化饮食计划与智能购物:支持基于用户画像生成食谱计划,并一键导出购物清单(支持对接电商)。
游戏化社区与UGC生态:支持用户发布动态、参与挑战、互动,构建活跃社区。
后台内容与数据管理:为运营提供食谱审核、用户管理、活动运营、数据分析功能。
非功能性需求:
极致的用户体验与性能:首页加载、图片/视频加载需流畅,食谱引导步骤需清晰无歧义,操作路径极简。
智能识别的准确性与实时性:图像识别食材的准确率需达到可用水平,推荐结果响应迅速。
系统的稳定与可扩展性:需支持未来接入智能厨电、AR烹饪指导等扩展功能。
数据安全与隐私保护:用户上传的厨房图片、饮食偏好等数据需妥善保护。
系统管理模块(后台)
用户与权限管理:管理员可管理用户账号,为达人用户授予内容发布权限,为运营人员分配审核、活动管理等权限。
食材与标签库:维护标准化的食材库、菜系标签、烹饪工具标签、难度标签、场景标签(早餐、便当、宵夜)。
食谱审核流程:设置食谱发布规范,运营人员可审核用户提交的食谱,通过、驳回或建议修改。
活动与话题管理:可创建、管理线上挑战活动与社区话题。
系统监控:监控API性能、用户活跃度、异常告警。
智能食谱库模块
基于内容:根据用户浏览、收藏、制作历史推荐相似食谱。
基于图像:用户上传食材图,调用AI服务识别,推荐可使用这些食材的食谱。
首页推荐流:混合“热门食谱”、“新手必学”、“猜你喜欢”、“时令推荐”。
食谱结构化存储:每个食谱包含:标题、封面图、简介、食材清单(带用量)、烹饪步骤(图文/视频)、烹饪时间、难度、所需工具、营养成分估算(可选)、标签。
食谱分类浏览:可按菜系、场景、工具、时间、难度等维度浏览食谱。
高级搜索:支持按食材、菜名、标签组合搜索,并支持排除特定食材(忌口)。
智能食谱推荐:
食谱收藏与列表:用户可收藏食谱,创建自定义菜谱列表(如“减肥餐单”、“周末大餐”)。
个性化饮食计划模块
用户口味档案:用户首次使用时,选择口味偏好(酸甜辣咸)、忌口、饮食目标(减脂、增肌、维持)、每日烹饪时间预算。
智能计划生成:系统基于用户档案,结合时令、营养均衡原则,自动生成未来3-7天的食谱安排,并可手动调整。
计划日历视图:以日历形式展示每日的早餐、午餐、晚餐食谱建议,一目了然。
食材购物清单:一键将计划内所有食谱的食材,合并、去重、按分类生成购物清单,支持修改数量,导出为文本或对接电商APP。
计划执行跟踪:用户可标记计划中的菜品为“已做”,记录完成情况。
沉浸式烹饪引导模块
食谱详情页:进入全屏烹饪模式,依次展示每个步骤,支持图片放大、短视频循环播放。
智能计时器:在需要定时的步骤(如“煮5分钟”),自动弹出或提供一键启动计时器,到点响铃提醒。
语音朗读:可开启语音朗读当前步骤说明,解放双手。
步骤导航:可前后切换步骤,暂停或退出烹饪模式。
烹饪完成打卡:完成后,可拍照上传成果,记录实际耗时与评价(“成功”、“翻车”、“改了配方”),分享到社区。
AI图像识别模块(亮点)
食材识别入口:在首页显著位置提供“拍照识菜”按钮。
图像上传与识别:调用腾讯云AI或百度AI的图像识别-菜品/果蔬识别接口,识别图片中的食材种类。
食谱匹配:将识别出的食材列表,与食谱库中的食材清单进行匹配,计算匹配度,推荐匹配度最高的若干食谱。
结果展示:展示识别出的食材名称、置信度,以及推荐食谱列表。
识别历史:保存用户的识别记录,方便回溯。
游戏化社区模块
动态发布:用户可发布图文/短视频动态,展示烹饪成果、晒出购物清单、分享烹饪技巧,可关联所用食谱。
挑战活动:参与运营发布的主题挑战(如#十分钟早餐挑战#),上传作品,可获得虚拟勋章或积分奖励。
互动功能:支持对动态点赞、评论、收藏、分享。可关注其他用户或达人。
懒人榜:设立连续打卡榜、本周最勤快厨神榜、创意黑暗料理榜等趣味榜单。
话题与圈子:用户可带话题发布动态,形成内容聚合。
我的厨房与工具模块
我的食材库存:用户可手动管理虚拟食材库存,系统可推荐消耗库存的食谱。
烹饪工具:用户可标记自己拥有的厨具(微波炉、空气炸锅、电饭煲),搜索时优先推荐可用工具食谱。
我的成就:展示获得的徽章、连续打卡天数、完成食谱总数、被点赞数等。
草稿箱:保存未编辑完的食谱或动态。
浏览历史:查看最近看过的食谱。
达人中心与内容创作模块
达人申请:优秀创作者可申请成为认证达人,享受专属标识与流量扶持。
食谱编辑器:提供富文本编辑器,支持上传多图、短视频,拆分烹饪步骤,填写结构化信息。
数据看板:达人可查看个人食谱的浏览量、收藏量、制作次数等数据。
收入与激励(未来):可探索与品牌合作的食谱植入、电商带货等变现途径的对接。
消息与通知模块
系统提醒:通过APP推送或短信,发送烹饪计划提醒、食材临期提醒(若管理库存)、活动开始提醒。
互动通知:通知被点赞、被评论、新粉丝关注。
个性化推荐:定时推送“今晚吃什么”、“时令食谱推荐”等。
消息中心:聚合所有消息。
数据统计与商业智能模块(后台)
运营数据概览:实时展示日活、新增用户、食谱发布量、社区互动量。
食谱分析:统计热门食谱排行、搜索热词、用户完成率与翻车率。
用户行为分析:分析用户活跃时段、常用功能、口味偏好分布。
商业化分析(未来):分析热门食材、潜在的合作品牌。
数据导出:支持报表导出。
技术选型与架构:
后端: 核心框架: Spring Boot 2.7.x。Spring MVC,Spring Security。
数据库: MySQL 8.0。核心表:
缓存: Redis。缓存热门食谱、首页推荐、用户会话、验证码。
搜索引擎: Elasticsearch。用于食谱的复杂条件搜索(多食材、多标签)。
文件存储: 阿里云OSS。存储食谱图片、视频、用户动态图片。需集成图片处理(缩略图、水印)。
AI服务:调用腾讯云TI-ONE或阿里云视觉智能的图像识别API。在后端封装为独立服务。
消息推送:集成个推、极光等第三方推送服务。
recipe(食谱主表)
recipe_step(食谱步骤表)
recipe_ingredient(食谱-食材关联表,含用量)
user(用户表)
user_preference(用户偏好表)
cooking_plan(烹饪计划表)
前端: 移动端APP:采用 React Native或Flutter开发跨平台应用,以获得更佳性能与原生体验(如相机调用、计时器后台运行)。
后台管理系统: Vue 3+Element Plus构建Web管理后台。
部署: Docker容器化,Kubernetes编排,Nginx负载均衡。
核心业务实现方案:
智能计划生成算法:
购物清单生成:解析 cooking_plan关联的所有recipe,聚合recipe_ingredient。对相同食材进行去重和用量累加。提供手动编辑界面。
API调用:将用户上传图片Base64编码,调用云服务商API,获取识别出的食材列表 List<String>。
模糊匹配:在Elasticsearch中,对食谱的 ingredients字段进行查询,计算Jaccard相似度或使用更复杂的包含关系逻辑(如“有番茄和鸡蛋,推荐番茄炒蛋”)。
结果排序:按匹配度、食谱热度、用户偏好综合排序后返回。
图像识别与食谱匹配: 多样性:确保计划内食谱在菜系、口味、烹饪方法上有一定变化。
营养均衡:简单计算蛋白质、碳水、脂肪的粗略配比,符合用户目标(如减脂则低碳水)。
时间安排:结合用户设定的每日烹饪时间预算,分配快手菜和复杂菜。
用户反馈:根据用户对历史计划的完成情况和评价(“爱吃”、“不爱吃”)动态调整推荐权重。
功能测试:
核心烹饪流程:智能推荐/搜索食谱 -> 查看详情 -> 沉浸式烹饪 -> 完成打卡。
智能计划全流程:设定偏好 -> 生成计划 -> 查看日历 -> 生成购物清单 -> 执行与标记。
AI识图测试:使用多种常见食材组合、不同拍摄角度和光线的图片,测试识别准确率和食谱推荐相关性。
社区UGC流程:发布动态、参与挑战、互动、内容审核。
性能测试:
首页推荐流加载:测试大量内容下的加载与滚动性能。
图片/视频上传与加载:测试多用户同时上传和浏览富媒体内容时的性能。
搜索性能:测试复杂多条件组合搜索的响应时间。
安全测试:
内容安全:测试用户生成内容(图片、文本)的审核与过滤。
越权访问:测试普通用户能否访问达人后台或审核接口。
用户体验测试:邀请目标用户(烹饪新手)进行可用性测试,观察其完成核心任务的流畅度,收集反馈。
3. 总体进度和安排
|
|
|
|
|
|---|---|---|---|
|
用户研究与产品定义 |
|
2. 完成微服务架构设计,数据库设计,重点设计食谱、计划、推荐模型。 3. 设计AI图像识别与食谱匹配的技术方案,设计个性化推荐算法。 4. 完成高保真产品原型与交互设计稿。 |
2. 系统架构与数据库设计文档 3. AI与推荐算法技术方案 4. 高保真产品原型 |
|
SpringBoot后端开发 |
|
2. 实现用户、食谱、食材、计划、社区等核心微服务。 3. 实现AI图像识别服务封装与食谱匹配逻辑。 4. 实现个性化推荐服务(基于内容+协同过滤)。 5. 实现消息推送与文件服务。 |
2. AI识别与推荐服务模块 3. 核心API接口文档 |
|
跨平台前端开发 |
|
2. 开发后台Web管理系统。 3. 前后端联调,集成AI识别、推送、第三方登录等功能。 4. 进行初步的功能与兼容性测试。 |
2. 后台管理系统源码 3. 功能完整的可演示应用 |
|
系统集成、测试与优化 |
|
2. 优化AI识别准确率、推荐算法效果、应用性能与耗电量。 3. 编写《测试报告》、《用户手册》、《部署运维手册》。 4. 完成应用商店上架准备(打包、图标、描述)。 |
2. 用户与运维文档 3. 准备上架的应用程序包 |
|
论文撰写与答辩 |
|
2. 制作答辩PPT,录制从拍照识菜到完成烹饪分享的全流程演示视频。 3. 准备并完成毕业答辩。 |
2. 答辩PPT与演示视频 3. 最终项目源码、部署包及文档归档 |
夜雨聆风
