【论文笔记】Inverse Cooking: Recipe Generation from Food Images(CVPR2019)

本文探讨了Facebook研究院发布的逆向烹饪项目,利用深度学习技术从食物图片生成食谱,包括食材和烹饪步骤。研究采用了Transformer结构并进行了多模态改进,通过对比不同模型结构,发现Concatenated结构表现最佳。实验使用Recipe1M数据集,详细介绍了数据预处理和模型参数设置。
部署运行你感兴趣的模型镜像

Paper:https://arxiv.org/abs/1812.06164

Code:https://github.com/facebookresearch/inversecooking


1.论文整理框架:

      算法框架如下图所示:

     

2. 部分模块:

    1)Ingredient Decoder

        

           无序食材的预测较为简单,本文对不同时间的输出进行max pooling操作从而消除食材的顺序;

eos loss:Binary cross-entropy loss,eos在pooling后会失去位置信息,因此计算max pooling后的食材与实际食材之间的

误差不太合理;提出eos loss计算所有time中predicated eos probability与ground truth之间的误差

    2)Instruction Decoder

           

           (a)原始的Transformer结构:两层attention与一层linear layer组成,第一个attention是对先前的输出进行自我监督,第

         二个attention是refine自我监督的输出,最后加入softmax与linear用来分配预测的食谱单词;适用于单模态任务。

(b)Concatenated:本文着重于多模态来生成食谱(图像+食材),因此对transformer进行了改进;e(I)与e(L)直接拼接

         送入attention中。

(c)Independent:e(I)与e(L)分别送入attention中(互不影响),最终将attention合并;

(d)Sequential:按顺序进行;考虑两种情况,image first(e(I))->Ingredient(e(L));Ingredient first(e(L))->image(e(I))

最终实验结果证明:Concatenated结构性能最优。

3.实现细节:

   1)dataset

      本文采用Recipe1M数据集,对数据集进行于预处理,仅采用包含食谱图片,食材与instruction不小于2的食谱(约31万)

     食谱格式如下图所示:

     Recipe1M包含two layer,存储均为字典类型。其数据结构如下:

     ① layer1.json

      食谱信息:食材、食谱url、数据集类型(训练/验证/测试)、标题、id、步骤

     ② layer2.json

      图片信息:id、图片(id、url)

      两个layer层相关联的Json数据结构如下图:

         

  2)参数设置

      


思考:

比较食谱生成与食谱retrieval,recognition

 

 

 

 

您可能感兴趣的与本文相关的镜像

Qwen-Image

Qwen-Image

图片生成
Qwen

Qwen-Image是阿里云通义千问团队于2025年8月发布的亿参数图像生成基础模型,其最大亮点是强大的复杂文本渲染和精确图像编辑能力,能够生成包含多行、段落级中英文文本的高保真图像

数据分析 人体健康信息 体重 身高 年龄 菜品信息 菜的名称 卡路里 蛋白质,脂肪等 推荐的食用量 某个人群对应的改善体质(减肥,塑性,增肌等)的方案 菜谱 运动方式 数据集和api 图像识别食物,获取卡路里: https://cloud.baidu.com/product/imagerecognition/fine_grained nutrition facts from food : https://www.kaggle.com/openfoodfacts/world-food-facts#en.openfoodfacts.org.products.tsv https://world.openfoodfacts.org/ 数据集官网 456赞,目前为止发现的最高的相关数据集 nutrition facts for McDonald’s : https://www.kaggle.com/mcdonalds/nutrition-facts Calories, fat, and sugar for every cheeseburger, fries, and milkshake on menu 更牛逼的食材分析和菜谱推荐: http://pic2recipe.csail.mit.edu/ 加强版百度API 莫须有数据集 糖尿病 时间-血糖含量关系数据 : https://archive.ics.uci.edu/ml/datasets/diabetes GPA和饮食习惯的关系 : https://www.kaggle.com/borapajo/food-choices 9种体质 //暂定 根据用户的体质来进行推荐菜谱与制定营养计划 —- 两种模式:9体模式和普通健身模式 用户可以随时输入自己当前吃的食物的名字与量 —- 随时记 动态爬虫——http://www.boohee.com/ 每种食材的卡路里等信息(优先kaggle) 卡路里累加器及其可视化、每天个人信息可视化 https://www.xinshipu.com/ 菜谱信息 通过照片提取出食物的卡路里等信息 百度api http://www.zyyssl.com/cookbook.html //中药食材信息、药膳信息、9体、各种病针对的药膳 照片识菜帮 http://www.ttmeishi.com/CaiXi/YaoShan/ //病人对应的食谱 测算http://www.chinacaipu.com/zt/sccs.html 体质算法 11、http://www.chinacaipu.com/menu/jianya/ 特殊人群(压力之类的) 需求分析 登陆、注册 输入基本信息信息(身高、体重、性别、年龄) 额外信息(工作、周均运动时间、睡眠段、九体、病史) 针对没有填写额外信息的用户:选择减肥、增肌、塑形 、保持 可视化(自己的信息和目标标准的比较、根据上述选择改变)每天的量(手环、手机计步器),近几天的曲线 推荐菜谱:两个tab,一个定制菜谱,一个是随机智能推送 单一菜推荐 组合推荐 一周大菜谱推荐(根据每日你自己加的一些信息动态改变) 如果填了额外信息的,就是药膳推荐(一周药膳、周二普通、周三药膳。。。。)(注意可能不想减肥啥的) 百度api->动态录入每顿饭的信息(防抖处理,这里吹牛逼算法,推测吃了多少卡路里),识别后把,动态改变一周定制计划 做菜环节加入识菜帮所有功能,并加入详细食材信息卡路里等 针对特殊人群,混到推荐里推送有利于健康的方法信息(敷黄瓜方法) 特殊病人群体每日相关东西的摄取量的一个限定区间显示 ocr体检单信息录入 针对照片中菜的数量分析吃了多少菜,包含多少卡路里
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值