在途原位计算下时变三维流场的演化特征提取方法与流程

文档序号:33193200发布日期:2023-02-04 09:37阅读:44来源:国知局
在途原位计算下时变三维流场的演化特征提取方法与流程

1.本发明属于流体力学分析领域,更具体地,涉及在途原位计算下时变三维流场的演化特征提取方法。


背景技术:

2.时变三维流场用于记录流场在多个时间步内的整体态势变化,而近年来时变三维流场以更大规模、更高精度、更长时间的计算来模拟更复杂的物理现象。由此产生的三维时变流场数据由于单个时间步数据文件大、时间步多等原因,其仿真数据的生成和储存通常会耗费极大的时间开销,而超大规模的数据量对超级计算机的输入/输出速度和存储能力提出了挑战。这导致了时变三维流场只能以在时间上进行采样,降低精度为代价进行存储。
3.同时,由于时变流场随时间的变化而产生的变化通常是非线性的,但传统的方法采用标准线性插值生成中间体,这些插值仅基于插值位置周围的局部信息,因此可能无法捕捉到复杂的非线性变化。其次,因为典型的网络架构应用于时变三维流场数据时,通常可能不会十分关注关键点的位置以及动态上的变化,所以生成的数据峰值信噪比较高。因此,需要一种时变流场压缩技术当保存时变三维流场数据时,可以只保留少量时间步数据以减少内存上的开销,同时在使用时能有效准确的恢复出中间时间步。
4.总结来看,时变三维流场超大规模的数据量和时间步不仅对计算机的输入/输出速度和存储能力提出了挑战,也对时变三维流场的压缩和构造提出了需求。


技术实现要素:

5.本发明的目的是提出在途原位计算下时变三维流场的演化特征提取方法,针对保存较少时间步的时变三维流场,构造时变三维流场模型,生成流场过渡时刻,以解决现有技术中时变三维流场在时间步少、精度低的情况下无法准确还原流场中间时刻的衍生过程等问题。
6.第一方面,提供了一种在途原位计算下时变三维流场的演化特征提取方法,包括:
7.对m个时间步的三维流场数据进行时间维度上的降维,得到n个时间步的三维流场数据;
8.使用所述n个时间步的三维流场数据对时间超分辨率网络进行训练,具体包括,将所述n个时间步的三维流场数据输入至待训练的时间超分辨率网络,得到m-n个中间时间步的三维流场估测数据,所述m-n个中间时间步的三维流场估测数据为针对所述m个时间步中m-n个中间时间步的三维流场数据的预测数据,并通过损失函数调整所述时间超分辨率网络的参数。
9.例如,m个时间步可以为时间步1,时间步1-1,
……
时间步1-k,时间步2,时间步2-1,
……
时间步2-k,
……
时间步n-1,时间步n-1-1,
……
时间步n-1-k,时间步n。对m个时间步进行时间维度降维,得到时间步1,
……
,时间步n。因此可以通过m个时间步训练时间超分辨率网络,对时间步1-1,
……
时间步1-k,时间步2-1,
……
时间步2-k,
……
时间步n-1,时间步
n-1-1,
……
时间步n-1-k进行预测。
10.结合第一方面,在第一方面的某些实现方式中,所述时间超分辨率网络采用递归生成网络rgn,包括生成器和鉴别器;
11.所述生成器用于根据输入的两个时间步的流场速度向量数据,生成两次中间预测数据,并通过权重对这两次中间预测数据进行相加得到最后的预测数据;
12.所述鉴别器用于对预测数据和原始数据进行匹配,以调整所述时间超分辨率网络的参数。
13.结合第一方面,在第一方面的某些实现方式中,所述生成器包括特征提取模块、时间模块以及放大模块,所述特征提取模块采用四个残差块,用于对时变三维流场数据的特征提取和下采样操作;所述时间模块采用convlstm架构,对数据的时变趋势与相应的动态变化进行学习;所述放大模块则采用残差块和体素混洗层对数据进行放大。
14.结合第一方面,在第一方面的某些实现方式中,在所述特征提取模块中,第一个残差块的卷积核大小为5
×5×
5,其余残差块的卷积核大小为3
×3×
3,在第一条路线中,第一个卷积层的步长为1,第二个卷积层的步长为2,填充大小均为(卷积核个数-1)//2;在第二条路线中的卷积层卷积核大小为1
×1×
1,步长为1,不进行填充,然后经过一个平均池化进行下采样。
15.结合第一方面,在第一方面的某些实现方式中,在所述时间模块中,权重操作通过卷积运算进行,卷积核大小为3
×3×
3,步长大小为1,填充大小为1。
16.结合第一方面,在第一方面的某些实现方式中,在所述放大模块中,每个放大层包括一个残差块和一个体素混洗层,所述体素混洗层用于将数据放大,将一定频道数内的数据综合起来,并将这些数据按一定的顺序进行排列,最终汇总成一个频道的数据进行输出;最后一个残差块的卷积核为5
×5×
5,其余残差块卷积核大小均为3
×3×
3,步长的大小都是1,填充均为(卷积核个数-1)//2。
17.结合第一方面,在第一方面的某些实现方式中,在所述鉴别器中,除最后一层卷积层,其他的每层卷积层的卷积核的大小均为4
×4×
4,步长均为2,填充均为1,最后一层卷积层的步长为0,每个卷积层后都有一个谱归一化层sn和一个带泄露的修正线性单元leakyrelu层。
18.结合第一方面,在第一方面的某些实现方式中,所述时间超分辨率网络的损失函数包括对抗损失函数,所述对抗损失函数满足:
[0019][0020][0021]
其中,为生成器g损失的最小值,为求取期望运算,v
t
为流场数据对的集合,即d(
·
)为关于鉴别器d的函数,g(
·
)为关于生成器g的函数,为鉴别器d损失的最小值,vi为v
t
中数据对的中间时间步数据,即
[0022]
结合第一方面,在第一方面的某些实现方式中,所述时间超分辨率网络的损失函
数包括容积损失函数,所述容积损失函数满足:
[0023][0024]
其中,为容积损失,为求取期望运算,v

为生成器生成的数据,v
t
为流场数据对的集合,v代表原始数据,vi为v
t
中数据对的中间时间步数据,g(
·
)为关于生成器g的函数,||
·
||为l2范式。
[0025]
结合第一方面,在第一方面的某些实现方式中,所述时间超分辨率网络的损失函数包括特征损失函数,所述特征损失函数满足:
[0026][0027]
其中,为特征损失,为求取期望运算,v

为生成器生成的数据,v
t
为流场数据对的集合,v代表原始数据,vi为v
t
中数据对的中间时间步数据,n是鉴别器d中的卷积层总数,k代表第k个卷积层,nk表示第k个卷积层中的元素数,fk代表鉴别器d中第k个卷积层所提取的特征,g(
·
)为关于生成器g的函数,||
·
||为l2范式。
[0028]
结合第一方面,在第一方面的某些实现方式中,所述时间超分辨率网络的损失函数包括关键点损失函数,所述关键点损失函数满足:
[0029][0030][0031][0032]
其中,和为损失的两部分,为求取期望运算,pos和pos

代表部分原始数据关键点和生成数据关键点的位置,pos
origincp
和pos
fakecp
分别代表所有的原始数据关键点和生成数据关键点的位置,nc代表原始数据中关键点的总数,i代表第i个原始数据中的关键点,v
origincp
,v
fakecp
分别代表所有的原始数据关键点和生成数据关键点的周围区域,v和v

分别代表部分原始数据关键点和生成数据关键点的周围区域,λ
c1
和λ
c2
分别代表和的权重。
[0033]
结合第一方面,在第一方面的某些实现方式中,所述时间超分辨率网络的损失函数满足:
[0034][0035]
其中,为生成器g损失的最小值,λ1为第一部分损失对应得权重,为求取期望运算,v代表原始数据,v
t
为输入的时变流场数据,d(
·
)为关于鉴别器d的函数,g(
·
)为关于生成器g的函数,λ2为容积损失对应的权重,为容积损失,λ3为特征损失对应的权重,为特征损失,λ4为关键点损失对应的权重,为关键点损失。
[0036]
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:
[0037]
识别三维流场中的关键区域,所述关键区域包括速度矢量为0的所有关键点;
[0038]
将所述关键点的信息输入至所述时间超分辨率网络,以完成所述时间超分辨率网络的训练。
[0039]
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:
[0040]
将所属计算机划分为第一计算机集群和第二计算机集群,以搭建原位计算环境,所述第一计算机集群用于对数据进行预处理,并训练所述时间超分辨率网络,所述第二计算机集群用于通过训练好的所述时间超分辨率网络,生成中间时刻三维流场数据,并执行三维流场数据的可视化操作。
[0041]
第二方面,提供了一种生成中间时刻三维流场数据的方法,包括:
[0042]
获取多个时间步的三维流场数据;
[0043]
将所述多个时间步的三维流场数据输入至如上述第一方面中的任意一种实现方式中所述的时间超分辨率网络,得到所述多个时间步的中间时间步三维流场数据;
[0044]
执行三维流场数据的可视化操作,得到所述三维流场数据和所述中间时间步三维流场数据对应的可视化结果。
[0045]
结合第二方面,在第二方面的某些实现方式中,所述方法还包括:
[0046]
将多个时间步的三维流场数据中的关键点的信息输入至所述时间超分辨率网络,得到所述中间时间步三维流场数据,所述关键点是速度矢量为0的点。
[0047]
本发明与现有技术相比的优点在于:
[0048]
(1)本发明基于在途原位计算环境进行时间超分辨率网络的训练和可视化,有效的缓解了由于计算机的输入/输出速度和存储限制带来的流场数据无法及时可视化和完善存储的问题。
[0049]
(2)本发明通过引入时间超分辨率网络,相比于传统的标准线性插值生成中间体,能够更加准确的获取时变流场随时间的变化,从而能够在只存储两个时间步流场的情况下,生成中间时刻的流场动画。
[0050]
(3)本发明还通过在时间超分辨率网络的训练中将关键点等信息作为输入,使训练好的神经网络参数能够更好的关注关键点的位置以及动态上的变化,降低数据的峰值信噪比。
[0051]
本发明的其它特征和优点将在随后具体实施方式部分予以详细说明。
附图说明
[0052]
通过结合附图对本发明示例性实施方式进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显,其中,在本发明示例性实施方式中,相同的参考标号通常代表相同部件。
[0053]
图1示出了根据本发明的一个实施例的在途原位计算下时变三维流场的演化特征提取方法的总体流程示意图。
[0054]
图2示出了根据本发明的一个实施例的在途原位计算下时变三维流场的演化特征提取方法的在途原位计算应用示意图。
[0055]
图3示出了根据本发明的一个实施例的在途原位计算下时变三维流场的演化特征
提取方法的时变三维流场构造示意图。
[0056]
图4示出了根据本发明的一个实施例的在途原位计算下时变三维流场的演化特征提取方法的时间超分辨率网络整体示意图。
[0057]
图5示出了根据本发明的一个实施例的在途原位计算下时变三维流场的演化特征提取方法的时间超分辨率网络的全局网络架构及ib块示意图。
[0058]
图6示出了根据本发明的一个实施例的在途原位计算下时变三维流场的演化特征提取方法的时间超分辨率网络的生成器各层参数。
[0059]
图7示出了根据本发明的一个实施例的在途原位计算下时变三维流场的演化特征提取方法的时间超分辨率网络的鉴别器架构示意图。
[0060]
图8示出了根据本发明的一个实施例的在途原位计算下时变三维流场的演化特征提取方法的不同网络架构在同一时间步的云图结果比较。
具体实施方式
[0061]
下面将更详细地描述本发明的优选实施方式。
[0062]
根据本发明的在途原位计算下时变三维流场的演化特征提取方法,如图1所示,包括:
[0063]
搭建在途原位计算环境,划分所拥有的计算机;
[0064]
利用时间超分辨率网络构造时变三维流场模型;
[0065]
基于划分的时变三维流场数据集训练获得时变三维流场中间时刻衍生过程;
[0066]
基于神经网络参数化模型生成流场动画描述。
[0067]
本实施例主要从搭建在途原位计算环境、时变三维流场模型构造、时变流场中间时刻衍生过程的获得和流场动画描述的生成四个方面来描述该方法。
[0068]
1、搭建在途原位计算环境
[0069]
在一个示例中,可以通过以下步骤实现在途原位环境下时变三维流场的分析计算:
[0070]
如图2所示,将所属计算机数量按8:2划分来搭建原位计算环境,其中80%的计算机组成的集群用于对数据进行预处理并构造时变三维流场模型,获得时变三维流场中间时刻衍生过程;另外20%的计算机利用内存传来的时变三维流场模型训练好的参数进行原位分析计算,并输出最后可视化的流场动画描述,对时间超分辨率网络输出的若干时间步进行可视化分析,减少实验分析所需的时间成本和存储成本。
[0071]
2、时变三维流场模型构造
[0072]
基于1中的在途原位计算环境中80%部分的计算机,时变三维流场的构造主要通过以下步骤完成,如图3所示,首先对三维流场自动化识别关键区域,接着对时间维度上的高分辨率数据压缩为低分辨率数据,最后构造时间超分辨率网络,建立能够描述流场动画的时变流场模型。
[0073]
步骤一:在一个示例中,可以通过以下步骤对时变三维流场进行自动化识别关键区域:
[0074]
在向量场中,速度矢量为0的点被称为关键点。速度向量在本发明所使用的vtk格式的时变三维流场数据中为分别与x轴、y轴、z轴平行的速度风量u、v、w。可通过遍历vtk文
件中的u、v、w所指向的速度矢量是否为0来得到时变三维流场中所有的关键点信息并保存。
[0075]
步骤二:在一个示例中,可以通过以下步骤将时变流场高分辨率数据压缩为低分辨率数据:
[0076]
对时间维度上的高分辨率数据通过下采样的方式进行降维,即按一定的步长抽取时间步对应时刻的时变三维流场,中间未被抽取的时刻作为时间超分辨率网络训练的真实值,用于判定流场中间时刻衍生的效果。保存相对应的时间步信息及低分辨率数据,对保存的数据进行归一化并构造训练数据集和测试数据集。
[0077]
具体地,对于时间超分辨率网络的输入数据,首先进行预处理,即将原始数据进行截取,每隔3个时间步抽取一个时间步的图像,得到时间维度上下采样的时变三维流场数据。其中,中间间隔的时间步作为真实值用于与时间超分辨率网络生成的数据进行比对。
[0078]
步骤三:在一个示例中,通过以下方式构建时变三维流场的时间超分辨率网络:
[0079]
本发明采用一种输入数据为向量场的递归生成网络(rgn),它结合了循环神经网络和对抗生成网络,在架构中实际使用卷积长短记忆人工神经网络(convlstm)结构。将所选的两个时间步的流场速度向量数据分别输入至生成器后,生成器根据输入的一对时间步分别生成两次预测数据,两次预测数据均可以是对同一中间时间步的预测。通过权重对这两次预测数据进行相加得到最后的输出,最后将预测数据和原始数据分别输入鉴别器,以获得最终的鉴别结果。时间超分辨率网络整体架构如图4所示。
[0080]
首先,在一个示例中,通过以下方式来构建时间超分辨率网络的生成器:
[0081]
生成器g主要分为三个模块,分别为特征提取模块、时间模块以及放大模块。特征提取模块主要采用四个残差块,用于对时变三维流场数据的特征提取和下采样操作;时间模块采用convlstm架构,对数据的时变趋势与相应的动态变化进行学习;放大模块则采用残差块和体素混洗层对数据进行放大。时间超分辨率网络的生成器架构如图5(a)所示。
[0082]
在所述的特征提取模块中,第一个残差块的卷积核大小为5
×5×
5,其余残差块的卷积核大小为3
×3×
3。在路线p1中,第一个卷积层的步长为1,第二个卷积层的步长为2,填充大小均为(卷积核个数-1)//2,使得数据在经过p1后长宽高都变为原来的一半。路线p2中的卷积层卷积核大小为1
×1×
1,步长为1,不进行填充,然后经过一个平均池化进行下采样,使得p1和p2的结果大小一致,可以进行相应位置相加。
[0083]
在所述的时间模块中,采用卷积长短记忆人工神经网络(convlstm)。其中,权重操作通过卷积运算进行,卷积核大小为3
×3×
3,步长大小为1,填充的大小为1,使得数据在卷积前后大小不改变。通过卷积长短记忆人工神经网络,可以使网络能够通过前一个输入数据来预测下一个时间步的数据,从而使得时间超分辨率网络能够较好地学习时变三维流场数据在时间上发生的动态变化。
[0084]
在所述的放大模块中,每个放大层由一个残差块和一个体素混洗层组成,最后一个残差块的卷积核为5
×5×
5,其余残差块卷积核大小均为3
×3×
3,步长的大小都是1,填充均为(卷积核个数-1)//2。残差块的具体架构如图5(b)所示。p1的第一个卷积层后是一个体素混洗层,体素混洗层用于将数据放大,将一定频道数内的数据综合起来,并将这些数据按一定的顺序进行排列,最终汇总成一个频道的数据进行输出,也就是使该残差块的输出频道数cout为输入频道数cin
×n×n×
n。本发明中n设置为2,然后输入体素混洗层。时间超分辨率网络的生成器各层网络参数如图6所示。
[0085]
然后,在一个示例中,通过以下方式来构建时间超分辨率网络的鉴别器:
[0086]
在鉴别器网络架构中,除最后一层卷积层,其他的每层卷积层的卷积核的大小均为4
×4×
4,步长均为2,填充均为1,最后一层卷积层的步长为0,使得最终的输出数据大小为1
×1×
1,并且每个卷积层后都有一个谱归一化层(sn)和一个带泄露的修正线性单元(leakyrelu)层。时间超分辨率网络的鉴别器架构如图7所示。
[0087]
最后,在一个示例中,通过以下方式组成时间超分辨率网络的损失函数:
[0088]
时间超分辨率的损失函数可以分为对抗损失、容积损失、特征损失、关键点损失。
[0089]
对抗损失使生成器g生成的中间时间步数据与原始数据中对应的时间步数据更相似,鉴别器d能够更好的识别数据是来自生成器g或来自原始数据。根据对抗生成网络的定义,可以得到对抗损失公式如下:
[0090][0091][0092]
其中,为生成器g损失的最小值,为求取期望运算,v
t
为流场数据对的集合,即d(
·
)为关于鉴别器d的函数,g(
·
)为关于生成器g的函数。为鉴别器d损失的最小值,vi为v
t
中数据对的中间时间步数据,即
[0093]
容积损失用于保证生成器生成的数据能够有较低的均方差,使其得到的数据更接近原始数据。公式如下:
[0094][0095]
其中,为容积损失,为求取期望运算,v

为生成器生成的数据,v
t
为流场数据对的集合,v代表原始数据,vi为v
t
中数据对的中间时间步数据,g(
·
)为关于生成器g的函数,||
·
||为l2范式。
[0096]
特征损失用于保证生成器生成的数据在整体上的特征与相应的原始数据相似。
[0097][0098]
其中,为特征损失,为求取期望运算,v

为生成器生成的数据,v
t
为流场数据对的集合,v代表原始数据,vi为v
t
中数据对的中间时间步数据,n是鉴别器d中的卷积层总数,k代表第k个卷积层,nk表示第k个卷积层中的元素数,fk代表鉴别器d中第k个卷积层所提取的特征,g(
·
)为关于生成器g的函数,||
·
||为l2范式。
[0099]
关键点损失的损失函数由两部分组成,分别为和的计算过程为以原始数据中的关键点为基础,对原始数据中的关键点依次进行遍历,并在生成数据的关键点中查找距离小于阈值的点中与原始数据关键点距离最近的点。当生成数据中的某个关键点与原始数据中的某个关键点距离最近且小于一个阈值时,就认为这两个关键点是相对应
的,进行记录后计算该点与原始数据中的对应关键点的距离。采用mse进行计算。最后,分别设置和的权重,按权重比例相加得到最终的关键点损失
[0100][0101][0102][0103]
其中,和为损失的两部分,为求取期望运算,pos和pos

代表部分原始数据关键点和生成数据关键点的位置,pos
origincp
和pos
fakecp
分别代表所有的原始数据关键点和生成数据关键点的位置,nc代表原始数据中关键点的总数,i代表第i个原始数据中的关键点。v
origincp
,v
fakecp
分别代表所有的原始数据关键点和生成数据关键点的周围区域,v和v

分别代表部分原始数据关键点和生成数据关键点的周围区域,λ
c1
和λ
c2
分别代表和的权重。
[0104]
将上述所提的几部分损失按设置的不同权重相乘相加后可得生成器的最终损失函数如下:
[0105][0106]
其中,为生成器g损失的最小值,λ1为第一部分损失对应得权重,为求取期望运算,v代表原始数据,v
t
为输入的时变流场数据,d(
·
)为关于鉴别器d的函数,g(
·
)为关于生成器g的函数,λ2为容积损失对应的权重,为容积损失,λ3为特征损失对应的权重,为特征损失,λ4为关键点损失对应的权重,为关键点损失。
[0107]
3、时变流场中间时刻衍生过程的获得
[0108]
根据2中的时变三维流场模型,以流场中的关键点、低分辨率时变三维流场数据作为时间超分辨率网络的输入,按上述方式对构建的网络进行训练,构建中间时刻衍生的流场动画。并以时变三维流场数据中未被采样选中的时间步数据作为中间时刻衍生流场的真实值对不同的损失函数进行计算,得到效果最优的一组神经网络参数化模型。
[0109]
具体地,在本发明中输入的数据大小为3
×
64
×
64
×
64,即数据中包含u、v、w三个通道,而数据本身的长、宽、高分别均为64,训练数据时间步为100,测试数据时间步为30,分别对不带关键点损失和带有关键点损失的时间超分辨率网络进行训练,训练轮次均为100。
[0110]
4、流场动画描述的生成
[0111]
利用1中搭建的在途原位计算环境中另外的20%部分的计算机,根据3中得到的神经网络参数化模型,对于上述的时间超分辨率网络,将神经网络参数化模型、两个时刻的时变三维流场数据及关键点信息作为输入,运行时间超分辨率网络,得到的结果为时变三维流场两个时刻间的过渡时刻流场。并在该部分计算机上输出最终的过渡时刻流场图像。
[0112]
按上述过程进行时间超分辨率网络的推理过程,结果如图8所示,按行从上至下的
时刻分别为t=0.71,t=0.72,t=0.73,t=0.74,图8(a)代表原始数据,图8(b)代表不带关键点损失的模型训练后生成的预测数据,图8(c)代表带有关键点损失的模型训练后生成的预测数据,流场云图的颜色根据速度的模进行映射。结果显示无论是否带有关键点损失,时间超分辨率网络都能生成大致符合原始数据中的流场随时间发生的动态变化。部分在原流场中较为光滑、明显的局部区域,用带有关键点损失的模型生成的预测数据能使这些区域更为还原。
[0113]
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1