室内场景生成方法、控制装置及可读存储介质转让专利

申请号 : CN202311492817.0

文献号 : CN117237575B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 罗茜谢晨杨海波

申请人 : 光轮智能(北京)科技有限公司

摘要 :

本发明涉及场景构建技术领域,具体提供一种室内场景生成方法、控制装置及可读存储介质,旨在解决如何更为高效地生成虚拟室内场景数据的问题。为此目的,本发明根据虚拟场景资产来构建室内的镜头3D场景,基于机器人的任务类型,生成机器人的任务轨迹,根据静态3D场景和任务轨迹,进行任务轨迹的碰撞检查,获得碰撞检查结果,根据碰撞检查结果生成最终的室内场景,能够实现自动化的室内场景生成,提升了室内场景的生成效率和场景多样性。结合机器人任务轨迹的碰撞检查,能够确保生成的室内场景的有效性,为视觉检测、视觉导航、具身智能等行为任务提供丰富的任务测试数据,也能为基于深度学习的感知和决策任务的模型训练提供丰富的训练数据。

权利要求 :

1.一种室内场景生成方法,其特征在于,所述方法包括:基于虚拟场景资产,构建室内的静态3D场景;

基于预设的机器人的任务类型,生成所述机器人的任务轨迹;

基于所述静态3D场景和所述任务轨迹,进行所述任务轨迹的碰撞检查,获得碰撞检查结果;

根据所述碰撞检查结果,生成最终的室内场景;

所述虚拟场景资产包括环境布局资产、大型虚拟场景资产、小型虚拟场景资产和装饰型虚拟场景资产;

所述基于虚拟场景资产,构建室内的静态3D场景,包括:生成所述环境布局资产;

基于所述环境布局资产,进行所述大型虚拟场景资产的随机摆放;

基于摆放后的大型虚拟场景资产和所述环境布局资产,根据所述小型虚拟场景资产的交互功能属性,进行小型虚拟场景资产的随机摆放;

基于摆放后的小型虚拟场景资产、摆放后的大型虚拟场景资产和所述环境布局资产,进行装饰型虚拟场景资产的随机摆放,以构建所述静态3D场景;

所述基于预设的机器人的任务类型,生成所述机器人的任务轨迹,包括:根据所述任务类型、预设的起点和预设的终点,随机生成所述机器人的途径点,并获取部分途径点上所述机器人的3D位姿;

根据所述起点、所述终点,所述途径点和所述3D位姿,获取所述任务轨迹;

所述根据所述碰撞检查结果,生成最终的室内场景,包括:当所述碰撞检查结果为所述虚拟场景资产与所述机器人存在碰撞时,将所述存在碰撞的虚拟场景资产移除,以根据移除后的静态3D场景,获得所述最终的室内场景。

2.根据权利要求1所述的室内场景生成方法,其特征在于,所述基于所述环境布局资产,进行所述大型虚拟场景资产的随机摆放,包括:基于所述环境布局资产与所述大型虚拟场景资产遵循相对关系,进行所述大型虚拟场景资产的随机摆放。

3.根据权利要求1或2所述的室内场景生成方法,其特征在于,所述环境布局资产、所述大型虚拟场景资产、所述小型虚拟场景资产和所述装饰型虚拟场景资产之间遵循无干涉原则。

4.根据权利要求1所述的室内场景生成方法,其特征在于,所述根据移除后的静态3D场景,获得所述最终的室内场景,包括:在所述移除后的静态3D场景中,重新进行虚拟场景资产的生成,以获得更新后的静态

3D场景;基于所述更新后的静态3D场景和所述任务轨迹,进行所述任务轨迹的碰撞检查,获得更新后的碰撞检查结果,以根据所述更新后的碰撞检查结果,生成最终的室内场景。

5.根据权利要求1所述的室内场景生成方法,其特征在于,所述生成最终的室内场景,包括:

根据所述虚拟场景资产的资产标签,应用物理仿真引擎,生成所述虚拟场景资产的RGB图像和/或深度图和/或语义信息和/或2D标注框和/或3D标注盒和/或位姿数据。

6.一种控制装置,包括至少一个处理器和至少一个存储装置,所述存储装置适于存储多条程序代码,其特征在于,所述程序代码适于由所述处理器加载并运行以执行权利要求1至5中任一项所述的室内场景生成方法。

7.一种计算机可读存储介质,其中存储有多条程序代码,其特征在于,所述程序代码适于由处理器加载并运行以执行权利要求1至5中任一项所述的室内场景生成方法。

说明书 :

室内场景生成方法、控制装置及可读存储介质

技术领域

[0001] 本发明涉及场景构建技术领域,具体提供一种室内场景生成方法、控制装置及可读存储介质。

背景技术

[0002] 在进行机器人室内3D仿真场景的视觉检测、视觉导航、具身智能等行为任务测试时,以及基于深度学习等感知或决策规划任务等模型训练过程中,都需要丰富的室内场景数据作为数据支持。在真实的室内场景数据有限的前提下,往往需要生成虚拟的室内场景数据。
[0003] 在虚拟室内场景数据构建过程中,传统的方法一般是采用人工手动搭建场景及人工摆放场景物件,这个过程往往是效率较低的。
[0004] 相应地,本领域需要一种新的室内场景生成方案来解决上述问题。

发明内容

[0005] 为了克服上述缺陷,提出了本发明,以提供解决或至少部分地解决如何更为高效地生成虚拟室内场景数据的问题。
[0006] 在第一方面,本发明提供一种室内场景生成方法,所述方法包括:
[0007] 基于虚拟场景资产,构建室内的静态3D场景;
[0008] 基于预设的机器人的任务类型,生成所述机器人的任务轨迹;
[0009] 基于所述静态3D场景和所述任务轨迹,进行所述任务轨迹的碰撞检查,获得碰撞检查结果;
[0010] 根据所述碰撞检查结果,生成最终的室内场景。
[0011] 在上述室内场景生成方法的一个技术方案中,所述虚拟场景资产包括环境布局资产、大型虚拟场景资产、小型虚拟场景资产和装饰型虚拟场景资产;
[0012] 所述基于虚拟场景资产,构建室内的静态3D场景,包括:
[0013] 生成所述环境布局资产;
[0014] 基于所述环境布局资产,进行所述大型虚拟场景资产的随机摆放;
[0015] 基于摆放后的大型虚拟场景资产和所述环境布局资产,根据所述小型虚拟场景资产的交互功能属性,进行小型虚拟场景资产的随机摆放;
[0016] 基于摆放后的小型虚拟场景资产、摆放后的大型虚拟场景资产和所述环境布局资产,进行装饰型虚拟场景资产的随机摆放,以构建所述静态3D场景。
[0017] 在上述室内场景生成方法的一个技术方案中,所述基于所述环境布局资产,进行所述大型虚拟场景资产的随机摆放,包括:
[0018] 基于所述环境布局资产与所述大型虚拟场景资产遵循临近或相对或远离的相对关系,进行所述大型虚拟场景资产的随机摆放。
[0019] 在上述室内场景生成方法的一个技术方案中,所述环境布局资产、所述大型虚拟场景资产、所述小型虚拟场景资产和所述装饰型虚拟场景资产之间遵循无干涉原则。
[0020] 在上述室内场景生成方法的一个技术方案中,所述基于预设的机器人的任务类型,生产所述机器人的任务轨迹,包括:
[0021] 根据所述任务类型、预设的起点和预设的终点,随机生成所述机器人的途径点,并获取部分途径点上所述机器人的3D位姿;
[0022] 根据所述起点、所述终点,所述途径点和所述3D位姿,获取所述任务轨迹。
[0023] 在上述室内场景生成方法的一个技术方案中,所述根据所述碰撞检查结果,生成最终的室内场景,包括:
[0024] 当所述碰撞检查结果为所述虚拟场景资产与所述机器人存在碰撞时,将所述存在碰撞的虚拟场景资产移除,以根据移除后的静态3D场景,获得所述最终的室内场景。
[0025] 在上述室内场景生成方法的一个技术方案中,
[0026] 所述根据移除后的静态3D场景,获得所述最终的室内场景,包括:
[0027] 在所述移除后的静态3D场景中,重新进行虚拟场景资产的生成,以获得更新后的静态3D场景;并执行“基于所述静态3D场景和所述任务轨迹,进行所述任务轨迹的碰撞检查,获得碰撞检查结果”的步骤,以根据所述检查结果,生成最终的室内场景。
[0028] 在上述室内场景生成方法的一个技术方案中,所述生成最终的室内场景,包括:
[0029] 根据所述虚拟场景资产的资产标签,应用物理仿真引擎,生成所述虚拟场景资产的RGB图像和/或深度图和/或语义信息和/或2D标注框和/或3D标注盒和/或位姿数据。
[0030] 在第二方面,提供一种控制装置,该控制装置包括至少一个处理器和至少一个存储装置,所述存储装置适于存储多条程序代码,所述程序代码适于由所述处理器加载并运行以执行上述室内场景生成方法的技术方案中任一项技术方案所述的室内场景生成方法。
[0031] 在第三方面,提供一种计算机可读存储介质,该计算机可读存储介质其中存储有多条程序代码,所述程序代码适于由处理器加载并运行以执行上述室内场景生成方法的技术方案中任一项技术方案所述的室内场景生成方法。
[0032] 本发明上述一个或多个技术方案,至少具有如下一种或多种有益效果:
[0033] 在实施本发明的技术方案中,本发明根据虚拟场景资产来构建室内的镜头3D场景,基于机器人的任务类型,生成机器人的任务轨迹,根据静态3D场景和任务轨迹,进行任务轨迹的碰撞检查,获得碰撞检查结果,根据碰撞检查结果生成最终的室内场景。通过上述配置方式,本发明能够实现自动化的室内场景生成,无需人工操作,有效提升了室内场景的生成效率和场景多样性。同时,结合机器人任务轨迹的碰撞检查,也能够有效确保生成的室内场景的有效性,进而能够为视觉检测、视觉导航、具身智能等行为任务提供更为丰富的任务测试数据,也能够为基于深度学习的感知和决策任务的模型训练提供更为丰富的训练数据。

附图说明

[0034] 参照附图,本发明的公开内容将变得更易理解。本领域技术人员容易理解的是:这些附图仅仅用于说明的目的,而并非意在对本发明的保护范围组成限制。其中:
[0035] 图1是根据本发明的一个实施例的室内场景生成方法的主要步骤流程示意图;
[0036] 图2是根据本发明实施例的一个实施方式的室内场景生成过程的主要步骤流程示意图。

具体实施方式

[0037] 下面参照附图来描述本发明的一些实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非旨在限制本发明的保护范围。
[0038] 在本发明的描述中,“模块”、“处理器”可以包括硬件、软件或者两者的组合。一个模块可以包括硬件电路,各种合适的感应器,通信端口,存储器,也可以包括软件部分,比如程序代码,也可以是软件和硬件的组合。处理器可以是中央处理器、微处理器、图像处理器、数字信号处理器或者其他任何合适的处理器。处理器具有数据和/或信号处理功能。处理器可以以软件方式实现、硬件方式实现或者二者结合方式实现。非暂时性的计算机可读存储介质包括任何合适的可存储程序代码的介质,比如磁碟、硬盘、光碟、闪存、只读存储器、随机存取存储器等等。术语“A和/或B”表示所有可能的A与B的组合,比如只是A、只是B或者A和B。术语“至少一个A或B”或者“A和B中的至少一个”含义与“A和/或B”类似,可以包括只是A、只是B或者A和B。单数形式的术语“一个”、“这个”也可以包含复数形式。
[0039] 参阅附图1,图1是根据本发明的一个实施例的室内场景生成方法的主要步骤流程示意图。如图1所示,本发明实施例中的室内场景生成方法主要包括下列步骤S101‑步骤S104。
[0040] 步骤S101:基于虚拟场景资产,构建室内的静态3D场景。
[0041] 在本实施例中,可以基于虚拟场景资产,构建室内的静态3D场景。
[0042] 一个实施方式中,虚拟场景资产可以包括环境布局资产、大型虚拟场景资产、小型虚拟场景资产和装饰型虚拟场景资产。
[0043] 一个实施方式中,步骤S101可以进一步包括以下步骤S1011至步骤S1014:
[0044] 步骤S1011:生成环境布局资产。
[0045] 步骤S1012:基于环境布局资产,进行大型虚拟场景资产的随机摆放。
[0046] 步骤S1013:基于摆放后的大型虚拟场景资产和环境布局资产,根据小型虚拟场景资产的交互功能属性,进行小型虚拟场景资产的随机摆放。
[0047] 步骤S1014:基于摆放后的小型虚拟场景资产、摆放后的大型虚拟场景资产和环境布局资产,进行装饰型虚拟场景资产的随机摆放,以构建静态3D场景。
[0048] 在本实施方式中,首先可以先生成环境布局资产,如墙面、玻璃、门电梯等。第二,基于环境布局资产,进行大型虚拟场景资产等随机摆放,如家具等。第三,基于摆放后等大型虚拟场景资产和环境布局资产,可以基于小型虚拟场景资产等交互功能属性,进行小型虚拟场景资产等随机摆放,如水杯、食物等。第四,基于摆放后的小型虚拟场景资产、摆放后的大型虚拟场景资产和环境布局资产,进行装饰型虚拟场景资产的随机摆放,如绿植、挂画等,以实现静态3D场景的构建。
[0049] 其中,交互功能属性(affordance)是指资产可提供的可交互的功能。如,可吃的,可装东西的等。
[0050] 一个实施方式中,环境布局资产与大型虚拟场景资产遵循临近或相对或远离的相对关系,基于相对关系进行大型虚拟场景资产的随机摆放。即,在进行大型虚拟场景资产的随机摆放过程中,遵循与环境布局资产之间的临近、相对和远离三种相对关系。
[0051] 一个实施方式中,环境布局资产、大型虚拟场景资产、小型虚拟场景资产和装饰型虚拟场景资产之间遵循无干涉原则。即,环境布局资产、大型虚拟场景资产、小型虚拟场景资产和装饰型虚拟场景资产在摆放过程中相互之间不存在干涉关系。干涉指的是一种外力作用在物体上,使其发生运动或状态改变的过程。
[0052] 一个实施方式中,环境布局资产、大型虚拟场景资产、小型虚拟场景资产和装饰型虚拟场景资产可以基于3D资产设计师或基于Nerf(神经辐射场)或基于激光雷达扫描重建获得。
[0053] 其中,虚拟场景资产的物理属性及可交互属性可以由人工或软件进行批量生成。虚拟场景资产的物理数据可以包括物体的反照率(albedo),基础颜色,金属/粗糙度(metallic/roughness)及高光反射率(specular)等材质属性,以及物体质心位置/质量等。
[0054] 一个实施方式中,虚拟场景资产的当前状态可通过条件进行切换。虚拟场景资产均可以以凸分解(convex decomposition)的方法生成碰撞体。其中,凸分解是指将物体分解为一系列的互不相交的凸体的集合。
[0055] 步骤S102:基于预设的机器人的任务类型,生成机器人的任务轨迹。
[0056] 在本实施例中,可以预设的机器人的任务类型生成机器人的任务轨迹。
[0057] 一个实施方式中,机器人可以为移动机器人,其任务类型为从起点移动至终点。
[0058] 一个实施方式中,机器人可以为操作机器人,其任务类型为从起点移动至终点,并在起点和终点之间的途径点位置(包括起点和终点)拿取或放下物品。
[0059] 一个实施方式中,步骤S102可以进一步包括以下步骤S1021和步骤S1022:
[0060] 步骤S1021:根据任务类型、预设的起点和预设的终点,随机生成机器人的途径点,并获取部分途径点上机器人的3D位姿。
[0061] 步骤S1022:根据起点、终点,途径点和3D位姿,获取任务轨迹。
[0062] 在本实施方式中,可以根据任务类型,起点、终点,随机生成机器人的途径点,并获取在部分途径点上的3D位姿,以基于起点、终点,途径点和3D位姿获取任务轨迹。其中,3D位姿为包括3D坐标和三个方向角,即,3D位姿可以表示为(x, y, z, roll, pitch, yaw)。其中,roll为横滚角,pitch为俯仰角,yaw为偏航角。
[0063] 针对带有机器手臂的操作机器人,任务可以为抓起物体(PickupObject),放下物体(PutObject)等,其生成轨迹由起始位姿到目标位姿及部分途径位姿的机器手臂各关节3D位姿组成。同时具有移动及操作功能的机器人,其任务可为组合形式任务,如结合导航的抓取任务(FetchObject),其生成轨迹则包含移动及操作机器人的起始点、目标点及部分途径点的3D位姿。
[0064] 一个实施方式中,可以基于起点和终点,应用平滑插值法,随机生成途径点。
[0065] 步骤S103:基于静态3D场景和任务轨迹,进行任务轨迹的碰撞检查,获得碰撞检查结果。
[0066] 在本实施例中,可以根据构建的静态3D场景和任务轨迹,来对任务轨迹进行碰撞检查,以确认任务轨迹在静态场景中是否存在碰撞,从而获得碰撞检查结果。其中,碰撞检查(collision check )是指检查机器人轨迹与静态3D场景中的虚拟场景资产之间是否存在干涉关系的过程。即,机器人基于任务轨迹进行导航过程中,存在障碍物,就认为碰撞检查未通过。
[0067] 步骤S104:根据碰撞检查结果,生成最终的室内场景。
[0068] 在本实施例中,可以根据碰撞检查结果,来生成最终的室内场景。
[0069] 一个实施方式中,当碰撞检查结果为虚拟场景资产与机器人存在碰撞时,将存在碰撞的虚拟场景资产移除,以根据移除后的静态3D场景,获得最终的室内场景。
[0070] 一个实施方式中,在移除后的静态3D场景中,重新进行虚拟场景资产的生成,以获得更新后的静态3D场景,并执行步骤S103,对更新后的静态3D场景进行碰撞检查,以根据检查结果,生成最终的室内场景。
[0071] 一个实施方式中,最终的室内场景中包含虚拟场景资产的资产标签。可以应用物理仿真引擎,基于资产标签,生成虚拟场景资产的RGB图像、深度图、语义信息、2D标注框、3D标注盒、位姿数据等数据,从而生成最终的室内场景。
[0072] 一个实施方式中,物理仿真引擎可以为nvidia omniverse(英伟达推出的一个开放的虚拟协作和仿真平台)。nvidia omniverse可提供实时光线追踪的逼真渲染及物理级属性准确的刚体、布料、流体等的模拟,并能够增加机器人导航过程中的拿取、摩擦力等属性。
[0073] 基于上述步骤S101‑步骤S104,本发明实施例根据虚拟场景资产来构建室内的镜头3D场景,基于机器人的任务类型,生成机器人的任务轨迹,根据静态3D场景和任务轨迹,进行任务轨迹的碰撞检查,获得碰撞检查结果,根据碰撞检查结果生成最终的室内场景。通过上述配置方式,本发明实施例能够实现自动化的室内场景生成,无需人工操作,有效提升了室内场景的生成效率和场景多样性。同时,结合机器人任务轨迹的碰撞检查,也能够有效确保生成的室内场景的有效性,进而能够为视觉检测、视觉导航、具身智能等行为任务提供更为丰富的任务测试数据,也能够为基于深度学习的感知和决策任务的模型训练提供更为丰富的训练数据。
[0074] 一个实施方式中,可以参阅附图2,图2是根据本发明实施例的一个实施方式的构建室内的静态3D场景的主要步骤流程示意图。如图2所示,可以先输入数字资产(虚拟场景资产),根据数字资产基于分层的室内的静态3D场景搭建方法包括:Layer 1:基于墙面/玻璃/门等室内环境Layout(环境布局资产)生产;Layer 2:家具类大型室内资产(大型虚拟场景资产)随机摆放;Layer 3:基于affordance的室内小型物体资产(小型虚拟场景资产)随机摆放;Layer 4:其他装饰类物体(装饰型虚拟场景资产)随机摆放。基于室内的静态3D场景进行机器人形态的任务轨迹生成。基于任务轨迹进行碰撞检查。根据碰撞检查结果,实现图像/深度图数据生成、标注数据生成。
[0075] 需要指出的是,尽管上述实施例中将各个步骤按照特定的先后顺序进行了描述,但是本领域技术人员可以理解,为了实现本发明的效果,不同的步骤之间并非必须按照这样的顺序执行,其可以同时(并行)执行或以其他顺序执行,这些变化都在本发明的保护范围之内。
[0076] 本领域技术人员能够理解的是,本发明实现上述一实施例的方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器、随机存取存储器、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括电载波信号和电信信号。
[0077] 进一步,本发明还提供了一种控制装置。在根据本发明的一个控制装置实施例中,控制装置包括处理器和存储装置,存储装置可以被配置成存储执行上述方法实施例的室内场景生成方法的程序,处理器可以被配置成用于执行存储装置中的程序,该程序包括但不限于执行上述方法实施例的室内场景生成方法的程序。为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该控制装置可以是包括各种电子设备形成的控制装置设备。
[0078] 在本发明实施例中控制装置可以是包括各种电子设备形成的控制装置设备。在一些可能的实施方式中,控制装置可以包括多个存储装置和多个处理器。而执行上述方法实施例的室内场景生成方法的程序可以被分割成多段子程序,每段子程序分别可以由处理器加载并运行以执行上述方法实施例的室内场景生成方法的不同步骤。具体地,每段子程序可以分别存储在不同的存储装置中,每个处理器可以被配置成用于执行一个或多个存储装置中的程序,以共同实现上述方法实施例的室内场景生成方法,即每个处理器分别执行上述方法实施例的室内场景生成方法的不同步骤,来共同实现上述方法实施例的室内场景生成方法。
[0079] 上述多个处理器可以是部署于同一个设备上的处理器,例如上述控制装置可以是由多个处理器组成的高性能设备,上述多个处理器可以是该高性能设备上配置的处理器。此外,上述多个处理器也可以是部署于不同设备上的处理器,例如上述控制装置可以是服务器集群,上述多个处理器可以是服务器集群中不同服务器上的处理器。
[0080] 进一步,本发明还提供了一种计算机可读存储介质。在根据本发明的一个计算机可读存储介质实施例中,计算机可读存储介质可以被配置成存储执行上述方法实施例的室内场景生成方法的程序,该程序可以由处理器加载并运行以实现上述室内场景生成方法。为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该计算机可读存储介质可以是包括各种电子设备形成的存储装置设备,可选的,本发明实施例中计算机可读存储介质是非暂时性的计算机可读存储介质。
[0081] 进一步,应该理解的是,由于各个模块的设定仅仅是为了说明本发明的装置的功能单元,这些模块对应的物理器件可以是处理器本身,或者处理器中软件的一部分,硬件的一部分,或者软件和硬件结合的一部分。因此,图中的各个模块的数量仅仅是示意性的。
[0082] 本领域技术人员能够理解的是,可以对装置中的各个模块进行适应性地拆分或合并。对具体模块的这种拆分或合并并不会导致技术方案偏离本发明的原理,因此,拆分或合并之后的技术方案都将落入本发明的保护范围内。
[0083] 至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征作出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。