i

 1     绪论   1

1.1    研究背景   1

1.2    研究意义   1

1.3    国内外研究现状  2

1.4    未来前景,人工智能科学领域的应用  2

1.5    论文的主要研究内容和组织结构  3

 2     相关技术   5

2.1    深度学习技术   5

2.2    CNN 卷积神经网络模型  5

2.3    数据库技术和 KETTLE 平台  6

2.4    本章小结   6

 3     需求分析   7

3.1    图像识别项目总体需求分析  7

3.2    数据集采集和划分需求分析  8

3.3    模型需求和改进训练模型需求分析  9

3.4    本章小结   10

 4     图像识别设计   11

4.1    数据集设计   11

4.2    模型搭建设计   13

4.3    数据库设计   18

 5     主要功能实现   21

5.1    数据集展示   21

5.2    Pytorch 迁移学习模型训练成果展示   23

5.3    改进展示   24

 6     模型测试   29

6.1    数据集的测试集和验证集测试   29

6.2    本章小节   30

 7     总结和展望   31

7.1    总结   31

7.2    展望   31

参考文献   33

       35

 1   绪论

1.1    研究背景

随着人工智能领域的发展,无人驾驶,脑机接口,超级高铁等等技术迎来了巨大的发展,同时也诞生了一大批人工智能产品的问世,OPENAI  CHATGPT苹果公司的 VISIONPRO,微软公司的 Copilot,华为公司的无人驾驶技术,小米汽车的全场景互联等等,这些都为科技的进步带来了巨大的发展,因此,在众多科学技术领域中,基于图像识别的入库检索技术,通过对每次分析识别图像的数据进行入库,从而可以在仓储收纳,物流管理或者智能处理等方面发挥出巨大的作用,例如物流领域,截止 2022 年,我国的快递业务量累计完成 1105.8 亿件,在如此巨大的市场背景下,使用基于图像识别的仓储检索系统,可以大大提高我国物流行业乃至库房等仓储供应链的运转效率,这也恰恰为我国科技化产业和人工智能领域的发展做出了巨大贡献。早期的图像识别方法主要基于手工设计的特征提取,近年来,随着深度学习模型例如卷积神经网络等技术的兴起,图像识别技术取得了广泛的发展,通过大量的数据集模型,也极大的提高了识别的正确率。[1]

1.2    研究意义

对于深度学习算法图像识别的应用研究具有重大意义,其创造性和拓展性都具有十分庞大的应用前景。其智能图像识别检索技术,可以对于物流仓储,库房管理等领域搭配视觉传感器和图像识别技术,精准确定仓库内物品的数量,种类,与数据可视化技术和数据库技术,大数据网络技术相关联,对于每日进货出货,安全监管,每日数据汇总和其他人工智能后续技术都有重大帮助,精准帮助企业和决策者精准判断收益情况和安全隐患,提高企业高效率发展。

对于企业来说,通过深度学习的入库图像识别算法检索,搭配人工智能技术,实现企业的智能化生产和精确管理,生产类的控制,机械臂每日生产进度等详细数据,帮助企业高效率发展。大到企业,物流管理,小到个人家庭,通过基于深度学习的图像入库识别算法,可以应用在家庭多种领域,尤其在智能家居领域发挥重要作用,例如在冰箱内安装视觉传感器项目,通过基于深度学习的图像识别技术,结合人工智能和语音识别,精准识别冰箱内食物和蔬菜的数量和新鲜程度,并记录不同种类的食品使用程度,分析家庭人的喜好,判断营养是否均衡,对于即将过期和缺失的食物或者长期缺少摄入的营养源,通过语音提出合理建议并提出安全摄食建议。同样,再例如家庭收纳,通过视觉传感技术和基于深度学习的

入库识别技术,精准记录家庭各项物品的收纳情况,防止再着急找物品的情况下及时提供帮助,搭配家庭智能网关系统,实现全屋智能主动化互联,因此,大到记录商场商品,图书馆封面识别检索,企业物品出库入库检索,物流园和冷库图像识别检索,小到家用食品记录,智能家居安全检测等领域,基于深度学习的图像识别技术都提供了巨大的市场和应用前景,通过智能化的分析路径,为更多企业提供了新可能,并且为人工智能技术探索的新路径创造了新的技术。

1.3    国内外研究现状

国内来说,对于本课题的核心概念图像识别技术来说,图像识别技术一经问世,就已经在国内取得了巨大的反响。在 2020 年以来,图像识别技术在国内的研究领域呈现蓬勃发展的势头,对我国在人工智能领域的各项发明创造取得了巨大的应用[2] 。我国的图像识别技术已经应用到了现实,在国内,图像识别技术的应用产品已经随处可见。例如智能安防技术在手机识别,设备解锁,智能门铃等方面提供了新的高标准。在医疗影像方面通过图像识别与 5G 互联技术,医学科技的发展更加发达。在智能交通领域, 通过车流量监测,交通信号灯的图像识别,更进一步保证了人民群众的交通安全。在国际方面, 特斯拉公司推出的 FSD 智能驾驶功能,通过在车身配备的八个摄像头,对于路况的图像进行实时识别,这也代表了该技术在智能驾驶方向的广泛应用。苹果公司于 2023 年发布了旗下 apple visionpro 产品,该产品搭载 12 个摄像头和 5 个高精度传感器,实现手势识别,图像处理,场景预加载和眼动追踪等,这些技术在图像识别领域都有巨大的贡献。同时,对于图像识别技术,国内外的一些顶尖大学和学者在数据集上也提供了新可能,这些都为人类的科技化发展做出了贡献。

1.4    未来前景,人工智能科学领域的应用

本课题的核心关键词基于深度学习的“图像识别”技术具有广泛的应用领域,图像识别技术在科技产品中得到广泛应用。在建筑和城市规划领域,有企业开发的程序能通过图像识别技术,更好的帮助设计师建立模型,从而帮助设计师进行更好的创造。在自然语言处理领域,有学者将人工智能语言模型于图像识别技术相结合,通过语言文本,生成创造者想要描绘的图片,甚至是通过一段语言文本,生成一段高水准的视频。在医疗领域, 利用图像识别技术,对于 X 光片,B 超等图像对于健康状况的初步识别,提出合理建议,更好的帮助医生去决策。在智能驾驶领域,通过摄像头进行高精度图像识别,对障碍物和道路进行规划和避让。本课题所采用的对于超市蔬菜的图像识别技术,结合对置信度的入库,未来层面上,系统通过分析数据库的数据,判断超市蔬菜区域图像中蔬菜的新鲜程度,智能调控温度,湿度,灯光环境,让蔬菜看起来更新鲜,并且通过超市机器人对蔬菜进

行及时更换,缺货维护等操作。

1.5    论文的主要研究内容和组织结构

本课题论述了基于深度学习的入库图像识别算法检索研究的研究方法,实现概念,应用领域和可拓展领域。本文简述了入库检索算法整体研究方向和整体思路,以及图像识别在其中所起的作用和对其未来可部署方面的论述和畅想。技术层面上采用 Pytorch 的迁移学习训练数据集,迁移学习是在大型数据集上以及预训练的模型进行新处理数据集的二次训练,能够在面对数据集较小的情况下也能具有高准确度,同时也不会因为大量的训练时间导致配置不高的机器占用过长时间的内存,大大提高了训练效率,通过大量的实验数据进行对比,最终选用模型 resnet34 [3] 。其在图像识别, 图像分类领域性能优越,并且易于训练,配合迁移学习一定程度上缓解了深度学习对数据量的依赖,可以在较小的数据集上展示出优越的性能。本论文的组织结构安排如下:第一章,绪论,介绍了主要的研究背景和研究方向,以及图像识别技术的未来前景,在人工智能科学领域的应用,国内外的研究现状以及本论文的主要研究内容和组织结构。第二章,相关技术,主要介绍了深度学习相关技术,图像识别相关技术包括 Pytorch 迁移学习训练数据集,数据库技术和 KETTLE 大数据平台和小结。第三章, 求分析。本章介绍了对于系统总体的需求分析,需要哪些技术以及其具体的实现逻辑,其特定的功能性需求第四章,图像识别设计。本章介绍了该技术的总体应用和设计,具体识别模型设计,数据库的录入和搭建等。第五章,主要功能的实现。本章详细介绍了超市蔬菜图像识别的数据集展示,训练成果展示和重复训练与改进功能。第六章,系统测试。本章介绍了对数据集中测试集和真实图像的测试。第七章, 总结与展望。对本论文做出了简要的总结,并对未来进行展望。

 2   相关技术

2.1    深度学习技术

深度学习技术作为机器学习领域的一个核心分支,近年来,在人工智能科技发展中取得了重要的作用,他是一种模拟人脑神经网络结构的功能,从数据中学习进行抽象特征提取的算法,其目标就是让机器去模仿人脑进行学习和推理,从而实现对复杂数据的处理和应用,深度学习具有很多模型,其学习模型通常包含很多个隐藏层。这些模型通过固定模式,逐步进行信息提取和信息转换的实现逻辑,从而实现对输入的数据进行逻辑分类,识别,查询等任务。[4] 对于深度学习来说,其核心原理就是其深度学习模型方面,深度学习模型通常包含多层感知器,卷积神经网络,循环神经网络等结构,本课题主要采用深度学习里的 Pytorch 迁移学习的方法进行训练。通过对已经在大型数据集上预处理的模型进行二次训练,在面对较小数据集的同时即可以缩短时间也可以提高处理效率。[5]  深度学习技术在各个领域都有着广泛的应用,本课题的图像识别领域就是深度学习通过将数据集分成训练层,测试层,和其他等三个层次,对训练层部分的图像进行预处理,将其改变亮度,方向,镜像,锐化程度等方式,生成大量的数据,这些数据构成数据集,深度学习通过训练这些大量的图像数据,从而实现对人脸,形状,物体的精准识别。对于其他领域来说,深度学习在自然语言学习领域,其能处理和理解复杂的文本信息,实现机器翻译等功能,并且可以进行语音识别,因此,深度学习在人工智能领域发挥着巨大的作用。[6]  本课题主要采用的是 Pytorch 框架的迁移学习技术,[7] 它可以利用在之前数据集上学到的模型结果,将这些结果应用到另一个新任务上。在深度学习领域,迁移学习尤为重要,因为训练深度神经网络通常需要大量的计算资源和时间。然而通过迁移学习,我们可以利用预训练的神经网络作为基础,对新任务进行微调,从而节省大量的计算资源和时间。

2.2    CNN 卷积神经网络模型

本课题采用 CNN 卷积神经网络的 Resnet34 模型对数据集进行处理,CNN 积神经网络是一种特殊的神经网络,其核心特点在于其局部连接和权值共享的方式,使得其在处理图像和视频等具有网络结构的数据时具有显著优势。CNN 卷积神经网络由输入层,隐藏层和输出层组成,其中隐藏层主要包括卷积层,池化层和全连接层,其主要工作原理是提取数据中的重要特征[8] 。当其提取到数据集的主要特征时,通过特征传递将其传达到后续层级,进行进一步的处理,其主要的三

部分:卷积层,池化层,全连接层。卷积层通过不断学习, 不断训练去调整卷积核的参数,自动提取出图像的边缘和纹理等特征。池化层方面是对特征图进行采样,以减少数据的维度和计算量,同时保留重要的特征信息。全连接层位于 CNN 最后阶段,会将之前的提取到的特征映射到样本标记空间,接收前一层的输出并将其转换为给定类别的概率分布。CNN 卷积神经网络能够有效的处理图片,视频等,通过提取特征信息,不断训练,达到图像识别的目的。[9]  本课题采用 resnet34模型进行图像识别,其主要组成为输入层,残差块,全局平均池化层,和全连接层四部分。在 Resnet34 中,输入层通常是一个卷积层,包含一定数量的卷积核,[10] 平均池化层得到全局特征表示,在图像识别领域输出不同类型的匹配概率。

2.3    数据库技术和 KETTLE 平台

数据库技术是一种计算机辅助管理数据的方法,数据库技术研究的是如何储存数据,并且如何高效的获取和处理数据,本课题中,主要使用的是关系型数据库管理系统:MYSQL。数据库技术有着广泛的应用,负责对数据有着统一的控制,数据库为数据提供了安全性,完整性,一致性和可访问性,这使得用户可以很方便的通过数据库对数据进行操作和管理。[11]  KETTLE 平台是一款大数据处理平台,主要用于数据加载和数据转换,可以将线上数据库表,.csv 文件,文本文件和 EXCEL 文件快速增加字段,通过 JAVASCRIPT 代码更改数据,通过正则表达式等功能对数据进行拆分,达到数据处理的效果。KETTLE 的跨平台性也是其巨大的优势之一,容易使用,方便快捷,无需安装程序,和高效率的性能去处理数据,[12] KETTLE 平台是功能强大的 ETL 具。

2.4    本章小结

章详细论述了本课题基于深度学习的入库图像识别算法研究所需要的几个核心技术,并且通过对技术的论述过程中,也梳理了研究方法和研究逻辑。

 3   需求分析

3.1    图像识别项目总体需求分析

基于深度学习的图像识别入库研究,本课题主要以超市蔬菜的入库研究为例子,不管是用 tensorflow 还是 pytorch 训练,都要有丰富的数据集去训练,数据集的质量直接决定了图像识别的质量。在数据集的选取方面,删除无关图片,注重类别均衡,选取的图片应具有多样性,代表性,一致性,本题目所研究的基于深度学习的图像识别技术的应用,以超市蔬菜的图像识别为例,本文实现图像识别通过不断测试,层层实验,最终采用 pytorch 迁移学习的resnet34 模型进行训练,其作为出色的预训练模型,在应用到本课题进行研究和图像识别中可以对其模型进行微调,既可以完成任务训练,大大的减少了时间成本。本课题的项目总体研究需求方面,拟定于先通过收集一个用于 resnet34 模型进行训练和测试的数据集,并将数据集进行分类和命名,使其生成带有标签的图像,数据集在数据的筛选方面,本课题因为是超市蔬菜的图像识别应用,图片的分布量较大,容易收集,因此在百度图库上采用批量下载的方式下载海量图片作为数据集,将下载好的图片进行分类,得到初步数据集。因数据批量下载存在歧义或数量太多,图像面积过大等不利于模型训练的数据进行人工筛选,最终得到批量的预处理数据。将收集到的预处理数据进行扩充操作,如调整亮度,对比度,图像翻转等方式调整数据集,同时对图像的大小进行统一规格的裁剪和处理,对图像的命名和格式进行统一化处理,得到最终数据集。本课题在得到最终数据集后,对数据集按照 6  2 2 的比例进行划分,并舍弃百分之二十的数据集,这是因为同一种扩充图像的处理同时存在于测试集或训练集中,影响一定的训练效果,在划分后通过类别和名称制作标签,通过 modles 模块调用resnet34 模型,对模型的结构进行微调,定义损失函数和优化器,最后使用训练集对模型进行训练,在每个轮次的训练中前向传播,不断将训练数据输入模型,计算损失和反向传播,同时使用优化器,更新参数,最后用测试集进行验证,用新图片进行图像识别和测试,得到最终的训练模型。项目总体用例图如下图所示:

 3.1    图像识别总体用例图

3.2    数据集采集和划分需求分析

数据集的采集是基于深度学习的图像识别里最重要的一部分,不管是用 ten- sorflow 还是 pytorch 框架进行调用,都要具有丰富的数据集,对于本文所探究的超市蔬菜的图像识别技术来说,采集数据集要保证其高质量和多样性,不能是像素极低的图片[13] ,也不能是白色底板颜色单一的单个图片,更不能是简笔画或者卡通图像,因此,在筛选数据集的时候,要注重图像的多样化。[14] 图像的范围应该覆盖在生活中的方方面面,种类多样化,既要有单个图片也要有在生活场景中的图片,以便于提高后期图像识别的图像准确度。在取得了初步数据集图片后,因为原始图片质量参差不一,大小不一,名称千变万化,且收集到的图片数据量较少,不便于图像处理。因此需要对图像进行二次处理, 首先对图像进行人工处理,删除掉因为歧义下载的别的意思不符合图像识别本意的数据集,然后对图像进行锐化,增加对比度,水平翻转,垂直翻转,降低亮度,提高对比度等方面进行图像处理,这样对于一次图像来说,不仅增加了图片识别的丰富度,同时将原始图像的图像数量翻了 6 倍至 7 倍,大量且丰富的数据集极大地提高了后期图像识别的准确度。同时对于名称不一的图像进行统一命名,网络收集的图像格式也不一致,统一变成.png 格式。对于已经取得的最终数据集,因为本研究内容主要是对超市蔬菜的图像识别研究,因此对取得的数千张图像按照 6 2 2 的比例划分为训练集,验证集和其他三部分,由训练集用于训练进行生成最终模型,测试集用于对验证集进行验证,其他部分进行备份和删除,不参与图像识别,因一张图像

扩充处理 6 倍至 7 倍,防止因划分数据集时造成一张图片的扩展图片全部划分进验证集或全部划分为测试集而导致的图像种类单一化,因此通过 6 2 2 的划分比例进行划分,删除部分扩充图片,在保证了图像训练数量足够的同时保证了数据集的多样化。以下是数据集生成和划分的用例图:

 3.2    图像识别数据集的生成和划分需求用例图

3.3    模型需求和改进训练模型需求分析

本课题就模型需求和学习方法方面查阅了大量书籍和互联网上的大量资料,最终决定采用 Pytorch 的迁移学习训练数据集,Pytorch 迁移学习的灵活性很高,并且易于扩展,在使用模型方面,通过各种测试和实验已经查看大量的报告,

更多推荐