基于OpenGL成像机理的飞行器姿态模拟

2017-04-14 00:14赵澄东高昂
现代电子技术 2017年7期

赵澄东 高昂

摘 要: 针对当前块匹配方法进行飞行器姿态视景模拟的拟合度不高的问题,提出一种基于OpenGL成像机理的飞行器姿态模拟方法,进行飞行器姿态的3D模型建模和纹理映射处理,采用模板匹配技术进行飞行器姿态模型的状态信息特征分析和渲染,实现飞行器姿态的实体模型三维重构。在OpenGL环境中进行实体建模,仿真结果表明,采用该方法进行飞行器姿态模拟的拟合精度高,图像渲染的输出信噪比高于传统方法,具有较好的视景仿真效果。

关键词: 视景仿真; OpenGL成像; 飞行器姿态模拟; 模板匹配技术

中图分类号: TN967?34; TP391 文献标识码: A 文章编号: 1004?373X(2017)07?0024?04

Aircraft attitude simulation based on OpenGL imaging mechanism

ZHAO Chengdong, GAO Ang

(Zhengzhou Chenggong University of Finance and Economics, Gongyi 451200, China)

Abstract: Since the current block matching method has low fitting degree of the aircraft attitude visual simulation, an aircraft attitude simulation method based on OpenGL imaging mechanism is proposed. The 3D model was modeled and the texture was mapped for the aircraft attitude. The template matching technology is used to analyze and render the state information characteristics of the aircraft attitude model to reconstruct the 3D solid model of aircraft attitude. The solid was modeled in the OpenGL environment. The simulation results show that the method has high fitting accuracy of the aircraft attitude simulation and good visual simulation effect, and its output signal?to?noise ratio of the image rendering is higher than that of the traditional methods.

Keywords: visual simulation; OpenGL imaging; aircraft attitude simulation; template matching technology

0 引 言

随着数字图像处理技术和三维视景仿真技术的发展,采用虚拟现实环境下的视景仿真进行物体模拟,实现物体的三维视觉重构,视景仿真技术把真实的物体环境营造在三维立体的虚拟环境中,观察人员沉浸在逼真、虚拟的动态交互场景中[1],使得整个真实的场景转化为一个由声音、图像、文字、数据等数字化信息组成的虚拟场景下,从而构成巨大的虚拟现实空间,使得被仿真物更具真实感,增强图形显示的效果[2?3]。研究物体的虚拟视景仿真技术,将在虚拟战场构建、游戏开发、武器性能测试等领域具有较高的应用价值[4]。

本文提出基于OpenGL成像机理的飞行器姿态模拟方法,结果表明,该方法的飞行器姿态模拟的拟合精度高,图像渲染的输出信噪比高于传统方法,具有较好的视景仿真效果。

1 飞行器姿态3D模型

为了实现对飞行器姿态的视景仿真和三维模拟,首先需要构建飞行器姿态OpenGL成像的3D模型,采用OpenGL图形库的模板特征变换功能[5]进行飞行器姿态成像的平移、旋转、缩放、镜像四种变换[6?7],使用OpenFlight的建模环境提供GPU进行飞行器姿态的视景成像的图形渲染,采用静态视点跟踪方法进行飞行器姿态模拟和视景切换,飞行器姿态3D模型构建的流程如图1所示。

假设飞行器姿态成像图像数据库中的所有场景特征可以表述为[zk,ak,]飞行器姿态模拟的渲染图形目标[Tm,n]大小为[M×N,]虚拟场景中的位置和方向信息表示为[k=1,2,…,n,zk∈ws,][ak∈1,2,…,R,]读取输入设备的控制信息,得到飞行器姿态3D信息分量[?=][sup?(θ)],在限定模型边界范围内得到3D建模的场景图[C(a,b,R)]有上下边界,[F]和[Ca,b,R]表示两个区域的解析信息,在飞行姿态模拟的OpenFlight数据结构中,层次结构中每个节点的渲染纹理信息特征为:

[F=p(x,y)=p(x,y)v(x)v(y)12] (1)

其中:

[p(x,y)=k(x,y)v(x),v(x)=Σyk(x,y)] (2)

假设实时三维场景的逻辑筛选分量阵[Jx,y,σ]表示飞行姿态的信息采集矩阵:

[Jx,y,σ=?P?x?P?y=10Lxx,y,σ01Lyx,y,σ] (3)

飞行器成像区域的一阶基础矩阵[Hx,y,σ]通过飞行器的轮廓和几何形状数据点构建,得到飞行器的3D建模关联角点筛选表达式为:

[F=p(x,y)=p(x,y)v(x)v(y)12] (4)

在自适应跟踪渲染过程中,对飞行器的成像特征进行区域分割可以表示为:

[Hx,y,σ=JJT=1+L2xx,y,σLxx,y,σLyx,y,σLxx,y,σLyx,y,σ1+L2yx,y,σ] (5)

在网格模型的中心位置进行飞行器姿态模拟的场景融合,通过对OpenGL成像的自然分层,实现飞行器姿态3D模型构建。

2 纹理映射处理

在OpenGL图形库中对飞行器姿态模拟成像进行纹理映射处理,可以十分逼真地表达飞行器姿态特征和飞行器的物理表面细节,采用网格法设计飞行器姿态成像的纹理映射特征模板[8],由飞行器姿态成像场景拓扑结构分解的网格单元和物理子区域,得到不同分辨率下的纹理映射网孔结构如图2所示。

根据图2给出的飞行器姿态成像场景拓扑结构,基于LOD(Level of Detail)技术[9?10],进行动态视点和静态视点的三维复杂模型渲染,得到飞行器的运动特征方程:

[RβX=Ii(x,y)E∈URcE,X≤β] (6)

[RβYZ=P(x,y)ivE∈URcE,X≤1-β] (7)

假设[Iix,y]是根据观察点位置的变化而选择的飞行姿态信息量;[Px,yiv]表示在像素点[x,y]的飞行器出现概率。

当观察点距离飞行器很近时,图像将在屏幕上占据较多的像素点,得到自适应跟踪的动态视点方程为:

[DN=(D1,D2,…,DN)] (8)

式(8)表示飞行器在姿态调整下的像素级视差D的N个元素,那么C和D的互相关信息特征量表示为:

[ICN;DNsN=mx,y+i=1Nj=1NICi;DjCi-1,Dj-1,sN+ρdfti,j,kφx0Ci;Djφx0] (9)

式中:自适应跟踪渲染过程的相关性系数为[mx,y],它表示光线滤波的整数级视差;[?,?φx0]表示以[x0]点为特征像素点的纹理特征内积;[?φx0]表示以[x0]点为中心的渲染场景融合范数。

根据上述分析,得到飞行器姿态模拟视景仿真的纹理映射结果如图3所示。

3 飞行器姿态模拟实现

3.1 状态信息特征分析和渲染

在进行飞行器姿态3D模型建模及成像预处理的基础上,本文提出一种基于OpenGL成像机理的飞行器姿态模拟方法,采用模板匹配技术进行飞行器姿态模型的状态信息特征分析和渲染,以及飞行器姿态的实体模型三维重构。给出飞行器姿态模拟的几何结构模型如图4所示。

利用OpenGL纹理映射得到飞行器飞行姿态模拟的成像相位加权[ua(t)]在时域上平移[bm,]为:

[GD=1PSi=1PSd2i12] (10)

式中:PS表示飞行器姿态模拟成像在[(x,y)]處的灰度值;[d]表示虚拟场景中的观察者视线运动尺度空间。

在OpenGL显示终端得到飞行器姿态模拟的特征分布范围为:

[SP=1PS-1i=1PS(d-di)2] (11)

在Lynx Prime面板中进行三维成像,在最高分辨率为32×32的条件下,得到飞行姿态角调整的动态修改参数为:

[Q1=U?SPE∈URcE,X≤β] (12)

[Q2=U?GDE∈URcE,X≤1-β] (13)

通过对图像自然分层,进行状态信息特征分析和渲染,保留原始图像的基本信息,模拟出飞行器姿态变化的效果。

3.2 飞行器姿态模拟的视景建模实现

在Lynx Prime面板中需要定义一个飞行器姿态模拟的分布场,创建MarineWaveGeneratorFFT和MarineOceanObserverCentered两个类实例,ArineWaveGeneratorFFT面板中设置控制参数附加的姿态变化特效,通过以下主要的程序代码可以动态修改各参数:

vpEnvSnow* etAttenuation_Aircraft attitude adjustment = new vpEnvSnow();

pEnvSnow_ setAttenuation ?>Adaptive tracking rendering (Game scene topologyGame scene topology ); //视景仿真区域

pEnvSnow_etSurfaceWindSpeed?> setTranslate(0,0,1);( "snow.rgba"); //飞行器姿态几何参数

Picture frame _myRINFN?>set spacecraft attitude 3D modeling (4000); //OpenGL颜色模式

pEnvSnow_ visual simulation terminal?>set management and displa Size(10); //3D模型的显示

在复杂模型的动态显示中,通过OpenGL环境中的网孔面(Mesh Facet)分解技术构成网格(Grid)结构体的8×8网孔,在Lynx Prime面板中进行飞行姿态模拟的动态效果显示,在M个分布场网格中进行视景仿真的渲染,得到纹理、周期、横滚、转向、风速等飞行姿态参数,通过以下主要的程序代码可以动态修改各参数:

vpMarineWaveGitnssFFT *pMaiehhujsj = new

pMarine –>setMesh frequency estimation(64,64);

//由2×3个网格单元(cell)组成的渲染网格个数

根据系统所需视野范围的大小和网格大小确定网格渲染个数。这样当表面网格在水平方向上的维度是一个常数时,而其他地区以线网格的形式存在时,可显著提高系统的运行速度,得到网格分辨率较高情况下的飞行姿态模拟的距离范围与分辨率的关系表述为:

pMarine->setollision detection(100.000000f,100.000000f);

//设置网格的分辨率

网格越密集逼真性越好,网格过于密集会影响系统的运行速度,通过OpenGL技术进行动态成像,取[X]方向为100.000 000 f,[Y]方向为100.000 000 f,得到飞行姿态模拟的信息特征分析和渲染过程为:

pMarine->setecho frequency estimation (4);

//设置飞行姿态模拟的类型

pMarine->setSurfaceWindSpeed(19.000 000 f);

//设置风速,根据飞行空间中的流体力学模型大致设置为19.000 000 f

pMarine->setDominantWaveupdate data display.(45.434 22 f); //设置图像自然分层

pPlane->setarticle effects Wave Height(1.543 00 f);

//设置波高为1.543 00 f

通过上述分析,实现飞行器姿态模拟的视景建模设计。

4 仿真实验结果与分析

在OpenGL仿真软件基础上,在Windows平台上实现,使系统的客户端和视景仿真端进行实时的数据交互。采用模块化的设计使飞行器姿态模拟具备了实时性,利用Visual C++7.0,Vega Prime,Multigen Creator,Matcom和OpenGL等多种工具和软件联合开发飞行器姿态模拟的视景仿真系统,视景仿真软件运行所需有关OpenGL的DLL库:opengl32.dll,glu32.dll,要通过大量的飞行器姿态模拟的图像质量来反映调试的结果,对各实体模型的位置和姿态进行初始化,然后采用本文方法进行飞行器姿态模拟,得到飞行器姿态模拟的俯视通道和横滚通道仿真结果如图5所示。从图5可知,采用本文方法进行飞行器的姿态模拟,能较好地拟合飞行器的姿态特征,对飞行器姿态的拟合精度较高,图像视景仿真的视觉效果较好。

为了定量刻画性能,以对飞行器姿态模拟中的图像渲染输出信噪比为测试指标,结合本文方法和传统方法,得到的对比结果如图6所示。分析结果得知,本文方法进行视景仿真的输出信噪比较高,说明视景仿真的逼真度较好,展示了其优越性。

5 结 语

本文研究了飞行器姿态的三维模拟和视景仿真问题,提出一种基于OpenGL成像机理的飞行器姿态模拟方法,首先进行飞行器姿态的3D模型建模和纹理映射處理,采用模板匹配技术进行飞行器姿态模型的状态信息特征分析和渲染,实现飞行器姿态的实体模型三维重构。利用Visual C++7.0,Vega Prime,Multigen Creator,Matcom和OpenGL等仿真工具进行系统设计,在OpenGL环境中进行实体建模,研究表明,采用本文方法进行飞行器姿态模拟的拟合精度较高,图像渲染的输出信噪比高于传统方法,说明本文方法有较好的视景仿真效果,逼真度较高,性能优越。

注:本文通讯作者为高昂。

参考文献

[1] 赵威.基于鱼雷自导的舰船尾流回波模型建立方法[J].舰船电子工程,2013,33(4):81?83.

[2] 葛立志.基于全弹道控制分析的水下航行器攻击模型视景仿真[J].舰船电子工程,2015,35(3):137?141.

[3] 胡光波,周勇.基于Vega Prime的舰船尾流视景仿真研究[J].舰船电子工程,2010,30(6):91?94.

[4] 刘国柱.Virtools嵌入式服务器与虚拟现实协同设计平台[J].科技通报,2012,28(2):13?16.

[5] 罗泽峰,单广超.基于网络和虚拟多媒体技术的海战平台视景仿真实现[J].物联网技术,2015,5(3):91?92.

[6] KHALILI A, SAMI A. SysDetect: a systematic approach to cri?tical state determination for industrial intrusion detection systems using Apriori algorithm [J]. Journal of process control, 2015, 32: 154?160.

[7] 蔺素珍,朱小红,王栋娟,等.基于嵌入式多尺度变换的多波段图像融合[J].计算机研究与发展,2015,52(4):952?959.

[8] MAHBOUBI H. Distributed deployment algorithms for efficient coverage in a network of mobile sensors with nonidentical sen?sing capabilities [J]. IEEE transactions on vehicular technology, 2014, 63(8): 3998?4016.

[9] 方智文,曹治国,朱磊.基于梯度角度的直方图局部特征描述子的图像匹配算法[J].计算机应用,2015,35(4):1079?1083.

[10] 陈添丁,金炜炜,陈英旦,等.轮廓线优化的多通道三维水墨渲染模型[J].电子与信息学报,2015,37(2):494?498.