CN103279974A - 一种高精度高分辨率卫星成像模拟引擎及实现方法 - Google Patents

一种高精度高分辨率卫星成像模拟引擎及实现方法 Download PDF

Info

Publication number
CN103279974A
CN103279974A CN2013101797609A CN201310179760A CN103279974A CN 103279974 A CN103279974 A CN 103279974A CN 2013101797609 A CN2013101797609 A CN 2013101797609A CN 201310179760 A CN201310179760 A CN 201310179760A CN 103279974 A CN103279974 A CN 103279974A
Authority
CN
China
Prior art keywords
task
node
information
scene
light
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2013101797609A
Other languages
English (en)
Inventor
张云泉
吴长茂
杨聪俐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Software of CAS
Original Assignee
Institute of Software of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Software of CAS filed Critical Institute of Software of CAS
Priority to CN2013101797609A priority Critical patent/CN103279974A/zh
Publication of CN103279974A publication Critical patent/CN103279974A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Image Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明涉及一种高精度高分辨率卫星成像模拟引擎及实现方法,包括:场景解析模块、场景组织管理模块、两级任务划分模块、光线追踪模块和图像合成模块;本发明基于光线追踪渲染技术,通过Sender-Worker-Receiver并行计算模型、两级任务划分方法和动态自适应调度方法,能够快速渲染大规模复杂的地形地貌场景,解决了数据通信时单节点性能瓶颈的问题,实现了节点间负载平衡和高扩展性,减少了卫星成像模拟所需的时间,提高了模拟效率。

Description

一种高精度高分辨率卫星成像模拟引擎及实现方法
技术领域
本发明涉及一种高精度高分辨率卫星成像模拟引擎及实现方法,用来模拟高精度高分辨率的航天卫星成像,属于航天遥感技术领域。
背景技术
随着遥感技术的发展,和近些年来遥感卫星的商业化,光学遥感成像模拟技术逐渐替代了过去复用性小、建造工程量大的物理仿真技术,并且已经得到普遍认可,人们已经开始重视卫星成像模拟技术在卫星和遥感器设计、制造、组装、集成和整个系统的运行和维护中的作用。
遥感卫星是航天侦察探测体系的重要组成部分,具有经费投入大,研制周期长等特点。利用计算机仿真技术实现光学遥感图像仿真,既可以对遥感卫星在各种条件下的目标侦察能力进行预测和评估,也可以为图像质量评估、图像处理算法验证和目标识别训练等许多领域提供实验数据,同时,在提高遥感产品品质、分析成像的各个环节对数据获取的影响方面,卫星成像模拟技术起着至关重要的关键作用。因此,卫星成像模拟具有强烈的需求和应用背景。国外在此方面取得了一些成果,但国际上航天技术属于高度保密的技术,不但先进的设计,仿真方面的软件或模块很难购买,而且相关的技术情报也对我国进行严密封锁。国内卫星成像仿真虽有一些进展,但或限于一些小规模的初级物理仿真,或低层次小规模的低分辨率仿真,不能真实模拟在轨卫星成像过程,模拟图象不具有现实指导意义。因此,研制高精度高分辨率卫星成像仿真系统具有重要的战略意义和很强的应用价值。
然而,研制扩展性强的高精度高分辨率卫星在轨成像仿真系统是一件极具挑战性的工作。高精度高分辨率卫星在轨成像仿真系统是计算科学面临的严峻的计算挑战问题之一。本发明利用高性能计算技术,成功地把高精度高分辨率在轨成像模拟系统运行在超级计算机系统的数万核规模之上,取得了较好的加速效果。
采用光线追踪技术,可以模拟更为准确真实的高精度高分辨率卫星影像。光线追踪技术具有传统的光栅化技术所不能比拟的基于物理机理、真实感强,且能够模拟现实中复杂的全局光照效果,即除了能够模拟光源对物体的直接光照效果外还能模拟场景中由于物体之间的相互作用而产生的间接光照效果。光线追踪方法依据卫星成像的物理机理,可以在高分辨率的地物场景信息的基础上得到更为准确的效果,随着遥感卫星分辨率的不断提高,更为精确且适应性较广的光线追踪方法将在卫星模拟成像中占据越来越重要的位置。
光线追踪模拟卫星成像的主要原理如下:根据卫星相机所处的位置与成像范围大小,逆向追踪到达卫星成像平面上的每个像元的光线。通过将这些光线与地面场景中的物体进行相交测试,得到其与物体的交点,递归进行此过程,得到经过多次相交,反射及透射并最终达到光源的完整光线路径,并根据全局光照模型来计算此光线颜色值,最后综合作为卫星成像平面上该像元的颜色值。
光线追踪方法能够很好地模拟物体间的反射和规则透射及阴影效果。然而,光线追踪卫星成像模拟,由于复杂的地形地貌信息和海量的场景数据以及高精度高分辨率等因素影响,导致模拟在轨卫星成像异常耗费时间和极低的效率。
发明内容
本发明的目的是为了解决上述问题,提供一种高精度高分辨率卫星成像模拟引擎及实现方法,基于光线追踪渲染技术,快速渲染大规模复杂的地形地貌场景,解决了数据通信时单节点性能瓶颈的问题,实现了节点间负载平衡和高扩展性,减少了卫星成像模拟所需的时间,提高了模拟效率。
本发明技术解决方案:一种高精度高分辨率卫星成像模拟引擎,包括:场景解析模块、场景组织管理模块、两级任务划分模块、光线追踪模块和图像合成模块;
场景解析模块,集群所有节点读取场景模型数据,所述场景模型数据包括地物模型数据、几何信息、材质信息,所述集群所有节点包括Sender节点、Worker节点和Receiver节点,其中Sender节点负责节点任务划分,以及发送任务到Worker节点;Worker节点负责计算具体的任务;Receiver节点负责收集任务计算结果,并将收到的所有任务合成图像;整个场景由一个个对象组成,每个对象有一个唯一的ID且由三角形面片网组成,三角形面片网包含如下信息:三角形顶点位置、顶点纹理坐标、顶点法向量、三角形顶点在顶点数组中的索引;此外,每个三角形面片网还包括所使用的材质类信息以及材质的关联纹理和波谱信息,解析三角面片信息,然后将这些三角面片信息存入stMesh;由于stMesh中已经保存了从模型中读出的所有图元信息,因此,对于每一个模型,依次循环访问每一个子对象,然后去访问每个子对象的顶点、纹理坐标等信息,并把它们加入到对应的图元结构体中,这样就完成了将地物模型数据解析为系统所支持的模型图元结构;
场景组织管理模块的输入为空间数据结构和场景解析模块输出的模型图元结构,集群所有节点首先将模型图元结构根据给定的空间数据结构确定自身的空间位置,然后将这些模型图元结构分别归属到不同的空间划分单元,进一步得到重新组织的图元链表,当光线与物体进行相交测试时就可以根据物体的空间划分快速剔除大部分不会相交的几何体,保留有相交可能性的几何体,极大的提高了光线与场景内几何体的相交测试效率;
两级任务划分模块,输入为卫星模拟成像平面和场景组织管理模块输出的重新组织的图元链表,集群所有节点根据Worker节点数量和卫星成像分辨率大小,进行粗粒度的卫星成像模拟任务划分后保存到初级任务缓冲队列中;然后Sender节点发送初级任务到Worker节点,Worker节点收到任务后,根据节点CPU核数目和分配到的卫星成像模拟初级任务大小以及CPU核申请任务开销因素对初级任务进一步细粒度划分为次级任务,然后保存到次级任务池中;
光线追踪模块,输入为太阳光源信息、相机焦点,大气信息数据、地表分类信息和两级任务划分模块输出的次级任务,Worker节点进入光线追踪计算,追踪光线从相机焦点出发,通过次级任务所对应的卫星成像模拟平面上每个采样点向地物模型发出一条光线,如果光线与场景中的地物即重新组织的图元链表不相交,则光线将射出场景,追踪结束;否则,计算出离相机焦点最近的地物表面交点,递归进行此过程,得到经过多次相交,反射及透射的完整光线路径,最终根据太阳光源信息以及大气信息数据计算出此光线辐射能量;
图像合成模块,输入光照强度和光线追踪模块出的光线辐射能量,综合考虑光照强度,将光线追踪算法计算出的每条光线上各个采样点的光线辐射能量及不透明度值由前向后加以合成,最终得到卫星成像模拟图像;另外,该模块集成了PNG、JPEG、TGA图形图像数据通用格式以及高清EXR图像格式的解码处理,使得能支持多种图像输出格式。
一种卫星成像模拟引擎的实现方法,整个实现过程如下:
(1)场景解析,集群所有节点读取场景模型数据,所述场景模型数据包括地物模型数据、几何信息、材质信息;然后解析地物模型,将整个场景划分成一个个对象,每个对象有一个唯一的ID且由三角形面片网组成,解析三角面片信息,将这些三角面片信息存入stMesh,这就完成了将地物模型数据解析为系统所支持的模型图元结构;
(2)场景组织管理,集群所有节点将模型图元结构根据给定的空间数据结构确定自身的空间位置,然后将这些模型图元结构分别归属到不同的空间划分单元,得到重新组织的图元链表;
(3)集群所有节点根据Worker节点数量和卫星成像分辨率大小,进行粗粒度的卫星成像模拟任务初级划分,然后将这些初级任务保存到初级任务缓冲队列中;这里为了减少Sender节点发送任务数据以及Worker节点接收数据的开销,约定集群所有节点都进行任务划分,每个节点都保存一份任务划分列表,每个任务设有唯一的ID;
(4)Sender节点发送初级任务ID到Worker节点,Worker节点收到初级任务ID后从自己保存的初级任务列表中查找对应的卫星成像模拟任务渲染范围,即得到卫星成像平面x轴和y轴方向的起始像素坐标以及x轴和y轴方向上需要光线追踪计算的像素总数信息;
(5)Worker节点根据节点CPU核数目和分配到的卫星成像模拟初级任务大小以及CPU核申请任务开销等因素对初级任务进一步细粒度划分;
(6)Worker节点进入光线追踪计算,追踪光线从相机焦点出发,通过次级任务所对应的卫星成像模拟平面上每个采样点向地物模型发出一条光线,如果光线与场景中的地物即重新组织的图元链表不相交,则光线将射出场景,追踪结束;否则,计算出离相机焦点最近的地物表面交点,递归进行此过程,得到经过多次相交,反射及透射的完整光线路径,最终根据太阳光源信息以及大气信息数据计算出此光线辐射能量;
(7)Worker节点将任务计算结果即各条光线的光线辐射能量发送到Receiver节点,并向Sender节点请求新任务,Sender节点根据初级任务缓冲队列中的任务情况将任务分配给Worker节点,Worker节点再将初级任务划分成细粒度的次级任务供多个CPU核并发地申请进行光线追踪计算,依此递归,直到所有任务都计算完毕;
(8)图像合成,Receiver节点接收任务结果,综合考虑光照强度,将Worker节点计算的每条光线上各个采样点的光线辐射能量及不透明度值由前向后加以合成,最终得到卫星成像模拟图像。
本发明原理:光线追踪卫星成像模拟需要数万核CPU并行计算,本发明利用集群节点来进行光线追踪计算,根据节点的不同职能,将节点分为三类:Sender节点:主要负责节点任务划分,以及发送任务到Worker节点;Worker节点:主要负责计算具体的任务;Receiver节点:主要负责收集任务计算结果,并将收到的所有任务合成图像。提出了Sender-Worker-Receiver并行计算模型,将通常master-slave模式中的master节点的职能分拆到两个节点上,一个是负责卫星成像模拟计算任务分配的Sender节点,另一个是负责卫星成像模拟计算结果收集与合成的Receiver节点。避免了单个Master节点性能瓶颈现象的出现,提高了渲染效率。本发明在实现时,首先对卫星成像平面进行任务划分,提出了两级任务划分方法,根据卫星模拟成像的分辨率和计算节点的数目将卫星成像平面划分出适当数目的初级任务,存到初级任务缓冲队列;然后Sender节点将任务缓冲队列中的卫星成像模拟任务分配到Worker节点,Worker节点根据节点CPU核数以及初级任务像素个数,进一步将卫星成像模拟初级任务分解成细粒度的次级任务,并存到次级任务池供多核CPU申请次级任务,这样的任务划分方法降低了节点间通信开销,提高了效率。在申请任务时本发明提出了动态自适应调度方法,Worker节点光线追踪计算次级任务完成后,动态地向Sender节点申请任务,Sender节点根据初级任务缓冲队列中的任务情况将初级任务分配给Worker节点,Worker节点再将初级任务划分成细粒度的次级任务供多个CPU核并发地申请进行光线追踪计算。
本发明的优点在于:
(1)本发明提出了Sender-Worker-Receiver并行计算模型,解决了数据通信时单master节点性能瓶颈的问题,提出了两级任务划分方法降低了节点间数据通信开销,提高了渲染效率,有效解决了随着节点数增多而扩展性降低的问题。提出了动态自适应调度方法实现了节点间负载平衡,减少了卫星成像模拟所需的时间,提高了计算效率。
(2)本发明支持海量复杂地形地貌场景的成像模拟:可以模拟场景范围多达但不限于480平方公里的地形地貌数据,不仅可以模拟光源对物体的直接光照效果,还可以模拟场景中物体之间复杂的间接光照效果;
(3)本发明高精度高分辨率成像:地物模型分辨率可达0.2m,即只要大于0.2m的地物都能通过光线追踪计算模拟出来,卫星模拟生成的图像分辨率达16384*16384,模拟生成的图像质量高;
(4)本发明模拟成像时间短:采用两级任务划分及动态自适应调度方法来实现卫星模拟成像,极大的缩短了成像时间;
(5)丰富的图像输出格式:不仅支持PNG、JPEG、TGA等图形图像数据通用格式,还能够支持高清EXR图像格式的输出;
(6)跨平台性:在编写类库代码时采用与平台无关性的代码编写原则,使该发明能够在类Unix和Windows平台上平稳运行;
(7)系统自适应性:具有32位/64位双选项,能够自动适应系统状况。
附图说明
图1为本发明卫星成像模拟引擎的组成框图;
图2为本发明卫星成像模拟引擎的地物模型数据格式示意图;
图3为本发明卫星成像模拟引擎实现方法的整个过程;
图4为本发明卫星成像模拟引擎的场景解析模块的实现过程;
图5为本发明卫星成像模拟引擎的场景组织管理模块的实现过程;
图6为本发明卫星成像模拟引擎的两级任务划分模块的实现过程;
图7为本发明卫星成像模拟引擎的光线追踪模块实现过程;
图8为本发明卫星成像模拟引擎的图像合成模块实现过程。
具体实施方式
下面将结合附图和实施例对本发明作进一步的详细说明。
本发明的目的在于提出一种卫星成像模拟引擎及实现方法,通过场景解析模块将地物模型数据解析为系统所支持的图元结构,通过场景组织管理模块将场景空间进行划分建立场景加速结构,通过两级任务划分模块将卫星模拟成像平面进行粗粒度和细粒度两级任务划分得到多个次级任务,通过光线追踪模块追踪光线在地物模型中的传播路径,根据地物分类信息以及光照信息确定光源和环境入射光在地物表面产生的反射和折射、散射等得到地物辐射能量,通过图像合成模块将离散的各个地物辐射度合成图像。
如图1所示,本发明的一种高精度高分辨率卫星成像模拟引擎包括:场景解析模块、场景组织管理模块、两级任务划分模块、光线追踪模块和图像合成模块。
场景解析模块,集群所有节点读取场景模型数据,所述场景模型数据包括地物模型数据、几何信息、材质信息,所述集群所有节点包括Sender节点、Worker节点和Receiver节点,其中Sender节点负责节点任务划分,以及发送任务到Worker节点;Worker节点负责计算具体的任务;Receiver节点负责收集任务计算结果,并将收到的所有任务合成图像;整个场景由一个个对象组成,每个对象有一个唯一的ID且由三角形面片网组成,如图2所示,三角形面片网包含如下信息:三角形顶点位置、顶点纹理坐标、顶点法向量、三角形顶点在顶点数组中的索引;此外,每个三角形面片网还包括所使用的材质类信息以及材质的关联纹理和波谱信息,解析三角面片信息,然后将这些三角面片信息存入stMesh;由于stMesh中已经保存了从模型中读出的所有图元信息,因此,对于每一个模型,依次循环访问每一个子对象,然后去访问每个子对象的顶点、纹理坐标等信息,并把它们加入到对应的图元结构体中,这样就完成了将地物模型数据解析为系统所支持的模型图元结构。
场景组织管理模块的输入为空间数据结构和场景解析模块输出的模型图元结构,集群所有节点首先将模型图元结构根据给定的空间数据结构确定自身的空间位置,然后将这些模型图元结构分别归属到不同的空间划分单元,进一步得到重新组织的图元链表,当光线与物体进行相交测试时就可以根据物体的空间划分快速剔除大部分不会相交的几何体,保留有相交可能性的几何体,极大的提高了光线与场景内几何体的相交测试效率;
两级任务划分模块,输入为卫星模拟成像平面和场景组织管理模块输出的重新组织的图元链表,集群所有节点根据Worker节点数量和卫星成像分辨率大小,进行粗粒度的卫星成像模拟任务划分后保存到初级任务缓冲队列中;然后Sender节点发送初级任务到Worker节点,Worker节点收到任务后,根据节点CPU核数目和分配到的卫星成像模拟初级任务大小以及CPU核申请任务开销因素对初级任务进一步细粒度划分为次级任务,然后保存到次级任务池中;
光线追踪模块,输入为太阳光源信息、相机焦点,大气信息数据、地表分类信息和两级任务划分模块输出的次级任务,Worker节点进入光线追踪计算,追踪光线从相机焦点出发,通过次级任务所对应的卫星成像模拟平面上每个采样点向地物模型发出一条光线,如果光线与场景中的地物即重新组织的图元链表不相交,则光线将射出场景,追踪结束;否则,计算出离相机焦点最近的地物表面交点,递归进行此过程,得到经过多次相交,反射及透射的完整光线路径,最终根据太阳光源信息以及大气信息数据计算出此光线辐射能量;
图像合成模块,输入光照强度和光线追踪模块出的光线辐射能量,综合考虑光照强度,将光线追踪算法计算出的每条光线上各个采样点的光线辐射能量及不透明度值由前向后加以合成,最终得到卫星成像模拟图像;另外,该模块集成了PNG、JPEG、TGA图形图像数据通用格式以及高清EXR图像格式的解码处理,使得能支持多种图像输出格式。
本发明的一种卫星成像模拟引擎的实现方法,如图3,整个实现过程如下:
(1)场景解析,集群所有节点读取场景模型数据,所述场景模型数据包括地物模型数据、几何信息、材质信息;然后解析地物模型,将整个场景划分成一个个对象,每个对象有一个唯一的ID且由三角形面片网组成,解析三角面片信息,将这些三角面片信息存入stMesh,这就完成了将地物模型数据解析为系统所支持的模型图元结构;
(2)场景组织管理,集群所有节点将模型图元结构根据给定的空间数据结构确定自身的空间位置,然后将这些模型图元结构分别归属到不同的空间划分单元,得到重新组织的图元链表;
(3)集群所有节点根据Worker节点数量和卫星成像分辨率大小,进行粗粒度的卫星成像模拟任务初级划分,然后将这些初级任务保存到初级任务缓冲队列中;这里为了减少Sender节点发送任务数据以及Worker节点接收数据的开销,约定集群所有节点都进行任务划分,每个节点都保存一份任务划分列表,每个任务设有唯一的ID;
(4)Sender节点发送初级任务ID到Worker节点,Worker节点收到初级任务ID后从自己保存的初级任务列表中查找对应的卫星成像模拟任务渲染范围,即得到卫星成像平面x轴和y轴方向的起始像素坐标以及x轴和y轴方向上需要光线追踪计算的像素总数信息;
(5)Worker节点根据节点CPU核数目和分配到的卫星成像模拟初级任务大小以及CPU核申请任务开销等因素对初级任务进一步细粒度划分;
(6)Worker节点进入光线追踪计算,追踪光线从相机焦点出发,通过次级任务所对应的卫星成像模拟平面上每个采样点向地物模型发出一条光线,如果光线与场景中的地物即重新组织的图元链表不相交,则光线将射出场景,追踪结束;否则,计算出离相机焦点最近的地物表面交点,递归进行此过程,得到经过多次相交,反射及透射的完整光线路径,最终根据太阳光源信息以及大气信息数据计算出此光线辐射能量;
(7)Worker节点将任务计算结果即各条光线的光线辐射能量发送到Receiver节点,并向Sender节点请求新任务,Sender节点根据初级任务缓冲队列中的任务情况将任务分配给Worker节点,Worker节点再将初级任务划分成细粒度的次级任务供多个CPU核并发地申请进行光线追踪计算,依此递归,直到所有任务都计算完毕;
(8)图像合成,Receiver节点接收任务结果,综合考虑光照强度,将Worker节点计算的每条光线上各个采样点的光线辐射能量及不透明度值由前向后加以合成,最终得到卫星成像模拟图像。
上述各模块的具体实现过程如下:
1.场景解析模块
该模块的实现过程如图4所示:
(1)读取场景模型数据,包括地物模型数据、几何信息、材质信息;
(2)将整个场景划分成一个个对象,每个对象有一个唯一的ID且由三角形面片网组成;
(3)解析三角面片信息,得到三角形顶点位置、顶点纹理坐标、顶点法向量、三角形顶点在顶点数组中的索引以及每个三角形面片网所使用的材质类信息以及材质的关联纹理和波谱信息;
(4)将三角面片信息存入stMesh,这样stMesh保存了从模型中读出的所有图元信息。
2.场景组织管理模块
该模块的实现过程如图5所示:
(1)计算每个三角面网的包围盒;
(2)分别比较每个三角面网包围盒的左下角点与右上角点的最大值,得到整个地物场景的外包围盒;
(3)地物模型图元结构根据给定的空间数据结构确定自身的空间位置;
(4)图元与包围盒求交来确定地物场景中图元归属于哪个包围盒,这样得到了新的图元链表,完成了建立场景加速结构。
3.两级任务划分模块
该模块的实现过程如图6所示:
(1)集群所有节点根据Worker节点数目和卫星成像分辨率大小对整个卫星成像平面进行粗粒度的任务划分,划分后的子任务称为初级任务,将初级任务存入初级任务缓冲队列。每个初级任务由若干像素行组成,一个初级任务包括任务ID、屏幕空间x轴和y轴方向的起始像素坐标以及x轴和y轴方向上需要渲染的像素总数;
(2)Sender节点采用动态自适应调度方法,向各个Worker节点发送初级任务ID;
(3)Worker节点收到任务ID后从自己保存的任务列表中查找对应的卫星成像模拟任务渲染范围,即得到卫星成像平面x轴和y轴方向的起始像素坐标以及x轴和y轴方向上需要光线追踪计算的像素总数等信息;
(4)Worker节点根据节点CPU核数以及初级任务像素个数,进一步将初级任务分解成细粒度的次级任务,并存入次级任务池。
3.光线追踪模块
该模块的实现过程如图7所示:
(1)确定相机的空间位置,这样就确定了相机焦点即视点的空间位置和方向;
(2)根据相机镜头的视场范围和方向建立卫星成像平面;
(3)从视点出发,引光线穿过卫星成像平面取样点,向地物场景空间延伸;
(4)计算该光线与地物场景有无交点,如果没有交点,说明光线打到地物场景范围以外;否则转(5);
(5)计算求得与之相交的物体,光线可能与多个物体相交,存在多个相交点,此时要比较各点与视点之间的距离,求得离视点最近的相交点;
(6)计算相交点处的光照辐射度,该点的光照辐射度
a.计算相交点处局部光照模型辐射度;
b.追踪相交点处反射光线,同时计算反射方向对交点光强的贡献;
c.追踪相交点处折射光线,同时计算折射方向对交点光强的贡献;
(7)综合上述三个光照辐射度,计算得到交点的辐射度;
(8)最后给卫星成像平面对应的像素赋值。
4.图像合成模块
该模块的实现过程如图8所示:
(1)Worker节点将卫星成像模拟的任务计算结果,即经过光线追踪计算出的光线辐射能量发送给Receiver节点;
(2)Receiver节点接收来自各Worker节点的卫星成像模拟的任务计算结果;
(3)查看卫星成像模拟的所有任务计算结果是否接收完毕;如果都已接收完毕,转(4);否则转(2);
(4)Receiver节点综合考虑光照强度,将光线追踪模块计算出的每条光线上各个采样点的光线辐射能量及不透明度值由前向后加以合成得到卫星成像模拟图像。
总之,本发明基于光线追踪渲染技术,通过Sender-Worker-Receiver并行计算模型、两级任务划分方法和动态自适应调度方法,快速渲染大规模复杂的地形地貌场景,解决了数据通信时单节点性能瓶颈的问题,实现了节点间负载平衡和高扩展性,减少了卫星成像模拟所需的时间,提高了模拟效率。
本发明未详细阐述部分属于本领域公知技术。

Claims (2)

1.一种高精度高分辨率卫星成像模拟引擎,其特征在于包括:场景解析模块、场景组织管理模块、两级任务划分模块、光线追踪模块和图像合成模块;
场景解析模块,集群所有节点读取场景模型数据,所述场景模型数据包括地物模型数据、几何信息、材质信息,所述集群所有节点包括Sender节点、Worker节点和Receiver节点,其中Sender节点负责节点任务划分,以及发送任务到Worker节点;Worker节点负责计算具体的任务;Receiver节点负责收集任务计算结果,并将收到的所有任务合成图像;整个场景由一个个对象组成,每个对象有一个唯一的ID且由三角形面片网组成,三角形面片网包含如下信息:三角形顶点位置、顶点纹理坐标、顶点法向量、三角形顶点在顶点数组中的索引;此外,每个三角形面片网还包括所使用的材质类信息以及材质的关联纹理和波谱信息,解析三角面片信息,然后将这些三角面片信息存入stMesh;由于stMesh中已经保存了从模型中读出的所有图元信息,因此,对于每一个模型,依次循环访问每一个子对象,然后去访问每个子对象的顶点、纹理坐标等信息,并把它们加入到对应的图元结构体中,这样就完成了将地物模型数据解析为系统所支持的模型图元结构;
场景组织管理模块的输入为空间数据结构和场景解析模块输出的模型图元结构,集群所有节点首先将模型图元结构根据给定的空间数据结构确定自身的空间位置,然后将这些模型图元结构分别归属到不同的空间划分单元,进一步得到重新组织的图元链表,当光线与物体进行相交测试时就可以根据物体的空间划分快速剔除大部分不会相交的几何体,保留有相交可能性的几何体,极大的提高了光线与场景内几何体的相交测试效率;
两级任务划分模块,输入为卫星模拟成像平面和场景组织管理模块输出的重新组织的图元链表,集群所有节点根据Worker节点数量和卫星成像分辨率大小,进行粗粒度的卫星成像模拟任务划分后保存到初级任务缓冲队列中;然后Sender节点发送初级任务到Worker节点,Worker节点收到任务后,根据节点CPU核数目和分配到的卫星成像模拟初级任务大小以及CPU核申请任务开销因素对初级任务进一步细粒度划分为次级任务,然后保存到次级任务池中;
光线追踪模块,输入为太阳光源信息、相机焦点,大气信息数据、地表分类信息和两级任务划分模块输出的次级任务,Worker节点进入光线追踪计算,追踪光线从相机焦点出发,通过次级任务所对应的卫星成像模拟平面上每个采样点向地物模型发出一条光线,如果光线与场景中的地物即重新组织的图元链表不相交,则光线将射出场景,追踪结束;否则,计算出离相机焦点最近的地物表面交点,递归进行此过程,得到经过多次相交,反射及透射的完整光线路径,最终根据太阳光源信息以及大气信息数据计算出此光线辐射能量;
图像合成模块,输入光照强度和光线追踪模块出的光线辐射能量,综合考虑光照强度,将光线追踪算法计算出的每条光线上各个采样点的光线辐射能量及不透明度值由前向后加以合成,最终得到卫星成像模拟图像;另外,该模块集成了PNG、JPEG、TGA图形图像数据通用格式以及高清EXR图像格式的解码处理,使得能支持多种图像输出格式。
2.一种卫星成像模拟引擎的实现方法,整个实现过程如下:
(1)场景解析,集群所有节点读取场景模型数据,所述场景模型数据包括地物模型数据、几何信息、材质信息;然后解析地物模型,将整个场景划分成一个个对象,每个对象有一个唯一的ID且由三角形面片网组成,解析三角面片信息,将这些三角面片信息存入stMesh,这就完成了将地物模型数据解析为系统所支持的模型图元结构;
(2)场景组织管理,集群所有节点将模型图元结构根据给定的空间数据结构确定自身的空间位置,然后将这些模型图元结构分别归属到不同的空间划分单元,得到重新组织的图元链表;
(3)集群所有节点根据Worker节点数量和卫星成像分辨率大小,进行粗粒度的卫星成像模拟任务初级划分,然后将这些初级任务保存到初级任务缓冲队列中;这里为了减少Sender节点发送任务数据以及Worker节点接收数据的开销,约定集群所有节点都进行任务划分,每个节点都保存一份任务划分列表,每个任务设有唯一的ID;
(4)Sender节点发送初级任务ID到Worker节点,Worker节点收到初级任务ID后从自己保存的初级任务列表中查找对应的卫星成像模拟任务渲染范围,即得到卫星成像平面x轴和y轴方向的起始像素坐标以及x轴和y轴方向上需要光线追踪计算的像素总数信息;
(5)Worker节点根据节点CPU核数目和分配到的卫星成像模拟初级任务大小以及CPU核申请任务开销等因素对初级任务进一步细粒度划分;
(6)Worker节点进入光线追踪计算,追踪光线从相机焦点出发,通过次级任务所对应的卫星成像模拟平面上每个采样点向地物模型发出一条光线,如果光线与场景中的地物即重新组织的图元链表不相交,则光线将射出场景,追踪结束;否则,计算出离相机焦点最近的地物表面交点,递归进行此过程,得到经过多次相交,反射及透射的完整光线路径,最终根据太阳光源信息以及大气信息数据计算出此光线辐射能量;
(7)Worker节点将任务计算结果即各条光线的光线辐射能量发送到Receiver节点,并向Sender节点请求新任务,Sender节点根据初级任务缓冲队列中的任务情况将任务分配给Worker节点,Worker节点再将初级任务划分成细粒度的次级任务供多个CPU核并发地申请进行光线追踪计算,依此递归,直到所有任务都计算完毕;
(8)图像合成,Receiver节点接收任务结果,综合考虑光照强度,将Worker节点计算的每条光线上各个采样点的光线辐射能量及不透明度值由前向后加以合成,最终得到卫星成像模拟图像。
CN2013101797609A 2013-05-15 2013-05-15 一种高精度高分辨率卫星成像模拟引擎及实现方法 Pending CN103279974A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2013101797609A CN103279974A (zh) 2013-05-15 2013-05-15 一种高精度高分辨率卫星成像模拟引擎及实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2013101797609A CN103279974A (zh) 2013-05-15 2013-05-15 一种高精度高分辨率卫星成像模拟引擎及实现方法

Publications (1)

Publication Number Publication Date
CN103279974A true CN103279974A (zh) 2013-09-04

Family

ID=49062481

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2013101797609A Pending CN103279974A (zh) 2013-05-15 2013-05-15 一种高精度高分辨率卫星成像模拟引擎及实现方法

Country Status (1)

Country Link
CN (1) CN103279974A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103810260A (zh) * 2014-01-27 2014-05-21 西安理工大学 基于拓扑特性的复杂网络社团发现方法
CN104183007A (zh) * 2014-08-12 2014-12-03 中国科学院软件研究所 一种基于光线追踪器的薄膜干涉效果绘制方法
CN105628055A (zh) * 2016-01-06 2016-06-01 北京工业大学 一种深空探测器着陆自主光学导航目标成像模拟系统
CN107742317A (zh) * 2017-09-27 2018-02-27 杭州群核信息技术有限公司 一种渲染图像的获取方法、装置、渲染系统及存储介质
CN108090031A (zh) * 2017-12-25 2018-05-29 航天恒星科技有限公司 二氧化碳浓度反演优化方法及系统
CN108885582A (zh) * 2016-04-07 2018-11-23 国际商业机器公司 存储器池结构的多租户存储器服务
CN110832549A (zh) * 2018-05-21 2020-02-21 艾迪席尔有限公司 现实世界环境中虚拟对象的经过光线追踪的反射的快速产生方法
CN112817733A (zh) * 2021-02-26 2021-05-18 北京控制工程研究所 一种高效的卫星自主任务规划任务池设计方法及系统
CN108257075B (zh) * 2017-12-06 2021-07-16 中国航空工业集团公司西安航空计算技术研究所 一种顶点数组命令的解引用与组装方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102037497A (zh) * 2008-03-21 2011-04-27 柯斯提克绘图有限公司 用于光线追踪渲染的并行相交测试及着色的架构
CN102855655A (zh) * 2012-08-03 2013-01-02 吉林禹硕动漫游戏科技股份有限公司 Gpu并行光线追踪渲染方法
CN103021018A (zh) * 2012-11-07 2013-04-03 浙江工业大学 基于gpu的构建bvh树并行光线追踪方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102037497A (zh) * 2008-03-21 2011-04-27 柯斯提克绘图有限公司 用于光线追踪渲染的并行相交测试及着色的架构
CN102855655A (zh) * 2012-08-03 2013-01-02 吉林禹硕动漫游戏科技股份有限公司 Gpu并行光线追踪渲染方法
CN103021018A (zh) * 2012-11-07 2013-04-03 浙江工业大学 基于gpu的构建bvh树并行光线追踪方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
俞洲: "基于CUDA的光线追踪实时成像模拟技术研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
吴长茂,张云泉 等: "基于大型场景的高精度成像并行光线追踪算法", 《HPC CHINA 2012》 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103810260B (zh) * 2014-01-27 2017-06-20 西安理工大学 基于拓扑特性的复杂网络社团发现方法
CN103810260A (zh) * 2014-01-27 2014-05-21 西安理工大学 基于拓扑特性的复杂网络社团发现方法
CN104183007A (zh) * 2014-08-12 2014-12-03 中国科学院软件研究所 一种基于光线追踪器的薄膜干涉效果绘制方法
CN104183007B (zh) * 2014-08-12 2017-02-15 中国科学院软件研究所 一种基于光线追踪器的薄膜干涉效果绘制方法
CN105628055A (zh) * 2016-01-06 2016-06-01 北京工业大学 一种深空探测器着陆自主光学导航目标成像模拟系统
CN105628055B (zh) * 2016-01-06 2018-07-31 北京工业大学 一种深空探测器着陆自主光学导航目标成像模拟系统
CN108885582A (zh) * 2016-04-07 2018-11-23 国际商业机器公司 存储器池结构的多租户存储器服务
CN107742317A (zh) * 2017-09-27 2018-02-27 杭州群核信息技术有限公司 一种渲染图像的获取方法、装置、渲染系统及存储介质
CN108257075B (zh) * 2017-12-06 2021-07-16 中国航空工业集团公司西安航空计算技术研究所 一种顶点数组命令的解引用与组装方法
CN108090031A (zh) * 2017-12-25 2018-05-29 航天恒星科技有限公司 二氧化碳浓度反演优化方法及系统
CN110832549A (zh) * 2018-05-21 2020-02-21 艾迪席尔有限公司 现实世界环境中虚拟对象的经过光线追踪的反射的快速产生方法
CN112817733A (zh) * 2021-02-26 2021-05-18 北京控制工程研究所 一种高效的卫星自主任务规划任务池设计方法及系统
CN112817733B (zh) * 2021-02-26 2023-12-12 北京控制工程研究所 一种高效的卫星自主任务规划任务池设计方法及系统

Similar Documents

Publication Publication Date Title
CN103279974A (zh) 一种高精度高分辨率卫星成像模拟引擎及实现方法
US11182649B2 (en) Generation of synthetic images for training a neural network model
US20210397449A1 (en) Robust, efficient multiprocessor-coprocessor interface
US11200725B2 (en) Method for continued bounding volume hierarchy traversal on intersection without shader intervention
US10740952B2 (en) Method for handling of out-of-order opaque and alpha ray/primitive intersections
ES2907861T3 (es) Ejecución especulativa de sombreadores de choque e intersección en arquitecturas programables de trazado de rayos
CN108801241A (zh) 使用深度神经网络执行自主路径导航
CN107464286B (zh) 三维城市模型中的孔洞修复方法及装置、设备及可读介质
US11010963B2 (en) Realism of scenes involving water surfaces during rendering
EP3678037A1 (en) Neural network generator
US11977766B2 (en) Hierarchical network for stacked memory system
DE102023124837A1 (de) Reduzierung falsch positiver Strahltraversierungen in einer Begrenzungsvolumen-Hierarchie
US20240095995A1 (en) Reducing false positive ray traversal using ray clipping
CN104700437B (zh) 信号级高逼真度实时红外复杂场景生成方法
US11925860B2 (en) Projective hash maps
KR101099443B1 (ko) 이진트리 기반의 공간 분할 기법과 가상 피라미드를 이용한 대용량 항공 레이저 측정자료 처리 방법
Li et al. Research on Landscape Architecture Modeling Simulation System Based on Computer Virtual Reality Technology
US20230275068A1 (en) Memory stacked on processor for high bandwidth
CN117130491B (zh) 混合现实多组协同的方法、系统、电子设备和存储介质
US20230315651A1 (en) Application partitioning for locality in a stacked memory system
CN117726743A (zh) 使用点退化剔除减少假阳性光线遍历
Xue Research on the design of booth space in furniture exhibitions based on big data analysis

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130904