论文部分内容阅读
俗话说“民以食为天”,食物在人们日常生活中的地位至关重要,而饮食更关系着人们的生活与健康。随着时代的进步和技术的发展,人们对食物的需求已经不仅仅是消除饥饿,利用现代技术手段提高饮食质量、改善生活水平,已是现代人追求的目标。除此之外,对于患有高血压、高血脂的病人来说,饮食的内容关系着他们的日常生活,甚至生命健康。因此,食物识别技术的相关研究,在当今时代有着极其重要的研究价值与实用价值,而一款食物识别应用也具有不容小觑的市场前景。为解决食物识别问题,让人们能更好的对每日摄取的食物进行掌控,本文设计并实现了一款针对食物图像的移动食物识别系统。为了实现食物实时识别系统,本文采用深度学习技术将本工程分为三个模块分别进行实现。首先设计并训练食物识别模型,通过使用卷积对特征进行“跳跃”的学习,提高了训练速度并减轻了运算负担。之后为了增强识别稳定性和准确性,采用多网络融合的方法对食物识别算法的精度和容错性进行提高,最后在Android手机上食物识别系统进行实现。本文内容主要包括以下内容*:(1)针对食物识别问题,本文设计并实现了一个卷积神经网络,该网络使用“跳跃卷积”对食物图像的特征进行学习,并通过神经网络训练出食物识别模型。针对食物图像的特点,本文还提出了一套针对食物图像的预处理过程,对于图像背景复杂、图像文字遮挡等问题,可有效减少训练过程中的干扰因素。实验结果表明,本文设计的食物识别算法可有效识别食物目标,并达到较高的识别精度。(2)在单一网络的食物识别过程中,难免会出现识别错误的情况。为了增强食物识别模型的容错性,本文使用Boosting网络融合的方法,将单一网络的结果通过重复训练错分图像,训练出不同的识别模型,再将网络模型进行融合,得到最终结果。该方法可有效提高食物识别系统的识别精度。本文在Boosting网络融合的基础上,提出了次数抑制Boosting网络融合策略,提高系统容错率的同时,通过限制同一幅图像的多次学习次数,提高系统的最终输出精度。实验结果表明,该融合策略对食物识别的效果较好,错分率和准确率都有一定改善。(3)本文以食物识别理论研究为基础,在Android手机上对该食物识别系统进行实现。其中包括对卷积神经网络的移植与调试,并在Android Studio中,对食物识别系统进行搭建。之后,为了完善用户体验,在该食物识别系统中加入食物包装文字识别和食物相关信息的查询功能,分别使用到了Android OCR技术与Android网络通信技术。该系统可以基本满足人们日常生活中对食物进行识别的需求。