一种基于深度学习的手术器械仓储环境清点模型压缩方法与流程
1.本发明涉及目标检测技术领域,尤其涉及一种基于深度学习的手术器械仓储环境清点模型压缩方法。
背景技术:
2.近年来,手术器械因为与人们的身体健康息息相关而受到广泛关注,而无论是临床环境还是仓储环境下,都需要对手术器械的种类和数量进行清点以保证后续手术的正常实施。但目前手术器械的清点工作大部分都是通过人工方式完成,这种方法需要消耗大量的人力物力并且效率低下,尤其在仓储环境下,大批量的手术器械的清点工作会严重影响后续工作的正常进度。因此,工业界对仓储环境下手术器械的自动化清点的需求不断提高。
3.目前研究的手术器械自动清点的方法主要有基于rfid(radio frequency identification)、基于条形码和基于计算机视觉三种方式,其中由于基于rfid和基于条形码的方法都比较复杂并且成本高昂,所以现在的研究主要着眼于基于计算机视觉的方法,利用深度学习目标检测算法进行器械清点更是近年来最为常见的方式,然而普通的目标检测算法存在模型体量过大和内存占用严重等不足,不适用于在仓储环境清点中配备的边缘计算设备中部署和使用。
4.为了实现在计算资源有限的设备上部署并使用算法,在不显著影响识别精度的前提下,通过压缩和加速来实现模型的轻量化也尤为重要,因此,为了实现仓储环境下器械清点模型的边缘设备部署和使用,发明一种基于深度学习的手术器械仓储环境清点模型压缩方法意义重大。
技术实现要素:
5.本发明目的是提供一种基于深度学习的手术器械仓储环境清点模型压缩方法,对基于swin transformer的目标检测模型进行模型压缩,在减少运算量和参数量的前提下保证模型的精度。
6.为了实现上述目的,本发明采用了如下技术方案:
7.一种基于深度学习的手术器械仓储环境清点模型压缩方法,包括以下步骤:
8.s1、手术器械数据采集与标注:对手术器械进行拍照采集数据,形成数据集,并根据要求对数据集中的照片进行标签标注;
9.s2、数据集划分与数据增强:对s1中所得的数据集划分为训练集、验证集和测试集,同时在训练前对数据进行数据增强预处理;
10.s3、目标检测模型轻量化设计:针对swin transformer模型进行轻量化结构设计,降低swin transformer模型所需的内存和运算量,实现模型的压缩;
11.s4、目标检测模型训练:将s3中经过轻量化设计的目标检测模型代码封装好,然后将数据集输入模型中进行训练,在预先设定的模型训练波次结束后,保存精度最高模型参数,用于仓储环境下手术器械的清点。
12.优选地,所述s1在进行拍照数据采集时,将所有待检测的手术器械分别按照同类型器械紧靠摆放、同类型器械交叉摆放,不同类型紧靠摆放,不同类型器械交叉摆放、所有器件交叉紧靠混合摆放五种摆放方式依次摆放,用于模拟实际应用中各种复杂情况,确保图像信息采集的丰富性和平衡性。
13.优选地,所述s1中提到的照片标签标注工作,具体包括以下步骤:
14.a1、将采集过图像数据的手术器械设定标签名;
15.a2、将所有采集到的手术器械图片输入到图像标注软件中;
16.a3、利用标注软件将每一张图像中的所有手术器械使用矩形框标注,即每一张图像中的所有手术器械使用矩形描绘出器械轮廓,矩形轮廓标注满足目标检测模型训练所需的信息,然后标记上所对应的标签名;
17.a4、完成标记后,将相对应的标签名、图片名和矩形轮廓和位置信息均保存在json类型文件中,其中矩形轮廓位置信息是通过在整张图像上建立坐标系,记录多边形每个顶点的x轴和y轴坐标。
18.优选地,所述s2中提到的训练集、验证集和测试集之间的比例为7:2:1;所述训练集用于训练网络;所述验证集用于训练过程验证模型检测效果,并根据效果调整模型的超参数;所述测试集用于模型效果测试。
19.优选地,所述s2中提到的数据增强预处理的具体增强方式为mosaic数据增强,即将多张图像随机缩放、裁剪和排布在一起,增强模型的泛化性。
20.优选地,所述s3中提到的目标检测模型轻量化设计,具体包括以下内容:
21.b1、给定一批手术器械图像集合,记为批次中第i张图像表示为其中,上标表示处理序号,0表示原始图像;
22.b2、对集合中输入的图像进行patchemdeding操作,即使用网格划分工具将图片等尺寸划分为无重叠的若干块,每块记为bi∈r3×4×4,在自注意力运算的时候,将其转化为48个rgb像素的串联(ti∈r1×
48
),等效于transformer中的token;
23.b3、通过全连接层将图像进行转化为然后将转化后的图像输入由5个swin transformer block组成的特征提取模块(以下简称block),单独一个block模块将输入特征图等划分为无重叠的数个窗口;
24.b3、在每个窗口内单独进行自注意力计算,block模块中其他结构与vit相同,包含层归一化、全连接层和残差连接;
25.b4、将swin transformer串联的block进行连接方式的修改,增加并联连接,增大网络的宽度,同时引入不同尺寸的窗口划分,将两个不同窗口尺寸分支输出的结构进行concat操作,然后连接一个池化层,取代原来的patchemerging层,使特征图的感受野和通道数增大,形成层次性结构;在两个结构一样、窗口尺寸不一样,即异尺度的block并联结构后,是一个单独的block模块和一个空间注意力模块,所以整体结构由4个层次组成,四个层次的输入依次为
26.b5、将b4中四个层次的输入作为faster r-cnn的fpn(feature pyramid networks)结构的输入;
27.b6、通过faster r-cnn进行最后的目标检测,生成相应的预测框和置信度。
28.与现有技术相比,本发明提供了一种基于深度学习的手术器械仓储环境清点模型压缩方法,具备以下有益效果:
29.本发明提出了一种基于深度学习的手术器械仓储环境清点模型压缩方法,对基于swin transformer的目标检测模型进行模型压缩,能够在减少运算量和参数量的前提下保证模型的精度。
附图说明
30.图1为本发明提出的一种基于深度学习的手术器械仓储环境清点模型压缩方法的流程示意图;
31.图2为本发明实施例1中提出的经过轻量化设计后的模型架构示意图;
32.图3为本发明实施例1中提出的异尺度窗口划分方法示意图。
具体实施方式
33.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
34.实施例1:
35.请参阅图1-3;
36.一种基于深度学习的手术器械仓储环境清点模型压缩方法,包括以下步骤:
37.s1、手术器械数据采集与标注:对手术器械进行拍照采集数据,形成数据集,并根据要求对数据集中的照片进行标签标注;
38.进行拍照数据采集时,将所有待检测的手术器械分别按照同类型器械紧靠摆放、同类型器械交叉摆放,不同类型紧靠摆放,不同类型器械交叉摆放、所有器件交叉紧靠混合摆放五种摆放方式依次摆放,用于模拟实际应用中各种复杂情况,确保图像信息采集的丰富性和平衡性;
39.在进行照片标签标注工作时,具体包括以下步骤:
40.a1、将采集过图像数据的手术器械设定标签名;
41.a2、将所有采集到的手术器械图片输入到图像标注软件中;
42.a3、利用标注软件将每一张图像中的所有手术器械使用矩形框标注,即每一张图像中的所有手术器械使用矩形描绘出器械轮廓,矩形轮廓标注满足目标检测模型训练所需的信息,然后标记上所对应的标签名;
43.a4、完成标记后,将相对应的标签名、图片名和矩形轮廓和位置信息均保存在json类型文件中,其中矩形轮廓位置信息是通过在整张图像上建立坐标系,记录多边形每个顶点的x轴和y轴坐标;
44.s2、数据集划分与数据增强:对s1中所得的数据集划分为训练集、验证集和测试集,其中,训练集、验证集和测试集之间的比例为7:2:1;训练集用于训练网络;验证集用于训练过程验证模型检测效果,并根据效果调整模型的超参数;测试集用于模型效果测试;
45.同时在训练前对数据进行数据增强预处理,具体增强方式为mosaic数据增强,即将多张图像随机缩放、裁剪和排布在一起,增强模型的泛化性;
46.s3、目标检测模型轻量化设计:针对swin transformer模型进行轻量化结构设计,降低swin transformer模型所需的内存和运算量,实现模型的压缩,重新设计的模型总体架构如图2所示,具体包括以下内容:
47.b1、给定一批手术器械图像集合,记为批次中第i张图像表示为其中,上标表示处理序号,0表示原始图像;
48.b2、对集合中输入的图像进行patchemdeding操作,即使用网格划分工具将图片等尺寸划分为无重叠的若干块,每块记为bi∈r3×4×4,在自注意力运算的时候,将其转化为48个rgb像素的串联(ti∈r1×
48
),等效于transformer中的token;
49.b3、通过全连接层将图像进行转化为然后将转化后的图像输入由5个swin transformer block组成的特征提取模块(以下简称block),单独一个block模块将输入特征图等划分为无重叠的数个窗口;
50.swin transformer将图片无重叠的划分窗口,在每个窗口内单独计算自注意力,使复杂度只随着图像尺寸线性增长,同时为了使相邻的窗口的信息可以互相流通;此外,swin transformer使用了窗口位移方法,即对整个特征图先进行移位操作,再进行窗口自注意力计算,如此窗口中就包含了上次计算中相邻窗口的信息;但是在移位后,拼接线两边的像素不关联,即打乱了图像的空间信息,为了保持图像数据的空间位置不变性,需要为窗口数据添加掩码进行弥补;移位包括掩码的操作,过程相对复杂,可能无法针对移动设备的速度进行优化,尤其移位的操作使用torch.roll()函数,对内存不友好,而且流行的边缘设备推理框架(如nvidia tensorrt和google tensorflow-lite)很少支持此函数,这阻碍了swin transformer在仓储环境下进行边缘计算部署;
51.所以为了压缩模型,采用基于异尺度窗口的自注意力计算,通过设定相邻两个的block的窗口的尺寸大小不一致,如图3所示,下一次划分窗口已经包含上一次中相邻窗口信息,同时参考卷积神经网络中存在的特征提取思想,使用不同尺寸的窗口可以提取到更丰富的特征,增强模型的建模能力;同时整个过程只涉及了现代深度学习框架已经优化的矩阵乘法,避免了特殊的矩阵运算方式的使用,更利于像仓储环境手术器械这种应用环境进行模型部署;
52.b3、在每个窗口内单独进行自注意力计算,block模块中其他结构与vit相同,包含层归一化、全连接层和残差连接;
53.b4、将swin transformer串联的block进行连接方式的修改,增加并联连接,增大网络的宽度,同时引入不同尺寸的窗口划分,将两个不同窗口尺寸分支输出的结构进行concat操作,然后连接一个池化层,取代原来的patchemerging层,使特征图的感受野和通道数增大,形成层次性结构;在两个结构一样、窗口尺寸不一样,即异尺度的block并联结构后,是一个单独的block模块和一个空间注意力模块,所以整体结构由4个层次组成,四个层
次的输入依次为
54.本发明所采用的block间的并联连接,类似于resnet的残差连接,不同的是,resnet是直接相加,而本发明采用concat操作,让特征图直接在通道维度上拼接,然后进行池化操作,实现一样的层次化结构,避免全连接层的引入;而且通过并联连接,将经不同尺寸,不同阶段的窗口运算的特征图在通道上的结合,建立了图像上两个有一定距离的像素之间的联系,可以实现高像素信息和语义信息的有效融合,保证了特征图的高效利用,同时降低了运算量和参数量,体现了轻量化设计的特点;
55.除此之外,在仓储环境下,摄像头采集的图像往往只有一个器械,图中目标单一,关键信息比较集中,大部分为无用信息,所以在网络的最后增加全局空间注意力模块,此位置的特征图尺寸较小,进行全局注意力计算对运算的负担较小;同时可以提高模型对目标位置信息的提取能力,抑制背景噪声;
56.b5、将b4中四个层次的输入作为faster r-cnn的fpn(feature pyramid networks)结构的输入;
57.b6、通过faster r-cnn进行最后的目标检测,生成相应的预测框和置信度;
58.s4、目标检测模型训练:将s3中经过轻量化设计的目标检测模型代码封装好,然后将数据集输入模型中进行训练,在预先设定的模型训练波次结束后,保存精度最高模型参数,用于仓储环境下手术器械的清点。
59.综上所述,本发明提出了一种基于深度学习的手术器械仓储环境清点模型压缩方法,对基于swin transformer的目标检测模型进行模型压缩,能够在减少运算量和参数量的前提下保证模型的精度。
60.以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
技术特征:
1.一种基于深度学习的手术器械仓储环境清点模型压缩方法,其特征在于,包括以下步骤:s1、手术器械数据采集与标注:对手术器械进行拍照采集数据,形成数据集,并根据要求对数据集中的照片进行标签标注;s2、数据集划分与数据增强:对s1中所得的数据集划分为训练集、验证集和测试集,同时在训练前对数据进行数据增强预处理;s3、目标检测模型轻量化设计:针对swin transformer模型进行轻量化结构设计,降低swin transformer模型所需的内存和运算量,实现模型的压缩;s4、目标检测模型训练:将s3中经过轻量化设计的目标检测模型代码封装好,然后将数据集输入模型中进行训练,在预先设定的模型训练波次结束后,保存精度最高模型参数,用于仓储环境下手术器械的清点。2.根据权利要求1所述的一种基于深度学习的手术器械仓储环境清点模型压缩方法,其特征在于,所述s1在进行拍照数据采集时,将所有待检测的手术器械分别按照同类型器械紧靠摆放、同类型器械交叉摆放,不同类型紧靠摆放,不同类型器械交叉摆放、所有器件交叉紧靠混合摆放五种摆放方式依次摆放,用于模拟实际应用中各种复杂情况,确保图像信息采集的丰富性和平衡性。3.根据权利要求1所述的一种基于深度学习的手术器械仓储环境清点模型压缩方法,其特征在于,所述s1中提到的照片标签标注工作,具体包括以下步骤:a1、将采集过图像数据的手术器械设定标签名;a2、将所有采集到的手术器械图片输入到图像标注软件中;a3、利用标注软件将每一张图像中的所有手术器械使用矩形框标注,即每一张图像中的所有手术器械使用矩形描绘出器械轮廓,矩形轮廓标注满足目标检测模型训练所需的信息,然后标记上所对应的标签名;a4、完成标记后,将相对应的标签名、图片名和矩形轮廓和位置信息均保存在json类型文件中,其中矩形轮廓位置信息是通过在整张图像上建立坐标系,记录多边形每个顶点的x轴和y轴坐标。4.根据权利要求1所述的一种基于深度学习的手术器械仓储环境清点模型压缩方法,其特征在于,所述s2中提到的训练集、验证集和测试集之间的比例为7:2:1;所述训练集用于训练网络;所述验证集用于训练过程验证模型检测效果,并根据效果调整模型的超参数;所述测试集用于模型效果测试。5.根据权利要求1所述的一种基于深度学习的手术器械仓储环境清点模型压缩方法,其特征在于,所述s2中提到的数据增强预处理的具体增强方式为mosaic数据增强,即将多张图像随机缩放、裁剪和排布在一起,增强模型的泛化性。6.根据权利要求1所述的一种基于深度学习的手术器械仓储环境清点模型压缩方法,其特征在于,所述s3中提到的目标检测模型轻量化设计,具体包括以下内容:b1、给定一批手术器械图像集合,对集合中输入的图像进行patchemdeding操作;b2、通过全连接层对图像进行转化,然后将转化后的图像输入由5个swin transformer block组成的特征提取模块,利用特征提取模块将输入特征图等划分为无重叠的数个窗口;b3、在每个窗口内单独进行自注意力计算,特征提取模块中其他结构与vit模型相同,
包含层归一化、全连接层和残差连接;b4、将swin transformer串联的特征提取模块进行连接方式的修改,增加并联连接,增大网络的宽度,同时引入不同尺寸的窗口划分,形成层次性结构,将不同层次的输入作为faster r-cnn的fpn结构的输入;b5、通过faster r-cnn进行最后的目标检测,生成相应的预测框和置信度。7.根据权利要求6所述的一种基于深度学习的手术器械仓储环境清点模型压缩方法,其特征在于,所述b1中提到的对集合中输入的图像进行patchemdeding操作,具体包括以下内容:c1、使用网格划分工具将图片等尺寸划分为无重叠的若干块;c2、在自注意力运算的时候,将c1中所得的块转化为48个rgb像素的串联,等效于transformer中的token。8.根据权利要求6所述的一种基于深度学习的手术器械仓储环境清点模型压缩方法,其特征在于,所述b4中提到的引入不同尺寸的窗口划分,具体包括以下内容:将两个不同窗口尺寸分支输出的结构进行concat操作,然后连接一个池化层,取代原来的patchemerging层,使特征图的感受野和通道数增大,形成层次性结构。
技术总结
本发明公开了一种基于深度学习的手术器械仓储环境清点模型压缩方法,属于目标检测技术领域。一种基于深度学习的手术器械仓储环境清点模型压缩方法,包括以下步骤S1、对手术器械进行拍照采集数据,形成数据集,并根据要求对数据集中的照片进行标签标注;S2、对数据集划分为训练集、验证集和测试集,同时在训练前对数据进行数据增强预处理;S3、针对Swin transformer模型进行轻量化结构设计,降低Swin transformer模型所需的内存和运算量,实现模型的压缩;S4、将目标检测模型代码封装好,然后将数据集输入模型中进行训练。本发明基于Swin Transformer的目标检测模型进行模型压缩,能够在减少运算量和参数量的前提下保证模型的精度。型的精度。型的精度。