食材识别

目的:

  • 识别出一个菜里面有哪些食材

细节:

  • 使用mobile net。输出层为多个2分类器的并列。也就是输出每一位代表一种食材,可以同时存在多种食材。
  • 食材的标注比较麻烦
    • 先通过关键字爬取不同食材相关的图片。比如爬取青椒肉食,虎皮青椒,青椒炒蛋等关键字的图片作为青椒食材的训练数据。爬下来后手动清洗出1000张图片。然后用搜索引擎的相似图片查找,手动清晰出相似的但是没有青椒的负样本3000张。
    • 使用相同的方法收集其他食材的数据,每个食材都分为正样本和副样本。
    • 为了让标注更加容易,还專門使用python的tkinter制作了小工具。
  • 把第一批整理出来的数据进行训练
  • 用训练的模型分类他更多的图片,把分类错误的图片加入到训练集中。
  • 训练后再用来分类非训练集的图片,再把错误的图片加入到训练集中。
  • 这样迭代5次。
  • 最后使用python写的web app支持事实照相并上传服务器再返回结果。

结果:

  • 某些食材非常容易识别,比如木耳,虾仁,花椰菜。这些食材的特点是形态单一。对于另外一些形态多变的食材:鸡蛋,青椒等的识别率就比较低。
  • 感觉就是只要网络找到了对应食材独有特点了的话,一下就很robust了。
  • 实际用起来基本正常的菜里面,食材的形态还比较明显的情况下。一盘菜都能识别出来1,2个食材。

讨论:

  • 通过这个项目,自己尝试了从模型选取,数据集设计,爬取和清洗方案制定,训练等深度学习的全过程。
  • 训练的时候没有直接对每张图片标注上面出现的所有食材,而是只标注是否存在某种食材。这样做是因为要同时标注出所有食材的难度和工作量太大。而且当需要添加食材的种类的时候,需要重新标注所有图片。不过感觉如果能同时标注所有食材,应该训练结果要好些。

相关代码:

### 冰箱食材识别技术及应用 #### 1. 技术背景与发展现状 随着智能家居技术的进步,冰箱作为家庭重要电器之一,在智能化方面取得了显著进展。除了基本的保鲜和冷藏功能外,现代智能冰箱还能通过联网技术和用户互动,提供更加便捷的服务。然而,传统冰箱存在信息不对称的问题,使得用户难以实时掌握内部食材的具体情况,进而影响食品管理效率并可能引发浪费或安全隐患。 为了改善这一状况,基于机器学习特别是卷积神经网络(CNN)[^1]的技术被引入到冰箱食材分类领域。这类解决方案能够帮助用户更好地管理和监控储藏物品的状态及其有效期,提高资源利用率的同时也增强了安全性。 #### 2. 关键实现原理——YOLO系列模型的应用 具体来说,针对冰箱内的复杂环境条件下的物体检测需求,采用了先进的YOLO (You Only Look Once)v10版本的目标检测框架来构建食物识别系统[^2]。此架构以其快速处理速度著称,并能在保持较高准确性的情况下完成多类别的即时预测任务。对于本案例而言,则是对超过三十种常见于家用储存空间里的食用商品进行了专门的数据集训练,使其能够在不同光照强度下稳定工作,准确地标记出每一件待测对象的位置与名称。 ```python import torch from yolov10 import YOLOv10 model = YOLOv10(pretrained=True) def detect_ingredients(image_path): image = load_image(image_path) results = model.detect([image]) for result in results: label, confidence, bbox = result['label'], result['confidence'], result['bbox'] print(f"Detected {label} with confidence {confidence:.2f}") detect_ingredients('fridge_contents.jpg') ``` 上述代码展示了如何加载预训练好的YOLO v10模型并对给定路径下的图片执行成分探测操作。实际部署过程中还会涉及到更多细节配置如调整输入尺寸、设置阈值参数等以适应具体的硬件平台特性。 #### 3. 用户体验提升措施 为了让这项先进技术真正融入日常生活当中,开发团队还特别注重用户体验的设计。为此配套了一套直观易用的操作面板,允许使用者轻松上传照片文件或是开启摄像头直播流来进行在线分析;同时提供了详尽的帮助文档和支持渠道以便遇到困难时寻求指导。更重要的是整个软件包都是开放源码形式发布的,这意味着任何有兴趣的人都可以根据自己的特殊要求对其进行二次开发或者集成至其他第三方应用程序里去。 #### 4. 扩展服务与其他优势 除此之外,“Ingredients”项目进一步拓展了食材识别的能力边界。该项目融合了之前两个知名开源作品schollz/meanrecipe 和 schollz/extract_recipe 的精华部分,致力于打造更为精确高效的食材解析引擎。借助其强大的API接口,开发者们可以轻易获取有关食谱组成的信息,甚至是从网页上抓取完整的烹饪指南[^3]。 ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值