全景相机标定方法、系统、计算机设备和存储介质与流程

文档序号:16584867发布日期:2019-01-14 18:19阅读:180来源:国知局
全景相机标定方法、系统、计算机设备和存储介质与流程

本发明涉及图像处理技术领域,特别是涉及一种全景相机标定方法、系统、计算机设备和存储介质。



背景技术:

在全景相机中通常包括多个镜头,全景相机通过将多个镜头捕捉到的场景图像拼接起来,得到全景图像。由于在全景相机的生产制造过程中会引入误差,所以全景相机在生产制造的最后阶段需要对误差进行校正,这个误差校正的过程即为全景相机标定的过程。

在传统的全景相机标定过程中一般是先连接全景相机,然后采集原始图像,然后进行算法计算,计算结束得到标定结果参数,最后再将标定结果参数写入全景相机。随着全景相机技术的不断发展,全景相机中的镜头数量越来越多,全景相机图像的分辨率也越来越高,按照传统的全景相机标定方法进行标定,其标定过程中的图像采集流程、标定流程以及参数写入流程的耗时越来越长,在标定流程之前需要等待图像采集流程采集完毕才能执行,在参数写入流程之前需要等待标定流程结束才能执行,导致了全景相机标定效率低。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种可以提高全景相机标定效率的标定方法、系统、计算机设备和存储介质。

一种全景相机标定方法,所述方法包括:

获取终端发送的标定请求,所述标定请求中包括与所述标定请求对应的唯一随机数以及从全景相机中获取的多个原始图像;

根据所述标定请求中的原始图像对所述全景相机进行标定处理得到标定参数;

将所述标定参数与对应的唯一随机数存储到数据库中;

获取终端发送的标定参数查询请求,所述标定参数查询请求中包括唯一随机数,所述唯一随机数由终端从全景相机中读取得到;

在数据库中查询与所述唯一随机数对应的标定参数,将所述对应的标定参数发送至终端,所述终端根据所述唯一随机数,将对应的标定参数发送至所述全景相机,以使所述全景相机根据所述标定参数对全景相机中的图像进行拼接。

在其中一个实施例中,将所述标定参数与对应的唯一随机数存储到数据库中包括:将所述标定参数与对应的唯一随机数存储在数据库中缓存;

在数据库中查询与所述唯一随机数对应的标定参数,将所述对应的标定参数发送至终端之后包括:在所述数据库缓存中将所述唯一随机数对应的标定参数删除。

在其中一个实施例中,所述方法还包括:

根据所述原始图像对全景相机进行多次标定处理得到多个标定参数;

根据多个标定参数对所述多个原始图像进行处理,得到多个全景图像;

计算多个全景图像的重合度;

将重合度最高的全景图像对应的标定参数与对应的唯一随机数存储到数据库中。

在其中一个实施例中,所述根据多个标定参数对所述多个原始图像进行处理,得到多个全景图像包括:

根据所述标定参数对多个原始图像在同一坐标系内进行投影,得到多个投影结果图像;

将所述多个投影结果图像在所述坐标系内进行拼接得到标定参数对应的全景图像。

在其中一个实施例中,所述计算多个全景图像的重合度包括:

计算所述多个投影结果图像中重叠区域图像的特征点,对所述特征点进行特征匹配;

在所述坐标系中,根据特征点对应的坐标计算所有匹配成功的特征点的距离平均值;

根据所述特征点的距离平均值得到所述全景图像对应的重合度。

一种全景相机标定系统,所述系统包括:

终端,用于生成标定请求,所述标定请求中包括唯一随机数以及终端从全景相机中获取的多个原始图像,将所述标定请求上传至服务器;

服务器,用于根据所述标定请求中的原始图像对所述全景相机进行标定处理得到标定参数;将所述标定参数与对应的唯一随机数存储到数据库中;获取终端发送的标定参数查询请求,所述标定参数查询请求中包括唯一随机数,所述唯一随机数由终端从全景相机中读取得到;在数据库中查询与所述唯一随机数对应的标定参数,将所述对应的标定参数发送至终端;

所述终端,还用于根据所述唯一随机数,将对应的标定参数发送至所述全景相机,以使所述全景相机根据所述标定参数对全景相机中的图像进行拼接。

在其中一个实施例中,所述终端还用于接收全景相机发送的多个全景图像;生成与所述标定请求对应的唯一随机数;将所述唯一随机数发送至所述全景相机,以使所述全景相机将所述唯一随机数进行存储。

在其中一个实施例中,所述服务器还用于根据所述原始图像对全景相机进行多次标定处理得到多个标定参数;根据多个标定参数对所述多个原始图像进行处理,得到多个全景图像;计算多个全景图像的重合度;将重合度最高的全景图像对应的标定参数与对应的唯一随机数存储到数据库中。

一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意一项方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项方法的步骤。

上述全景相机标定方法、系统、计算机设备和存储介质,通过获取终端发送的标定请求,根据标定请求中的原始图像对所述全景相机进行标定处理得到标定参数,将标定参数与对应的唯一随机数存储到数据库中。通过获取终端发送的标定参数查询请求,根据标定参数查询请求中的唯一随机数,在数据库中查询与该唯一随机数对应的标定参数,将对应的标定参数发送至终端,终端根据唯一随机数,将对应的标定参数发送至全景相机,以使全景相机根据标定参数对全景相机中的图像进行拼接。本方案通过将标定参数与对应的唯一随机数存储到数据库中,使得在全景相机标定中的图像采集流程、标定流程以及参数写入流程可以并行运行,进而提高了全景相机标定的效率。

附图说明

图1为一个实施例中全景相机标定的应用场景图;

图2为一个实施例中全景相机标定方法的流程示意图;

图3为一个实施例中根据多个标定参数对多个原始图像进行处理,得到多个全景图像的步骤的流程示意图;

图4为一个实施例中计算多个全景图像的重合度的步骤的流程示意图;

图5为一个实施例中全景相机标定系统的结构框图;

图6为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本发明实施例所提供的全景相机标定方法可应用到如图1所示的应用环境中。全景相机110与终端120通过本地网络进行连接,本地连接的方式包括usb连接、蓝牙或无线网络连接等任意一种,终端120与服务器130通过网络进行连接,该服务器130可以同时跟多个终端120同时连接。其中,终端120包括智能手机、移动平板或者个人计算机等其中任意一种。终端120连接待标定的全景相机110,全景相机110采集原始图像,将采集到的原始图像发送至终端120。终端120生成全局唯一随机数,将原始图像和全局唯一随机数发送至服务器130。服务器130接收终端120发送的原始图像和对应的唯一随机数。服务器130根据原始图像运行标定算法得到标定参数,将标定参数和对应的唯一随机数存储到数据库中。终端120连接待写入参数的全景相机,读取全景相机中的唯一随机数,将该唯一随机数发送至服务器130。服务器130在数据库中查找与该唯一随机数对应的标定参数,将该对应的标定参数发送给终端120。终端120将获取到的对应的标定参数发送给待写入参数的全景相机,以使该全景相机根据对应的标定参数对全景相机中的图像进行拼接。

在一个实施例中,如图2所示,提供了一种全景相机的远程标定方法,以该方法应用于图1中的全景相机标定装置中为例进行说明,该方法包括:

步骤202,获取终端发送的标定请求,标定请求中包括与标定请求对应的唯一随机数以及从全景相机中获取的多个原始图像。

终端通过本地连接与待标定的全景相机连接,该连接方式包括usb连接、蓝牙或无线网络连接等任意一种。全景相机采集到多个原始图像,将该多个原始图像发送至终端。终端接收全景相机发送的多个原始图像,并生成全局唯一随机数。可以理解的,该全局唯一随机数为待标定的全景相机的标定过程标识,用于区分不同全景相机的标定过程以及区分标定得到的标定参数。终端将全局唯一随机数发送至待标定的全景相机,以使待标定的全景相机可以根据该全局唯一随机数查询对应标定过程得到的标定参数。终端向服务器发送标定请求,服务器可以根据终端的标识判断是否接收该终端发送的标定请求。

步骤204,根据标定请求中的原始图像对全景相机进行标定处理得到标定参数。

服务器接收到终端发送的标定请求,根据标定请求中的原始图像,运行部署在服务器的程序进行标定算法的计算。该服务器可以根据多个原始图像同时运行标定算法的计算。可以理解的,在进行标定处理中,每次标定得到标定参数可能不同。因此,可以通过进行多次标定处理,得到多个标定参数。根据预设的筛选规则对多个标定参数进行筛选,将筛选后的标定参数发送至终端。

步骤206,将标定参数与对应的唯一随机数存储到数据库中。

服务器将标定参数于对应的唯一随机数存储到数据库中。具体地,在数据库中可以预先存储了标定参数表格。该表格中包括有标定参数类型以及相应的参数内容,按照不同的参数类型将不同的参数存储到相应的表格位置中。根据对应的唯一随机数,对该表格的名称进行命名,即建立了唯一随机数与所有的标定参数的对应关系。可以理解的,该存储过程也可以是将标定参数和对应的唯一随机数按照预设的排列规则,直接存储到服务器的数据库中。

步骤208,获取终端发送的标定参数查询请求,标定参数查询请求中包括唯一随机数,唯一随机数由终端从全景相机中读取得到。

终端与待写入参数的全景相机连接。可以理解的,该待写入参数的全景相机可以与待标定的全景相机是不同的全景相机。服务器可以同时处理终端发送的标定请求以及标定参数查询请求以提高全景相机的标定效率。该连接方式包括usb连接、蓝牙或无线网络连接等任意一种。在连接之前,终端读取全景相机中的唯一随机数。若终端读取不到该全景相机中的唯一随机数,则说明该全景相机尚未进行标定处理,需要对该全景相机执行标定处理的步骤。若读取到全景相机中的唯一随机数则,向终端发送标定参数查询请求。服务器获取终端发送的标定参数查询请求,并提取该标定参数查询请求中的唯一随机数。

步骤210,在数据库中查询与唯一随机数对应的标定参数,将对应的标定参数发送至终端,终端根据唯一随机数,将对应的标定参数发送至全景相机,以使全景相机根据标定参数对全景相机中的图像进行拼接。

服务器根据标定参数请求中的唯一随机数,在数据库中查询与该唯一随机数对应的标定参数。具体地,可以根据该唯一随机数查询数据库中的表格名称,查询到对应的表格,并从表格中读取标定参数属性以及具体的参数内容。将对应的标定参数发送至终端,终端根据唯一随机数,将对应的标定参数发送至待写入参数的全景相机。该待写入参数的全景相机根据获取到的标定参数对全景相机中的图像进行拼接并将全景相机中存储的唯一随机标识删除。

在本实施例中,通过获取终端发送的标定请求,根据标定请求中的原始图像对全景相机进行标定处理得到标定参数,将标定参数与对应的唯一随机数存储到数据库中。通过获取终端发送的标定参数查询请求,根据标定参数查询请求中的唯一随机数,在数据库中查询与该唯一随机数对应的标定参数,将对应的标定参数发送至终端,终端根据唯一随机数,将对应的标定参数发送至全景相机,以使全景相机根据标定参数对全景相机中的图像进行拼接。本方案通过将标定参数与对应的唯一随机数存储到数据库中,使得在全景相机标定中的图像采集流程、标定流程以及参数写入流程可以并行运行,进而提高了全景相机标定的效率。

在一个实施例中,提供了一种全景相机标定方法,该方法还包括:将标定参数与对应的唯一随机数存储在数据库中缓存。在数据库中查询与唯一随机数对应的标定参数,将对应的标定参数发送至终端之后还包括:在数据库缓存中将唯一随机数对应的标定参数删除。

在本实施例中,服务器将标定参数与对应的唯一随机数存储在数据库缓存中。服务器在接收到终端发送的标定参数查询请求,并根据标定参数查询请求中的唯一随机数在数据库缓存中查找对应的标定参数,将对应的标定参数发送至终端,并在数据库缓存中将唯一随机数对应的标定参数删除。

本实施例通过在数据库中对标定参数进行缓存,并将已发送的标定参数删除,节约了服务器的资源。

在一个实施例中,提供了一种全景相机标定方法,该方法还包括:根据原始图像对全景相机进行多次标定处理得到多个标定参数。根据多个标定参数对多个原始图像进行处理,得到多个全景图像。计算多个全景图像的重合度。将重合度最高的全景图像对应的标定参数与对应的唯一随机数存储到数据库中。

服务器通过对全景相机进行多次标定处理得到多个标定参数。根据多个标定参数对多个原始图像进行分别进行处理,得到多个全景图像,计算多个全景图像的重合度,将重合度最高的全景图像对应的标定参数与对应的唯一随机数存储到数据库中。

在本实施例中,通过将重合度最高的全景图像对应的标定参数与对应的唯一随机数存储到数据库中,可以实现提高全景相机的标定结果的准确性。

在一个实施例中,提供了一种全景相机标定方法,如图3所示,该方法还包括根据多个标定参数对多个原始图像进行处理,得到多个全景图像的步骤:

步骤302,根据标定参数对多个原始图像在同一坐标系内进行投影,得到多个投影结果图像。

步骤304,将多个投影结果图像在坐标系内进行拼接得到标定参数对应的全景图像。

服务器根据标定参数对多个原始图像在同一坐标系内进行投影,得到多个投影结果图像。将多个投影结果图像在坐标系内进行拼接得到对应的全景图像。可以理解的,服务器还可以根据多个不同的标定参数,进行并行处理,得到多个标定参数对应的多个全景图像。

在本实施例中,通过在同一坐标系内对多个原始图像进行投影拼接得到全景图像,通过判断该全景图像的重合度来判断标定参数的标定效果,进而达到了提高标定结果的可靠性。

在一个实施例中,提供了一种全景相机标定方法,如图4所示,该方法还包括计算多个全景图像的重合度的步骤:

步骤402,计算多个投影结果图像中重叠区域图像的特征点,对特征点进行特征匹配。

步骤404,在坐标系中,根据特征点对应的坐标计算所有匹配成功的特征点的距离平均值。

步骤406,根据特征点的距离平均值得到全景图像对应的重合度。

服务器计算多个投影结果图像中重叠区域图像的特征点,对特征点进行特征匹配。在坐标系中,根据特征点对应的坐标计算所有匹配成功的特征点的距离平均值。根据特征点的距离平均值得到第一全景图像对应的第一重合度。可以理解的是,服务器可以通过上述方法计算多个全景图像对应的重合度。

具体地,例如全景相机中包括两个镜头:第一镜头和第二镜头。分别取第一镜头对应的重叠区图像和第二镜头对应的重叠区图像,具体的重叠区可以是个矩形的重叠区。通过opencv(一种跨平台计算机视觉库)中的surf特征点算法,分别找出两个重叠区图像中的所有特征点。针对两个重叠区图像的特征点,找出两个重叠区图像中初步匹配点,针对初步匹配点,运行随机抽样一致性算法过滤出最佳匹配点,最后通过最佳匹配点的坐标位置的计算所有最佳匹配点的两两之间的距离,得到总的距离,然后用总距离和匹配点的个数计算距离平均值,距离平均值越小,得到的重合度就越高。

在本实施例中,通过计算全景图像对应的重合度,实现了可以根据该重合度判断标定参数的标定效果,进而达到了提高标定结果的可靠性。

应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图5所示,提供了一种全景相机标定系统,该系统包括:

终端502,用于生成标定请求,标定请求中包括唯一随机数以及终端从全景相机506中获取的多个原始图像,将标定请求上传至服务器504。

服务器504,用于根据标定请求中的原始图像对全景相机506进行标定处理得到标定参数;将标定参数与对应的唯一随机数存储到数据库中;获取终端发送的标定参数查询请求,标定参数查询请求中包括唯一随机数,唯一随机数由终端从全景相机中读取得到;在数据库中查询与唯一随机数对应的标定参数,将对应的标定参数发送至终端。

终端502,还用于根据唯一随机数,将对应的标定参数发送至全景相机56,以使全景相机506根据标定参数对全景相机506中的图像进行拼接。

在一个实施例中,终端502还用于接收全景相机506发送的多个全景图像,生成与标定请求对应的唯一随机数,将唯一随机数发送至全景相机506,以使全景相机506将唯一随机数进行存储。

在一个实施例中,服务器504还用于根据原始图像对全景相机506进行多次标定处理得到多个标定参数。根据多个标定参数对多个原始图像进行处理,得到多个全景图像。计算多个全景图像的重合度。将重合度最高的全景图像对应的标定参数与对应的唯一随机数存储到数据库中。

在一个实施例中,服务器504还用于根据标定参数对多个原始图像在同一坐标系内进行投影,得到多个投影结果图像。将多个投影结果图像在坐标系内进行拼接得到标定参数对应的全景图像。

在一个实施例中,服务器504还用于计算多个投影结果图像中重叠区域图像的特征点,对特征点进行特征匹配。在坐标系中,根据特征点对应的坐标计算所有匹配成功的特征点的距离平均值。根据特征点的距离平均值得到全景图像对应的重合度。

关全景相机标定系统的具体限定可以参见上文中对于全景相机标定方法的限定,在此不再赘述。

在一个实施例中,提供了一种计算机设备,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器及网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种全景相机标定方法。

本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以上各个方法实施例中的步骤。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以上各个方法实施例中的步骤。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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