用于渲染车辆自动驾驶模拟器中的场景的方法和装置与流程

文档序号:16430950发布日期:2018-12-28 20:08阅读:200来源:国知局
用于渲染车辆自动驾驶模拟器中的场景的方法和装置与流程

本公开总体上涉及车辆自动驾驶的技术领域,并且具体地涉及一种用于渲染车辆自动驾驶模拟器中的场景的方法和装置。

背景技术

车辆自动驾驶系统的开发往往需要大量的调试和验证。实车调试的方式通常需要大量的人力和物力成本,而且具有一定的风险性。可以通过车辆自动驾驶模拟器进行初步的调试和验证。

期望能够良好地渲染车辆自动驾驶模拟器中的场景,进而获得良好的调试和验证效果。



技术实现要素:

一方面,本公开提供了一种用于渲染车辆自动驾驶模拟器中的场景的方法,该方法可以包括:从高精度地图中提取至少一个地图元素;根据用于控制虚拟目标车辆在前述场景中行进的自动驾驶方案来确定前述虚拟目标车辆的当前状态;根据前述至少一个地图元素和与前述当前状态相对应的车辆渲染参数来生成前述场景的当前帧;根据前述自动驾驶方案来确定前述虚拟目标车辆在与前述场景的下一帧相对应的时间点的预测状态;以及根据前述当前帧、前述预测状态和前述至少一个地图元素来生成前述下一帧。

另一方面,本公开提供了一种计算机可读取的非临时性存储介质,在其上存储有程序指令,前述程序指令可以在被执行时执行上述方法。

另一方面,本公开提供了一种用于渲染车辆自动驾驶模拟器中的场景的装置,该装置可以包括一个或多个处理器,前述一个或多个处理器可以被配置为在启动时至少执行上述方法。

另一方面,本公开提供了一种用于渲染车辆自动驾驶模拟器中的场景的装置,该装置可以包括高精度地图解析器、自动驾驶模拟控制器、虚拟动态对象管理器和渲染器。高精度地图解析器可以被配置为从高精度地图中提取至少一个地图元素。自动驾驶模拟控制器可以被配置为基于待测试自动驾驶算法来确定用于控制虚拟目标车辆在前述场景中行进的自动驾驶方案,基于前述自动驾驶方案来确定前述虚拟目标车辆的当前状态以及与前述场景的下一帧相对应的时间点的预测状态。虚拟动态对象管理器可以被配置为提供至少一个虚拟动态对象以及前述至少一个虚拟动态对象中的每个虚拟动态对象的动态对象渲染参数。渲染器可以被配置为根据前述至少一个地图元素和与前述当前状态相对应的车辆渲染参数来生成前述场景的当前帧,以及根据前述当前帧、前述预测状态和前述至少一个地图元素来生成前述下一帧。

根据本公开的实施例的方法和装置分开渲染不同类型的对象(例如道路、车道线、行人、其他车辆等),并且允许显示诸如控制指令、车辆状态等调试信息,能够良好地渲染车辆自动驾驶模拟器中的场景并且能够获得良好的调试和验证效果。

附图说明

图1示出根据本公开的实施例的用于渲染车辆自动驾驶模拟器中的场景的示例方法的流程图。

图2示出通过根据本公开的实施例的方法渲染的场景的一个示例。

图3示出通过根据本公开的实施例的方法渲染的场景的另一示例。

图4示出通过根据本公开的实施例的方法渲染的场景的另一示例。

图5示出根据本公开的实施例的用于渲染车辆自动驾驶模拟器中的场景的示例装置的框图。

具体实施方式

下面结合附图来描述根据本公开的实施例的用于渲染车辆自动驾驶模拟器中的场景的方法和装置。

如图1所示,根据本公开的实施例的用于渲染车辆自动驾驶模拟器中的场景的示例方法100可以包括:

步骤s110,从高精度地图中提取至少一个地图元素;

步骤s120,根据用于控制虚拟目标车辆在前述场景中行进的自动驾驶方案来确定前述虚拟目标车辆的当前状态;

步骤s130,根据前述至少一个地图元素和与前述当前状态相对应的车辆渲染参数来生成前述场景的当前帧;

步骤s140,根据前述自动驾驶方案来确定前述虚拟目标车辆在与前述场景的下一帧相对应的时间点的预测状态;以及

步骤s150,根据前述当前帧、前述预测状态和前述至少一个地图元素来生成前述下一帧。

在一个实施例中,步骤s110可以包括:基于扩展的地图元素类型来解析所述高精度地图;以及基于扩展的地图元素描述来表示所提取的每个地图元素。

例如,基于诸如opendriver1.4h等高精度地图标准,根据本公开的实施例的高精度地图的地图元素类型可以包括诸如道路、车道线、停车位、隧道、桥梁、信号指示牌、交通信号灯、铁路、路口区域、站台等一个或多个标准的地图元素类型。

在本公开的实施例中,可以在标准的地图元素类型的基础上进行扩展,使得根据本公开的实施例的地图元素类型不仅可以包括诸如道路、车道线、停车位、隧道、桥梁、信号指示牌、交通信号灯、铁路、路口区域、站台等一个或多个标准的地图元素类型,还可以包括但不限于诸如禁停区、停止线、人行横道、减速带、柱子、墙体、围栏、树木、花坛、建筑物和随机静态障碍物等一个或多个扩展的地图元素类型,从而允许渲染出更接近于真实环境的场景地图,并为车辆自动驾驶算法的调试和验证提供更接近于真实场景的调试和验证条件。随机静态障碍物可以是以预定概率或随机性地出现在诸如道路、车道线、停车位、隧道、桥梁等其他地图元素上的具有特定形态和尺寸且至少在一段时间内静止不动的障碍物,例如车位锁、落石、塌陷、损坏车辆、路障等。

可以针对每个扩展的地图元素类型设置相应的记录项。例如,对于减速带,可以设置表格1所示的减速带记录项:

表格1

对于其他的扩展的地图元素类型,可以根据需要,来设计相应的父节点、实例数量和属性并设置相应的记录项。例如,对于人行横道,在一个实施例中,可以将其父节点设置为“road”(即,标准的地图元素类型“道路”),并且将其实例数量设置为“1+”(即,至少一个)。

另外,在诸如opendriver1.4h等高精度地图标准中,可以基于参考线的曲线方程和偏移来表达边界形状。在本公开的实施例中,可以在标准的地图元素描述方式的基础上进行扩展,使得根据本公开的实施例的地图元素描述不仅可以包括基于参考线的曲线方程和偏移来表达边界形状,还可以包括采用绝对坐标序列(例如,在场景的xy平面中的绝对坐标)来表达边界形状和/或采用相对于基准物的相对坐标序列(例如,以场景中的目标车辆当前所在的位置为基准点的相对坐标)来表达边界形状等扩展的地图元素描述方式。

另外,根据本公开的实施例的扩展的地图元素描述方式还可以包括描述不同类型的地图元素之间的关联性和/或不同的地图元素实体或实例之间的关联性。例如,对于作为标准地图元素类型之一的“车道线区域”,可以对其属性进行扩展,例如增加类型关联性字段(例如,“assocatedtype”),以指示例如与“人行横道”类型具有关联性(例如“assocatedtype=crossing”)。另外,还可以增加实例关联性字段(例如,“assocatedid”),以指示例如与某个减速带或信号灯的实例有关的关联性。

然后,示例方法100可以继续到步骤s120。在一个实施例中,在步骤s120中,可以根据用于控制虚拟目标车辆在场景中行进的自动驾驶方案来确定虚拟目标车辆的当前状态。

在一个实施例中,控制虚拟目标车辆在场景中行进的自动驾驶方案可以是通过作为车辆自动驾驶模拟器进行模拟和调试的目标的车辆自动驾驶算法或路径规范算法制定的自动驾驶方案(例如,可以包括行进路径、行进速度等不同方面),这样的自动驾驶方案可以由车辆自动驾驶算法或路径规范算法根据实时获得的车辆周边的信息而自动调整。本公开不局限于任何特定的自动驾驶方案。

在任何一个时刻,可以当前的自动驾驶方案来确定虚拟目标车辆的当前状态,包括但不限于虚拟目标车辆在当前时刻的形状、基准点位置(可以是一个或多个)、重心位置、重量、车轮位置、车轮状态、车灯状态、行进方向、车头朝向、车身倾斜状况、规划轨迹、位于行进方向后方的历史轨迹以及位于行进方向前方的预测轨迹等之中的一个或多个。

相应地,可以确定与虚拟目标车辆的当前状态相对应的或者可以表征虚拟目标车辆的当前状态的一个或多个车辆渲染参数,例如可以包括但不限于外观数据(例如,长度、高度、宽度、底盘高度等)、基准点位置(例如,在使用长方体来代表虚拟目标车辆的情况下可以包括长方体的8个顶点的位置坐标,或者在使用虚拟目标车辆的质心来简单地表征虚拟目标车辆的情况下可以是虚拟目标车辆的质心坐标)、重心位置、重量、车轮位置(例如,各个车轮的中心位置的坐标,或者各个车轮与地面相接触的位置处的坐标,等等)、车轮状态(例如,每个车轮是否转动,各个车轮的角度,各个车轮的转速,各个车轮的转动方向,等等)、车灯状态(例如,是否开启转向灯,是否开启前车灯,等等)、行进方向、车头朝向(例如,车头方向相对于水平和/或垂直基准面或基准线的角度)、车身倾斜状况(例如,车身的纵长轴相对于水平面和/或垂直面的角度,各个车轮的位置坐标,等等)、规划轨迹、位于行进方向后方的历史轨迹以及位于行进方向前方的预测轨迹中的一个或多个。

在一个实施例中,一个或多个车辆渲染参数可以由设计人员在创建虚拟目标车辆时任意地指定,并且可以不考虑实际的参数应当如何,例如虚拟目标车辆的长度、宽度、高度、底盘高度、车轮位置等。

在另外的实施例中,可以从车辆数据库中读取与实际车辆相对应的车辆参数(例如,车辆的品牌、车型和各种实际参数),并根据所读取的车辆参数创建虚拟目标车辆,同时获得一个或多个车辆渲染参数,例如虚拟目标车辆的长度、宽度、高度、底盘高度、车轮位置等。

然后,示例方法100可以继续到步骤s130,以根据所提取的至少一个地图元素和与当前状态相对应的车辆渲染参数来生成场景的当前帧。

根据不同的实施例,可以生成所提取的每个地图元素的模型(例如,图像模型或几何模型),然后通过例如贴图、加载模型等不同的方式将各个地图元素(例如,道路、车道线、停止线、人行横道、交通信号灯等)的模型加载到例如场景的当前帧的背景图片上。同时,可以根据虚拟目标车辆的当前的车辆渲染参数将虚拟目标车辆按照对应的当前状态渲染到场景的当前帧上。

图2示出所渲染出来的当前帧的一个示例。在该示例中,按照较近的车外俯视角(例如,从虚拟车辆的后方按照一定角度俯视整个车辆),以虚拟车辆为基准点渲染场景的当前帧。在另外的实施例中,可以改变场景的呈现视角。根据不同的实施例,可以采用诸如第三人称视角(从上向下俯视的角度来观看整个虚拟目标车辆及周边的环境)、第一人称视角(包括例如“引擎盖视角”、“行车记录仪视角”、“驾驶舱视角”等)等不同的视角来呈现场景中的虚拟目标车辆及周围环境。

根据不同的实施例,可以使视角跟随虚拟目标车辆,例如相对于虚拟目标车辆不变;也可以使视角相对于场景的某个方向(例如,场景中的北方)或者特定的标志性地图元素(例如,特定建筑物或者目的地)不变。在另外的实施例中,可以根据需要调整和切换视角。

在图2的示例中,作为虚拟目标车辆的周围环境而渲染的地图元素包括道路、路口区域、车道线、停止线、人行横道、信号指示牌和交通信号灯等。例如,信号指示牌和交通信号灯可以基于几何模型或部分图像模型而渲染在当前帧中,例如呈现为悬浮着的带有多个信号灯标志(例如,用向左箭头表示的“左转信号灯”,用向上箭头表示的“直行信号灯”,用向右箭头表示的“右转信号灯”)的扁平长方体,并且在不同的帧中,信号灯标志可以具有不同的颜色或显示状态(例如,“红色”或“被显示”可以表示对应的信号灯亮起)。另外,不可行驶的区域以及当前不关注的地图元素或区域未被显示或者使用特定的颜色或状态标记。

在图2的示例中,虚拟目标车辆根据当前的车辆渲染参数(例如,车头朝向、规划轨迹等)而被渲染在当前帧中的特定位置处,并且在虚拟目标车辆的行进方向的后方还渲染有一段历史轨迹。

在一个实施例中,步骤s130还可以包括:在当前帧上的特定位置处(例如,图2的左上角处)显示关于自动驾驶方案的当前调试信息。

根据不同的实施例,这样的当前调试信息可以包括但不限于:自动驾驶方案的输出数据中与当前帧相对应的当前时间点相对应的当前规划数据;虚拟目标车辆在当前时间点的基准点位置(可以是一个或多个)、车身状态、车轮位置、车轮状态、车灯状态、行进方向、行进速度、行进加速度、车头朝向、档位数据、方向盘数据、油门数据、刹车数据、相对当前规划数据的偏差以及事故概率等。

在一个实施例中,步骤s130还可以包括:计算从虚拟目标车辆上的激光雷达向四周发射的扫描光线以及相应的点云;以及在当前帧上渲染计算出的点云。

如图3所示,在当前帧中以与图2的示例中的视角不同的视角渲染了例如车道线、柱子、墙体、停车位和建筑物等静态地图元素,并且还在虚拟目标车辆的例如车顶中心处呈现了一个激光雷达。

在一个实施例中,可以根据车辆的当前状态确定激光雷达的当前位置,进而根据激光雷达的参数模拟激光雷达发射扫描光线。然后,例如可以根据激光雷达的当前位置以及激光雷达相对于虚拟目标车辆周围的静态地图元素的距离等信息,通过诸如模拟进行扫描光线的直线投影等方法,确定位于虚拟目标车辆周围的点云中的各个点的位置坐标,并在当前帧上渲染所计算出的点云。

在步骤s130之后,示例方法100可以继续到步骤s140,以根据自动驾驶方案来确定虚拟目标车辆在与场景的下一帧相对应的时间点的预测状态。在另外的实施例中,示例方法100也可以例如在步骤s120或s130的同时执行步骤s140。

在一个实施例中,在步骤s140中,可以获得当前帧中的在虚拟目标车辆周围的环境信息。例如,可以由作为调试和验证目标的车辆自动驾驶算法根据在当前帧上渲染的点云来确定周围的环境信息,也可以由车辆自动驾驶算法分析由虚拟目标车辆上的虚拟前置摄像头模拟拍摄的虚拟图片(例如,基于深度学习网络进行图像识别和检测)来确定至少位于虚拟目标车辆的行进方向前方的环境信息。

可以根据自动驾驶方案(可能是车辆自动驾驶算法根据周围的环境信息而调整后的自动驾驶方案,例如调整后的规划轨迹等)来确定虚拟目标车辆在与场景的下一帧相对应的时间点的预测状态,包括但不限于例如虚拟目标车辆在下一时刻的形状、基准点位置(可以是一个或多个)、重心位置、重量、车轮位置、车轮状态、车灯状态、行进方向、车头朝向、车身倾斜状况、规划轨迹、位于行进方向后方的历史轨迹以及位于行进方向前方的预测轨迹等之中的一个或多个。

然后,示例方法100可以继续到步骤s150,以根据当前帧、预测状态和前述的至少一个地图元素来生成场景的下一帧。

在一个实施例中,在步骤s150中,可以基于虚拟目标车辆的当前状态和预测状态来确定当前帧和下一帧的视野,然后可以根据当前帧和下一帧的视野来变换当前帧。同时,响应于变换,还可以调整要在下一帧中显示的地图元素。

例如,可以确定当前帧和下一帧的视野差异,然后根据该差异确定出需要在下一帧中添加或部分加入的地图元素以及需要从当前帧中删除或部分移出的地图元素,并且确定针对当前帧中的剩余地图元素的变换和调整方式,例如放大、旋转、变形、缩小等。由此,实现在不同帧之间的镜头或视角的模拟推进和转换,使得通过连续的帧呈现出虚拟目标车辆在场景中动态地行进。

在另外的实施例中,示例方法100还可以包括:生成至少一个虚拟动态对象;确定所述至少一个虚拟动态对象中的每个虚拟动态对象的动态对象渲染参数;根据每个虚拟动态对象的动态对象渲染参数在当前帧中渲染每个虚拟动态对象;以及确定与当前帧中的每个虚拟动态对象的当前状态相关联的当前检测参数。

根据不同的实施例,虚拟动态对象可以包括但不限于虚拟行人、虚拟机动车辆、虚拟非机动车辆、虚拟动物和虚拟漂浮物中的一个或多个。

另外,根据不同的实施例,每个虚拟动态对象的动态对象渲染参数可以包括但不限于该虚拟动态对象的外观数据、出现时间、出现位置、移动轨迹、移动速度、移动加速度、在每个时间点的位置、在每个时间点的形态、随机事件以及与其他虚拟动态对象的相关性中的一个或多个。

在一个实施例中,可以根据虚拟动态对象配置(例如,配置文件或配置数据库)来生成一个或多个虚拟动态对象。根据不同的实施例,虚拟动态对象配置可以采用任何适当的组织形式并且可以包括任何适当的配置内容。

下面的表格2示出虚拟动态对象配置的一个示例。然而,应当理解,本公开的虚拟动态对象配置不局限于表格2中的示例。

表格2

然后,可以确定每个虚拟动态对象的动态对象渲染参数,并且根据每个虚拟动态对象的动态对象渲染参数在当前帧中渲染每个虚拟动态对象。

图4示出通过根据该实施例的方法渲染的场景的示例,其中,除了虚拟目标车辆和车道线之外,还渲染了虚拟目标车辆的预测轨迹(位于虚拟目标车辆的行进方向前方的粗黑线)和规划轨迹(位于虚拟目标车辆的行进方向前方的细黑线),并且还在虚拟目标车辆的行进方向的右前方渲染有一个行人类型的虚拟动态对象和一个车辆类型的虚拟动态对象。

在一个实施例中,可以根据该行人类型的虚拟动态对象的配置来确定与该行人类型的虚拟动态对象的当前状态相对应的渲染参数,例如可以包括但不限于:位于在虚拟目标车辆行进方向的右前方的位置(x1,y1)处,正以速度s1向远离虚拟目标车辆的预测轨迹的方向行进,并且有p1的概率突然反向并朝向虚拟目标车辆的预测轨迹的方向行进。还可以根据该车辆类型的虚拟动态对象的配置来确定与该车辆类型的虚拟动态对象的当前状态相对应的渲染参数,例如可以包括但不限于:位于在虚拟目标车辆行进方向的右前方的位置(x2,y2)处,正以速度s2向靠近虚拟目标车辆的预测轨迹的方向行进,并且有p2的概率突然停止在虚拟目标车辆的预测轨迹上的位置(x3,y3)处并使预测轨迹中断。

然后,可以确定与当前帧中的每个虚拟动态对象的当前状态相关联的当前检测参数。

在一个实施例中,可以根据在当前帧上渲染的点云提供与当前帧中的每个虚拟动态对象的当前状态相关联的当前检测参数。在另外的实施例中,也可以通过虚拟目标车辆上的虚拟前置摄像头模拟地拍摄虚拟图片并且例如基于深度学习网络进行图像识别和检测,由此提供与当前帧中的每个虚拟动态对象的当前状态相关联的当前检测参数。

根据本公开的实施例的渲染方法不关注车辆自动驾驶算法是否会根据与当前帧中的每个虚拟动态对象的当前状态相关联的当前检测参数来调整自动驾驶方案以及如何调整,而是始终模拟虚拟目标车辆按照当前的自动驾驶方案(不关心该是否被车辆自动驾驶算法调整过以及如何被调整)在场景中的行进过程。

在一个实施例中,当检测到虚拟目标车辆与一个或多个动态障碍对象或者一个或多个静态障碍对象或地图元素碰撞时,例如,当检测到虚拟目标车辆上的一个或多个关键点或基准点的坐标进入到根据特定动态障碍对象或静态障碍对象上的一个或多个基准点确定的阈值范围内时,可以停止下一帧的渲染或者提示警告。

根据本公开的实施例的方法分开渲染不同类型的对象(例如道路、车道线、行人、其他车辆等),并且允许显示诸如控制指令、车辆状态等调试信息,从而能够良好地渲染车辆自动驾驶模拟器中的场景并且能够获得良好的调试和验证效果。

在一个实施例中,可以在一个或多个计算机可读取的非临时性存储介质上存储或实施能够执行上述方法的各个步骤的程序指令,使得这样的非临时性存储介质能够在被计算机或其他计算装置(例如处理器)读取时提供相应的程序指令,并使得计算机或其他计算装置能够根据所读取的程序指令执行相应的操作。根据不同的实施例,程序指令能够以诸如源代码、二进制代码、中间代码等各种形式或各种形式的不同组合而实施或存储在非临时性存储介质上。

图5示出根据本公开的实施例的用于渲染车辆自动驾驶模拟器中的场景的示例装置的框图。

如图5所示,根据本公开的实施例的示例装置200可以包括高精度地图解析器par、自动驾驶模拟控制器con、虚拟动态对象管理器mgr和渲染器ren。

在一个实施例中,高精度地图解析器par可以包括一个或多个处理器,包括但不限于诸如中央处理单元(cpu)、图形处理器(gpu)等通用的处理器或处理装置和/或专用的处理器或处理装置。高精度地图解析器par可以被配置为从高精度地图中提取至少一个地图元素。

在一个实施例中,自动驾驶模拟控制器con可以包括一个或多个处理器,包括但不限于诸如中央处理单元(cpu)、图形处理器(gpu)等通用的处理器或处理装置和/或专用的处理器或处理装置。自动驾驶模拟控制器con可以被配置为基于待测试自动驾驶算法来确定用于控制虚拟目标车辆在所述场景中行进的自动驾驶方案,并且还可以被配置为基于自动驾驶方案来确定虚拟目标车辆的当前状态以及与场景的下一帧相对应的时间点的预测状态。

在一个实施例中,虚拟动态对象管理器mgr可以包括一个或多个处理器,包括但不限于诸如中央处理单元(cpu)、图形处理器(gpu)等通用的处理器或处理装置和/或专用的处理器或处理装置。虚拟动态对象管理器mgr可以被配置为向渲染器ren提供至少一个虚拟动态对象以及每个虚拟动态对象的动态对象渲染参数。在一个实施例中,虚拟动态对象管理器mgr还可以包括与虚拟动态对象数据库或虚拟动态对象配置文件交互的接口(未示出)。

在一个实施例中,渲染器ren可以包括一个或多个处理器,包括但不限于诸如中央处理单元(cpu)、图形处理器(gpu)等通用的处理器或处理装置和/或专用的处理器或处理装置。渲染器ren可以被配置为根据前述至少一个地图元素和与前述当前状态相对应的车辆渲染参数来生成前述场景的当前帧,以及根据前述当前帧、前述预测状态和前述至少一个地图元素来生成前述下一帧。

应当理解,图5所示的结构仅是示例性的,而非限制性的。根据本公开的实施例的装置还可以具有其他部件和/或结构。

例如,根据本公开的实施例的装置可以包括一个或多个处理器(例如cpu和gpu等通用的处理器或处理装置和/或专用的处理器或处理装置),并且这样的一个或多个处理器可以被配置为在启动时至少执行根据本公开的实施例的用于渲染车辆自动驾驶模拟器中的场景的方法,例如示例方法100。

例如,根据本公开的实施例的装置还可以包括i/o接口、网络接口和/或存储器,从而通过有线或无线地方式与其他部件或装置进行信息/数据交互。

例如,根据不同的实施例,装置中的存储器可以包括各种形式的计算机可读写存储介质,例如易失性存储器和/或非易失性存储器。易失性存储器例如可以包括随机存取存储器(ram)、高速缓冲存储器(cache)、片上存储器等。非易失性存储器例如可以包括只读存储器(rom)、硬盘、闪速存储器等。可读写存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件、或者任意以上的组合。在一个实施例中,存储器可以存储用于指示装置中的一个或多个处理器执行根据本公开的实施例的方法的步骤的程序指令。

通过根据本公开的实施例的装置能够分开渲染不同类型的对象(例如道路、车道线、行人、其他车辆等),并且允许显示诸如控制指令、车辆状态等调试信息,从而能够良好地渲染车辆自动驾驶模拟器中的场景并且能够获得良好的调试和验证效果。

贯穿说明书和权利要求书,除非上下文清楚地另有要求,否则措词“包括”、“包含”等应当以与排他性或穷尽性的意义相反的包括性的意义来解释,也就是说,应当以“包括但不限于”的意义来解释。另外,措词“在本文中”、“上文”、“下文”以及相似含义的措词在本申请中使用时应当指作为整体的本申请,而不是本申请的任何具体部分。在上下文允许时,在使用单数或复数的以上描述中的措词也可以分别包括复数或单数。关于在提及两个或多个项目的列表时的措词“或”,该措词涵盖该措词的以下解释中的全部:列表中的任何项目,列表中的所有项目,以及列表中的项目的任何组合。另外,措词“第一”、“第二”等旨在用于区分,而不是用于强调次序或重要程度。

虽然已经描述了本公开的一些实施例,但是这些实施例仅作为示例而呈现,而不打算限制本公开的范围。实际上,在本文中所描述的方法和系统可以采用多种其他形式来实施。另外,可以在不脱离本公开的范围的情况下,在本文中所描述的方法和装置的形式上做出各种省略、替换和改变。

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