一种用于快速识别全息图像中铝燃烧颗粒的目标检测方法

文档序号:31019422发布日期:2022-08-05 19:54阅读:92来源:国知局
一种用于快速识别全息图像中铝燃烧颗粒的目标检测方法

1.本发明属于数字全息和深度学习技术领域,具体涉及一种用于快速识别全息图像中铝燃烧颗粒的目标检测方法。


背景技术:

2.铝粉是固体推进剂基本组元之一,能够改善火箭发动机的内弹道性能,如提高推进剂的密度、燃烧温度和比冲,也可抑制高频不稳定燃烧等。因此铝颗粒燃烧研究对于揭示推进剂中铝燃烧机理具有重要意义。传统的铝颗粒燃烧测量方法景深小且无法获得燃烧场中颗粒的动态信息,且采用人工手动处理获得颗粒信息。
3.为获得清晰,且景深小的燃烧场中颗粒的动态信息,采用新的图像采集方法,即数字全息法采集图像,数字全息可解决景深小的问题,并且单帧全息图像经过重建、融合后可获得几十甚至上百个清晰的颗粒。但由于数字全息技术获得的数据量较大,并且每张图像的铝颗粒数也较多,如果采用传统图像处理技术识别,颗粒精度会大幅降低;若使用手动识别颗粒,逐个计算颗粒粒径和空间坐标等信息,这极大地降低效率。因此,需要建立一种用于识别全息图像中铝燃烧颗粒的目标检测方法,以实现全息图像复杂背景中铝燃烧颗粒自主识别,从而提高铝燃烧颗粒全息图像后处理效率和准确率。
4.另外,传统的目标识别方法的识别目标多具备类别和特征差异明显、尺寸大 (米级)、速度低(米/秒~十米/秒级)等特点;但全息图像中铝颗粒具备差别小、尺寸小,为微米级、速度快(百米/秒~千米/秒级)等特点,因此需要结合这些特点建立一种适用于全息图像中铝燃烧颗粒的自主识别方法。


技术实现要素:

5.本发明的目的是提供一种用于快速识别全息图像中铝燃烧颗粒的目标检测方法,利用yolov 3模型,实现对全息图像中微米级铝燃烧颗粒的快速识别,获得铝颗粒的颗粒信息。
6.本发明采用以下技术方案:一种用于快速识别全息图像中铝燃烧颗粒的目标检测方法,该检测方法包括:
7.步骤一、建立适用于铝燃烧颗粒全息图像识别的数据集:
8.选取推进剂铝燃烧过程中的非连续的原始全息图像,通过图像重建、融合获得清晰的全息图像,将清晰的全息图像作为数据集;
9.步骤二、对选取的铝燃烧颗粒全息图像的训练集和验证集图像标注:
10.对训练集图像重新命名,并采用labelimg标注工具对每张全息图像中的每个铝燃烧颗粒标注;对每张标注后的图片信息对应保存,并定义为全息图标签;
11.步骤三、铝燃烧全息图像颗粒识别模型选取及参数设计:
12.建立yolov3模型,并设定参数;
13.步骤四、铝燃烧全息图颗粒快速识别:
14.将待检测全息图像输入铝颗粒识别模型,得出每张待识别的全息图像中目标的位置信息以及该目标是铝颗粒的置信度,位置信息以矩形框的形式表现,并给出[xk,yk,wk,hk],xk、yk、wk、hk分别为全息图像中铝颗粒预测框的起始横坐标、起始纵坐标、预测框宽度和预测框宽度;
[0015]
步骤五、铝燃烧颗粒中心位置获取:
[0016]
将步骤四得出的预测框的中心坐标作为铝颗粒的中心位置坐标[xk,yk];
[0017]
步骤六、铝燃烧颗粒粒径提取:
[0018]
将预测框中的铝颗粒作为粒径提取对象,对颗粒图像进行线性插值,并采用分水岭分割提取颗粒边缘,计算边缘内所有像素的面积之和作为等效圆的面积 sk,根据;获取颗粒粒径dk,获得全息图像中铝燃烧颗粒的目标检测信息[xk, yk,dk]。
[0019]
进一步地,在所述步骤二中,对每个铝燃烧颗粒标注的过程如下:标注框中心与铝燃烧颗粒中心保持一致,对于单个颗粒,采用单个矩形框进行标注,标注框的大小为铝燃烧颗粒的1.5~2.0倍;对于多个颗粒有连接融合的情况,采用多个矩形框进行标注,标注框的大小为铝燃烧颗粒的1.0~1.5倍。
[0020]
进一步地,在所述步骤三中,包括如下步骤:
[0021]
步骤3.1、将步骤一中的训练集作为输入图像,每张图像均分成sxs个格子, s为不大于图像尺寸的整数,每个格子用于检测落入该格子中的金属铝颗粒;
[0022]
步骤3.2、根据步骤二中的全息图标签确认真值边框,对步骤3.1中的每一个网格中的真值边框信息聚类出先验预测框;
[0023]
步骤3.3、根据损失函数给出预测框,交并比iou最大的预测框会被标注成1,被标注成1的预测框为最终预测框;
[0024]
步骤3.4、步骤3.1中每个格子预测b个边界框,同时给出该预测框的置信度,输出预测框,以及每个格子需要预测类别信息;b取2。
[0025]
进一步地,在所述步骤四中,yolov3模型验证过程如下:设置训练迭代轮数,将步骤一中的验证集输入yolov3模型中,若验证集的训练的结果与步骤二中2验证集标注结果的相似程度不小于90%,则模型验证通过。
[0026]
进一步地,在所述步骤四中,yolov3模型预测过程如下:将所述步骤一中的预测集输入通过验证的yolov3模型中,预测出过程耗时单位为毫秒级;给出每张待识别的原始全息图片中目标的位置信息以及该目标是铝颗粒的置信度。
[0027]
进一步地,在所述步骤一中,所述训练集,验证集和预测集将的比例为6:2: 2。
[0028]
进一步地,所述步骤3.1中s取值为128。本发明的有益效果是:1.对于全息图像中铝燃烧颗粒,每张图像的铝颗粒数多,且为同类目标,彼此之间特征差异小、特征低、尺寸小、速度快,通过建立yolov 3模型,并设定适合铝燃烧颗粒识别的参数,实现了对微米级铝燃烧颗粒的快速识别,获得铝颗粒的颗粒信息。2.根据标注准则,设定矩形框的几何中心与颗粒的几何中心重合的方法,并根据颗粒识别结果,准确获得铝颗粒的位置信息。3.整个全息图像中铝燃烧颗粒的目标检测过程只需要几秒时间,实现了针对全息图像中特征低、尺寸小、速度快的铝颗粒的快速识别。
附图说明
[0029]
图1目标检测方法步骤流程图;
[0030]
图2训练集图像标注示意图:
[0031]
(a)整体标注示意图;(b)单个铝颗粒标注示意图;(c)有连接的铝颗粒标注示意图;
[0032]
图3网格划分示意图;
[0033]
图4验证集标注结果示意图;
[0034]
图5目标检测预测结果;
[0035]
图6颗粒中心位置获取原理示意图;
[0036]
图7线性插值对比图:
[0037]
(a)未进行插值示意图;(b)线性插值后的结果;
[0038]
图8颗粒粒径提取示意图。
具体实施方式
[0039]
下面结合附图和具体实施方式对本发明进行详细说明。
[0040]
本发明一种用于快速识别全息图像中铝燃烧颗粒的目标检测方法,如图1所示,该检测方法包括:
[0041]
步骤一、建立适用于铝燃烧颗粒全息图像识别的数据集:
[0042]
选取推进剂铝燃烧过程中的非连续的原始全息图像,通过图像重建、融合获得清晰的全息图像,将清晰的全息图像作为数据集;
[0043]
对含铝复合推进剂铝燃烧颗粒的数字全息结果进行图像重建、融合,获得清晰的铝颗粒全息图像,如图2所示,图像背景复杂,燃烧中的铝颗粒尺寸小为几十微米~几百微米、速度快,达百米/秒~千米/秒,彼此之间特征差异小。本实施例从一次实验中获取1000张全息图像。
[0044]
一次实验可获得约4000张全息图像,为避免多张全息图像中识别的颗粒为重复颗粒,必须选取非连续的图像作为数据集样本,综合考虑铝颗粒的运动速度和视场范围(0~5mm),选取间隔为4张(每隔4张选取一张),故本实施例从一次实验中获取1000张原始全息图像。将获得的推进剂铝燃烧过程中的原始全息图像通过图像重建、融合后的全息图像作为数据集,并将其分成三部分:训练集 (m张图片),验证集(n张),预测集(p张)。m表示作为训练样本的全息图像张数,通常在500张以上,m值越大,模型预测越准确。本实施例针对获得的 1000张全息图像,按照比例6:2:2的比例将1000张全息图像分成600张训练集图片,200张验证集图片,200张预测集图片。
[0045]
步骤二、对选取的铝燃烧颗粒全息图像的训练集和验证集图像标注:
[0046]
对步骤一中特定的训练集、验证集图片标注。统一对m张训练集图片按照顺序命名为1.png、2.png.........m.png;利用labelimg标注工具采取人工方法对其进行标注,如图2中(a)所示。为保证标注过程的精准性,建立了以下标注准则:(1)为保证颗粒中心位置获取的准确性,要求标注过程中标注框中心与待标注对象中心尽量保持一致;(2)对于单个颗粒,采用单个矩形框进行标注,标注框的大小约为标注对象的1.5~2.0倍,如图2中(b)所示;(3)对于多个颗粒有连接融合的情况,采用多个矩形框进行标注,为避免同一个标注框
框定2个及其以上颗粒,标注框的大小约为标注对象的1.0~1.5倍,如图2中(c)所示;(4) 颗粒无论大小均要进行标注,即使是小的颗粒也通过放大图片等方式进行标注。将每张标注后的图片信息对应保存为1.xml、2.xml.........m.xml文件形式作为每张图像对应的标签,并定义为全息图标签,xml文件记录了颗粒标注框的位置信息。本实施例对600张训练集图片和200张验证集图片进行标注,验证集标注图片用于后续模型验证。
[0047]
步骤三、铝燃烧全息图像颗粒识别模型选取及参数设计:
[0048]
建立yolov3模型,并设定参数。
[0049]
利用步骤一和步骤二获得的m张全息图以及对应的m个全息图标签作为训练数据,选取适用于全息图像中铝燃烧颗粒识别全息图的模型并对相关参数进行设计。
[0050]
步骤三中能够识别全息图的模型选取yolov3模型,设计模型参数的步骤如下:
[0051]
步骤3.1、将步骤一获得的待预测的m张全息图作为输入图像,每张图像均分成sxs个网格,每个网格用于检测落入该网格中的金属铝颗粒,目标物体中心所在的网格只负责预测该目标物体。其中,s为整数,一般不小于7,同时还受到步骤一中全息图像的像素尺寸限制,本实施例中步骤一所用数据集图像尺寸为 1024
×
1024,代表图像的宽和高分别由1024个像素组成,网格划分也必须以像素为单位,网络结构中以图像大小减半的方式构建,则s的取值可以是1024、512、 256、128、64、32、16、8,网格数划分越少,计算量越小,综合考虑图片尺寸和计算效率,本实施例中s取128,每个网格为正方形,宽度为8个像素,每个像素代表实际尺寸为5um,每个网格单独可框定的最大颗粒为5
×
8=40um,网格划分如图3所示,由于s=128难以在图中表示,图为s=8的示意图。
[0052]
步骤3.2、给出先验预测框(anchor)。步骤二中全息图标签文件.xml给出训练样本中标记好的铝颗粒的信息,由此信息确认真值边框:xg,yg,wg,hg,其中xg,yg分别代表真值边框的起始横坐标和纵坐标,wg,hg分别代表真值边框的宽和高;针对步骤3.1中的每一个网格中的真值边框信息聚类出先验预测框:xa, ya,wa,h
a。
[0053]
步骤3.3、根据损失函数(loss function)给出预测框,其值的大小代表先验预测框与预测框的相似程度,且无限逼近于真值边框的先验预测框即为预测框。损失函数通常作为学习与优化的准则,模型训练总是趋向于损失函数更小。模型训练时根据损失函数进行迭代优化。根据损失函数的大小选择步骤3.2获得的与预测框最接近的先验预测框参与后续模型计算。
[0054]
[0055][0056]
式(1)中,xi,yi为预测框的坐标,为标注框的坐标。
[0057]
式(2)中ωi,hi为预测框的宽和高,为标注框宽和高。i:对每个网格进行迭代,步骤3.1中s=128,i为0~48之间的整数;j:对每个预测框进行迭代,步骤3.3中b=2,j为0、1。
[0058]
式(6)中为预测框与标注框的交并比iou,iou为[0,1]范围内的任意数值, ci为网络生成的置信分数。
[0059]
对于每个网格会给出2个预测框,但只有其中iou最大的预测框会被标注成1,被标注成1的预测框为最终预测框。
[0060]
步骤3.4、预测框输出。步骤3.1中每个网格预测b(b=2)个边界框(b取 1或2,对于铝燃烧颗粒全息图像识别,b取2效果更好),同时给出该预测框的置信度,输出步骤3.3的预测框;其中,用[xk,yk,wk,hk]表示预测框的位置,每个网格需要预测类别信息记为c,本发明中c为定值2,最终输出预测框的位置:
[0061]
xk=(t
x
*w
a,k
)+x
a,k
[0062]
yk=(ty*h
a,k
)+y
a,k
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(6);
[0063]
其中xk,yk是预测框的起始坐标,该起始坐标不超过目标检测物所在网格的坐标分为,网格由步骤3.1确定,k代表每张图像中预测边框的序号数,对于全息图像,k的取值为20~50之间的整数;x
a,k
,y
a,k
是先验预测框的坐标,w
a,k
,h
a,k
是先验预测框的宽和高x
a,k
,y
a,k
,,w
a,k
,h
a,k
取值不能超过原始全息图像的像素尺寸;t
x
、ty是要学习的参数,取值本身没有任何约束;
[0064]
并给出该目标预测的置信度:
[0065]
最终输出tensor=s
×s×
(5*b+c)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7);
[0066]
其置信度
[0067]
步骤四、铝燃烧全息图颗粒快速识别,具体包括如下步骤:
[0068]
步骤4.1、铝燃烧全息图颗粒模型训练包括以下步骤:4.11、配置图像处理器 gpu;4.12、定义图像处理流程,其中训练和测试需分别定义,训练过程包括了部分测试过程中不需要的数据增强操作,如在本示例中,训练过程使用了 mixupimage、randomdistort等数据
增强方式。4.13、定义数据集,数据集为voc 格式,因此采用pdx.datasets.vocdetection来加载数据集;4.14输入步骤二标注好的训练集样本,代入步骤三设计的铝燃烧颗粒识别模型,采用上述配置,对铝燃烧全息图颗粒模型进行训练,输出预测框的位置和置信度。
[0069]
步骤4.2、铝燃烧全息图颗粒模型验证:根据设计的模型训练,设置训练迭代轮数num_epochs=200,对步骤二中200张验证集图片进行训练,输出训练结果。若验证集的训练的结果与步骤二中200张验证集标注结果的相似程度达到 90%及其以上,可模型验证通过,否则回到步骤五,调整模型训练参数,训练再次验证,直至通过模型验证为止。
[0070]
步骤4.3、铝燃烧全息图颗粒模型预测。用通过验证的模型对步骤二中200 张预测集图片进行模型预测。预测过程耗费时65ms。模型预测将给出每张待识别的原始全息图片中目标的位置信息(以矩形框的形式表现)以及该目标是铝颗粒的置信度。图4为步骤二中验证集中的标注结果,图5为根据目标检测算法的预测结果,图中可以看出,该方法能够给出全息图像中铝颗粒预测框的起始横坐标xk、起始纵坐标yk、预测框宽度wk、预测框宽度hk,并给出置信度。例如,图5中颗粒1是铝颗粒的置信度为89%,图5中颗粒2是铝颗粒的置信度为95%,颗粒1的位置[xk,yk,wk,hk]=[183,44,56,54],颗粒2的位置[xk,yk,wk, hk]=[169,329,44,38],其中k代表每张图像中预测边框的序号数。
[0071]
步骤五、铝燃烧颗粒中心位置获取。步骤四预测结果将给处铝颗粒所在矩形框的起始横坐标和纵坐标,宽和高以及置信度。如图6所示,根据步骤二中标注准则,认为矩形框的几何中心与颗粒的几何中心重合,将步骤四给出的预测框的中心坐标作为铝颗粒的中心位置坐标。根据以下计算公式,以及步骤四获得的颗粒识别结果,可获得铝颗粒的位置信息。例如图5中颗粒1的位置[xk,yk]=[211, 71],颗粒2的位置[xk,yk]=[191,348]。
[0072][0073][0074]
步骤六、铝燃烧全息图颗粒粒径提取。由于步骤3.1中对图像进行网格划分的过程中可能对图像进行了缩放,降低了铝颗粒图像的精度,提取颗粒粒径前首先需要对颗粒进行线性插值,提高铝颗粒图像精度,如图7中(a)为原始图像,图7中(b)为线性插值后的图像;然后采用分水岭分割提取颗粒边缘,图8中(a)为颗粒粒径提取示意图,计算边缘内所有像素的面积之和作为等效圆的面积sk。
[0075]
sk=πr
k2
;dk=2rk×
p
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(11);
[0076]
其中,sk为颗粒的面积像素之和,rk为颗粒的等效半径,单位为像素(pixel), dk为颗粒的实际直径,p为每个像素代表的实际尺寸,k代表每张图像中预测边框的序号数,图像像元尺寸为10um,放大倍数2.23倍,p=10/2.23=4.484um/pixel。图8中(b)中颗粒的等效面积sk=4071.50,rk=36pixel,dk=323um。
[0077]
至此,全息图像中铝燃烧颗粒的目标检测方法可获得铝颗粒的位置信息和粒径信息[xk,yk,dk]。整个全息图像中铝燃烧颗粒的目标检测过程只需要几秒时间,实现了针对全息图像中特征低、尺寸小、速度快的铝颗粒的快速识别。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1