System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及视景仿真,更具体的说是涉及一种用于模拟器视景的红外仿真方法。
技术介绍
1、近年来,飞行模拟器在驾驶训练中得到了广泛的应用,不但提高了训练效率,而且节省了大量训练经费。随着对模拟器逼真度的要求越来越高,红外成像仿真必须能够真实反映仿真目标的辐射场变化,同时还要具备较高的仿真效率。
2、目前工程化的红外成像仿真一般采用两种方式实现。一种是在仿真软件包的基础上构建红外场景,比较典型的是利用presagis公司的建模软件creator和视景驱动软件vega中的红外模块(irsensor)来模拟红外场景,这种方法可以充分利用vega中的irsensor模块强大的红外仿真优势,产生出逼真实时的红外场景仿真,但由于该模块包含战斗机的相关信息,为了保密要求,软件开发商进行了出售管控,目前在工程中使用的多是早期的vega3.7版本(这一版本发布于20世纪90年代)中的红外模块,已远远不能满足现在的仿真需求。另一种是利用商用建模软件来建立场景红外模型,然后采用opengl或其他视景驱动软件进行低层渲染来仿真红外场景。这种方法大都只针对单一化的仿真阶段,仿真的相似度和效率难以达到工程化要求。
3、由此可见,要提高研究的实用性,必须建立一套完备的红外图像仿真方法,建立与可见光视景同步的红外场景仿真,实现从场景模拟到最终观察结果的仿真。
技术实现思路
1、针对以上问题,本专利技术的目的在于提供一种用于模拟器视景的红外仿真方法,采用shader语言来实现红外仿真过程,可
2、本专利技术为实现上述目的,通过以下技术方案实现:
3、第一方面,本专利技术公开了一种用于模拟器视景的红外仿真方法,包括:获取实体的3d模型,并根据3d模型的发热源部件,进行模型的预处理;
4、基于预处理后的3d模型,建立shader程序的初始化环境;
5、建立不同3d模型的shader程序,针对3d模型有无内热源,编写相应的shader程序;
6、将预处理后的3d模型与shader程序绑定;
7、获取3d模型上的实体部件的实时温度、着色目标截面的面积、相对于热源的位置、以及当前的时间信息,利用shader程序计算实体部件的红外辐射量,并在3d模型上输出相应的着色效果。
8、进一步,所述获取实体的3d模型,并根据3d模型的发热源部件,进行模型的预处理,包括:
9、获取实体的3d模型,根据实体的3d模型内部是否有发热源分解模型部件,将有发热源的模型部件分离成模型的子节点;
10、根据不同子节点材质发射率的不同,利用图像处理软件制作材质纹理;
11、在实体的3d模型的纹理库中添加材质纹理;
12、将新加入的材质纹理设置为模型纹理的layer1层,原有的可见光纹理为模型纹理的layer0层;
13、将可见光纹理的uv映射赋给材质纹理,输出具有多重纹理的3d模型。
14、进一步,所述获取3d模型上的实体部件的实时温度、着色目标截面的面积、相对于热源的位置、以及当前的时间信息,利用shader程序计算实体的红外辐射量,并在3d模型上输出相应的着色效果,包括:
15、获取3d模型上的实体部件的实时温度、着色目标截面的面积,基于普朗克定律公式计算相应实体的辐射量;
16、获取相对于热源的位置和当前的时间信息,基于眼点坐标系计算太阳辐射量;根据实体的辐射量和太阳辐射量计算出实体的总辐射量;
17、将实体的总辐射量量化为灰度等级;
18、根据灰度等级,在3d模型上对相应的部件进行着色显示。
19、进一步,所述获取3d模型上的实体部件的实时温度、着色目标截面的面积,基于普朗克定律公式计算相应实体的辐射量,包括:
20、获取3d模型上的实体部件的实时温度、着色目标截面的面积;
21、通过公式计算实体的辐射量li;
22、其中,λ为波长,t为实体温度,ε1为实体的发射率;为普朗克定律公式,h、k、c1、c2均为普朗克常数遍历,c为光速,s1为着色目标截面的面积,θ1为着色目标截面法向与观察方向的夹角。
23、进一步,所述获取相对于热源的位置和当前的时间信息,基于眼点坐标系计算太阳辐射量,包括:
24、假设太阳的位置为s,飞机部件实体顶点p位置为p,表面法向量为n,黑体辐射强度为i,则在当前的时刻t,顶点p的太阳辐射度ls用如下公式表示:
25、
26、其中,t∈[0,24],向量(p-s)=[coshcosα,coshsinα,sinh],α为太阳相对于观察点的方位角,h为太阳相对于观察点的高度角。
27、进一步,所述根据实体的辐射量和太阳辐射量计算出实体的总辐射量,包括:
28、基于实体的辐射量li和太阳辐射量ls,利用公式l=li+ls计算出实体的总辐射量l。
29、进一步,所述将实体的总辐射量量化为灰度等级,包括:
30、根据公式计算出灰度等级g;
31、其中,lmin为辐射亮度的下限值,lmax为辐射亮度的上限值,gmin为量化灰度等级的下限值,gmax为量化灰度等级的上限值。
32、第二方面,本专利技术还公开了一种用于模拟器视景的红外仿真系统,包括:模型预处理模块,配置用于获取实体的3d模型,并根据3d模型的发热源部件,
33、进行模型的预处理;
34、初始化模块,配置用于基于预处理后的3d模型,建立shader程序的初始化环境;
35、编写模块,配置用于建立不同3d模型的shader程序,针对3d模型有无内热源,
36、编写相应的shader程序;
37、绑定模块,配置用于将预处理后的3d模型与shader程序绑定;
38、计算着色模块,配置用于获取3d模型上的实体部件的实时温度、着色目标截面的面积、相对于热源的位置、以及当前的时间信息,利用shader程序计算实体部件的红外辐射量,并在3d模型上输出相应的着色效果。
39、第三方面,本专利技术还公开了一种用于模拟器视景的红外仿真装置,包括:
40、存储器,用于存储用于模拟器视景的红外仿真程序;
41、处理器,用于执行所述用于模拟器视景的红外仿真程序时实现如上文任一项所述用于模拟器视景的红外仿真方法的步骤。
42、第四方面,本专利技术还公开了一种可读存储介质,所述可读存储介质上存储有用于模拟器视景的红外仿真程序,所述用于模拟器视景的红外仿真程序被处理器执行时实现如上文任一项所述用于模拟器视景的红外仿真方法的步骤。
43、对比现有技术,本专利技术有益效果在于:本专利技术公开了一种用于模拟器视景的红外仿真方法,所述方法包括模型预处理、计算辐射量、利用shader程序着色三部分组成本文档来自技高网...
【技术保护点】
1.一种用于模拟器视景的红外仿真方法,其特征在于,包括:
2.根据权利要求1所述的用于模拟器视景的红外仿真方法,其特征在于,所述获取实体的3D模型,并根据3D模型的发热源部件,进行模型的预处理,包括:获取实体的3D模型,根据实体的3D模型内部是否有发热源分解模型部件,将有发热源的模型部件分离成模型的子节点;
3.根据权利要求1所述的用于模拟器视景的红外仿真方法,其特征在于,所述获取3D模型上的实体部件的实时温度、着色目标截面的面积、相对于热源的位置、以及当前的时间信息,利用shader程序计算实体的红外辐射量,并在3D模型上输出相应的着色效果,包括:
4.根据权利要求3所述的用于模拟器视景的红外仿真方法,其特征在于,所述获取3D模型上的实体部件的实时温度、着色目标截面的面积,基于普朗克定律公式计算相应实体的辐射量,包括:
5.根据权利要求4所述的用于模拟器视景的红外仿真方法,其特征在于,所述获取相对于热源的位置和当前的时间信息,基于眼点坐标系计算太阳辐射量,包括:
6.根据权利要求5所述的用于模拟器视景的红外仿真方法,其
7.根据权利要求6所述的用于模拟器视景的红外仿真方法,其特征在于,所述将实体的总辐射量量化为灰度等级,包括:
...【技术特征摘要】
1.一种用于模拟器视景的红外仿真方法,其特征在于,包括:
2.根据权利要求1所述的用于模拟器视景的红外仿真方法,其特征在于,所述获取实体的3d模型,并根据3d模型的发热源部件,进行模型的预处理,包括:获取实体的3d模型,根据实体的3d模型内部是否有发热源分解模型部件,将有发热源的模型部件分离成模型的子节点;
3.根据权利要求1所述的用于模拟器视景的红外仿真方法,其特征在于,所述获取3d模型上的实体部件的实时温度、着色目标截面的面积、相对于热源的位置、以及当前的时间信息,利用shader程序计算实体的红外辐射量,并在3d模型上输出相应的着色效果,包括:
...
【专利技术属性】
技术研发人员:周秀芝,孙忠云,胡文婷,
申请(专利权)人:中国人民解放军海军航空大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。