掌桥专利:专业的专利平台
掌桥专利
首页

相机标定方法、装置、设备及存储介质

文献发布时间:2023-06-19 18:37:28


相机标定方法、装置、设备及存储介质

技术领域

本申请涉及图像处理技术领域,更具体地,涉及一种相机标定方法、一种相机标定装置、一种电子设备以及一种计算机可读存储介质。

背景技术

在图像测量或者机器视觉应用中,相机标定是非常关键的环节之一。基于相机标定,可确定出空间物体上某点的三维坐标位置与其在图像中对应点的二维坐标位置之间的相互关系。

因此,如何进行相机标定成为亟待解决的技术问题。

发明内容

本申请的一个目的是提供一种用于相机标定的新技术方案。

根据本申请的第一方面,提供了一种相机标定方法,所述方法包括:

获取待标定相机采集到的图卡的图卡图像,所述图卡由互相垂直的至少两个子图卡组成,任一子图卡中包括多个图案;

根据所述图卡图像,分别确定所述图卡图像中每一图案图像的目标编码以及二维坐标位置,所述图案图像的目标编码互不相同;

对于任一图案图像,根据第一映射数据以及所述图案图像的目标编码,确定所述图案图像的三维坐标位置,所述第一映射数据中包括图案图像的目标编码与三维坐标间的一一对应关系;

根据每一所述图案图像的二维坐标位置以及三维坐标位置,确定相机参数。

可选地,所述根据所述图卡图像,分别确定所述图卡图像中每一图案图像的目标编码以及二维坐标位置,至少包括:

识别所述图卡图像中包括的图案图像的形状;

获取第二目标映射数据;其中,所述第二目标映射数据中包括图案图像的形状和目标数字之间的一一对应关系;

根据所述第二目标映射数据以及所述图卡图像中包括的图案图像的形状,生成所述图卡图像的目标数字化表;

获取目标卷积核;

根据所述目标卷积核,对所述图卡图像的目标数字化表进行卷积,得到所述图卡图像中每一图案图像的目标编码。

可选地,所述获取第二目标映射数据,包括:

获取第二初始映射数据,所述第二初始映射数据中包括图案图像的形状和初始数字之间的一一对应关系;

根据所述第二初始映射数据以及所述图卡图像中包括的图案图像的形状,生成所述图卡图像的初始数字化表;

执行第一卷积处理,所述第一卷积处理包括:根据所述目标卷积核对所述图卡图像的初始数字化表进行卷积,得到所述图卡图像中每一图案图像的第一初始编码;

在所述图卡图像中的图案图像的第一初始编码间存在相同的至少两个的情况下,修改所述第二初始映射数据中初始数字;

重复执行所述第一卷积处理,直至所述图卡图像中的每一图案图像的第一初始编码互不相同;

将在所述图卡图像中的每一图案图像的第一初始编码互不相同的情况下的第二初始映射数据,作为第二目标映射数据。

可选地,所述获取目标卷积核,包括:

获取初始卷积核;

执行第二卷积处理,所述第二卷积处理包括:根据所述初始卷积核对所述图卡图像的目标数字化表进行卷积,得到所述图卡图像中每一图案图像的第二初始编码;

在所述图卡图像中的图案图像的第二初始编码间存在相同的至少两个编码的情况下,修改所述初始卷积核;

重复执行所述第二卷积处理,直至所述图卡图像中的每一图案图像的第二初始编码互不相同;

将在所述图卡图像中的每一图案图像的第二初始编码互不相同的情况下的初始卷积核,作为目标卷积核。

可选地,所述图卡为黑白图卡或彩色图卡。

根据本申请的第二方面,提供了一种相机标定装置,所述装置包括:

获取模块,用于获取待标定相机采集到的图卡的图卡图像,所述图卡由互相垂直的至少两个子图卡组成,任一子图卡中包括多个图案;

第一确定模块,用于根据所述图卡图像,分别确定所述图卡图像中每一图案图像的目标编码以及二维坐标位置,所述图案图像的目标编码互不相同;

第二确定模块,用于对于任一图案图像,根据第一映射数据以及所述图案图像的目标编码,确定所述图案图像的三维坐标位置,所述第一映射数据中包括图案图像的目标编码与三维坐标间的一一对应关系;

第三确定模块,用于根据每一所述图案图像的二维坐标位置以及三维坐标位置,确定相机参数。

可选地,所述第一确定模块包括:

识别单元,用于识别所述图卡图像中包括的图案图像的形状;

第一获取单元,用于获取第二目标映射数据;其中,所述第二目标映射数据中包括图案图像的形状和目标数字之间的一一对应关系;

生成单元,用于根据所述第二目标映射数据以及所述图卡图像中包括的图案图像的形状,生成所述图卡图像的目标数字化表;

第二获取单元,用于获取目标卷积核;

卷积单元,用于根据所述目标卷积核,对所述图卡图像的目标数字化表进行卷积,得到所述图卡图像中每一图案图像的目标编码。

可选地,所述第一获取单元具体用于:

获取第二初始映射数据,所述第二初始映射数据中包括图案图像的形状和初始数字之间的一一对应关系;

根据所述第二初始映射数据以及所述图卡图像中包括的图案图像的形状,生成所述图卡图像的初始数字化表;

执行第一卷积处理,所述第一卷积处理包括:根据所述目标卷积核对所述图卡图像的初始数字化表进行卷积,得到所述图卡图像中每一图案图像的第一初始编码;

在所述图卡图像中的图案图像的第一初始编码间存在相同的至少两个的情况下,修改所述第二初始映射数据中初始数字;

重复执行所述第一卷积处理,直至所述图卡图像中的每一图案图像的第一初始编码互不相同;

将在所述图卡图像中的每一图案图像的第一初始编码互不相同的情况下的第二初始映射数据,作为第二目标映射数据。

可选地,所述第二获取单元具体用于:

获取初始卷积核;

执行第二卷积处理,所述第二卷积处理包括:根据所述初始卷积核对所述图卡图像的目标数字化表进行卷积,得到所述图卡图像中每一图案图像的第二初始编码;

在所述图卡图像中的图案图像的第二初始编码间存在相同的至少两个编码的情况下,修改所述初始卷积核;

重复执行所述第二卷积处理,直至所述图卡图像中的每一图案图像的第二初始编码互不相同;

将在所述图卡图像中的每一图案图像的第二初始编码互不相同的情况下的初始卷积核,作为目标卷积核。

根据本申请的第三方面,提供了一种电子设备,所述电子设备包括如第二方面任一项所述的装置;或者,

包括存储器和处理器,所述存储器用于存储计算机指令,所述处理器用于从所述存储器中调用所述计算机指令,以执行如第一方面中任一项所述的相机标定方法。

根据本申请的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时实现根据第一方面中任一项所述的相机标定方法。

在本申请实施例中,提供了一种相机标定方法,方法包括:获取待标定相机采集到的图卡的图卡图像,图卡由互相垂直的至少两个子图卡组成,任一子图卡中包括多个图案;根据图卡图像,分别确定图卡图像中每一图案图像的目标编码以及二维坐标位置,图案图像的目标编码互不相同;对于任一图案图像,根据第一映射数据以及图案图像的目标编码,确定图案图像的三维坐标位置,第一映射数据中包括图案图像的目标编码与三维坐标间的一一对应关系;根据每一图案图像的二维坐标位置以及三维坐标位置,确定相机参数。通过该方法,可对图卡图像中的每一图案图像进行唯一性编码。以及可得到同一个目标编码唯一对应的二维坐标位置和三维坐标位置。由于目标编码唯一对应于一个图案图像,因此,同一个目标编码对应的二维坐标位置和三维坐标位置,属于图卡上同一个图案的二维坐标位置和三维坐标位置。在此基础上,可得到图卡图像中每一图案图像的二维坐标位置以及三维坐标位置,进一步的可得到相机参数,从而实现对待标定相机的标定。另外,本申请实施例提供的图卡可使得本申请实施例提供的相机标定方法的效率提高。

通过以下参照附图对本申请的示例性实施例的详细描述,本申请的其它特征及其优点将会变得清楚。

附图说明

被结合在说明书中并构成说明书的一部分的附图示出了本申请的实施例,并且连同其说明一起用于解释本申请的原理。

图1是根据本申请实施例提供的一种实现相机标定方法的电子设备的硬件配置的框图;

图2是本申请实施例提供的一种相机标定方法的流程示意图;

图3是本申请实施例提供的一种图卡的结构示意图;

图4是本申请实施例提供的另一种相机标定方法的流程示意图;

图5是本申请实施例提供的一种相机标定装置的结构示意图;

图6是本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

现在将参照附图来详细描述本申请的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本申请的范围。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本申请及其应用或使用的任何限制。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。

在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

图1是根据本申请实施例提供的一种实现相机标定方法的电子设备的硬件配置的框图。

电子设备1000可以是终端,也可以是服务器。进一步的,终端可以为头戴设备、便携式电脑、平板电脑、掌上电脑等。服务器可以云端服务器等。

电子设备1000可以包括处理器1100、存储器1200、接口装置1300、通信装置1400、显示装置1500、输入装置1600、扬声器1700、麦克风1800,等等。其中,处理器1100可以是中央处理器CPU、微处理器MCU等。存储器1200例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1300例如包括USB接口、耳机接口等。通信装置1400例如能够进行有线或无线通信。显示装置1500例如是液晶显示屏、触摸显示屏等。输入装置1600例如可以包括触摸屏、键盘等。用户可以通过扬声器1700和麦克风1800输入/输出语音信息。

尽管在图1中对电子设备1000均示出了多个装置,但是,本申请可以仅涉及其中的部分装置,例如,电子设备1000只涉及存储器1200和处理器1100。

应用于本申请的实施例中,电子设备1000的存储器1200用于存储指令,该指令用于控制处理器1100执行本申请实施例提供的相机标定方法。

在上述描述中,技术人员可以根据本申请所公开方案设计指令。指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。

图2是本申请实施例提供的一种相机标定方法的流程示意图。

如图2所示,本申请实施例提供的相机标定方法包括如下S2100-S2400:

S2100、获取待标定相机采集到的图卡的图卡图像。

其中,图卡由互相垂直的至少两个子图卡组成,任一子图卡中包括多个图案。

在本申请的一个实施例中,图卡可如图3所示,由3个互相垂直的子图卡:子图卡A、子图卡B以及子图卡C组成。

在本申请实施例中,对子图卡A、子图卡B以及子图卡C是否相同不做限定。

在一个示例中,子图卡A、子图卡B以及子图卡C中包括的图案可以为但不限于菱形、矩形、三角形、圆形、矩形等中的至少一个。其中,图3中以子图卡A、子图卡B以及子图卡C中分别包括的图案为菱形和三角形为例进行示出。

在传统的相机标定过程中,待标定相机需要分别对一张传统黑白图卡(例如黑白棋盘格)进行不同方位的采集,以获取到多张传统黑白图卡的图卡图像。相比于传统的相机标定,在本申请实施例中,图卡由至少两个子图卡组成,这样,待标定相机一次可采集到更多的子图卡,同时无需调整待标定相机的位置。因此,本申请实施例提供的相机标定方法的效率提高。

在本申请实施例中,图卡中包括的子图卡是互相垂直的。以图3为例,子图卡A中图案的Y轴坐标均为0,子图卡B中图案的X轴坐标均为0,子图卡C中图案的Z轴坐标均为0。这样便于相机标定人员标定子图卡中图案的三维坐标。

在本申请实施例中,上述S2100的具体实现为:将待标定相机放置在可采集到尽可能多的子图卡的位置处;控制待标定相机对图卡进行图像采集;从待标定相机中获取待标定相机采集到的图卡的图卡图像。

S2200、根据图卡图像,分别确定图卡图像中每一图案图像的目标编码以及二维坐标位置。

其中,图案图像的目标编码互不相同。

在本申请实施例中,图卡图像中的每一图案图像的二维坐标位置指的是:对应图案图像的中心点在图卡图像的二维坐标下的位置。在一个示例中,图卡图像的二维坐标系的坐标原点为左上角处,X轴为图卡图像的宽度所在方向,Y轴为图卡图像的长度所在方向,且该坐标系的度量值为像素个数。

在本申请的一个实施例中,可首先确定出图卡图像中每一图案图像在上述二维坐标系下的坐标位置;根据每一图案图像的坐标位置,确定出对应图案图像的中心点的坐标位置,以作为每一图案图像的二维坐标位置。

在本申请实施例中,对图卡图像中的每一图案进行编码,以使得图卡图像中任意两个图案图像的目标编码不同。这样,图卡图像中的一个图案图像拥有唯一的目标编码。为了实现本申请实施例中的编码,上述S2200至少包括根据图卡图像确定图卡图像中每一图案图像的目标编码的步骤。该步骤通过如下S2210-S2250来实现:

S2210、识别图卡图像中包括的图案图像的形状。

在本申请的一个实施例中,可根据轮廓提取算法,从图卡图像中提取图案图像的轮廓;根据图案图像的轮廓,确定图案图像的形状。

S2220、获取第二目标映射数据。

其中,第二目标映射数据中包括图案图像的形状和目标数字之间的一一对应关系。

在本申请实施例中,通过上述第二目标映射数据和下述S2240中的目标卷积核,可得到图卡图像中每一图案图像的互不相同的目标编码。

为了得到图卡图像中每一图案图像的互不相同的目标编码,在本申请的一个实施例中,可通过预先设定第二初始映射数据,基于该第二初始映射数据结合预先设定的目标卷积核(预先设定的目标卷积核固定,且其尺寸以及具体数值不做限定),确定图卡图像中每一图案图像的初始编码。在图卡图像的图案图像的初始编码间存在至少两个相同的初始编码的情况下,通过修改第二初始映射数据,实现图卡图像中每一图案图像有互不相同的目标编码。

或者,在本申请的一个实施例中,可通过首先设定第二目标映射数据(固定,且只要能够满足一个图案图像的形状与第二目标映射数据中的目标数字间一一对应即可),基于初始卷核结合该预先设定的第二目标映射数据,确定图卡图像中每一图案图像的初始编码。在图卡图像的图案图像的初始编码间存在至少两个相同的初始编码的情况下,通过修改初始卷积核,实现图卡图像中每一图案图像有互不相同的目标编码。

对于上述修改预先设定的第二初始映射数据的方式,上述S2220可具体通过下述S2220-1至S2220-6来实现:

S2220-1、获取第二初始映射数据。

其中,第二初始映射数据中包括图案图像的形状和初始数字之间的一一对应关系。

在本申请实施例中,一个图案图像对应一个形状,一个形状对应一个初始数字。而图案图像的形状所对应的初始数字可由标定人员事先进行指定。

在一个示例中,第二初始映射数据可以为如下表1:

表1

需要说明的是,表1中的“无”指的是不存在图案图像的情况。

S2220-2、根据第二初始映射数据以及图卡图像中包括的图案图像的形状,生成图卡图像的初始数字化表。

在本申请实施例中,对于图卡图像中的任一图案图像,从第二初始映射数据中查找,与该图案图像的形状相同的形状所对应的初始数字;基于查找到的初始数字,生成图卡图像的初始数字化表。

以图3中的子图卡A为例,图卡图像的初始数字化表中图卡A对应的子初始化图表如下述表2所示:

表2

S2220-3、执行第一卷积处理。

其中,第一卷积处理包括:根据目标卷积核对图卡图像的初始数字化表进行卷积,得到图卡图像中每一图案图像的第一初始编码。

在本申请实施例中,利用目标卷积核对图卡图像的初始数字化表进行卷积运算,得到每一图卡图像中每一图案图像的第一初始编码。

需要说明的是,在本申请实施例中,对目标卷积核的尺寸以及具体数值不做限定,只要可进行卷积作用的卷积核都在本申请的保护范围之内。

在一个示例中,目标卷积核的尺寸可以为3*3,也可以为5*5。

S2220-4、在图卡图像中的图案图像的第一初始编码间存在相同的至少两个的情况下,修改第二初始映射数据中初始数字。

在本申请的一个实施例中,可根据比较大小的方式,确定图卡图像中的图案图像的第一初始编码间是否存在相同的至少两个。

在图卡图像中的图案图像的第一初始编码间不存在相同的至少两个的情况下,则说明图卡图像中图案图像的初始编码互不相同。此时,便将第二初始映射数据作为第二目标映射数据。

反之,在图卡图像中的图案图像的第一初始编码间存在相同的至少两个的情况下,则说明未达到上述S2200中要求的图卡图像中图案图像的目标编码互不相同。此时,则修改第二初始映射数据中的初始数字。

在本申请的一个实施例中,修改第二初始映射数据中的初始数字的方式可以为:将其中的至少一个初始数字增大或减少,但与其他数字不相同。

在一个示例中,基于上述修改后的第二初始映射数据可如下表3所示:

表3

S2220-5、重复执行第一卷积处理,直至图卡图像中的每一图案图像的第一初始编码互不相同。

S2220-6、将在图卡图像中的每一图案图像的第一初始编码互不相同的情况下的第二初始映射数据,作为第二目标映射数据。

在修改第二初始映射数据中的初始数字后,重复执行上述S2220-4。这样,通过循环的方式实现图卡图像中每一图案图像的目标编码互不相同。

S2230、根据第二目标映射数据以及图卡图像中包括的图案图像的形状,生成图卡图像的目标数字化表。

在本申请实施例中,对于图卡图像中的任一图案图像,从第二目标映射数据中查找,与该图案图像的形状相同的形状所对应的目标数字;基于查找到的数字,生成图卡图像的目标数字化表。

基于上述对S2220的说明,可以理解的是,对于上述S2230中的第二目标映射数据,在通过修改预先设定的第二初始映射数据的方式得到图卡图像中每一图案图像的互不相同的目标编码的情况下,第二目标映射数据基于上述S2220-1至S2220-6得到。

而在通过修改预先设定的初始卷积核的方式得到图卡图像中每一图案图像的互不相同的目标编码的情况下,第二目标映射数据可以由标定人员预先设定,只要能够满足一个图案图像的形状与第二目标映射数据中的目标数字间一一对应即可。

以图3中的子图卡A,以及第二目标映射数据为上述表3为例,图卡图像的目标初始数字化表中图卡A对应的子目标数字化表如下述表4所示:

表4

S2240、获取目标卷积核。

对于上述修改预先设定的第二初始映射数据的方式得到图卡图像中每一图案图像的互不相同的目标编码的情况下,目标卷积核的尺寸以及具体数值不做限定,只要可进行卷积作用的卷积核都在本申请的保护范围之内。在一个示例中,初始卷积核的尺寸可以为3*3,也可以为5*5。

而对于上述修改预先设定的初始卷积核的方式,上述S2240通过下述S2240-1至S2240-6来实现:

S2240-1、获取初始卷积核。

本申请实施例对S2240-1中的初始卷积核的尺寸以及具体数值不做限定,只要可进行卷积作用的卷积核都在本申请的保护范围之内。

在一个示例中,初始卷积核的尺寸可以为3*3,也可以为5*5。

S2240-2、执行第二卷积处理,第二卷积处理包括:根据初始卷积核对图卡图像的目标数字化表进行卷积,得到图卡图像中每一图案图像的第二初始编码。

在本申请实施例中,上述S2240-2中的目标数字化表,为根据第二目标映射数据以及图卡图像中包括的图案图像的形状,所生成的。其中,对第二目标映射数据不做限定,只要能够满足一个图案图像的形状与第二目标映射数据中的目标数字间一一对应即可。

S2240-3、在图卡图像中的图案图像的第二初始编码间存在相同的至少两个编码的情况下,修改初始卷积核;

其中,上述S2220-3中修改初始卷积核的方式可以为:将其中的至少一个数值增大或减少。

S2240-4、重复执行第二卷积处理,直至图卡图像中的每一图案图像的第二初始编码互不相同。

S2240-5、将在图卡图像中的每一图案图像的第二初始编码互不相同的情况下的初始卷积核,作为目标卷积核。

S2250、根据目标卷积核,对图卡图像的目标数字化表进行卷积,得到图卡图像中每一图案图像的目标编码。

在一个示例中,如图4所示,以图卡中的子图卡A为例,首先根据上述表3所示的第二目标映射数据(将表3中所示的第二初始映射数据作为第二目标映射数据),得到如图4中所示的目标数字化表;结合图4中的目标卷积核对图4中所示的目标数字化表进行卷积,得到图4中所示的图案图像的目标编码。

S2300、对于任一图像图案,根据第一映射数据以及图案图像的目标编码,确定图案图像的三维坐标位置。

其中,第一映射数据中包括图案图像的目标编码与三维坐标间的一一对应关系。

以及,上述S2300中的三维坐标位置对应的坐标系为世界坐标系。

在本申请的一个实施例中,第一映射数据为标定人员事先计算得到。具体的:标定人员根据上述S2100中的图卡、上述S2220中的第二目标映射数据以及上述S2240中的目标卷积核,得到的图卡中的每一图案的目标编码。以及对于每一图案,标定出其在世界坐标系中的三维坐标位置。建立每一图案的目标编码与对应的三维坐标的对应关系,以得到第一映射数据。将得到的第一映射数据输入至执行本申请实施例提供的相机标定方法的电子设备中。

在本申请实施例中,基于上述S2200得到每一图案图像的唯一的目标编码后,可根据该目标编码从第一映射数据中找到唯一对应的三维坐标。结合上述S2200中的目标编码对应的二维坐标,即可得到同一个目标编码唯一对应的二维坐标位置和三维坐标位置。由于目标编码唯一对应于一个图案图像,因此,同一个目标编码对应的二维坐标位置和三维坐标位置,属于图卡上同一个图案的二维坐标位置和三维坐标位置。

S2400、根据每一图案图像的二维坐标以及对应的三维坐标位置,确定相机参数。

在本申请实施例中,相机参数包括相机内外参数以及畸变参数。可以理解的是,在确定出相机参数后,便完成了对待标定相机的标定。

在本申请实施例中,提供了一种相机标定方法,方法包括:获取待标定相机采集到的图卡的图卡图像,图卡由互相垂直的至少两个子图卡组成,任一子图卡中包括多个图案;根据图卡图像,分别确定图卡图像中每一图案图像的目标编码以及二维坐标位置,图案图像的目标编码互不相同;对于任一图案图像,根据第一映射数据以及图案图像的目标编码,确定图案图像的三维坐标位置,第一映射数据中包括图案图像的目标编码与三维坐标间的一一对应关系;根据每一图案图像的二维坐标位置以及三维坐标位置,确定相机参数。通过该方法,可对图卡图像中的每一图案图像进行唯一性编码。以及可得到同一个目标编码唯一对应的二维坐标位置和三维坐标位置。由于目标编码唯一对应于一个图案图像,因此,同一个目标编码对应的二维坐标位置和三维坐标位置,属于图卡上同一个图案的二维坐标位置和三维坐标位置。在此基础上,可得到图卡图像中每一图案图像的二维坐标位置以及三维坐标位置,进一步的可得到相机参数,从而实现对待标定相机的标定。另外,本申请实施例提供的图卡可使得本申请实施例提供的相机标定方法的效率提高。

在上述任一实施例的基础上,上述图卡为黑白图卡或彩色图卡。

在本申请实施例中,由于可实现对图卡的图像图像中图案图像的唯一性编码,因此无需图卡为黑白图卡。在此基础上,图卡可以为黑白图卡,也可以为彩色图卡。这样,可降低对本申请实施例中的图卡的限制。

本申请还提供了一种相机标定装置500,如图5所示,所述装置500包括:

获取模块510,用于获取待标定相机采集到的图卡的图卡图像,所述图卡由互相垂直的至少两个子图卡组成,任一子图卡中包括多个图案;

第一确定模块520,用于根据所述图卡图像,分别确定所述图卡图像中每一图案图像的目标编码以及二维坐标位置,所述图案图像的目标编码互不相同;

第二确定模块530,用于对于任一图案图像,根据第一映射数据以及所述图案图像的目标编码,确定所述图案图像的三维坐标位置,所述第一映射数据中包括图案图像的目标编码与三维坐标间的一一对应关系;

第三确定模块540,用于根据每一所述图案图像的二维坐标位置以及三维坐标位置,确定相机参数。

在本申请的一个实施例中,所述第一确定模块520包括:

识别单元,用于识别所述图卡图像中包括的图案图像的形状;

第一获取单元,用于获取第二目标映射数据;其中,所述第二目标映射数据中包括图案图像的形状和目标数字之间的一一对应关系;

生成单元,用于根据所述第二目标映射数据以及所述图卡图像中包括的图案图像的形状,生成所述图卡图像的目标数字化表;

第二获取单元,用于获取目标卷积核;

卷积单元,用于根据所述目标卷积核,对所述图卡图像的目标数字化表进行卷积,得到所述图卡图像中每一图案图像的目标编码。

在本申请的一个实施例中,所述第一获取单元具体用于:

获取第二初始映射数据,所述第二初始映射数据中包括图案图像的形状和初始数字之间的一一对应关系;

根据所述第二初始映射数据以及所述图卡图像中包括的图案图像的形状,生成所述图卡图像的初始数字化表;

执行第一卷积处理,所述第一卷积处理包括:根据所述目标卷积核对所述图卡图像的初始数字化表进行卷积,得到所述图卡图像中每一图案图像的第一初始编码;

在所述图卡图像中的图案图像的第一初始编码间存在相同的至少两个的情况下,修改所述第二初始映射数据中初始数字;

重复执行所述第一卷积处理,直至所述图卡图像中的每一图案图像的第一初始编码互不相同;

将在所述图卡图像中的每一图案图像的第一初始编码互不相同的情况下的第二初始映射数据,作为第二目标映射数据。

在本申请的一个实施例中,所述第二获取单元具体用于:

获取初始卷积核;

执行第二卷积处理,所述第二卷积处理包括:根据所述初始卷积核对所述图卡图像的目标数字化表进行卷积,得到所述图卡图像中每一图案图像的第二初始编码;

在所述图卡图像中的图案图像的第二初始编码间存在相同的至少两个编码的情况下,修改所述初始卷积核;

重复执行所述第二卷积处理,直至所述图卡图像中的每一图案图像的第二初始编码互不相同;

将在所述图卡图像中的每一图案图像的第二初始编码互不相同的情况下的初始卷积核,作为目标卷积核。

在本申请的一个实施例中,所述图卡为黑白图卡或彩色图卡。

通过本申请实施例提供的相机标定装置,可对图卡图像中的每一图案图像进行唯一性编码。以及可得到同一个目标编码唯一对应的二维坐标位置和三维坐标位置。由于目标编码唯一对应于一个图案图像,因此,同一个目标编码对应的二维坐标位置和三维坐标位置,属于图卡上同一个图案的二维坐标位置和三维坐标位置。在此基础上,可得到图卡图像中每一图案图像的二维坐标位置以及三维坐标位置,进一步的可得到相机参数,从而实现对待标定相机的标定。另外,本申请实施例提供的图卡可使得本申请实施例提供的相机标定方法的效率提高。

本申请实施例还提供了一种电子设备600,所述电子设备600包括如上述装置实施例提供的任一项所述的装置;或者,

如图6所示,包括存储器610和处理器620,所述存储器610用于存储计算机指令,所述处理器620用于从所述存储器610中调用所述计算机指令,以执行如上述方法实施例中任一项所述的相机标定方法。

本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器执行时实现根据上述方法实施例中任一项所述的相机标定方法。

本申请可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本申请的各个方面的计算机可读程序指令。

计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。

这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。

用于执行本申请操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本申请的各个方面。

这里参照根据本申请实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本申请的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。

这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。

也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。

附图中的流程图和框图显示了根据本申请的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。

以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本申请的范围由所附权利要求来限定。

技术分类

06120115630658