一种相机的标定方法,电子设备及存储介质与流程

文档序号:33127594发布日期:2023-02-01 05:58阅读:22来源:国知局
一种相机的标定方法,电子设备及存储介质与流程

1.本技术涉及相机标定领域,具体而言,涉及一种相机的标定方法,电子设备及存储介质。


背景技术:

2.相机可以大致分为三个部分:镜头、感光元件和处理电路。当光线透过镜头,会在感光元件上形成一个物体的“像”,这个过程类似于小孔成像原理,然后经过一系列处理就变成了电子图片。当然这种成像过程中会产生一定的误差(如图像的径向畸变),所以为了消除或者矫正这些误差,在相机出厂前通常需要进行相机标定,从而获得用于消除或者矫正这些误差的相机参数(如径向畸变系数)。
3.然而,发明人在实践中发现,目前的相机标定过程所计算出的径向畸变系数会存在局部过拟合的情况,进而使得估计出的径向畸变系数在整体上不够合理,影响相机的标定结果。


技术实现要素:

4.本技术实施例的目的在于提供一种相机的标定方法,电子设备及存储介质,以改善相机标定过程中径向畸变系数的局部过拟合,提高相机标定的精度。
5.本发明是这样实现的:
6.第一方面,本技术实施例提供一种相机的标定方法,包括:获取标定板图像的各网格点在像素坐标系下的第一坐标和在世界坐标系下的第二坐标,其中,所述标定板图像通过待标定相机采集;基于预设的中心点,将所述标定板图像在径向上等分为第一预设数量的区间;其中,每个所述区间中均包括多个所述网格点;从每个所述区间中提取第二预设数量的样本网格点,并对所述样本网格点的第一坐标和第二坐标进行处理,确定出所述待标定相机的径向畸变系数。
7.在本技术实施例中,通过将网格点的像素坐标和世界坐标在径向上等分,然后从径向上等分的各区间中抽取相同数量的样本网格点计算径向畸变系数,能够避免由于网格点在径向分布不均匀所导致的径向畸变系数局部过拟合现象,提高相机整体的标定精度。
8.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述从每个所述区间中提取第二预设数量的样本网格点,并对所述样本网格点的第一坐标和第二坐标进行处理,确定出所述待标定相机的径向畸变系数,包括:s1:从每个所述区间中提取所述第二预设数量的样本网格点;s2:对所述样本网格点的第一坐标和第二坐标进行处理,得到所述样本网格点对应的径向畸变系数;s3:基于所述样本网格点对应的径向畸变系数,确定每个所述区间中的剩余网格点的投影误差,并将所述剩余网格点的投影误差与预设阈值进行比较,统计投影误差小于所述预设阈值的剩余网格点的数量p
inlier
;其中,所述剩余网格点为每个所述区间中除所述样本网格点的其余网格点;s4:若p
inlier
>p
max
,则令p
max
=p
inlier
;其中,p
max
的初始值为预设值,p
max
表示投影误差小于所述预设阈值的剩余网格点的最大数量;
s5:重复上述步骤s1~s4,直至满足预设的迭代条件后,输出迭代后的p
max
,并基于与所述迭代后的p
max
对应的径向畸变系数,确定所述待标定相机的径向畸变系数。
9.由于网格点提取可能因为光照、像差、污渍等原因,提取出不准确的网格点,这类点会造成随机误差。而对网格点进行均匀化的处理,比如按区间均匀抽样,会减小计算径向畸变系数时的网格点的数量,使随机误差对计算结果造成影响,因此,本技术实施例中运用随机抽样一致性的思想,多次从径向上等分的各区间中抽取相同数量的样本网格点计算径向畸变系数,并在满足预设条件后,输出所确定出的待标定相机的径向畸变系数,通过该方式,能够过滤掉较大误差的样本网格点,减小随机误差干扰,进一步地提高径向畸变系数整体的估计精度和可靠性。
10.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述基于与所述迭代后的p
max
对应的径向畸变系数,确定所述待标定相机的径向畸变系数,包括:基于与所述迭代后的p
max
对应的径向畸变系数,获取与所述p
max
对应的所有目标网格点;其中,所述目标网格点为在与所述迭代后的p
max
对应的径向畸变系数下,投影误差小于所述预设阈值的剩余网格点;对所述目标网格点的第一坐标和第二坐标进行处理,得到所述待标定相机的径向畸变系数。
11.在本技术实施例中,在获取与p
max
对应的所有目标网格点后,再基于所有目标网格点计算待标定相机的径向畸变系数,通过该方式可以减少通过均匀抽样计算径向畸变系数引入的偶然误差。
12.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述迭代后的p
max
对应的径向畸变系数为所述待标定相机的径向畸变系数。
13.在本技术实施例中,直接将迭代后的p
max
对应的径向畸变系数确定为待标定相机的径向畸变系数,可以提高计算效率,减少电子设备处理压力。
14.结合上述第一方面提供的技术方案,在一些可能的实现方式中,所述预设的迭代条件包括:迭代次数达到预设次数,或所述投影误差小于所述预设阈值的剩余网格点的数量p
inlier
与所述剩余网格点的数量的比例大于预设比例值。
15.结合上述第一方面提供的技术方案,在一些可能的实现方式中,在所述确定出所述待标定相机的径向畸变系数之后,所述方法还包括:基于所述待标定相机的径向畸变系数校正所述待标定相机所采集的图像的畸变。
16.第二方面,本技术实施例提供一种相机的标定装置,包括:第一获取模块,用于获取标定板图像的各网格点在像素坐标系下的第一坐标和在世界坐标系下的第二坐标,其中,所述标定板图像通过待标定相机采集;第一处理模块,用于基于预设的中心点,将所述标定板图像在径向上等分为第一预设数量的区间;其中,每个所述区间中均包括多个所述网格点;从每个所述区间中提取第二预设数量的样本网格点,并对所述样本网格点的第一坐标和第二坐标进行处理,确定出所述待标定相机的径向畸变系数。
17.第三方面,一种计算机程序产品,包括计算机程序指令,所述计算机程序指令被处理器读取并运行时,执行如上述第一方面实施例提供的方法。
18.第四方面,本技术实施例提供一种电子设备,包括:处理器和存储器,所述处理器和所述存储器连接;所述存储器用于存储程序;所述处理器用于调用存储在所述存储器中的程序,执行如上述第一方面实施例提供的方法。
19.第五方面,本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器运行时执行如上述第一方面实施例提供的方法。
附图说明
20.为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
21.图1为现有技术中的相机标定过程的标定板图像的示意图。
22.图2为本技术实施例提供的一种电子设备的模块框图。
23.图3为本技术实施例提供的第一种相机的标定方法的步骤流程图。
24.图4为本技术实施例提供的一种相机的成像方法的步骤流程图。
25.图5为本技术实施例提供的一种相机的标定装置的模块框图。
26.图6为本技术实施例提供的一种相机的成像装置的模块框图。
27.图标:100-电子设备;110-处理器;120-存储器;200-相机的标定装置;210-第一获取模块;220-第一处理模块;300-相机的成像装置;310-第二获取模块;320-第二处理模块;330-去畸变模块。
具体实施方式
28.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。
29.随着智能设备的发展,相机成为了智能设备上必不可少的部件。相机可以大致分为三个部分:镜头、感光元件和处理电路。当光线透过镜头,会在感光元件上形成一个物体的“像”,这个过程类似于小孔成像原理,然后经过一系列处理就变成了电子图片。当然这种成像过程中会产生一定的误差(如图像的径向畸变),所以为了消除或者矫正这些误差,在相机出厂前通常需要进行相机标定,从而获得用于消除或者矫正这些误差的相机参数(如径向畸变系数)。
30.然而,发明人在实践中发现,目前的相机标定过程所计算出的径向畸变系数会存在局部过拟合的情况,进而使得估计出的径向畸变系数在整体上不够合理,影响相机的标定结果。经过研究发现,目前拍摄的标定板图像中的各个网格点在横轴(x轴)和纵轴(y轴)方向是均匀分布的,但是在径向上却不是均匀分布的。其中,径向分布可以理解为以图像其中一点为圆心,在半径(r)方向上的分布。由于网格点在径向上的不均匀分布,因此,采用所有网格点计算径向畸变系数时会导致径向畸变系数局部过拟合现象。比如,如图1所示,当以图像中心为圆心时,靠近圆心附近的各网格点的投影误差(0.4)明显大于远离圆心的各网格点的投影误差(0.2)。由于在以图像中心径向方向上的投影误差不均匀,进而容易导致径向畸变系数局部过拟合现象。
31.上述的问题的发现是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本发明实施例针对上述问题所提出的解决方案,都应该是发明人在本发明过程中对本发明做出的贡献。
32.请参阅图2,本技术实施例提供的一种应用后文所介绍的相机的标定方法或相机
的成像方法的电子设备100的示意性结构框图。本技术实施例中,电子设备100可以是包含相机的任意设备,比如电子设备100可以是但不限于智能手机、平板电脑、单反相机、摄像机等。当然,电子设备100也可以是与相机连接的任意设备,比如与相机连接的个人计算机等等。
33.在结构上,电子设备100可以包括处理器110、存储器120。
34.处理器110与存储器120直接或间接地电性连接,以实现数据的传输或交互,例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。后文所介绍的相机的标定装置或相机的成像装置包括至少一个可以软件或固件(firmware)的形式存储在存储器120中或固化在电子设备100的操作系统(operating system,os)中的软件模块。处理器110用于执行存储器120中存储的可执行模块,处理器110可以在接收到执行指令后,执行计算机程序。
35.其中,处理器110可以是一种集成电路芯片,具有信号处理能力。处理器110也可以是通用处理器,例如,可以是中央处理器(central processing unit,cpu)、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、分立门或晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。此外,通用处理器可以是微处理器或者任何常规处理器等。
36.存储器120可以是,但不限于,随机存取存储器(random access memory,ram)、只读存储器(read only memory,rom)、可编程只读存储器(programmable read-only memory,prom)、可擦可编程序只读存储器(erasable programmable read-only memory,eprom),以及电可擦编程只读存储器(electric erasable programmable read-only memory,eeprom)。存储器120用于存储程序,处理器110在接收到执行指令后,执行该程序。
37.需要说明的是,图2所示的结构仅为示意,本技术实施例提供的电子设备100还可以具有比图2更少或更多的组件,或是具有与图2所示不同的配置。此外,图2所示的各组件可以通过软件、硬件或其组合实现。
38.请参阅图3,图3为本技术实施例提供的相机的标定方法的步骤流程图,该方法应用于图2所示的电子设备100。需要说明的是,本技术实施例提供的相机的标定方法不以图3及以下所示的顺序为限制,该方法包括:步骤s101-步骤s103。
39.步骤s101:获取标定板图像的各网格点在像素坐标系下的第一坐标和在世界坐标系下的第二坐标,其中,标定板图像通过待标定相机采集。
40.具体的,工作人员需要将相机和标定板保持在固定的位置后保持静止不动。为了后续直接确定出相机的径向畸变系数,标定板的数量可以至少三个,且至少三个标定板处于不同的翻折角度。比如,可以采用图1中四块标定板的放置形式。在固定好标定板和相机后,通过相机对标定板进行拍照,以获取该标定板图像。通常在操作过程中,可以将标定板放置在图中的正中心。此外,为了得到质量较好的标定板图像,拍照时需要正确对焦、且合理的光照。
41.在得到标定板图像后,此时可以对该图像进行处理,处理方式可以包括图像滤波、求梯度图像和二次导图像。其中,通过图像滤波可以去除噪声,通过梯度图像和二次导图像可以便于提取出标定板图像的各网格点在像素坐标系下的第一坐标。此外,在确定标定板
图像的各网格点时,可以采用从左到右、从上到下的顺序依次对标定板图像的网格点进行确定,并剔除相邻距离小于预设值的误采集点。并且,为了提高坐标点的精度,还可以对得到的坐标的进行亚像素化。
42.需要说明的是,标定板图像中的各网格点在世界坐标系下的第二坐标由标定板的放置角度所决定。标定板图像中的各网格点在像素坐标系下的第一坐标为该图像中连续的坐标点,标定板图像中的各网格点在世界坐标系的第二坐标与各个标定板所确定的世界坐标系有关。比如,每个标定板以各自板体的左上角网格作为世界坐标系的原点,板体所在的平面对应世界坐标系的z轴为零,世界坐标系的x轴的方向为该标定板的宽的方向,世界坐标系的y轴的方向为该标定板的高的方向。此外,上述的标定板的尺寸及标定板中的世界坐标系的相关信息均由工作人员预先配制在电子设备中。
43.步骤s102:基于预设的中心点,将标定板图像在径向上等分为第一预设数量的区间;其中,每个区间中均包括多个网格点。
44.然后,对标定板图像上的网格点在径向上进行划分。上述的预设的中心点可以是图像的正中心,也可以是相机内参主点坐标,上述的第一预设数量可以根据实际需求而定,比如本技术实施例中,第一预设数量为6,当然,第一预设数量也可以是4、8、10等等,本技术不作限定。
45.示例性的,以标定板图像的正中心作为预设的中心,然后将标定板图像在径向上等分为6个区间。即,6个区间中的任意相邻的两个区间在径向方向的长度相等。通过该区间划分方式,使得所有的网格点均被分配到不同的区间中。而每个区间的网格点均包括各自在像素坐标系下的第一坐标和在世界坐标系下的第二坐标。
46.步骤s103:从每个区间中提取第二预设数量的样本网格点,并对样本网格点的第一坐标和第二坐标进行处理,确定出待标定相机的径向畸变系数。
47.在径向上划分好区间后,从每个区间中提取相同数量的样本网格点,进而基于张氏算法及预设的畸变算法对每个区间中的样本网格点计算,得到待标定相机的径向畸变系数。
48.其中,第二预设数量可以根据实际需求而定,比如本技术实施例中,第二预设数量可以为2,即,在每个区间中取2个样本网格点。当然,第二预设数量也可以是4,8,10等等。
49.需要说明的是,第二预设数量需要小于任意一个区间中的网格点的数量。因此,作为一种实施方式,在从每个区间中提取第二预设数量的样本网格点之前,需要确定出各个区间中的网格点数量,然后基于各个区间中的网格点数量确定出第二预设数量。
50.示例性的,设定的第二预设数量为8。在径向上划分好区间后,确定出各个区间中的网格点数量,若所有区间中的网格点数量均大于8,则从每个区间中提取出8个样本网格点。若其中一个区间的网格点数量小于8,比如该区间的网格点数量为6,则可以将小于该区间的网格点数量的任意数量作为第二预设数量,也可以是将该区间的网格点数量减去1的数值作为确定的第二预设数量,本技术不作限定。
51.上述的张氏算法的具体过程为:基于世界坐标系与相机自身的相机坐标系的关系,确定相机的外参;基于相机坐标系与像素坐标系的关系,确定相机的内参矩阵;基于标定板图像的各网格点的第一坐标及第二坐标、相机的外参和相机的内参矩阵拟合出相机的径向畸变系数的初始值。
52.需要说明的是,张氏算法进行标定的过程中涉及四种坐标系的转换。四种坐标系分别为:世界坐标系(world coordinate system)、相机坐标系(camera coordinate system)、图像坐标系(image coordinate system)及像素坐标系(pixel coordinate system)。
53.其中,世界坐标系为工作人员定义的三维世界的坐标系,为了描述目标物在真实世界里的位置而被引入。相机坐标系为在相机上自身建立的坐标系,为了从相机的角度描述物体位置而定义,其作为沟通世界坐标系和图像/像素坐标系的中间一环。图像坐标系为了描述成像过程中物体从相机坐标系到图像坐标系的投影透射关系而引入,方便进一步得到像素坐标系下的坐标。像素坐标系为了描述物体成像后的像点在数字图像上(相片)的坐标而引入,是真正从相机内读取到的信息所在的坐标系。
54.通过张氏算法能够准确地确定出相机的外参、内参矩阵及相机的径向畸变系数的初始值。
55.由于张氏算法的具体计算过程为本领域所熟知,因此,不作过多说明。
56.预设的畸变算法可以是rational model算法,也可以是brown-conrady model算法。
57.其中,rational model算法的表达式为:
[0058][0059][0060]
在公式(1)和(2)中,xd和yd表示在图像坐标系下带畸变的坐标;xu和yu表示在图像坐标系下无畸变的坐标;k1~k6表示径向畸变系数;p1和p2表示切向畸变系数。
[0061]
由于通常情况下,p1和p2的数值都较小,且切向畸变与制造、装配相机相关,因此,暂不考虑切向畸变,则公式(1)和(2)可以变为:
[0062][0063][0064]
其中,brown-conrady model算法的表达式为:
[0065][0066][0067]
需要说明的是,brown-conrady model算法和rational model算法的区别在于brown-conrady model算法仅包括径向畸变系数k1~k3,而rational model算法还包括径向畸变系数k4~k6,二者其他参数均相同,此处不作重复赘述。
[0068]
不考虑切向畸变,则公式(5)和(6)可以变为:
[0069]
xd=xu(1+k1r2+k2r4+k3r6)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0070]
yd=yu(1+k1r2+k2r4+k3r6)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(8)
[0071]
下面对基于每个区间中的样本网格点计算待标定相机的径向畸变系数的具体过程进行说明。其过程具体包括:步骤s11~步骤s14。
[0072]
步骤s11:基于样本网格点在世界坐标系下的第二坐标、相机的径向畸变系数的初始值,相机的内参矩阵和外参,以及预设的畸变算法确定每个网格点的预估投影点;其中,预估投影点为像素坐标系下的坐标点。
[0073]
步骤s12:计算每个样本网格点的预估投影点与每个网格点在像素坐标系下的第一坐标的误差值。
[0074]
步骤s13:对误差值进行优化,以得到优化后的径向畸变系数。
[0075]
步骤s14:将优化后的径向畸变系数代入步骤s11~s13中替换径向畸变系数的初始值,以确定再次优化后的径向畸变系数;以此类推进行迭代,直至满足截止条件后,输出与最新的误差值所对应的优化后的径向畸变系数;其中,输出的与最新的误差值所对应的优化后的径向畸变系数为待标定相机的径向畸变系数。
[0076]
上述的截止条件可以是指的误差值最小,也可以是误差值不再变化,也可以设定固定的迭代次数,比如十次、二十次、一百次等等,本技术不作限定。
[0077]
以预设的畸变算法为rational model算法进行说明,则上述步骤具体过程为:首先基于相机的外参和标定板图像的样本网格点在世界坐标系下的第二坐标确定标定板图像的样本网格点在图像坐标系下无畸变的坐标,计算无畸变的坐标的表达式为:
[0078][0079]
公式(9)中,[*]表示矩阵,(x,y,z)表示样本网格点在世界坐标系下的第二坐标;r和t为相机的外参,r具体为3*3的向量,t具体为3*1的向量;s为一任意数值的缩放因子。
[0080]
在计算得到样本网格点在图像坐标系下无畸变的坐标(xu,yu)后,再基于rational model算法,即公式(3)和公式(4)计算样本网格点在图像坐标系下带畸变的坐标(xd,yd)。然后,再计算每个样本网格点的预估投影点。其中,计算预估投影点的表达式为:
[0081][0082]
在公式(10)中,u
p
和v
p
表示样本网格点的预估投影点;表示内参矩阵,其中,f表示焦距、dx表示x方向的像元尺寸、dy表示y方向的像元尺寸,x0和y0表示主点坐标。
[0083]
然后,再计算每个样本网格点的预估投影点与各自对应的网格点在像素坐标系下
的第一坐标之间的第一误差值,然后将所有第一误差值进行堆叠,以得到误差值。
[0084]
其中,计算第一误差值的表达式为:
[0085][0086]
在公式(11)中,e
x
和ey表示一组第一误差值,u和v表示样本网格点的在像素坐标系下的第一坐标。由于上述向量的堆叠为本领域所熟知,此处不作过多说明。
[0087]
最后,调用优化器对误差值进行优化,进而得到优化后的径向畸变系数。需要说明的是,优化器进行的优化算法可以包括但不限于lm(levenberg

marquardt,莱文伯格-马夸特)算法,梯度下降法等。由于此类优化算法也为本领域所熟知,因此,此处不作过多说明。
[0088]
然后,将优化后的径向畸变系数代入步骤s11~s13中替换所述径向畸变系数的初始值,确定再次优化后的径向畸变系数;以此类推进行迭代,直至满足截止条件后,输出与最新的误差值所对应的优化后的径向畸变系数作为相机的径向畸变系数k1~k6。
[0089]
同理,当畸变算法为brown-conrady model算法时,可以参考上述示例,本技术不作赘述。
[0090]
综上,在本技术实施例中,通过将网格点的像素坐标和世界坐标在径向上等分,然后从径向上等分的各区间中抽取相同数量的样本网格点计算径向畸变系数,能够避免由于网格点在径向分布不均匀所导致的径向畸变系数局部过拟合线现象,提高相机整体的标定精度。
[0091]
由于网格点提取可能因为光照、像差、污渍等原因,提取出不准确的网格点,这类点会造成随机误差。而对网格点进行均匀化的处理,比如按区间均匀抽样,会减小计算径向畸变系数时的网格点的数量,使随机误差对计算结果造成影响。因此,本技术实施例还提供一种运用随机抽样一致性的思想,来确定出标定相机的径向畸变系数,即上述步骤s103具体包括:步骤s1~s5。
[0092]
s1:从每个区间中提取第二预设数量的样本网格点。
[0093]
s2:对样本网格点的第一坐标和第二坐标进行处理,得到样本网格点对应的径向畸变系数。
[0094]
其中,采用张氏算法及预设的畸变算法对样本网格点的第一坐标和第二坐标进行处理。需要说明的是,基于张氏算法及预设的畸变算法计算径向畸变系数的过程已经在前述实施例中说明,此处不作赘述,相同部分互相参考即可。
[0095]
s3:基于样本网格点对应的径向畸变系数,确定每个区间中的剩余网格点的投影误差,并将剩余网格点的投影误差与预设阈值进行比较,统计投影误差小于预设阈值的剩余网格点的数量p
inlier

[0096]
其中,剩余网格点为每个区间中除样本网格点的其余网格点。
[0097]
在基于样本网格点计算出对应的径向畸变系数后,再用此畸变系数计算剩余网格点的投影误差,即,通过公式(3)、(4)、(9)、(10)、(11)计算剩余网格点的投影误差,或通过公式(7)、(8)、(9)、(10)、(11)计算剩余网格点的投影误差。
[0098]
然后将剩余网格点的投影误差与预设阈值ε进行比较,统计投影误差小于预设阈
值ε的剩余网格点的数量p
inlier
。其中,预设阈值ε的数值可以根据实际需求设定,本技术不作限定。
[0099]
s4:若p
inlier
>p
max
,则令p
max
=p
inlier
;其中,p
max
的初始值为预设值,p
max
表示投影误差小于预设阈值的剩余网格点的最大数量。
[0100]
在计算出p
inlier
后,将其与p
max
进行比较。若p
inlier
>p
max
,则令p
max
=p
inlier
,若p
inlier
《p
max
,则p
max
不作处理。上述的预设值可以是0,1,也可以根据需求设定,本技术不作限定。
[0101]
s5:重复上述步骤s1~s4,直至满足预设的迭代条件后,输出迭代后的p
max
,并基于与迭代后的p
max
对应的径向畸变系数,确定待标定相机的径向畸变系数。
[0102]
其中,预设的迭代条件可以包括:迭代次数达到预设次数。
[0103]
预设次数可以是50次、100次等等,本技术不作限定。
[0104]
其中,预设的迭代条件还可以包括:投影误差小于预设阈值的剩余网格点的数量p
inlier
与剩余网格点的数量的比例大于预设比例值。
[0105]
预设比例值可以是50%,80%等等,本技术不作限定。
[0106]
作为一种实施方式,基于与迭代后的p
max
对应的径向畸变系数,确定待标定相机的径向畸变系数,可以具体包括:基于与迭代后的p
max
对应的径向畸变系数,获取与p
max
对应的所有目标网格点;其中,目标网格点为在与迭代后的p
max
对应的径向畸变系数下,投影误差小于预设阈值的剩余网格点;对目标网格点的第一坐标和第二坐标进行处理,得到待标定相机的径向畸变系数。
[0107]
其中,采用张氏算法及预设的畸变算法对目标网格点的第一坐标和第二坐标进行处理。
[0108]
即,在确定出p
max
后,查找在迭代期间与p
max
对应的p
inlier
,并获取该p
inlier
对应的所有目标网格点。然后基于所有的目标网格点,结合张氏算法及预设的畸变算法重新计算一次径向畸变系数,并将最终所计算出的进行畸变系数确定为待标定相机的径向畸变系数。通过该方式可以减少通过均匀抽样计算径向畸变系数引入的偶然误差。
[0109]
作为另一种实施方式,迭代后的p
max
对应的径向畸变系数为待标定相机的径向畸变系数。
[0110]
即,在确定出p
max
后,查找在迭代期间与p
max
对应的p
inlier
,然后直接以p
inlier
(每次迭代均标记有计算的径向畸变系数,即样本网格点的对应的径向畸变系数)对应的径向畸变系数为待标定相机的径向畸变系数。通过该方式,可以提高计算效率,减少电子设备处理压力。
[0111]
通过上述处理过程,可有效地改善图1所示出的投影误差不均匀的问题。即,通过上述处理过程,能够有效地抑制不均匀的投影误差。
[0112]
综上,本技术实施例运用随机抽样一致性的思想,多次从径向上等分的各区间中抽取相同数量的样本网格点计算径向畸变系数,并在满足预设条件后,输出所确定出的待标定相机的径向畸变系数,通过该方式,能够过滤掉较大误差的样本网格点,减小随机误差干扰,进一步地提高径向畸变系数整体的估计精度和可靠性。
[0113]
可选地,在确定出待标定相机的径向畸变系数之后,该方法还可以包括:基于待标定相机的径向畸变系数校正待标定相机所采集的图像的畸变。
[0114]
请参阅图4,基于同一发明构思,本技术实施例还提供一种相机的成像方法,该方
法同样可以应用于图2所示的电子设备100。需要说明的是,本技术实施例提供的相机的成像方法不以图4及以下所示的顺序为限制,该方法包括:步骤s201-步骤s204。
[0115]
步骤s201:获取标定板图像的各网格点在像素坐标系下的第一坐标和在世界坐标系下的第二坐标,其中,标定板图像通过待标定相机采集。
[0116]
步骤s202:基于预设的中心点,将标定板图像在径向上等分为第一预设数量的区间;其中,每个区间中均包括多个网格点。
[0117]
步骤s203:从每个区间中提取第二预设数量的样本网格点,并对样本网格点的第一坐标和第二坐标进行处理,确定出待标定相机的径向畸变系数。
[0118]
由于步骤s201~步骤s203与前述实施例中步骤s101~步骤s103相同,为了避免累赘,此处不作赘述,相同部分互相参考即可。
[0119]
步骤s204:基于待标定相机的径向畸变系数校正待标定相机所采集的图像的畸变。
[0120]
最后,相机即可基于径向畸变系数校正相机所采集的图像的畸变。示例性的,若采用改进后的rational model算法求取得到相机的径向畸变系数k1~k6,然后基于得到的径向畸变系数k1~k6计算预估投影点,此时的预估投影点即为去畸变后的实际点。若采用改进后的brown-conrady model算法求取得到相机的径向畸变系数k1~k3,然后基于得到的径向畸变系数k1~k3计算预估投影点,此时的预估投影点即为去畸变后的实际点。
[0121]
请参阅图5,基于同一发明构思,本技术实施例提供一种相机的标定装置200,包括:
[0122]
第一获取模块210,用于获取标定板图像的各网格点在像素坐标系下的第一坐标和在世界坐标系下的第二坐标,其中,所述标定板图像通过待标定相机采集。
[0123]
第一处理模块220,用于基于预设的中心点,将所述标定板图像在径向上等分为第一预设数量的区间;其中,每个所述区间中均包括多个所述网格点;从每个所述区间中提取第二预设数量的样本网格点,并对所述样本网格点的第一坐标和第二坐标进行处理,确定出所述待标定相机的径向畸变系数。
[0124]
请参阅图6,本技术实施例提供一种相机的成像装置300,包括:
[0125]
第二获取模块310,用于获取标定板图像的各网格点在像素坐标系下的第一坐标和在世界坐标系下的第二坐标,其中,所述标定板图像通过待标定相机采集。
[0126]
第二处理模块320,用于基于预设的中心点,将所述标定板图像在径向上等分为第一预设数量的区间;其中,每个所述区间中均包括多个所述网格点;从每个所述区间中提取第二预设数量的样本网格点,并对所述样本网格点的第一坐标和第二坐标进行处理,确定出所述待标定相机的径向畸变系数。
[0127]
去畸变模块330,用于基于所述待标定相机的径向畸变系数校正所述待标定相机所采集的图像的畸变。
[0128]
需要说明的是,由于所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0129]
基于同一发明构思,本技术实施例还提供一种计算机程序产品,包括计算机程序指令,所述计算机程序指令被处理器读取并运行时,执行上述实施例提供的方法。
[0130]
基于同一发明构思,本技术实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序在被运行时执行上述实施例中提供的方法。
[0131]
该存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如软盘、硬盘、磁带)、光介质(例如dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
[0132]
在本技术所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0133]
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0134]
再者,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0135]
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
[0136]
以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1