相机标定方法、装置、电子设备和计算机可读存储介质与流程

专利2022-06-29  51


本发明涉及运动相机的图像处理领域,具体而言,涉及一种相机标定方法、装置、电子设备和计算机可读存储介质。



背景技术:

近年来,由于计算机视觉相关技术的发展,基于图像的二维/三维场景获取技术已经在很多领域得到应用,如机器人路径导航、图像拼接、三维重建等领域。其中,相机的内参数,包括相机焦距和主点数据,是求解图像坐标到世界坐标的映射关系较为关键的部分。

现在得到广泛应用的相机内参获取方式,是通过获取一系列棋盘格图像,通过对图像使用“张正友标定”方法进行离线标定,得到相机的内参数。“张正友标定”方法依赖于固定标定物棋盘格,并且必须离线标定,限制了很多场景下对于相机内参的计算和获取。为了改善上述缺点,目前的技术方案利用应用场景中的特殊景物,比如监控摄像头的人行道或者其它平行景物,计算消影点,利用多组消影点对相机内参的约束,计算得到相机内参数。但是,依赖于应用场景中特殊元素的约束来完成相机自标定,对应用场景要求较高,且不具有通用性。



技术实现要素:

有鉴于此,本发明的目的在于提供一种相机标定方法、装置、电子设备和计算机可读存储介质。

为了实现上述目的,本发明采用的技术方案如下:

第一方面,本发明提供一种相机标定方法,所述方法包括:获取多张运动图像;所述多张运动图像是相机运动在预设轨迹时采集的具有纹理的图像。获取所述多张运动图像中任意两张图像之间的基础矩阵;所述基础矩阵表征所述任意两张图像中基于所述纹理的图像特征点匹配关系。根据所有的所述基础矩阵,获取所述相机的标定内参数;所述标定内参数为所述相机拍摄图像的目标校正参数。

在可选的实施方式中,所述多张运动图像中的每张运动图像具有序列标识,所述根据所有的所述基础矩阵,获取所述相机的标定内参数,包括:按照所述序列标识的顺序,依次解析所述每张运动图像对应的所述基础矩阵,以获取所述相机的线性内参;所述线性内参为所述相机拍摄图像的待确认校正参数。根据所有的所述基础矩阵,建立目标函数;所述目标函数用于确定所述多张运动图像处于预设约束条件下的目标校正参数。根据所述线性内参和所述目标函数,获取所述标定内参数。

在可选的实施方式中,所述根据所有的所述基础矩阵,建立目标函数,包括:确定每个所述基础矩阵对应的非线性优化函数;所述非线性优化函数用于修正所述线性内参;根据所有的所述非线性优化函数和所述预设约束条件,确定所述目标函数。

在可选的实施方式中,所述每张运动图像的序列标识包括所述每张运动图像的图像采集时间信息,所述获取所述多张运动图像中任意两张图像之间的基础矩阵,包括:确定所述多张运动图像中符合第一预设条件的至少三张关键图像;所述第一预设条件包括任意两张运动图像的重叠率大于或等于第一阈值,和/或所述任意两张运动图像的图像采集时间信息符合预设采集时间间隔;获取所述至少三张关键图像中的任意两张关键图像的基础矩阵。

在可选的实施方式中,获取所述至少三张关键图像中的任意两张关键图像的基础矩阵,包括:获取所述任意两张关键图像中的所述纹理符合第二预设条件的图像特征点;基于所述图像特征点的匹配关系确定所述基础矩阵。

第二方面,本发明提供一种相机标定装置,所述装置包括:获取模块和处理模块。所述获取模块,用于获取多张运动图像;所述多张运动图像是相机运动在预设轨迹时采集的具有纹理的图像。所述处理模块,用于获取所述多张运动图像中任意两张图像之间的基础矩阵;所述基础矩阵表征所述任意两张图像中基于所述纹理的图像特征点匹配关系。所述处理模块还用于根据所有的所述基础矩阵,获取所述相机的标定内参数;所述标定内参数为所述相机拍摄图像的目标校正参数。

在可选的实施方式中,所述多张运动图像中的每张运动图像具有序列标识,所述处理模块还用于按照所述序列标识的顺序,依次解析所述每张运动图像对应的所述基础矩阵,以获取所述相机的线性内参;所述线性内参为所述相机拍摄图像的待确认校正参数。所述处理模块还用于根据所有的所述基础矩阵,建立目标函数;所述目标函数用于确定所述多张运动图像处于预设约束条件下的目标校正参数。所述处理模块还用于根据所述线性内参和所述目标函数,获取所述标定内参数。

在可选的实施方式中,所述处理模块还用于确定每个所述基础矩阵对应的非线性优化函数;所述非线性优化函数用于修正所述线性内参;所述处理模块还用于根据所有的所述非线性优化函数和所述预设约束条件,确定所述目标函数。

第三方面,本发明提供一种电子设备,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现前述实施方式中任一所述的方法。

第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述实施方式中任一项所述的方法。

相较于现有技术,本发明提供一种相机标定方法、装置、电子设备和计算机可读存储介质,涉及运动相机的图像处理领域。该相机标定方法包括:获取多张运动图像;所述多张运动图像是相机运动在预设轨迹时采集的具有纹理的图像;获取所述多张运动图像中任意两张图像之间的基础矩阵;所述基础矩阵表征所述任意两张图像中基于所述纹理的图像特征点匹配关系;根据所有的所述基础矩阵,获取所述相机的标定内参数;所述标定内参数为所述相机拍摄图像的目标校正参数。使用具有纹理的运动图像,继而获取图像之间的基础矩阵并获取相机的标定内参数,不需依赖场景,如棋盘格或特殊景物的限定,增加了获取相机的标定内参数的通用性;标定内参数用于拍摄图像的目标校正,减少了图像在后处理过程中的误差,使用相机拍摄目标物体并使用标定内参数进行图像处理,可以提高目标物体在2d/3d场景下的结构恢复精度和绝对定位精度。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的一种相机标定方法的流程示意图;

图2为本发明实施例提供的另一种相机标定方法的流程示意图;

图3为本发明实施例提供的另一种相机标定方法的流程示意图;

图4为本发明实施例提供的另一种相机标定方法的流程示意图;

图5为本发明实施例提供的另一种相机标定方法的流程示意图;

图6为本发明实施例提供的一种相机标定装置的方框示意图;

图7为本发明实施例提供的一种电子设备的方框示意图。

图标:相机标定装置-40,获取模块-41,处理模块-42,电子设备-60,存储器-61,处理器-62,通信接口-63。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

“张正友标定”方法依赖于固定标定物棋盘格,并且必须离线标定,限制了很多场景下对于相机内参的计算和获取。例如,拍摄图像需要使用变焦相机时,相机内参的离线标定十分麻烦,需要标定相机在不同焦距下的内参;但是,由于相机拍摄图像时,焦距的不可控和不确定性,离线标定数据和实际变焦结果匹配程度较低。应理解,相机自标定方法是一系列应用中,在线获取相机内参的关键技术;当相机焦距因为某种原因变化时,如人为变焦和温度变化引起镜头形变导致焦距变化,相机自标定技术可以在线获得当前相机的内参数,以求解图像坐标到世界坐标的关系,开展一系列基于图像建模2d/3d场景的应用。

为了至少解决上述问题和背景技术提出的不足,本发明实施例提供一种相机标定方法,请参见图1,图1为本发明实施例提供的一种相机标定方法的流程示意图。该相机标定方法包括:

s31,获取多张运动图像。

上述的多张运动图像是相机运动在预设轨迹时采集的具有纹理的图像。应理解,具有纹理的图像必然存在纹理特征,该纹理特征表征运动图像中重复出现的局部特征与该局部特征的排列规则,该纹理特征还可以反映运动图像中的测量物体的表面特征,如该测量物体的表面线条、外部结构特征等。

可以预见的,在一种可能的实施例中,上述的相机运行在预设轨迹可以是相机所处载体(如无人机)飞行在预设航线,或是相机结构被控制做平移、旋转运动等。应理解,运动的相机可以是安装在不同的载体上,如无人机、飞行客机、汽车或机器人等,当载体进行连续运动时,安装在载体上的相机(如相机在无人机中时,则为吊舱)进行与载体匹配的平移、旋转等运动,并在运动过程中获取上述的多张运动图像。

s32,获取多张运动图像中任意两张图像之间的基础矩阵。

该基础矩阵表征任意两张图像中基于纹理的图像特征点匹配关系。例如,获取图像特征点匹配关系时,可以使用、但不限于七点法、八点法以及基于随机均匀一致性采样法等。可以理解的,该图像特征点可以以上述的纹理为参考特征,能更加准确的体现上述任意两张图像之间的图像特征点的匹配关系,使上述的基础矩阵的置信度更高。

s33,根据所有的基础矩阵,获取相机的标定内参数。

该标定内参数为相机拍摄图像的目标校正参数。相机自标定是指通过多张图像中,图像特征点提取和匹配,进而获取相机的标定内参数,并依据标定内参数进行相机的目标校正的过程;可以理解的,上述标定内参数可以是在相机拍摄图像的过程中,就对图像进行校正,即相机使用该标定内参数进行在线自标定。

例如,当相机的焦距因为某种原因发生变化时,如人为变焦、温度变化引起相机镜头的形变等导致焦距发生变化时,可以使用本发明提供的相机标定方法,在线获得当前的相机的标定内参数,根据该标定内参数求解相机拍摄图像(如第一图像)的图像坐标系到世界坐标系的映射关系,并基于上述映射关系实现相机拍摄图像(第一图像)的2d/3d场景应用。

本发明实施例使用的多张运动图像是相机运动在预设轨迹时采集的具有纹理的图像,基于该纹理,相机的标定过程可以不需要依赖场景中的特殊元素,如场景中含有线段、平行线、已知形状的平面物体或立体物体等,使得本发明实施例提供的相机标定方法更具有通用性。

本发明实施例提供的相机标定方法需要相机运动在预设轨迹时采集的运动图像中包含纹理,以便获取图像中的图像特征点,确定任意两张图像之间的基础矩阵,进而获取相机的标定内参数,相机可以使用该标定内参数进行目标校正,使用相机拍摄目标物体并使用标定内参数进行图像处理,可以提高目标物体在2d/3d场景下的结构恢复精度和绝对定位精度。此外,在相机进行在线标定(使用标定内参数进行标定)的过程中,还可以避免相机的离线标定造成的相机焦距与标定内参数不匹配的情况,提高相机的标定精度。

在可选的实施方式中,上述的多张运动图像是相机运动在预设轨迹时采集的具有纹理的图像,为了使上述的基础矩阵更易于处理,在图1的基础上,以上述的多张运动图像中的每张运动图像具有序列标识为例,请参见图2,图2为本发明实施例提供的另一种相机标定方法的流程示意图。上述的s33可以包括:

s331,按照序列标识的顺序,依次解析每张运动图像对应的基础矩阵,以获取相机的线性内参。

该线性内参为相机拍摄图像的待确认校正参数。可以理解的,该线性内参可以是通过至少两个基础矩阵获取得到的线性解,该线性解可以作为相机的初始解(待确认校正参数)。例如,将基础矩阵做奇异值分解,并使用至少两个基础矩阵得到三个线性方程,以便得到线性内参。

s332,根据所有的基础矩阵,建立目标函数。

该目标函数用于确定多张运动图像处于预设约束条件下的目标校正参数。该预设约束条件可以包括,但不限于相机的焦距、扭曲参数等;若目标函数是一种误差函数,该目标校正参数可以表征线性内参的误差。

s333,根据线性内参和目标函数,获取标定内参数。

例如,当目标函数是一种表示误差的函数,根据上述得到的线性内参和目标函数得到的目标校正参数,即可获取相机的标定内参数。

应理解,多张运动图像是相机运动在预设轨迹时拍摄的,该多张运动图像可以是相机在运动过程中分别采集的多张图像,也可以是相机采集的视频数据。当对多张运动图像进行序列标识并对多张运动图像按照序列标识进行排序时,每个基础矩阵都可以包含得到基础矩阵所采用的两张图像的序列标识信息;在一种可能的实施例中,可以使用序列标识对多张运动图像进行筛选,只有两张图像的序列标识小于或等于预设序列间隔,才获取该两张图像之间的基础矩阵,以便获取更优的目标函数,减少标定内参数的误差。

由于图像之间的差异性,基础矩阵之间的关系是不确定的,但是运动图像是具有序列标识的,运动图像结合序列标识还可以反映相机的运动过程,若单独使用线性优化或少数矩阵的回归分析得到目标函数,其会存在较大的误差;因此,为了减少目标函数的误差,在图2的基础上,给出一种可能的实现方式,请参见图3,图3为本发明实施例提供的另一种相机标定方法的流程示意图。上述的s332可以包括:

s332a,确定每个基础矩阵对应的非线性优化函数。

该非线性优化函数用于修正线性内参。该非线性优化函数可以是基础矩阵对应的误差项。

s332b,根据所有的非线性优化函数和预设约束条件,确定目标函数。

需要说明的是,虽然上述以目标函数是非线性优化得到的,目标函数可以是多种不同的形式,在一些可能的实施例中,目标函数还可以是通过多个线性优化得到的,或是拟合多个基础矩阵对应的曲线得到,或是使用高阶多项式计算得到的。

为了便于理解上述的s31~s33及其可能的子步骤对应的相机标定方法,针对获取线性内参、目标函数和标定内参数给出一种可能的实施例:

令基础矩阵为f,根据标定内参数得到相机内参矩阵为k:

其中,相机内参矩阵中包括五个未知参数:

对基础矩阵f进行奇异值分解:

其中,矩阵的大小为3×3,矩阵的列向量为基础矩阵f的左奇异向量;矩阵的大小为3×3,矩阵的列向量为基础矩阵f的右奇异向量;矩阵的大小为3×3,矩阵为基础矩阵f奇异值分解后得到的对角矩阵,位于矩阵的对角线上的元素为基础矩阵f的奇异值。

建立kruppa方程对应的线性等式:

其中,为矩阵的第行,为矩阵的第行,为对角矩阵中位置为(1,1)的对角元素,为对角矩阵中位置为(2,2)的对角元素。通过上述的线性等式可以获取相机内参矩阵k的五个未知参数的初始解(线性内参)。

上述的线性等式引入了三个误差项,分别为:

上述的,为线性等式中两两相减的绝对值。

建立误差函数,即目标函数包括多种情况:

第一种,当k中的五个参数均为未知时,目标函数为:

其中,n表示基础矩阵f的个数,为对每个基础矩阵f的三个误差项的值相加,通过n个基础矩阵f的迭代,将目标函数的值降低至收敛,进而获取相机的内参矩阵k。目标函数收敛的过程可以是满足预设收敛值,也可以是目标函数的值不再缩小等。

第二种,若相机的像素是正方形,则确定相机的扭曲参数为零,即=0;当相机的镜头在正反两个方向的焦距是相等的,即是已知的,则可以在目标函数中引入约束项,目标函数为:

其中,为相机在正反两个方向上迭代后获取的焦距值,为迭代后获取的相机的扭曲参数值,在第一次迭代时使用上述线性等式得到的初始解(线性内参);是相机在不同使用情况下的可调整参数,可以根据相机处于不同载体,如无人机、客车,拍摄物体为平面图形或立体几何图像等不同的使用情况进行确定和调整;通过上述的目标函数对线性内参进行优化,即可获取相机内参矩阵k的未知参数

第三种,若相机的主点信息是已知的,即已知,则目标函数为:

其中,是在迭代后获取的相机的主点信息,在第一次迭代时使用上述线性等式得到的初始解(线性内参)。是相机在不同使用情况下的可调整参数,可以根据相机处于不同载体,如无人机、客车,拍摄物体为平面图形或立体几何图像等不同的使用情况进行确定和调整;通过上述的目标函数对线性内参进行优化,即可获取相机内参矩阵k的未知参数

可以理解的,使用本发明提供的相机标定方法,确定多张运动图像,进而获取基础矩阵,获取到线性内参后利用目标函数进行非线性优化,获得相机的标定内参数。该相机标定方法可以用于相机载体运动的应用中,如无人机携带相机、无人车载相机和机器人视觉传感器,用于在线获取相机内参数,作为一系列2d/3d场景信息获取的参数输入,建立图像坐标和世界坐标正确的映射关系;还可以用于实时建图与定位、运动恢复结构等场景。

在可选的实施方式中,若多张运动图像之间的重叠率或采集运动图像之间的时间间隔较大,得到的基础矩阵误差较大,为了解决上述问题,在图2的基础上,以序列标识包括序列标识对应的运动图像的图像采集时间信息为例,请参见图4,图4为本发明实施例提供的另一种相机标定方法的流程示意图。上述的s32可以包括:

s321,确定多张运动图像中符合第一预设条件的至少三张关键图像。

该第一预设条件包括任意两张运动图像的重叠率大于或等于第一阈值,和/或任意两张运动图像的图像采集时间信息符合预设采集时间间隔。

可以理解的,第一阈值可以是任意两张运动图像的重叠率为40%,在一种可能的实施例中,还可以是对重叠率设置第一阈值区间,当任意两张运动图像的重叠率处于第一阈值区间时,确定运动图像符合第一预设条件;例如,设置第一阈值区间为重叠率大于或等于30%、且小于或等于50%。应理解,由于多张运动图像是相机运动在预设轨迹时拍摄的,该重叠率指的是任意两张运动图像之间的航向重叠率。

应理解,当序列标识中包括运动图像的图像采集时间信息时,可以根据相机处于不同的载体,如无人机、客车等,设置不同的预设采集时间间隔,如5秒、5分钟等,进而根据运动图像的图像采集时间信息是否符合预设时间间隔,确定多张运动图像中的关键图像。

需要说明的是,在一种可能的情况下,第一预设条件可以是任意两张运动图像的重叠率大于或等于第一阈值,或任意两张运动图像的图像采集时间信息符合预设采集时间间隔中的其中一个,即当运动图像满足上述的任意一个,就可以认为运动图像是符合第一预设条件;在另一种可能的情况下,第一预设条件还可以是任意两张运动图像的重叠率大于或等于第一阈值,和任意两张运动图像的图像采集时间信息符合预设采集时间间隔,即当运动图像同时满足重叠率和图像采集时间的预设时间间隔,才认为运动图像是符合第一预设条件;在另一种可能的情况下,第一预设条件还可以包括更多的筛选条件,如运动图像的清晰度、曝光度、符合图像处理条件的图像特征点的个数等。

s322,获取至少三张关键图像中的任意两张关键图像的基础矩阵。

可以理解的,通过第一预设条件筛选出关键图像后,得到任意两张关键图像的基础矩阵。需要说明的是,为了获取线性内参,需要至少两个基础矩阵,对两个基础矩阵做奇异值分解后,使用kruppa方程得到三个线性方程,并根据上述的三个线性方程得到初始的线性解,即线性内参。例如,上述获取基础矩阵的方法可以包括,但不限于七点法、八点法以及基于随机均匀一致性采样法等。

在可选的实施方式中,由于获取基础矩阵的方法众多,但各个方法的误差并不相同,为了解决上述问题,在图4的基础上,给出一种可能的实现方式,请参见图5,图5为本发明实施例提供的另一种相机标定方法的流程示意图。上述的s322可以包括:

s322a,获取任意两张关键图像中的纹理符合第二预设条件的图像特征点。

可以理解的,基于关键图像中的纹理,获取符合第二预设条件的图像特征点,该第二预设条件可以是关键图像中的图像特征点与在纹理上,也可以是图像特征点与纹理的像素距离小于或等于某个阈值。由于该图像特征点是与关键图像的纹理相关的,使得上述获取的图像特征点能更为准确的确定目标函数,减少相机的标定内参数的误差。需要说明的是,提取关键图像中的图像特征点可以使用,但不限于尺度不变特征变换(scale-invariantfeaturetransform,sift)算法、特征增强(speededuprobustfeatures,surf)算法、快速特征点提取和描述(orientedfastandrotatedbrief,orb)算法以及其它图像特征点提取的算法等。

s322b,基于图像特征点的匹配关系确定基础矩阵。

例如,对提取的图像特征点进行匹配的方法可以包括,但不限于暴力匹配、基于词典的匹配、基于运动均匀一致性的匹配方法等,其目的在于获取任意两张关键图像之间的图像特征点之间的匹配关系,即基础矩阵。

应理解,使用具有纹理的运动图像确定关键图像,对关键图像进行图像特征点提取时,该图像特征点是与关键图像的纹理相关的,从而解决现有技术中图像中必须包含特殊场景的弊端,提高相机标定的通用性。

为了实现上述的s31~s33对应的相机标定方法,本发明实施例提供一种相机标定装置,请参见图6,图6为本发明实施例提供的一种相机标定装置的方框示意图。该相机标定装置40包括:获取模块41和处理模块42。

获取模块41用于获取多张运动图像。多张运动图像是相机运动在预设轨迹时采集的具有纹理的图像。

处理模块42用于获取多张运动图像中任意两张图像之间的基础矩阵。基础矩阵表征任意两张图像中基于纹理的图像特征点匹配关系。

处理模块42还用于根据所有的基础矩阵,获取相机的标定内参数。标定内参数为相机拍摄图像的目标校正参数。

应理解,获取模块41和处理模块42可以协同实现上述s31~s33及其可能的子步骤。

在可选的实施方式中,多张运动图像中的每张运动图像具有序列标识,处理模块42还用于按照序列标识的顺序,依次解析每张运动图像对应的基础矩阵,以获取相机的线性内参。线性内参为相机拍摄图像的待确认校正参数。处理模块42还用于根据所有的基础矩阵,建立目标函数。目标函数用于确定多张运动图像处于预设约束条件下的目标校正参数。处理模块42还用于将线性内参输入至目标函数,获取标定内参数。

应理解,处理模块42可以实现上述s331~s333及其可能的子步骤。

在可选的实施方式中,处理模块42还用于确定每个基础矩阵对应的非线性优化函数。非线性优化函数用于修正线性内参。处理模块42还用于根据所有的非线性优化函数和预设约束条件,确定目标函数。

应理解,处理模块42可以实现上述s332a~s332b及其可能的子步骤。

在可选的实施方式中,每张运动图像的序列标识包括每张运动图像的图像采集时间信息。处理模块42还用于确定多张运动图像中符合第一预设条件的至少三张关键图像。第一预设条件包括任意两张运动图像的重叠率大于或等于第一阈值,和/或任意两张运动图像的图像采集时间信息符合预设采集时间间隔。处理模块42还用于获取至少三张关键图像中的任意两张关键图像的基础矩阵。

应理解,处理模块42可以实现上述s321~s322及其可能的子步骤。

在可选的实施方式中,处理模块42还用于获取任意两张关键图像中的纹理符合第二预设条件的图像特征点。处理模块42还用于基于图像特征点的匹配关系确定基础矩阵。

应理解,处理模块42可以实现上述s322a~s322b及其可能的子步骤。

为了实现上述的相机标定方法,本发明实施例提供一种电子设备,如图7,图7为本发明实施例提供的一种电子设备的方框示意图。该电子设备60包括存储器61、处理器62和通信接口63。该存储器61、处理器62和通信接口63相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。存储器61可用于存储软件程序及模块,如本发明实施例所提供的相机标定方法对应的程序指令/模块,处理器62通过执行存储在存储器61内的软件程序及模块,从而执行各种功能应用以及数据处理。该通信接口63可用于与其他节点设备进行信令或数据的通信。在本发明中该电子设备60可以具有多个通信接口63。

其中,存储器61可以是但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。

处理器62可以是一种集成电路芯片,具有信号处理能力。该处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessing,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。

电子设备60可以实现本发明提供的任一种相机标定方法。需要说明的是,该电子设备60可以是集成在相机上的处理设备,实现对相机的在线标定;该电子设备60还可以是设置在载体上,并与相机连接的具有处理能力的处理设备;该电子设备60还可以是与相机保持即时通信连接的手机、平板电脑、笔记本电脑、服务器或其它具有处理能力的电子设备,以便实现对相机的在线标定。

在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

综上所述,本发明提供一种相机标定方法、装置、电子设备和计算机可读存储介质,涉及运动相机的图像处理领域。该相机标定方法包括:获取多张运动图像;多张运动图像是相机运动在预设轨迹时采集的具有纹理的图像;获取多张运动图像中任意两张图像之间的基础矩阵;基础矩阵表征任意两张图像中基于纹理的图像特征点匹配关系;根据所有的基础矩阵,获取相机的标定内参数;标定内参数为相机拍摄图像的目标校正参数。使用具有纹理的运动图像,继而获取图像之间的基础矩阵并获取相机的标定内参数,不需依赖场景,如棋盘格或特殊景物的限定,增加了获取相机的标定内参数的通用性;标定内参数用于拍摄图像的目标校正,减少了图像在后处理过程中的误差,使用相机拍摄目标物体并使用标定内参数进行图像处理,可以提高目标物体在2d/3d场景下的结构恢复精度和绝对定位精度。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。


技术特征:

1.一种相机标定方法,其特征在于,所述方法包括:

获取多张运动图像;所述多张运动图像是相机运动在预设轨迹时采集的具有纹理的图像;

获取所述多张运动图像中任意两张图像之间的基础矩阵;所述基础矩阵表征所述任意两张图像中基于所述纹理的图像特征点匹配关系;

根据所有的所述基础矩阵,获取所述相机的标定内参数;所述标定内参数为所述相机拍摄图像的目标校正参数。

2.根据权利要求1所述的方法,其特征在于,所述多张运动图像中的每张运动图像具有序列标识,所述根据所有的所述基础矩阵,获取所述相机的标定内参数,包括:

按照所述序列标识的顺序,依次解析所述每张运动图像对应的所述基础矩阵,以获取所述相机的线性内参;所述线性内参为所述相机拍摄图像的待确认校正参数;

根据所有的所述基础矩阵,建立目标函数;所述目标函数用于确定所述多张运动图像处于预设约束条件下的目标校正参数;

根据所述线性内参和所述目标函数,获取所述标定内参数。

3.根据权利要求2所述的方法,其特征在于,所述根据所有的所述基础矩阵,建立目标函数,包括:

确定每个所述基础矩阵对应的非线性优化函数;所述非线性优化函数用于修正所述线性内参;

根据所有的所述非线性优化函数和所述预设约束条件,确定所述目标函数。

4.根据权利要求2或3所述的方法,其特征在于,所述每张运动图像的序列标识包括所述每张运动图像的图像采集时间信息,所述获取所述多张运动图像中任意两张图像之间的基础矩阵,包括:

确定所述多张运动图像中符合第一预设条件的至少三张关键图像;所述第一预设条件包括任意两张运动图像的重叠率大于或等于第一阈值,和/或所述任意两张运动图像的图像采集时间信息符合预设采集时间间隔;

获取所述至少三张关键图像中的任意两张关键图像的基础矩阵。

5.根据权利要求4所述的方法,其特征在于,获取所述至少三张关键图像中的任意两张关键图像的基础矩阵,包括:

获取所述任意两张关键图像中的所述纹理符合第二预设条件的图像特征点;

基于所述图像特征点的匹配关系确定所述基础矩阵。

6.一种相机标定装置,其特征在于,所述装置包括:获取模块和处理模块;

所述获取模块,用于获取多张运动图像;所述多张运动图像是相机运动在预设轨迹时采集的具有纹理的图像;

所述处理模块,用于获取所述多张运动图像中任意两张图像之间的基础矩阵;所述基础矩阵表征所述任意两张图像中基于所述纹理的图像特征点匹配关系;

所述处理模块还用于根据所有的所述基础矩阵,获取所述相机的标定内参数;所述标定内参数为所述相机拍摄图像的目标校正参数。

7.根据权利要求6所述的装置,其特征在于,所述多张运动图像中的每张运动图像具有序列标识;所述处理模块还用于按照所述序列标识的顺序,依次解析所述每张运动图像对应的所述基础矩阵,以获取所述相机的线性内参;所述线性内参为所述相机拍摄图像的待确认校正参数;

所述处理模块还用于根据所有的所述基础矩阵,建立目标函数;所述目标函数用于确定所述多张运动图像处于预设约束条件下的目标校正参数;

所述处理模块还用于根据所述线性内参和所述目标函数,获取所述标定内参数。

8.根据权利要求7所述的装置,其特征在于,所述处理模块还用于确定每个所述基础矩阵对应的非线性优化函数;所述非线性优化函数用于修正所述线性内参;

所述处理模块还用于根据所有的所述非线性优化函数和所述预设约束条件,确定所述目标函数。

9.一种电子设备,其特征在于,包括处理器和存储器,所述存储器存储有能够被所述处理器执行的机器可执行指令,所述处理器可执行所述机器可执行指令以实现权利要求1-5中任一所述的方法。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-5中任一项所述的方法。

技术总结
本发明提供一种相机标定方法、装置、电子设备和计算机可读存储介质,涉及运动相机的图像处理领域。该相机标定方法包括:获取多张运动图像;多张运动图像是相机运动在预设轨迹时采集的具有纹理的图像;获取多张运动图像中任意两张图像之间的基础矩阵;基础矩阵表征任意两张图像中基于纹理的图像特征点匹配关系;根据所有的基础矩阵,获取相机的标定内参数;标定内参数为相机拍摄图像的目标校正参数。使用具有纹理的运动图像,继而获取图像之间的基础矩阵并获取相机的标定内参数,不需依赖场景,增加了获取相机的标定内参数的通用性;标定内参数用于拍摄图像的目标校正,减少了图像在后处理过程中的误差。

技术研发人员:袁睿
受保护的技术使用者:成都纵横自动化技术股份有限公司
技术研发日:2020.04.29
技术公布日:2020.06.05

转载请注明原文地址: https://bbs.8miu.com/read-48725.html

最新回复(0)