智能冰箱食材识别
智能冰箱能自动识别食材并推荐菜谱 #生活技巧# #家电使用技巧# #厨房电器互联#
2025-02-21 141 发布于上海
版权
举报
版权声明:
本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《 阿里云开发者社区用户服务协议》和 《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写 侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
简介: 本案例设计了一个囤菜系统原型,主要方法是利用冰箱内安装的摄像头,通过目标检测算法识别食材类别,判断存取动作,增加或者减少相应的食材的数量,并记录存取时间等相关数据,设计出了具备提示清理和补货等功能的智能化囤菜系统原型。
智能冰箱食材识别
【导读】本案例设计了一个囤菜系统原型,主要方法是利用冰箱内安装的摄像头,通过目标检测算法识别食材类别,判断存取动作,增加或者减少相应的食材的数量,并记录存取时间等相关数据,设计出了具备提示清理和补货等功能的智能化囤菜系统原型,对于智能冰箱的发展提出了一个新的解决方法。首先,由于在冰箱上进行边缘计算的实时性要求比较高,选用了参数量比较少,计算速度比较快的YOLOX-Nano算法作为食材识别的算法;为了提升识别时候的推理速度,使用了OpenVINO工具库,对模型进行优化和加速。本案例可以实现对冰箱里食材种类和数量的增减,并在食材数量少于设定值的情况下,提示补充。
1问题分析
随着时代的进步,人工智能已渗透到各个行业,其中家电的智能化已成为该产业发展的重要趋势。冰箱,作为家庭日常生活中不可或缺的一部分,其智能化应用却尚未得到广泛推广。尽管市面上智能家电层出不穷,但冰箱在日常生活中的智能化应用场景仍显不足。每年因冰箱内食物管理不当而造成的浪费数额惊人,传统的手动记录食物放入日期和保质期的方式既繁琐又耗费人力,且不同家庭成员对冰箱内存货的需求各异。
在智能冰箱领域,食材的精准管理成为其发展的核心议题,而准确识别食材种类则是实现这一目标的首要前提和技术挑战。当前,目标检测分类算法的快速发展为基于图像的食材识别提供了坚实的技术支持。同时,这种基于图像的识别方式无需改变用户的存取习惯,实现了近乎无感的操作体验,相较于条码、RFID等方式具有明显优势。因此,它已成为智能冰箱研究的热点,对智能冰箱的发展具有重大意义。
针对上述需求和挑战,本案例旨在设计一款智能冰箱原型,它不仅能自动记录食材信息,还不改变用户的使用习惯。这款智能冰箱可以作为软硬件一体化产品进行销售,同时也可与电商、广告、数据等厂商展开合作,既解决了用户的实际问题,又展现了广泛的商业应用前景。
为实现这一目标,本案例提供了一套软硬件一体化解决方案:智能冰箱内置摄像头进行视频采集,通过目标检测系统对食材进行分析和统计,并通过微信小程序将库存信息实时推送给用户。对于新增的蔬菜或水果类别,采用了“迁移学习”的方法。考虑到这些食材的训练数据相对较少,利用预训练模型,并结合少量样本进行迁移学习,从而得到针对新类别的识别模型。
此外,通过使用OpenVINO优化目标检测模型,成功提升了约50%的推理速度,实现了实时检测效果,为用户带来了更加流畅的使用体验。
2数据预处理
2.1数据探索
原始数据为冰箱上方摄像头拍摄的20种食材图像,图像共计11,983张,按类别存放在不同的文件夹中。将下载后的数据存储在文件夹fridge,并放在yolox\data文件夹下:
data_dir=os.path.join(get_yolox_datadir(), "fridge")
抽取少量原始图像,所有图像均为测试人员手持不同食材在存取食材时的图像。
2、标注信息
标注信息为图像中的食材类别和位置框,标注信息格式为json文件,每段标注信息由name、image_height、image_width、category和bbox组成,如下图所示:
2.2 数据集转换
将原始数据按照VOC格式进行转换,首先将包含原始文件标注信息的json文件转换为XML文件,每张图片对应一个XML文件,并将所有XML存放于Annotations文件夹中。选取20类食材,根据其类别代码,从60类的标注文件(train_annos_1-60.json)中筛选20类的标注,记录到anno_20.json中:python gen_anno_json.py;将20类食材图像合并到JPEGImages文件夹中,由于这一步可能会遇到图片文件名重复,注意在更改重复文件名的同时更改json标注文件;将20类的json文件转换为XML文件:python gen_XML.py;将所有图像名称记录在all.txt中,并分割为训练集和测试集。
然后将所有图像合并到JPEGImages文件夹中。最后将所有图像名称记录在all.txt中,存放在ImageSets/Main中,用于后续数据集分割。
2.3数据集分割
将原数据集11,983张图片按8:2的比例随机进行分割,分为训练集和测试集:python gen_dataset_txt.py。分割后的训练集共计9586张图片,测试集共计2397张图片。训练集的图片名称存放于trainval.txt文件中,测试集的图片名称存放于test.txt文件中。
完整案例可以参考新书:
赵卫东编著.深度学习实战案例.北京:人民邮电出版社,2024
网址:智能冰箱食材识别 https://www.yuejiaxmz.com/news/view/894637
相关内容
智能冰箱识别技术解决食物识别困难智能冰箱的食品管理与智能推荐
智能冰箱如何管理食物储存?(智能冰箱使用指南)
卡萨帝发布“智能管夹”:攻克食材与冰箱对话难题
食材智能化存储,澳柯玛推出全新智慧互联冰箱
美的冰箱从食材本质出发,用健康定义智能保鲜冰箱
智能冰箱:食材管理与营养推荐的智能生活
松下AI冰箱发布:搭载双摄像头识别食品!
冰箱收纳大揭秘:告别混乱,轻松掌控食材!
冰箱整理神器:告别食材浪费,轻松管理你的冰箱!