基于PC集群的高度并行多屏战场态势图显示方法

2014-11-19 00:37邓红艳
电脑知识与技术 2014年30期

邓红艳

摘要:针对单个计算机屏幕较小、计算机计算能力不够强大给大视景作战态势图显示带来的难题,在分析现有的多屏显示方法基础上,提出了一种在现阶段软硬件条件下基于PC集群的高度并行多屏态势图显示方法。实践证明该方法可行且具有费用低廉,快速的特点。

关键词:PC集群;并行;多屏;战场态势图;显示

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)30-7094-03

随着军队信息化建设步伐的加快,利用计算机可视化等技术展现战场态势已成为指挥控制系统建设中实现战场态势监控的必要环节。与一般的交通指挥等可视化监控内容不同,战场态势涉及战场环境、战场兵力部署、战场目标等众多内容,不仅内容繁多,彼此间的压盖关系也非常复杂,不仅要求视野开阔、显示速度快,而且态势图各部分的内容都在不停的变化。如果简单的利用单屏计算机进行战场态势的显示,受计算机显示屏幕大小的限制,势必会出现严重的图形压盖重叠现象,指挥员必须通过漫游或者缩放等操作才能获得对战场区域的较好监视,思维需要在态势理解和操作间不停转换,不仅不便于全局掌握战场态势,同时分散指挥员的精力,影响监控效果。这一问题在执行联合作战、战略监控和精准监控等任务时尤为突出。构造大范围可视化的多屏战场态势图显示场景势在必行。

针对这一问题,目前流行的解决方案主要有两种[3,4]:一种是使用大屏投影控制器,利用投影系统建设实现多屏显示;一种是采用单机控制多屏显卡,实现多屏的显示输出。这两种解决方案对于解决大范围多屏战场态势图显示场景都存在难以克服的问题:首先,使用大屏投影控制器的方案虽然解决了多类型信号的切换和接入,但只适合应用于各屏幕内容预先设定的大屏幕信息显示,缺乏对多个屏幕间信息动态无缝协调拼接显示的能力,即使是协同标绘,除小视野的缺点外,各协同机器也只能显示相同范围的态势,难以在战场态势图进行缩放漫游时保持无缝拼接;其次,采用单机控制多屏显卡的方案,接在同一台计算机的多屏显卡输出的态势图是由同一台计算机产生的,在采用一切可能的加快绘制速度的方法前提下,同一台计算机绘制较大视景态势图显然比绘制小视景态势图需要更多的运算和绘制,其显示效率无法满足战场态势的快速需求;最后,无论是大屏投影控制器还是多屏显卡,其价格都是昂贵的,对于战争中需要开设的多个临时指挥所无疑是增加了巨大的费用。

基于以上分析,该文提出了一种基于PC集群的高度并行多屏作战态势图显示方法。该方法采用分布式交互控制,将态势图显示内容分割,采用并行处理的方式满足战场态势图视野开阔、速度快、内容变化快、缩放漫游操作时需保持无缝拼接的要求。

1 基于PC集群的并行多屏作战态势图显示体系结构

基于PC集群的并行多屏态势图显示方法与传统的利用大屏投影控制器与多屏显卡的方法不同,需要普通PC机进行协同工作,其体系结构如图1所示,其主要有三类功能节点:

1) 数据服务节点

数据服务节点主要是为战场态势图提供数据源。战场态势图显示的内容是非常复杂的,相应的数据服务节点也是多种多样,既可以是提供战场环境基础数据的静态数据服务节点,也可以是实时接收战场情报,气象数据等的动态数据服务节点。

2) 态势图显示协调控制节点

态势图显示协调控制节点主要是根据用户对态势图的实时操作控制按照态势图显示分节点所构成的显示区域进行显示任务、数据服务节点的分配,将分配后的任务打包直接发送给态势图显示分节点。

3) 态势图显示分节点

态势图显示分节点负责将态势图显示控制节点发来的包进行解包,然后依据相应的任务到相应的数据服务节点进行数据获取,并完成绘制显示过程。

其中,态势图显示协调控制节点可由态势图显示分节点中的某一机器充当。从体系结构上看,该文提出的基于PC集群的并行多屏作战态势图显示体系结构具有以下特点:

1) 该体系结构无需特殊配置的计算机和专用昂贵显卡等硬件设备,仅通过多台普通计算即可实现大视景态势图在投影墙上的显示,构建费用低廉,可扩展性强;

2) 通过态势显示分节点中各显示分控机与屏幕矩阵的配置关系,态势显示协调控制节点可快速计算出显示分节点需显示的数据,将显示任务分配给各显示分节点进行数据读取并显示,同时各显示分控机的屏幕不会出现压盖或缺失情况,从而实现大视景态势图在投影墙上的无缝显示;

3) 带有倍数的漫游方法,使得仅通过对态势显示协调控制节点的显示控制操作,可实现在全部大视景态势图上的漫游操作。

2 基于PC集群的并行多屏作战态势图显示实现关键问题

结合图1所示体系结构,基于PC集群的并行多屏作战态势图显示方法基本过程概括起来为:首先由多个可无缝拼接的显示屏幕组成的投影墙,与投影墙内显示屏幕个数相同的普通PC构成态势显示分节点,每台PC控制一个显示屏幕;其次由一台普通PC充当态势显示协调控制分节点,当显示协调控制分节点接受到用户或者其它对作战态势图显示内容变化的控制信息(典型的如缩放,漫游操作),显示协调控制节点将态势图显示范围,数据服务节点位置等信息打包成任务发送给态势显示分节点;最后态势显示分节点根据接受的任务到指定的数据服务节点获取数据并完成绘制过程。在这一个过程中,其硬件配置及网络配置都比较简单,采用普通PC机,投影仪和一般局域网即可,关键在于进行缩放漫游等屏幕内容更新操作时态势显示控制分节点的显示范围计算,多屏同步刷新机制,多屏态势图图层控制一致三个问题:

2.1态势显示控制分节点显示范围计算

所有的态势图显示分节点构成[M×N]的矩形,即态势图显示分控机有[M×N]台,假设态势显示协调控制分节点为态势图显示分节点中的一台普通PC充当,记为机器[P],其位置为矩阵中第一行第一列,其显示内容是所有其它态势图分节点的基础,按照缩放与漫游的不同操作机器[P]的显示范围有所不同:endprint

1) 缩放操作时的范围计算:

① 根据缩放操作,获取相应的缩放倍数[A];

② 以[P]的中心点为原点,对[P]显示的范围重新进行计算,假设[P]的初始显示经度范围为[L1~L2],初始显示纬度范围为[B1~B2],则按照公式(1) 可获取经度变化后范围[L3~L4]与纬度变化后范围[B3~B4];

[L3=L2+L12-L2-L12A]

[L4=L2+L12+L2-L12A]

[B3=B2+B12-B2-B12A]

[B4=B2+B12+B2-B12A] (1)

2) 漫游操作时的范围计算

对于无倍数的漫游,若[P]在漫游时经差为X、纬差为Y,则X、Y应均不大于[P]显示的经纬差范围。通过设置漫游倍数,可使漫游范围为全部大视景态势图;若投影墙屏幕矩阵为[M×N],则纬度漫游倍数不大于[M]倍,经度漫游倍数不大于[N]倍。若鼠标在屏幕上的拖拽距离为经差X、Y,设置经度、纬度漫游倍数分别为[n、m]且[n≤N、m≤M], 显示的漫游步长为经差[nX]、纬差[mY],用原显示范围加上经差[nX]和纬差[mY]后,即得到[P]的新显示范围。

在获取[P]的显示范围后,由于[P]处于整个态势图显示分节点矩阵中第一行第一列,则可以依据其范围采用公式2计算相应的第[i]行,第[k]列(其中[i≤M,k≤N])显示分控机的显示范围:

经度显示范围 = ([L1+(k-1)×(L2-L1)],[L1+k×(L2-L1)])

纬度显示范围 = ([B2-(i-1)×(B2-B1)],[B2-i×(B2-B1)]) (2)

2.2 多屏同步刷新机制

因为所使用的各计算机的性能配置可以不一致,则存在由计算机性能带来的各屏幕显示时间的差异;即使各计算机配置相同,也会因为分配至各计算机的绘制任务有数据量和符号化的差异(绘制较大数据量和绘制较复杂符号需要的工作时间较多),而出现各屏幕显示时间的差异。如果不加控制地让各计算机直接将绘制好的态势图呈现给用户,必然会出现各部分更新时间不一致的问题,导致整个大视景显示会有明显的块跳动感,缺乏态势图显示需要的协调整体感。因此需提供多屏同步显示自动刷新方法,即按照绘制时间最长的显示分节点控制机确定整体刷新时间,由显示控制分节点协调刷新时间,具体多屏同步刷新方如下:

① 各显示分节点控制机预先采用内存位图绘制态势图,绘制完毕后显示分节点控制机给显示控制分节点发送内存位图绘制完毕命令,然后等待显示控制分节点的内存位图拷贝至屏幕的命令;

② 显示控制分节点接收所有显示分节点控制机的内存位图绘制完毕命令后,自动向所有从机发送内存位图拷贝至屏幕的命令;

③ 所有显示分节点控制机收到来自显示控制分节点的拷贝内存位图至屏幕命令后,完成位图拷贝,在视觉上提供态势图显示需要的协调整体感。

2.3 多屏态势图图层控制一致

由于战场态势图的显示包括多层态势图显示,例如地图显示、军标图层显示、地图与军标图层叠加显示等,因而需要显示内容的协调。显示控制分节点对图层显示内容的协调包含态势数据源、态势图层选择及比例尺、指北针等的统一管理。显示控制分节点通过网络向所有显示分节点控制机发送某一态势图层的显示与隐藏命令,实现大视景态势图相应图层数据的一致显示;显示控制分节点向特定显示分节点控制机发送显示比例尺、指北针的控制命令,使比例尺、指北针显示在某一从机对应的屏幕上。

3 实验与结论

幕显示分辨率1024*768的屏幕,实验数据为上海市2009年全境道路网数据(ESRI公司的shapefile格式,包括147,448个弧段以及10M等高线数据)和15000个军标符号。从图2实验结果看来,采用基于PC集群的并行多屏作战态势图显示方法完全能满足作战态势图显示内容多,显示场景大的要求。

从表1中可以看出,若由一台计算机控制单屏幕输出,所需时间长、屏幕较小,显示内容严重压盖;而按照本方法使用多台普通计算机显示态势图,则显示时间大大缩短,屏幕较大,显示内容压盖明显减少,清晰可见内容明显增多。 (下转第7102页)

实验证明,基于该方法开发的大视景态势图显示系统,能够快速显示大视景的态势图,且具有配置灵活、费用低廉的特点。该方法可直接用于部队、公安等领域大视景监控设备的设计与研制。

参考文献:

[1] 华一新,王飞,郭新华,等.通用态势图原理与技术[M].北京:解放军出版社,2007.

[2] 彭敏峰,曾亮,陆筱霞,等.一种高度并行的多任务并行绘制系统结构[J].计算技术与自动化,2006(9):63-66.

[3] 侯洪涛,朱一凡,韦庆,等.基于PC集群的多屏无缝拼接技术研究[J].计算机仿真,2006,23(11):202-205.

[4] 陈静姝,王庆官,张凡,等.基于网格计算环境的可视化系统设计与实现[J].计算机应用研究,2007,24(8).

[5] 金其杰,王弘,肖丽.并行应用程序的远程实时跟踪可视化系统的设计及实现[J].计算机研究与发展,2004,41(5).

[6] 石教英,赵友兵,仇应俊,等.面向网格的可视化系统研究[J].计算机研究与发展,2004(12).

[7] KNISS J,McCORMICK P,McPHERSON A,et al.Interactive texture-based volume rendering for large data sets[J].IEEE Computer Graphics and Applications, 2001,21(4):52-61.

[8] XU Zhi-wei,LI Wei,ZHA Li,et al.A computer systems approach to grid computing[J].Journal of Grid Computing,2004,2(2).

[9] SHAN Gui-hua,CHI Xue-bin,LIU Jun,et al.ScVisGrid:a remote visualization environment in grid computing[C]//Proc of DCABES and ICPACE Joint Conference on Distributed Algorithms for Science and Engineering.London,2005:223-226.endprint

1) 缩放操作时的范围计算:

① 根据缩放操作,获取相应的缩放倍数[A];

② 以[P]的中心点为原点,对[P]显示的范围重新进行计算,假设[P]的初始显示经度范围为[L1~L2],初始显示纬度范围为[B1~B2],则按照公式(1) 可获取经度变化后范围[L3~L4]与纬度变化后范围[B3~B4];

[L3=L2+L12-L2-L12A]

[L4=L2+L12+L2-L12A]

[B3=B2+B12-B2-B12A]

[B4=B2+B12+B2-B12A] (1)

2) 漫游操作时的范围计算

对于无倍数的漫游,若[P]在漫游时经差为X、纬差为Y,则X、Y应均不大于[P]显示的经纬差范围。通过设置漫游倍数,可使漫游范围为全部大视景态势图;若投影墙屏幕矩阵为[M×N],则纬度漫游倍数不大于[M]倍,经度漫游倍数不大于[N]倍。若鼠标在屏幕上的拖拽距离为经差X、Y,设置经度、纬度漫游倍数分别为[n、m]且[n≤N、m≤M], 显示的漫游步长为经差[nX]、纬差[mY],用原显示范围加上经差[nX]和纬差[mY]后,即得到[P]的新显示范围。

在获取[P]的显示范围后,由于[P]处于整个态势图显示分节点矩阵中第一行第一列,则可以依据其范围采用公式2计算相应的第[i]行,第[k]列(其中[i≤M,k≤N])显示分控机的显示范围:

经度显示范围 = ([L1+(k-1)×(L2-L1)],[L1+k×(L2-L1)])

纬度显示范围 = ([B2-(i-1)×(B2-B1)],[B2-i×(B2-B1)]) (2)

2.2 多屏同步刷新机制

因为所使用的各计算机的性能配置可以不一致,则存在由计算机性能带来的各屏幕显示时间的差异;即使各计算机配置相同,也会因为分配至各计算机的绘制任务有数据量和符号化的差异(绘制较大数据量和绘制较复杂符号需要的工作时间较多),而出现各屏幕显示时间的差异。如果不加控制地让各计算机直接将绘制好的态势图呈现给用户,必然会出现各部分更新时间不一致的问题,导致整个大视景显示会有明显的块跳动感,缺乏态势图显示需要的协调整体感。因此需提供多屏同步显示自动刷新方法,即按照绘制时间最长的显示分节点控制机确定整体刷新时间,由显示控制分节点协调刷新时间,具体多屏同步刷新方如下:

① 各显示分节点控制机预先采用内存位图绘制态势图,绘制完毕后显示分节点控制机给显示控制分节点发送内存位图绘制完毕命令,然后等待显示控制分节点的内存位图拷贝至屏幕的命令;

② 显示控制分节点接收所有显示分节点控制机的内存位图绘制完毕命令后,自动向所有从机发送内存位图拷贝至屏幕的命令;

③ 所有显示分节点控制机收到来自显示控制分节点的拷贝内存位图至屏幕命令后,完成位图拷贝,在视觉上提供态势图显示需要的协调整体感。

2.3 多屏态势图图层控制一致

由于战场态势图的显示包括多层态势图显示,例如地图显示、军标图层显示、地图与军标图层叠加显示等,因而需要显示内容的协调。显示控制分节点对图层显示内容的协调包含态势数据源、态势图层选择及比例尺、指北针等的统一管理。显示控制分节点通过网络向所有显示分节点控制机发送某一态势图层的显示与隐藏命令,实现大视景态势图相应图层数据的一致显示;显示控制分节点向特定显示分节点控制机发送显示比例尺、指北针的控制命令,使比例尺、指北针显示在某一从机对应的屏幕上。

3 实验与结论

幕显示分辨率1024*768的屏幕,实验数据为上海市2009年全境道路网数据(ESRI公司的shapefile格式,包括147,448个弧段以及10M等高线数据)和15000个军标符号。从图2实验结果看来,采用基于PC集群的并行多屏作战态势图显示方法完全能满足作战态势图显示内容多,显示场景大的要求。

从表1中可以看出,若由一台计算机控制单屏幕输出,所需时间长、屏幕较小,显示内容严重压盖;而按照本方法使用多台普通计算机显示态势图,则显示时间大大缩短,屏幕较大,显示内容压盖明显减少,清晰可见内容明显增多。 (下转第7102页)

实验证明,基于该方法开发的大视景态势图显示系统,能够快速显示大视景的态势图,且具有配置灵活、费用低廉的特点。该方法可直接用于部队、公安等领域大视景监控设备的设计与研制。

参考文献:

[1] 华一新,王飞,郭新华,等.通用态势图原理与技术[M].北京:解放军出版社,2007.

[2] 彭敏峰,曾亮,陆筱霞,等.一种高度并行的多任务并行绘制系统结构[J].计算技术与自动化,2006(9):63-66.

[3] 侯洪涛,朱一凡,韦庆,等.基于PC集群的多屏无缝拼接技术研究[J].计算机仿真,2006,23(11):202-205.

[4] 陈静姝,王庆官,张凡,等.基于网格计算环境的可视化系统设计与实现[J].计算机应用研究,2007,24(8).

[5] 金其杰,王弘,肖丽.并行应用程序的远程实时跟踪可视化系统的设计及实现[J].计算机研究与发展,2004,41(5).

[6] 石教英,赵友兵,仇应俊,等.面向网格的可视化系统研究[J].计算机研究与发展,2004(12).

[7] KNISS J,McCORMICK P,McPHERSON A,et al.Interactive texture-based volume rendering for large data sets[J].IEEE Computer Graphics and Applications, 2001,21(4):52-61.

[8] XU Zhi-wei,LI Wei,ZHA Li,et al.A computer systems approach to grid computing[J].Journal of Grid Computing,2004,2(2).

[9] SHAN Gui-hua,CHI Xue-bin,LIU Jun,et al.ScVisGrid:a remote visualization environment in grid computing[C]//Proc of DCABES and ICPACE Joint Conference on Distributed Algorithms for Science and Engineering.London,2005:223-226.endprint

1) 缩放操作时的范围计算:

① 根据缩放操作,获取相应的缩放倍数[A];

② 以[P]的中心点为原点,对[P]显示的范围重新进行计算,假设[P]的初始显示经度范围为[L1~L2],初始显示纬度范围为[B1~B2],则按照公式(1) 可获取经度变化后范围[L3~L4]与纬度变化后范围[B3~B4];

[L3=L2+L12-L2-L12A]

[L4=L2+L12+L2-L12A]

[B3=B2+B12-B2-B12A]

[B4=B2+B12+B2-B12A] (1)

2) 漫游操作时的范围计算

对于无倍数的漫游,若[P]在漫游时经差为X、纬差为Y,则X、Y应均不大于[P]显示的经纬差范围。通过设置漫游倍数,可使漫游范围为全部大视景态势图;若投影墙屏幕矩阵为[M×N],则纬度漫游倍数不大于[M]倍,经度漫游倍数不大于[N]倍。若鼠标在屏幕上的拖拽距离为经差X、Y,设置经度、纬度漫游倍数分别为[n、m]且[n≤N、m≤M], 显示的漫游步长为经差[nX]、纬差[mY],用原显示范围加上经差[nX]和纬差[mY]后,即得到[P]的新显示范围。

在获取[P]的显示范围后,由于[P]处于整个态势图显示分节点矩阵中第一行第一列,则可以依据其范围采用公式2计算相应的第[i]行,第[k]列(其中[i≤M,k≤N])显示分控机的显示范围:

经度显示范围 = ([L1+(k-1)×(L2-L1)],[L1+k×(L2-L1)])

纬度显示范围 = ([B2-(i-1)×(B2-B1)],[B2-i×(B2-B1)]) (2)

2.2 多屏同步刷新机制

因为所使用的各计算机的性能配置可以不一致,则存在由计算机性能带来的各屏幕显示时间的差异;即使各计算机配置相同,也会因为分配至各计算机的绘制任务有数据量和符号化的差异(绘制较大数据量和绘制较复杂符号需要的工作时间较多),而出现各屏幕显示时间的差异。如果不加控制地让各计算机直接将绘制好的态势图呈现给用户,必然会出现各部分更新时间不一致的问题,导致整个大视景显示会有明显的块跳动感,缺乏态势图显示需要的协调整体感。因此需提供多屏同步显示自动刷新方法,即按照绘制时间最长的显示分节点控制机确定整体刷新时间,由显示控制分节点协调刷新时间,具体多屏同步刷新方如下:

① 各显示分节点控制机预先采用内存位图绘制态势图,绘制完毕后显示分节点控制机给显示控制分节点发送内存位图绘制完毕命令,然后等待显示控制分节点的内存位图拷贝至屏幕的命令;

② 显示控制分节点接收所有显示分节点控制机的内存位图绘制完毕命令后,自动向所有从机发送内存位图拷贝至屏幕的命令;

③ 所有显示分节点控制机收到来自显示控制分节点的拷贝内存位图至屏幕命令后,完成位图拷贝,在视觉上提供态势图显示需要的协调整体感。

2.3 多屏态势图图层控制一致

由于战场态势图的显示包括多层态势图显示,例如地图显示、军标图层显示、地图与军标图层叠加显示等,因而需要显示内容的协调。显示控制分节点对图层显示内容的协调包含态势数据源、态势图层选择及比例尺、指北针等的统一管理。显示控制分节点通过网络向所有显示分节点控制机发送某一态势图层的显示与隐藏命令,实现大视景态势图相应图层数据的一致显示;显示控制分节点向特定显示分节点控制机发送显示比例尺、指北针的控制命令,使比例尺、指北针显示在某一从机对应的屏幕上。

3 实验与结论

幕显示分辨率1024*768的屏幕,实验数据为上海市2009年全境道路网数据(ESRI公司的shapefile格式,包括147,448个弧段以及10M等高线数据)和15000个军标符号。从图2实验结果看来,采用基于PC集群的并行多屏作战态势图显示方法完全能满足作战态势图显示内容多,显示场景大的要求。

从表1中可以看出,若由一台计算机控制单屏幕输出,所需时间长、屏幕较小,显示内容严重压盖;而按照本方法使用多台普通计算机显示态势图,则显示时间大大缩短,屏幕较大,显示内容压盖明显减少,清晰可见内容明显增多。 (下转第7102页)

实验证明,基于该方法开发的大视景态势图显示系统,能够快速显示大视景的态势图,且具有配置灵活、费用低廉的特点。该方法可直接用于部队、公安等领域大视景监控设备的设计与研制。

参考文献:

[1] 华一新,王飞,郭新华,等.通用态势图原理与技术[M].北京:解放军出版社,2007.

[2] 彭敏峰,曾亮,陆筱霞,等.一种高度并行的多任务并行绘制系统结构[J].计算技术与自动化,2006(9):63-66.

[3] 侯洪涛,朱一凡,韦庆,等.基于PC集群的多屏无缝拼接技术研究[J].计算机仿真,2006,23(11):202-205.

[4] 陈静姝,王庆官,张凡,等.基于网格计算环境的可视化系统设计与实现[J].计算机应用研究,2007,24(8).

[5] 金其杰,王弘,肖丽.并行应用程序的远程实时跟踪可视化系统的设计及实现[J].计算机研究与发展,2004,41(5).

[6] 石教英,赵友兵,仇应俊,等.面向网格的可视化系统研究[J].计算机研究与发展,2004(12).

[7] KNISS J,McCORMICK P,McPHERSON A,et al.Interactive texture-based volume rendering for large data sets[J].IEEE Computer Graphics and Applications, 2001,21(4):52-61.

[8] XU Zhi-wei,LI Wei,ZHA Li,et al.A computer systems approach to grid computing[J].Journal of Grid Computing,2004,2(2).

[9] SHAN Gui-hua,CHI Xue-bin,LIU Jun,et al.ScVisGrid:a remote visualization environment in grid computing[C]//Proc of DCABES and ICPACE Joint Conference on Distributed Algorithms for Science and Engineering.London,2005:223-226.endprint