获得飞行模拟数据的方法、装置、存储介质及设备与流程

文档序号:15739550发布日期:2018-10-23 22:03阅读:411来源:国知局
获得飞行模拟数据的方法、装置、存储介质及设备与流程

本申请涉及计算机技术领域,尤其涉及一种获得飞行模拟数据的方法、装置、存储介质及设备。



背景技术:

目前飞行器有比较广泛的应用,为了保证飞行器在实际飞行过程中能够应对各种场景变化,会相应设计飞行模拟器,对飞行器的飞行过程进行模拟仿真,从而依据仿真结果优化飞行器的各种参数配置,以及控制性能等。

相关技术中,通常采用机器人模拟器对飞行过程进行仿真,这种仿真结果只能模拟比较理想化的静态环境场景,导致飞行器在实际飞行过程中,面对复杂多变的场景和环境时,仍然需要做比较多的调整,在一些极端环境下,甚至可能导致飞行器失效,因此现有飞行模拟器由于比较简单,因此根据其所得到的飞行模拟数据难以对飞行器的实际飞行过程进行有效辅助。



技术实现要素:

本申请提供一种获得飞行模拟数据的方法、装置、存储介质及设备。

依据本申请的第一方面,提供一种获得飞行模拟数据的方法,所述方法包括:

获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型,所述目标环境子模型中包括目标动态环境模型,其中动态环境模型为针对具有动态变化特性的环境因素所创建的模型;

处理每个目标环境子模型与飞行器模型之间的交互,获得第一类数据和第二类数据;

对所述第一类数据进行渲染后输出,以及直接输出所述第二类数据。

依据本申请的第二方面,提供一种获得飞行模拟数据的装置,包括:

获取单元,用于获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型,所述目标环境子模型中包括目标动态环境模型,其中动态环境模型为针对具有动态变化特性的环境因素所创建的模型;

处理单元,用于处理每个目标环境子模型与飞行器模型之间的交互,获得第一类数据和第二类数据;

输出单元,用于对所述第一类数据进行渲染后输出,以及直接输出所述第二类数据。

依据本申请的第三方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如下操作:

获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型,所述目标环境子模型中包括目标动态环境模型,其中动态环境模型为针对具有动态变化特性的环境因素所创建的模型;

处理每个目标环境子模型与飞行器模型之间的交互,获得第一类数据和第二类数据;

对所述第一类数据进行渲染后输出,以及直接输出所述第二类数据。

依据本申请的第四方面,提供一种计算设备,其特征在于,包括通过内部总线连接的存储器、处理器和外部接口,

所述存储器,用于存储获得飞行模拟数据的控制逻辑对应的机器可读指令;

所述处理器,用于读取所述存储器上的所述机器可读指令,并执行所述指令以实现如下操作:

获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型,所述目标环境子模型中包括目标动态环境模型,其中动态环境模型为针对具有动态变化特性的环境因素所创建的模型;

处理每个目标环境子模型与飞行器模型之间的交互,获得第一类数据和第二类数据;

对所述第一类数据进行渲染后输出,以及直接输出所述第二类数据。

由以上本申请实施例提供的技术方案可见,本申请由于通过所建立的不同动态环境模型,在模拟飞行器飞行的场景时,通过对多个场景的子模型进行合并处理和渲染,最终输出的飞行模拟数据,可以有效对真实世界的各种可能场景进行模拟,因此能够向飞行器的开发过程提供更加真实和准确的仿真数据,从而可以为开发过程中的飞行器提供有效辅助,比如,可以优化传感器的参数配置、优化包括控制算法、导航算法等在内的各种算法。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例的应用场景示意图;

图2是本申请实施例的原理示意图;

图3是本申请获得飞行模拟数据的方法的一个实施例流程图;

图4是本申请获得飞行模拟数据的方法的另一个实施例流程图;

图5是本申请获得飞行模拟数据的装置的实施例框图;

图6是本申请计算设备的实施例框图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。另外,在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

飞行模拟器可以对飞行器的飞行过程进行高拟真度的仿真,通过仿真得到的飞行模拟数据,可以用来优化飞行器的传感器参数配置,以及优化各种飞行控制算法和导航控制算法等。飞行模拟器的功能性体现在能够针对复杂多变的环境提供更接近于真实场景的模拟,相关技术中的飞行模拟器通常只能模拟比较理想化的场景,因此难以对飞行器的实际飞行过程进行有效辅助。

参见图1,为本申请实施例的应用场景示意图:

图1中,飞行模拟器作为一种APP(Application,应用),可以安装在终端设备中,例如,手机、平板电脑等,在实际应用中,当用户打开飞行模拟APP,即可进入飞行模拟控制界面,此时用户可以通过在飞行模拟控制界面上进行操作,向飞行器模型输入各种模拟指令,从而在终端设备上呈现飞行器模型的飞行模拟画面,以此可以获得各种飞行模拟数据。本申请实施例为了使飞行模拟器可以模拟更多真实场景,尤其是动态变化的场景,可以预先建立不同的动态环境模型,从而在模拟飞行器飞行的场景时,通过对多个场景的子模型进行合并处理和渲染,使得最终输出的飞行模拟数据可以有效对真实世界的各种可能场景进行模拟。

参见图2,为本申请获得飞行模拟数据的实施例的原理示意图:

图2所示的原理图中包括:预先创建的多个模型和处理系统。上述多个模型可以保存在存储器中,多个模型可以包括:表示环境中包含状态稳定且对象不会产生移动的静态环境模型;包含有状态可变,且对象可能发生移动的动态环境模型;以及用于对实际飞行器的外观和飞控进行模拟的飞行器模型。上述处理系统可以在模拟飞行器飞行的场景时,从存储器中调用飞行器模型,以及被选中的静态环境模型和动态环境模型等,通过对上述模型之间的交互进行合并处理和渲染,输出作为第一类数据的图像数据和深度数据,并且可以直接输出作为第二类数据的无需渲染处理的传感器类数据,上述两部分数据合称为飞行模拟数据。

下面结合附图1和附图2对本申请实施例进行详细描述。

参见图3,为本申请获得飞行模拟数据的方法的一个实施例流程图,包括下述步骤:

步骤301:获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型,目标环境子模型中包括目标动态环境模型。

本申请实施例中,飞行模拟器可以在一个或多个环境子模型组成的飞行场景下对飞行器模型的飞行过程进行模拟。

其中,飞行器模型可以包括:用于与目标环境子模型进行交互的动力模型,用于控制飞行器模型飞行姿态的控制模型,以及用于为控制模型提供视觉数据的视觉系统模型;环境子模型可以包括静态环境模型和动态环境模型;飞行场景可以包括:依据天气系统变化的飞行场景;依据光源类型变化的飞行场景;依据环境修饰变化的飞行场景;依据对象移动变化的飞行场景;依据干扰情况变化的飞行场景。

在一个可选的实现方式中,静态环境模型通常表示环境中包含状态稳定且不会产生移动的对象,静态环境模型可以包括一个或多个下述子模型:地形子模型、建筑物子模型。

在一个例子中,地形子模型可以用于模拟生成对地超声波数据,超声波数据是由物理引擎从飞行器底部的超声波发射器发射出的多束射线与地表模型发生碰撞而生成的距离数据,超声波数据可以为飞行控制逻辑提供降落时的参考,也可以提供导航时的地形跟随功能等。以为飞行控制提供降落时的控制逻辑为例,通过超声波数据可以获得飞行器距离地面的高度,在飞行器降落时通过实时监测超声波数据,当飞行器接近地表时强制飞行器减速,控制飞行器的速度上限与飞行器距离地面的距离成正比;以提供导航时的地形跟随功能为例,通过记录初始开启该功能时飞行器的初始高度,实时比较飞行器当前距离地面的高度与初始高度,当高于初始高度,控制飞行器降低,当低于初始高度,控制飞行器升高。

在另一个例子中,建筑物子模型可以用于模拟飞行器所拍摄图像中,图像数据和深度数据中的障碍物信息,通过识别出建筑物的距离、位置等信息,可以指定飞行器的避障策略、绕行策略等。

动态环境模型是针对具有动态变化特性的环境因素所创建的模型,通常表示环境中包含有状态可变,且可能发生移动的对象,动态环境模型可以包括一个或多个下述子模型:天气系统子模型、光源子模型、环境修饰子模型、移动对象子模型、干扰子模型。

在一个例子中,光源子模型可以用于模拟对飞行器所拍摄图像亮度的影响,在图像出现过曝光,或者局部过曝光时,飞行器的视觉系统可能失效,视觉系统可以包括感知功能模块和导航功能模块,其中感知功能模块可以用于通过机载相机拍摄的图像数据计算出飞行器的位置,或者通过超声波传感器感知一定范围内的物体,导航功能模块可以用于通过机载相机拍摄的图像数据规划飞行器的导航数据,导航数据可以包括飞行器的导航飞行路线数据和飞行行为数据,因此通过光源子模型可以测试飞行器在视觉系统失效后,是否能够保持安全飞行,或者是否能够在图像亮度恢复正常后,恢复视觉系统功能。同理的,环境修饰子模型中的地面积雪模型可以用于模拟积雪反光对图像造成过曝光的情况,在地面积雪环境中,由于拍摄图像为白色,因此飞行器的视觉系统难以从中提取足够的特征点,通过地面积雪模型同样可以测试飞行器的视觉系统功能。

在另一个例子中,天气系统子模型中的雨雪子模型可以用于模拟对飞行器所拍摄图像的噪声影响,在飞行器拍摄的图像画面中,如果有雨雪,相当于在图像中加入了噪声,因此可以测试视觉算法的稳健性,以及过滤噪声的性能,进一步地,通过对恶劣天气的模拟,例如,暴雨或者暴雪等,可以测试得出视觉算法的界限,从而得到飞行器的安全飞行界限。

在另一个例子中,移动对象子模型可以用于模拟场景中的人物、动物、车辆等,相应的飞行器模型可以模拟生成主相机图像码流,并将该图像码流传输至导航算法模块进行高级功能的开发测试,例如对车辆进行追踪或者环绕,识别人的手势等。

上述例子中的动态环境模型均可以用于模拟生成视觉图像信息,以及对飞行器的视觉系统进行验证。其中,视觉图像通常为灰度图像,主相机图像码流通常为彩图码流。

本步骤中,当要进入飞行模拟状态时,可以通过不同的方式,先获取飞行器待模拟飞行场景下的一个或多个环境子模型,上述一个或多个环境子模型称为目标环境子模型。

通常一个或多个环境子模型可以映射为某一特定飞行场景,或者,不同的飞行场景可以对应一个或多个环境子模型。基于此,提供如下两种获取目标环境子模型的可选实现方式:

在一个可选的实现方式中:当进入飞行模拟状态时,可以在显示界面直接输出环境子模型列表,该环境子模型列表中包括所有预先设置的动态环境模型和静态环境模型,用户可以根据想要模拟的飞行场景,从环境子模型列表中选择一个或多个目标环境子模型,即上述目标环境子模型映射为一个目标飞行场景,其中上述一个或多个目标环境子模型中包括动态环境模型,进一步也可以包括静态环境模型。

在另一个可选的实现方式中:可以预先保存所创建的飞行器模型和多个类型的环境子模型,以及保存不同飞行场景与不同环境子模型名称之间的对应关系,当进入飞行模拟状态时,可以在显示界面直接输出多个飞行场景供用户选择,并将用户选择的结果确定为飞行器模型待模拟的目标飞行场景,根据目标飞行场景查找上述对应关系,从而调用与目标飞行场景对应的一个或多个目标环境子模型。

步骤302:处理每个目标环境子模型与飞行器模型之间的交互,获得第一类数据和第二类数据。

本步骤中,在获得第一类数据时,可以先确定目标环境子模型中的目标动态环境模型中,动态对象在飞行场景中所在的目标位置,然后按照该目标位置,将动态对象叠加到目标环境子模型中的目标静态环境模型中的相应位置,从而获得作为第一类数据的合并模型。

本步骤中,在获得第二类数据时,可以计算飞行器模型在合并模型中的飞行状态数据,获得第二类数据。其中,所述飞行状态数据可以包括至少一种下述数据:飞行器模型的位置数据,飞行器模型与遥控器的距离数据、飞行器模型的高度数据、飞行器模型的方向数据。相应的,第二类数据可以包括至少一种下述传感器类数据:根据位置数据获得的GPS数据,根据方向数据获得的指南针数据、根据高度数据获得的气压计数据、根据距离数据获得的遥控器信号强度数据、根据位置数据和方向数据获得的超声传感器数据、以及IMU数据等。

步骤303:对第一类数据进行渲染后输出,以及直接输出第二类数据。

本步骤中,在获得作为第一类数据的合并模型后,可以对合并模型进行渲染,渲染过程可以采用现有各种渲染算法,在此不再赘述。渲染后的第一类数据可以包括:图像数据和深度数据。

由上述实施例可见,该实施例通过所建立的不同动态环境模型,在模拟飞行器飞行的场景时,通过对多个场景的子模型进行合并处理和渲染,最终输出的飞行模拟数据,可以有效对真实世界的各种可能场景进行模拟,因此能够向飞行器的开发过程提供更加真实和准确的仿真数据,从而可以为开发过程中的飞行器提供有效辅助。

参见图4,为本申请获得飞行模拟数据的方法的另一个实施例流程图,该实施详细示出了获得飞行模拟数据以及根据该飞行模拟数据进行飞控调整的过程:

步骤401:预先保存所创建的飞行器模型和多个类型的环境子模型,以及保存不同飞行场景与不同环境子模型名称之间的对应关系,其中,多个类型的环境子模型包括动态环境模型和静态环境模型。

本实施例中,用于模拟实际飞行器的飞行器模型可以包括:用于与环境子模型进行交互的动力模型,用于控制飞行器模型飞行姿态的控制模型,以及用于为所述控制模型提供视觉数据的视觉系统模型。

其中,环境子模型可以包括静态环境模型和动态环境模型。静态环境模型通常表示环境中包含状态稳定且不会产生移动的对象,静态环境模型可以包括一个或多个下述子模型:地形子模型,比如高山、平原等;建筑物子模型,比如楼房、商厦等;动态环境模型是针对具有动态变化特性的环境因素所创建的模型,通常表示环境中包含有状态可变,且可能发生移动的对象,动态环境模型可以包括一个或多个下述子模型:天气系统子模型,比如云、风、雨、雪等;光源子模型,比如直射光源、散射光源、点光源、平行光源等;环境修饰子模型,比如地面积雪,地面积水等;移动对象子模型,比如动物、人、交通工具等;干扰子模型,比如磁场干扰、GPS干扰、控制信号干扰等。

上述动态环境模型的子模型可以通过相关技术中的算法和公式模型进行表征,下面结合几个例子对子模型的建立过程进行描述:

以建立风力模型为例,通常可以根据不同的地理区域计算出相应区域的平均风力大小,然后在这个风力的基础上,叠加一个间歇风,用以模拟相应区域的动态风,间歇风可以通过正弦信号y=sin(wt)进行表征,其中,w为间歇频率,t为时间,y为风力大小。

以建立磁场干扰模型为例,可以在飞行器模型四周设置条形磁铁作为干扰磁场,然后通过叠加地磁磁场和条形磁铁磁场,从而实现对地磁信号的干扰。其中,条形磁铁的数学模型和地磁磁场的数学模型可以采用相关技术中的模型,例如,地磁磁场的数学模型可以采用世界磁场模型(World Magnetic Model)2015,条形磁铁的数学模型可以基于毕奥-萨伐尔定律建立一个由稳定电流产生的磁场,其可以通过公式表征为其中,I为源电流,L'为积分路径,dl'为源电流的微小线元素。

以建立GPS干扰模型为例,GPS通信采用的标准为NMEA 0183标准,因此可以通过改变GPGGA(GPS固定数据输出语句)中使用卫星的数量以及水平精确度来模拟GPS干扰。

以建立控制信号干扰为例,可以通过阻断遥控器与飞行器模型之间的通信来实现干扰。

其中,飞行场景可以包括:依据天气系统变化的飞行场景;依据光源类型变化的飞行场景;依据环境修饰变化的飞行场景;依据对象移动变化的飞行场景;依据干扰情况变化的飞行场景。由于不同的飞行场景可以对应一个或多个环境子模型,因此本实施例中可以预先创建不同飞行场景与不同环境子模型之间的对应关系,例如,

上述飞行器模型和多个类型的环境子模型可以通过各种数学公式进行表征,各种模型和上述创建的对应关系可以保存在存储器中。

步骤402:确定飞行器待模拟的目标飞行场景;

当进入飞行模拟状态时,可以在显示界面直接输出多个飞行场景供用户选择,并将用户选择的结果确定为飞行器模型待模拟的目标飞行场景。在一个可选的实现方式中,用户的选择结果可以为多个飞行场景,例如,可以同时包括下雪天的飞行场景和地面包含积雪的飞行场景。

步骤403:根据目标飞行场景查找不同飞行场景与不同环境子模型名称之间的对应关系,获得与该目标飞行场景对应的环境子模型名称。

步骤404:从所保存的多个类型的环境子模型中调用与该环境子模型名称对应的一个或多个目标环境子模型。

步骤405:处理每个目标环境子模型与飞行器模型之间的交互,获得第一类数据和第二类数据,分别执行步骤406和步骤410。

本实施例中,可以利用现有的各种物理系统模型,实现对环境子模型和飞行器模型的交互进行模拟,包括:可以采用力学物理模型模拟对飞行器的碰撞和重力对飞行器的影响,可以采用电磁学模型模拟飞行控制信号的衰减,屏蔽,和电磁学干扰等,可以利用磁体模型模拟磁场对飞行器指南针的干扰,可以利用流体力学模型模拟风力、空气阻力、飞行器的螺旋桨动力等。下面通过几个具体可选实现方式对上述物理模型进行描述:

在一个可选实现方式中,环境模型和飞行器模型进行交互的物理模型可以包括:在不同机身运动速度以及螺旋桨转速下,飞行器和空气的相互作用力模型,该相互作用力模型用于在获得飞行器模型相对于空气的作用力后,通过将作用力与机身重力进行合成,获得飞行器的飞行状态信息,例如飞行器机身的运动加速度、角加速度等。

在另一个可选实现方式中,包含建筑物的静态环境模型和包含风力系统的动态环境模型进行交互时,由于建筑物高度和体积的不同,在建筑物的不同位置,风速值可能不同。因此在通过流体力学模型模拟风力时,可以预先创建不同位置的风速场,风速场可以为时间的函数,从而实现对风速变化和湍流的模拟。

本步骤中,在获得第一类数据时,可以先确定目标环境子模型中的目标动态环境模型中,动态对象在飞行场景中所在的目标位置,然后按照该目标位置,将动态对象叠加到目标环境子模型中的目标静态环境模型中的相应位置,从而获得作为第一类数据的合并模型。例如,在一个飞行器模型模拟的飞行场景中,目标静态环境模型包括建筑物,目标动态环境模型包括行驶中的汽车(移动对象子模型)和飘落的雪花(天气系统子模型),则可以在目标静态环境和目标静态环境具有的同一背景环境中,先确定汽车和雪花的位置,然后按照该位置,将汽车和雪花叠加到包含建筑物的背景环境中的相应位置,从而获得由目标静态环境模型和目标动态环境模型组成的合并模型。

本步骤中,在获得第二类数据时,可以计算飞行器模型在合并模型中的飞行状态数据,获得第二类数据。其中,所述飞行状态数据可以包括至少一种下述数据:飞行器模型的位置数据,飞行器模型与遥控器的距离数据、飞行器模型的高度数据、飞行器模型的方向数据。相应的,第二类数据可以包括至少一种下述传感器类数据:根据位置数据获得的GPS数据,根据方向数据获得的指南针数据、根据高度数据获得的气压计数据、根据距离数据获得的遥控器信号强度数据、根据位置数据和方向数据获得的超声传感器数据、以及IMU数据等。

步骤406:对第一类数据进行渲染后输出。

步骤407:将第一类数据输入飞行器模型的视觉系统模型。

步骤408:获得视觉系统模型对第一类数据进行感知和导航处理后,得到的视觉数据。

步骤409:将视觉数据输入飞行器模型的控制模型,结束当前流程。

结合上述步骤407至步骤409,通常视觉系统可以包括感知功能模块和导航功能模块,可以将第一类数据输入上述感知功能模块和导航功能模块,从而获得感知功能模块依据第一类数据获得的飞行器的位置数据和周围物体的位置数据,以及获得导航功能模块依据第一类数据获得的飞行器的导航数据,导航数据可以包括飞行器的导航飞行路线数据和飞行行为数据,然后将上述位置数据和导航数据输入控制模型,从而使控制模型可以利用这些数据进行飞行控制。

步骤410:将第二类数据输入飞行器模型的控制模型。

步骤411:获得控制模型依据第二类数据对飞行器进行虚拟飞行控制后,输出的飞行控制数据。

步骤412:根据飞行控制数据调整飞行器的飞行控制逻辑,结束当前流程。

结合上述步骤410至步骤412,在一个可选的调整飞行控制逻辑的例子中,假设飞行器正在飞行的控制模式是定点模式,如果此时飞行器因为磁场干扰导致GPS信号丢失,则应该自动切换到姿态模式,应用本申请实施例可以通过飞行模拟器模拟上述场景,从而检测飞行模拟器是否会切换到姿态模式。

在另一个可选的调整飞行控制逻辑的例子中,假设飞行器遇到强烈的地磁罗盘干扰,则此时通过导航控制系统计算出的飞行器状态的原始值会出现错误,应用本申请实施例可以通过飞行模拟器模拟出飞行器在上述场景下状态的真实值,通过计算真实值与原始值的差值,为导航控制系统中导航算法的开发和改进提供依据,即可以获知导航算法在地磁罗盘干扰到达何种程度时可能导致失效。

与前述获得飞行模拟数据的方法实施例相对应,本申请还提供了获得飞行模拟数据的装置及设备的实施例。

参见图5,为本申请获得飞行模拟数据的装置的实施例框图:

该装置包括:获取单元510、处理单元520和输出单元530。

其中,获取单元510,用于获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型,所述目标环境子模型中包括目标动态环境模型,其中动态环境模型为针对具有动态变化特性的环境因素所创建的模型;

处理单元520,用于处理每个目标环境子模型与飞行器模型之间的交互,获得第一类数据和第二类数据;

输出单元530,用于对所述第一类数据进行渲染后输出,以及直接输出所述第二类数据。

在一个可选的实现方式中,获取单元510可以包括:

列表输出子单元,用于输出环境子模型列表,所述环境子模型列表中包括动态环境模型和静态环境模型;

目标获得子单元,用于获得用户从所述环境子模型列表中选择的一个或多个目标环境子模型。

在另一个可选的实现方式中,获取单元510可以包括:

目标确定子单元,用于确定飞行器待模拟的目标飞行场景;

目标调用子单元,用于调用与所述目标飞行场景对应的一个或多个目标环境子模型。

基于上述实现方式,该装置还可以包括:

保存单元,用于预先保存所创建的飞行器模型和多个类型的环境子模型,以及保存不同飞行场景与不同环境子模型名称之间的对应关系,其中,所述多个类型的环境子模型包括动态环境模型和静态环境模型。

相应的,所述目标调用子单元,具体用于根据所述目标飞行场景查找所述对应关系,获得与所述目标飞行场景对应的环境子模型名称,并从所保存的多个类型的环境子模型中调用与所述环境子模型名称对应的一个或多个目标环境子模型。

在另一个可选的实现方式中:

所述飞行场景包括:依据天气系统变化的飞行场景;依据光源类型变化的飞行场景;依据环境修饰变化的飞行场景;依据对象移动变化的飞行场景;依据干扰情况变化的飞行场景;

所述环境子模型中的静态环境模型包括一个或多个下述子模型:地形子模型、建筑物子模型;

所述环境子模型中的动态环境模型包括一个或多个下述子模型:天气系统子模型、光源子模型、环境修饰子模型、移动对象子模型、干扰子模型。

其中,所述天气系统子模型包括风力子模型,所述风力子模型通过不同地理位置的风速场与风速数值的对应关系进行表征;

所述干扰子模型通过设置的电磁学模型进行模拟,所述干扰子模型包括:磁场干扰子模型、GPS干扰子模型、遥控器控制信号干扰子模型。

在另一个可选的实现方式中,所述处理单元520可以包括:

位置确定子单元,用于确定所述目标动态环境模型中动态对象在所述飞行场景中所在的目标位置;

对象叠加子单元,用于按照所述目标位置,将所述动态对象叠加到所述目标环境子模型中的目标静态环境模型中的相应位置,获得作为所述第一类数据的合并模型;以及,

数据计算子单元,用于通过计算所述飞行器模型在所述合并模型中的飞行状态数据,获得第二类数据。

其中,对所述合并模型进行渲染后的第一类数据包括:图像数据和深度数据;

所述飞行状态数据包括至少一种下述数据:飞行器模型的位置数据,飞行器模型与遥控器的距离数据、飞行器模型的高度数据、飞行器模型的方向数据;

所述第二类数据包括至少一种下述传感器类数据:根据所述位置数据获得的GPS数据,根据所述方向数据获得的指南针数据、根据所述高度数据获得的气压计数据、根据所述距离数据获得的遥控器信号强度数据、根据所述位置数据和方向数据获得的超声传感器数据、以及IMU数据。

在另一个可选的实现方式中,所述飞行器模型包括:用于与所述目标环境子模型进行交互的动力模型,用于控制飞行器模型飞行姿态的控制模型,以及用于为所述控制模型提供视觉数据的视觉系统模型。

相应的,在一个例子中,所述装置还可以包括:

第一输入单元,用于将所述第一类数据输入所述视觉系统模型;

第一获得单元,用于获得所述视觉系统模型对所述第一类数据进行感知和导航处理后,得到的视觉数据;

所述第一输入单元,还用于将所述视觉数据输入所述控制模型。

相应的,在另一个例子中,所述装置还可以包括:

第二输入单元,用于将所述第二类数据输入所述控制模型;

第二获得单元,用于获得所述控制模型依据所述第二类数据对飞行器进行虚拟飞行控制后,输出的飞行控制数据;

调整单元,用于根据所述飞行控制数据调整飞行器的飞行控制逻辑。

参见图6,为本申请计算设备的一个实施例示意图,该计算设备可以包括:通过内部总线610连接的存储器620、处理器630和外部接口640。

其中,所述存储器620,用于存储获得飞行模拟数据的控制逻辑对应的机器可读指令;

所述处理器630,用于读取所述存储器620上的所述机器可读指令,并执行所述指令以实现如下操作:

获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型,所述目标环境子模型中包括目标动态环境模型,其中动态环境模型为针对具有动态变化特性的环境因素所创建的模型;

处理每个目标环境子模型与飞行器模型之间的交互,获得第一类数据和第二类数据;

对所述第一类数据进行渲染后输出,以及直接输出所述第二类数据。

在一个可选的实现方式中,所述处理器630在执行获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型时,具体用于输出环境子模型列表,所述环境子模型列表中包括动态环境模型和静态环境模型;获得用户从所述环境子模型列表中选择的一个或多个目标环境子模型。

在另一个可选的实现方式中,所述处理器630在执行获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型时,具体用于确定飞行器待模拟的目标飞行场景;调用与所述目标飞行场景对应的一个或多个目标环境子模型。

在另一个可选的实现方式中,所述存储器620,还用于预先保存所创建的飞行器模型和多个类型的环境子模型,以及保存不同飞行场景与不同环境子模型名称之间的对应关系,其中,所述多个类型的环境子模型包括动态环境模型和静态环境模型。

相应的,所述处理器630在执行调用与所述飞行场景对应的一个或多个目标环境子模型时,具体用于根据所述目标飞行场景查找所述对应关系,获得与所述目标飞行场景对应的环境子模型名称;从所保存的多个类型的环境子模型中调用与所述环境子模型名称对应的一个或多个目标环境子模型。

在另一个可选的实现方式中:

所述飞行场景包括:依据天气系统变化的飞行场景;依据光源类型变化的飞行场景;依据环境修饰变化的飞行场景;依据对象移动变化的飞行场景;依据干扰情况变化的飞行场景;

所述环境子模型中的静态环境模型包括一个或多个下述子模型:地形子模型、建筑物子模型;

所述环境子模型中的动态环境模型包括一个或多个下述子模型:天气系统子模型、光源子模型、环境修饰子模型、移动对象子模型、干扰子模型。

在另一个可选的实现方式中:

所述天气系统子模型包括风力子模型,所述风力子模型通过不同地理位置的风速场与风速数值的对应关系进行表征;

所述干扰子模型通过设置的电磁学模型进行模拟,所述干扰子模型包括:磁场干扰子模型、GPS干扰子模型、遥控器控制信号干扰子模型。

在另一个可选的实现方式中,所述处理器630在执行处理每个目标环境子模型与飞行器模型之间的交互,获得第一类数据和第二类数据时,具体用于确定所述目标动态环境模型中动态对象在所述飞行场景中所在的目标位置;按照所述目标位置,将所述动态对象叠加到所述目标环境子模型中的目标静态环境模型中的相应位置,获得作为所述第一类数据的合并模型;以及,通过计算所述飞行器模型在所述合并模型中的飞行状态数据,获得第二类数据。

在另一个可选的实现方式中:

对所述合并模型进行渲染后的第一类数据包括:图像数据和深度数据;

所述飞行状态数据包括至少一种下述数据:飞行器模型的位置数据,飞行器模型与遥控器的距离数据、飞行器模型的高度数据、飞行器模型的方向数据;

所述第二类数据包括至少一种下述传感器类数据:根据所述位置数据获得的GPS数据,根据所述方向数据获得的指南针数据、根据所述高度数据获得的气压计数据、根据所述距离数据获得的遥控器信号强度数据、根据所述位置数据和方向数据获得的超声传感器数据、以及IMU数据。

在另一个可选的实现方式中,所述飞行器模型包括:用于与所述目标环境子模型进行交互的动力模型,用于控制飞行器模型飞行姿态的控制模型,以及用于为所述控制模型提供视觉数据的视觉系统模型。

在另一个可选的实现方式中,所述处理器630还用于将所述第一类数据输入所述视觉系统模型;获得所述视觉系统模型对所述第一类数据进行感知和导航处理后,得到的视觉数据;将所述视觉数据输入所述控制模型。

在另一个可选的实现方式中,所述处理器630还用于将所述第二类数据输入所述控制模型;获得所述控制模型依据所述第二类数据对飞行器进行虚拟飞行控制后,输出的飞行控制数据;根据所述飞行控制数据调整飞行器的飞行控制逻辑。

另外,本申请实施例示出的获得飞行模拟数据的流程还可以被包括在计算机可读存储介质中,该存储介质可以与执行指令的处理设备连接,该存储介质上存储有获得飞行模拟数据的控制逻辑对应的机器可读指令,这些指令能够被处理设备执行,上述机器可读指令用于实现如下操作:

获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型,所述目标环境子模型中包括目标动态环境模型,其中动态环境模型为针对具有动态变化特性的环境因素所创建的模型;

处理每个目标环境子模型与飞行器模型之间的交互,获得第一类数据和第二类数据;

对所述第一类数据进行渲染后输出,以及直接输出所述第二类数据。

在一个可选的实现方式中,所述计算机指令被执行获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型时,具体进行如下处理:

输出环境子模型列表,所述环境子模型列表中包括动态环境模型和静态环境模型;

获得用户从所述环境子模型列表中选择的一个或多个目标环境子模型。

在另一个可选的实现方式中,所述计算机指令被执行获取飞行器模型待模拟飞行场景下的一个或多个目标环境子模型时,具体进行如下处理:

确定飞行器待模拟的目标飞行场景;

调用与所述目标飞行场景对应的一个或多个目标环境子模型。

在另一个可选的实现方式中,所述计算机指令被执行时还进行如下处理:

预先保存所创建的飞行器模型和多个类型的环境子模型,以及保存不同飞行场景与不同环境子模型名称之间的对应关系,其中,所述多个类型的环境子模型包括动态环境模型和静态环境模型。

在另一个可选的实现方式中,所述计算机指令被执行调用与所述飞行场景对应的一个或多个目标环境子模型时,具体进行如下处理:

根据所述目标飞行场景查找所述对应关系,获得与所述目标飞行场景对应的环境子模型名称;

从所保存的多个类型的环境子模型中调用与所述环境子模型名称对应的一个或多个目标环境子模型。

在另一个可选的实现方式中,所述飞行场景包括:依据天气系统变化的飞行场景;依据光源类型变化的飞行场景;依据环境修饰变化的飞行场景;依据对象移动变化的飞行场景;依据干扰情况变化的飞行场景;

所述环境子模型中的静态环境模型包括一个或多个下述子模型:地形子模型、建筑物子模型;

所述环境子模型中的动态环境模型包括一个或多个下述子模型:天气系统子模型、光源子模型、环境修饰子模型、移动对象子模型、干扰子模型。

在另一个可选的实现方式中,所述天气系统子模型包括风力子模型,所述风力子模型通过不同地理位置的风速场与风速数值的对应关系进行表征;

所述干扰子模型通过设置的电磁学模型进行模拟,所述干扰子模型包括:磁场干扰子模型、GPS干扰子模型、遥控器控制信号干扰子模型。

在另一个可选的实现方式中,所述计算机指令被执行处理每个目标环境子模型与飞行器模型之间的交互,获得第一类数据和第二类数据时,具体进行如下处理:

确定所述目标动态环境模型中动态对象在所述飞行场景中所在的目标位置;

按照所述目标位置,将所述动态对象叠加到所述目标环境子模型中的目标静态环境模型中的相应位置,获得作为所述第一类数据的合并模型;以及,

通过计算所述飞行器模型在所述合并模型中的飞行状态数据,获得第二类数据。

在另一个可选的实现方式中,对所述合并模型进行渲染后的第一类数据包括:图像数据和深度数据;

所述飞行状态数据包括至少一种下述数据:飞行器模型的位置数据,飞行器模型与遥控器的距离数据、飞行器模型的高度数据、飞行器模型的方向数据;

所述第二类数据包括至少一种下述传感器类数据:根据所述位置数据获得的GPS数据,根据所述方向数据获得的指南针数据、根据所述高度数据获得的气压计数据、根据所述距离数据获得的遥控器信号强度数据、根据所述位置数据和方向数据获得的超声传感器数据、以及IMU数据。

在另一个可选的实现方式中,所述飞行器模型包括:用于与所述目标环境子模型进行交互的动力模型,用于控制飞行器模型飞行姿态的控制模型,以及用于为所述控制模型提供视觉数据的视觉系统模型。

在另一个可选的实现方式中,所述计算机指令被执行时还进行如下处理:

将所述第一类数据输入所述视觉系统模型;

获得所述视觉系统模型对所述第一类数据进行感知和导航处理后,得到的视觉数据;

将所述视觉数据输入所述控制模型。

在另一个可选的实现方式中,所述计算机指令被执行时还进行如下处理:

将所述第二类数据输入所述控制模型;

获得所述控制模型依据所述第二类数据对飞行器进行虚拟飞行控制后,输出的飞行控制数据;

根据所述飞行控制数据调整飞行器的飞行控制逻辑。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

本说明书中描述的主题及功能操作的实施例可以在以下中实现:数字电子电路、有形体现的计算机软件或固件、包括本说明书中公开的结构及其结构性等同物的计算机硬件、或者它们中的一个或多个的组合。本说明书中描述的主题的实施例可以实现为一个或多个计算机程序,即编码在有形非暂时性程序载体上以被数据处理装置执行或控制数据处理装置的操作的计算机程序指令中的一个或多个模块。可替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以将信息编码并传输到合适的接收机装置以由数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。

本说明书中描述的处理及逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过根据输入数据进行操作并生成输出来执行相应的功能。所述处理及逻辑流程还可以由专用逻辑电路—例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)来执行,并且装置也可以实现为专用逻辑电路。

适合用于执行计算机程序的计算机包括,例如通用和/或专用微处理器,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的基本组件包括用于实施或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘等,或者计算机将可操作地与此大容量存储设备耦接以从其接收数据或向其传送数据,抑或两种情况兼而有之。然而,计算机不是必须具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏操纵台、全球定位系统(GPS)接收机、或例如通用串行总线(USB)闪存驱动器的便携式存储设备,仅举几例。

适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、媒介和存储器设备,例如包括半导体存储器设备(例如EPROM、EEPROM和闪存设备)、磁盘(例如内部硬盘或可移动盘)、磁光盘以及CD ROM和DVD-ROM盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。

虽然本说明书包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本说明书内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。

类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。

由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。

以上对本申请实施例所提供的方法和装置进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1