发明内容
为了解决上述技术问题,提出了本申请。本申请的实施例提供了一种矿山仿真***的场景数据创建方法、装置、计算机可读存储介质和电子设备,解决了上述场景模型中矿区道路数据不准确的问题。
根据本申请的一个方面,提供了一种矿山仿真***的场景数据创建方法,包括:获取矿山的三维图像数据,得到表征所述矿山的场景信息的三维模型;基于矿山仿真***的坐标系,对所述三维模型进行校准,得到校准后的三维模型;根据所述校准后的三维模型,得到所述矿山的边界曲线;根据所述矿山的边界曲线,得到所述矿山的边界上的多个点数据;对所述多个点数据进行校验,得到正常点数据;以及将所述正常点数据导入所述矿山仿真***,生成所述矿山仿真***的场景数据。
在一实施例中,所述基于矿山仿真***的坐标系,对所述三维模型进行校准,得到校准后的三维模型包括:基于所述矿山仿真***所使用的基站原点和实车采集的坐标点,对所述三维模型进行校准,以实现所述校准后的三维模型与实际矿山坐标、海拔相同。
在一实施例中,所述根据所述校准后的三维模型,得到所述矿山的边界曲线包括:根据所述校准后的三维模型的边界,得到第一平滑边界曲线;将所述第一平滑边界曲线沿竖直方向平移预设高度;以及将所述第一平滑边界曲线投影至所述校准后的三维模型上,得到第二平滑边界曲线。
在一实施例中,所述根据所述矿山的边界曲线,得到所述矿山的边界上的多个点数据包括:对所述第二平滑边界曲线进行定距划分处理,得到所述矿山的边界上的多个点数据。
在一实施例中,所述对所述多个点数据进行校验,得到正常点数据包括:基于所述第二平滑边界曲线,对所述多个点数据进行排序处理,得到有序数据;以及对所述有序数据进行校验,得到正常点数据。
在一实施例中,所述对所述有序数据进行校验,得到正常点数据包括:计算所述有序数据中相邻两点的间隔;以及当所述相邻两点的间隔等于预设的间隔值时,确定所述相邻两点为正常点数据。
在一实施例中,所述对所述有序数据进行校验,得到正常点数据包括:当所述相邻两点的间隔不等于预设的间隔值时,确定所述相邻两点为异常点数据。
根据本申请的一个方面,提供了一种矿山仿真***的场景数据创建装置,包括:数据获取模块,用于获取矿山的三维图像数据,得到表征所述矿山的场景信息的三维模型;模型校准模块,用于基于矿山仿真***的坐标系,对所述三维模型进行校准,得到校准后的三维模型;边界获取模块,用于根据所述校准后的三维模型,得到所述矿山的边界曲线;点数据获取模块,用于根据所述矿山的边界曲线,得到所述矿山的边界上的多个点数据;校验模块,用于对所述多个点数据进行校验,得到正常点数据;以及场景生成模块,用于将所述正常点数据导入所述矿山仿真***,生成所述矿山仿真***的场景数据。
根据本申请的一个方面,提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述任一所述的矿山仿真***的场景数据创建方法。
根据本申请的一个方面,提供了一种电子设备,所述电子设备包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于执行上述任一所述的矿山仿真***的场景数据创建方法。
本申请的实施例提供的一种矿山仿真***的场景数据创建方法、装置、计算机可读存储介质和电子设备,通过获取矿山的三维图像数据,得到表征矿山的场景信息的三维模型,并基于矿山仿真***的坐标系,对三维模型进行校准,得到校准后的三维模型;然后,根据校准后的三维模型,得到矿山的边界曲线,根据矿山的边界曲线,得到矿山的边界上的多个点数据,并且对多个点数据进行校验,得到正常点数据,最后将正常点数据导入矿山仿真***,利用程序化方式快速生成矿山仿真***的场景数据,避免任何算法插值修改,保证了数据文件的原始性,从而提高了场景模型的准确性。
具体实施方式
下面,将参考附图详细地描述根据本申请的示例实施例。显然,所描述的实施例仅仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。
申请概述
矿区自动驾驶仿真技术可以极大地削减开发测试成本,缩短自动驾驶开发周期,并做到零安全事故。如果结合工程软件,可以完成虚拟矿区的数据提取,但是此类数据结合实际的用途有限,比如说虚拟采集的数据用于实际的矿区***、维护等往往因为矿区地形的时刻变化变得不现实。结合矿区实际道路的复杂度,坑坑洼洼、高低起伏,提取的道路数据比较散乱、突变数据较多,如果使用软件进行平滑处理后,又改变了数据和实际道路的匹配度。
因此,针对大范围区域(比如矿山)的高精度的仿真场景建模的技术方法,目前现有的比较成熟的技术手段是欠缺的。出于解决该技术问题,本申请提出了一种矿山仿真***的场景数据创建方法、装置、计算机可读存储介质和电子设备,通过直接获取矿山的三维图像数据并对三维图像数据进行校准,然后三维图像数据得到矿山的边界曲线和矿山的边界上的多个点数据,并且对多个点数据进行校验,最后将正常点数据导入矿山仿真***,生成矿山仿真***的场景数据,避免任何算法插值修改,保证了数据文件的原始性,从而提高了场景模型的准确性。
下面结合附图具体说明本申请实施例提供的矿山仿真***的场景数据创建方法、装置、计算机可读存储介质及电子设备的具体实现方式。
示例性方法
图1是本申请一示例性实施例提供的一种矿山仿真***的场景数据创建方法的流程示意图。如图1所示,该矿山仿真***的场景数据创建方法包括:
步骤110:获取矿山的三维图像数据,得到表征矿山的场景信息的三维模型。
为了提高仿真模型的准确性,除了需要保证仿真模型本身的准确性之外,还需要保证仿真参数的准确性,例如需要准确的矿山场景数据,为了尽量提高矿山场景数据的准确性,可以通过图像采集器件实地获取矿山的三维图像数据。具体的,可以通过无人机搭载航拍相机、定位传感器、通讯终端等对真实的矿山全部区域进行数据采集,设置无人机的飞航路径,从而采集整个矿山的高清倾斜摄影数据以及航片数据,然后再根据三维建模工具将采集的大量的倾斜摄影数据生成大规模的三维模型。基于现有的航片精度可以实现三维模型的精度达到厘米级,从而得到高精度的矿山场景模型。
步骤120:基于矿山仿真***的坐标系,对三维模型进行校准,得到校准后的三维模型。
上述步骤得到的矿山的三维图像模型,其拍摄精度得到了很好的保证,但是还需要与实际矿山模型保持坐标一致,需要进行模型的单独校准。在一实施例中,步骤120的具体实现方式可以是:基于矿山仿真***所使用的基站原点和实车采集的坐标点,对三维模型进行校准,以实现校准后的三维模型与实际矿山坐标、海拔相同。根据矿山仿真***所使用的基站原点和实车采集的坐标点,进行模型的校准和调整,以保证矿区模型和实际矿区坐标和海拔一致,从而二次优化了模型的精度。
步骤130:根据校准后的三维模型,得到矿山的边界曲线。
在对矿山的三维模型进行校准后,即得到较为准确的矿山模型后,根据矿山的三维模型,得到矿山的边界曲线,即得到矿山的整体形态。
步骤140:根据矿山的边界曲线,得到矿山的边界上的多个点数据。
在一实施例中,步骤140的具体实现方式可以是:对矿山的边界曲线进行定距划分处理,得到矿山的边界上的多个点数据。根据自动驾驶实际使用的需求,将得到的边界曲线进行定距化分,此阶段使用相关软件进行批量操作处理,然后快速完成整个矿区多条边界的定距划分处理,得到对应的点数据,数据内容包含x值、y值、z值(即坐标系中的三维坐标值),间隔根据自动驾驶使用需求可以为1cm、10cm、20cm等,使用软件包括Matlab、AutoCAD等。
步骤150:对多个点数据进行校验,得到正常点数据。
由于在得到多个点数据的时候,可能因为计算误差等原因导致部分点数据的失真,此时需要对点数据进行校验,以保证得到正常点数据,即得到真实反映矿山边界的点数据。
步骤160:将正常点数据导入矿山仿真***,生成矿山仿真***的场景数据。
根据上述得到的正常点数据文件,批量导入矿山仿真***,并快速在矿山仿真***点击一件生成边界,即可完成矿山仿真***所需要的数据文件的快速验证过程。
本申请的实施例提供的一种矿山仿真***的场景数据创建方法,通过获取矿山的三维图像数据,得到表征矿山的场景信息的三维模型,并基于矿山仿真***的坐标系,对三维模型进行校准,得到校准后的三维模型;然后,根据校准后的三维模型,得到矿山的边界曲线,根据矿山的边界曲线,得到矿山的边界上的多个点数据,并且对多个点数据进行校验,得到正常点数据,最后将正常点数据导入矿山仿真***,利用程序化方式快速生成矿山仿真***的场景数据,避免任何算法插值修改,保证了数据文件的原始性,从而提高了场景模型的准确性。
图2是本申请一示例性实施例提供的一种边界曲线获取方法的流程示意图。如图2所示,步骤130可以包括:
步骤131:根据校准后的三维模型的边界,得到第一平滑边界曲线。
针对矿山仿真***所需要的矿山道路、作业区,在校准后的三维模型上确定其边界,然后使用软件创建第一平滑边界曲线。
步骤132:将第一平滑边界曲线沿竖直方向平移预设高度。
初次创建的第一平滑边界曲线并不完全贴合矿山的三维模型,需要将第一平滑边界曲线沿着Z轴(即竖直方向)平移一定高度,即将第一平滑边界曲线与三维模型分离。
步骤133:将第一平滑边界曲线投影至校准后的三维模型上,得到第二平滑边界曲线。
使用写好的脚本程序进行曲线和模型投影操作,以得到第二平滑边界曲线,保证得到的第二平滑边界曲线完全贴合在矿山的三维模型上,删除第一平滑边界曲线,保留得到的第二平滑边界曲线。第二平滑边界曲线完全和矿山的三维模型重合,保证了数据的精度和连续性。最后使用软件功能将整个矿区所有第二平滑边界曲线批量导出,完成高精度原始数据的创建,全程只需要使用计算机进行简单的功能操作,即可快速批量获取整个矿区所有的高精度的原始数据,使用软件包括:3dsmax、Maya。
图3是本申请一示例性实施例提供的一种点数据校验方法的流程示意图。如图3所示,步骤150可以包括:
步骤151:基于第二平滑边界曲线,对多个点数据进行排序处理,得到有序数据。
由于大量的点数据都是原始的散点,并没有按照顺序进行排序。因此接下来需要进行数据的批量处理过程。此过程全部代码脚本化,根据编写好的代码,运行可执行脚本,自动加载上述多个数据文件,利用其排序算法依次将所有文件的点按照第二平滑边界曲线生成的点的方式进行排序处理。脚本启动运行,加载计算在短时间内即可完成数据的排序处理,得到有序的数据文件。
步骤152:对有序数据进行校验,得到正常点数据。
针对多个有序点的数据文件进行检查,确定其是否满足后续自动驾驶仿真的使用要求。该方法即为根据编写好的可执行脚本,一次批量导入有序数据文件,检查是否为正常点数据,检查完之后得到最终的有序点数据文件(即正常点数据)。
在一实施例中,上述步骤152的具体实现方式可以是:计算有序数据中相邻两点的间隔,当相邻两点的间隔等于预设的间隔值时,确定相邻两点为正常点数据,否则,确定相邻两点为异常点数据。
示例性装置
图4是本申请一示例性实施例提供的一种矿山仿真***的场景数据创建装置的结构示意图。如图4所示,该场景数据创建装置40包括:数据获取模块41,用于获取矿山的三维图像数据,得到表征矿山的场景信息的三维模型;模型校准模块42,用于基于矿山仿真***的坐标系,对三维模型进行校准,得到校准后的三维模型;边界获取模块43,用于根据校准后的三维模型,得到矿山的边界曲线;点数据获取模块44,用于根据矿山的边界曲线,得到矿山的边界上的多个点数据;校验模块45,用于对多个点数据进行校验,得到正常点数据;以及场景生成模块46,用于将正常点数据导入矿山仿真***,生成矿山仿真***的场景数据。
本申请的实施例提供的一种矿山仿真***的场景数据创建装置,通过数据获取模块41获取矿山的三维图像数据,得到表征矿山的场景信息的三维模型,并模型校准模块42基于矿山仿真***的坐标系,对三维模型进行校准,得到校准后的三维模型;然后,边界获取模块43根据校准后的三维模型,得到矿山的边界曲线,点数据获取模块44根据矿山的边界曲线,得到矿山的边界上的多个点数据,并且校验模块45对多个点数据进行校验,得到正常点数据,最后场景生成模块46将正常点数据导入矿山仿真***,利用程序化方式快速生成矿山仿真***的场景数据,避免任何算法插值修改,保证了数据文件的原始性,从而提高了场景模型的准确性。
在一实施例中,模型校准模块42可以进一步配置为:基于矿山仿真***所使用的基站原点和实车采集的坐标点,对三维模型进行校准,以实现校准后的三维模型与实际矿山坐标、海拔相同。
在一实施例中,点数据获取模块44可以进一步配置为:对矿山的边界曲线进行定距划分处理,得到矿山的边界上的多个点数据。
图5是本申请另一示例性实施例提供的一种矿山仿真***的场景数据创建装置的结构示意图。如图5所示,边界获取模块43可以包括:第一曲线获取单元431,用于根据校准后的三维模型的边界,得到第一平滑边界曲线;平移单元432,用于将第一平滑边界曲线沿竖直方向平移预设高度;第二曲线获取单元433,用于将第一平滑边界曲线投影至校准后的三维模型上,得到第二平滑边界曲线。
在一实施例中,如图5所示,校验模块45可以包括:排序单元451,用于基于第二平滑边界曲线,对多个点数据进行排序处理,得到有序数据;校验单元452,用于对有序数据进行校验,得到正常点数据。
在一实施例中,上述校验单元452可以进一步配置为:计算有序数据中相邻两点的间隔,当相邻两点的间隔等于预设的间隔值时,确定相邻两点为正常点数据,否则,确定相邻两点为异常点数据。
示例性电子设备
下面,参考图6来描述根据本申请实施例的电子设备。该电子设备可以包括第一设备和第二设备中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。
图6图示了根据本申请实施例的电子设备的框图。
如图6所示,电子设备10包括一个或多个处理器11和存储器12。
处理器11可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以电子设备10中的其他组件以执行期望的功能。
存储器12可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器11可以运行所述程序指令,以实现上文所述的本申请的各个实施例的矿山仿真***的场景数据创建方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
在一个示例中,电子设备10还可以包括:输入装置13和输出装置14,这些组件通过总线***和/或其他形式的连接机构(未示出)互连。
例如,在该电子设备是第一设备或第二设备时,该输入装置13可以是摄像头,用于捕捉图像的输入信号。在该电子设备是单机设备时,该输入装置13可以是通信网络连接器,用于从第一设备和第二设备接收所采集的输入信号。
此外,该输入设备13还可以包括例如键盘、鼠标等等。
该输出装置14可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出设备14可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图6中仅示出了该电子设备10中与本申请有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备10还可以包括任何其他适当的组件。
示例性计算机程序产品和计算机可读存储介质
除了上述方法和设备以外,本申请的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的矿山仿真***的场景数据创建方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本申请实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本申请的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本申请各种实施例的矿山仿真***的场景数据创建方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
以上结合具体实施例描述了本申请的基本原理,但是,需要指出的是,在本申请中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本申请的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本申请为必须采用上述具体的细节来实现。
本申请中涉及的器件、装置、设备、***的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、***。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
还需要指出的是,在本申请的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本申请的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本申请。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本申请的范围。因此,本申请不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本申请的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。