CN110738707A - 一种相机的畸变校正方法及装置、设备、存储介质 - Google Patents

一种相机的畸变校正方法及装置、设备、存储介质 Download PDF

Info

Publication number
CN110738707A
CN110738707A CN201910983234.5A CN201910983234A CN110738707A CN 110738707 A CN110738707 A CN 110738707A CN 201910983234 A CN201910983234 A CN 201910983234A CN 110738707 A CN110738707 A CN 110738707A
Authority
CN
China
Prior art keywords
distortion
orthodontic
pixel
pixel coordinates
array image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910983234.5A
Other languages
English (en)
Other versions
CN110738707B (zh
Inventor
郭建亚
李骊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing HJIMI Technology Co Ltd
Original Assignee
Beijing HJIMI Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing HJIMI Technology Co Ltd filed Critical Beijing HJIMI Technology Co Ltd
Priority to CN201910983234.5A priority Critical patent/CN110738707B/zh
Publication of CN110738707A publication Critical patent/CN110738707A/zh
Application granted granted Critical
Publication of CN110738707B publication Critical patent/CN110738707B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/80Analysis of captured images to determine intrinsic or extrinsic camera parameters, i.e. camera calibration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30204Marker
    • G06T2207/30208Marker matrix

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

本申请公开了一种相机的畸变校正方法及装置、设备、存储介质。本方法获取相机采集的平面阵列图像和对平面阵列图像矫正畸变得到的正畸平面阵列图像,获取平面阵列图像中的预设特征点的像素坐标,作为畸变像素坐标,获取正畸平面阵列图像中的预设特征点的像素坐标,作为正畸像素坐标。依据正畸像素坐标,获取预设特征点的预测像素坐标,至少依据畸变像素坐标和预测像素坐标,计算相机的畸变参数,使用畸变参数,校正相机采集的图像。从上述步骤可以看出,畸变参数的计算过程,只需使用像素坐标,因此,无需引入相机的外参和除畸变参数外的其它内参,所以,能够显著减小计算量。

Description

一种相机的畸变校正方法及装置、设备、存储介质
技术领域
本申请涉及电子信息领域,尤其涉及一种相机的畸变校正方法及装置、设备、存储介质。
背景技术
由于相机的镜头存在畸变,因此,为了避免畸变对于相机采集的图像的影响,通常需要对图像进行畸变校正。
现有的畸变校正方法,定义在图像坐标系,因此,除畸变参数外,还需要对相机的内参例如焦距和主点等,以及外参,例如世界坐标系到图像坐标系的转换矩阵等进行标定。并且,图像去畸变的过程也需要这些参数的参与。因此,现有的相机的畸变校正方法的计算量大。
发明内容
本申请提供了一种相机的畸变校正方法及装置、设备、存储介质,目的在于解决的相机的畸变校正方法的计算量大问题。
为了实现上述目的,本申请提供了以下技术方案:
一种相机的畸变校正方法,包括:
获取平面阵列图像和正畸平面阵列图像,所述平面阵列图像由相机采集,所述正畸平面阵列图像为将对所述平面阵列图像矫正畸变得到;
获取所述平面阵列图像中的预设特征点的像素坐标,作为畸变像素坐标;
获取所述正畸平面阵列图像中的所述预设特征点的像素坐标,作为正畸像素坐标;
依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标;
至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数;
使用所述畸变参数,校正所述相机采集的图像。
可选地,依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标,包括:
获取预测行直线,其中,所述正畸平面阵列图像中的第i行正畸像素对应的预测行直线由斜率i和参考点i的像素坐标确定,所述斜率i为所述第i行正畸像素的行拟合直线的斜率,所述参考点i为第i行正畸像素中,距离预设的主点最近的正畸像素点,或者,距离所述行拟合直线的垂线最近的正畸像素点,所述垂线为经过所述主点且与所述行拟合直线垂直的直线;
获取预测列直线,其中,所述正畸平面阵列图像中的第j列正畸像素对应的预测列直线由斜率j和参考点j的像素坐标确定,所述斜率j为第j列正畸像素的列拟合直线的斜率,所述参考点j为所述第j列正畸像素中,距离预设的主点最近的正畸像素点,或者,距离所述列拟合直线的垂线最近的正畸像素点,所述列拟合直线的垂线为经过所述主点且与所述列拟合直线垂直的直线;
将所述预测行直线与所述预测列直线的交点,作为所述预测像素坐标。
可选地,至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数,包括:
将所述畸变像素坐标和所述预测像素坐标代入预设的畸变模型,得到第一畸变方程组;所述畸变模型用于表示所述畸变像素坐标和所述预测像素坐标,依据所述畸变参数产生的变换关系;
通过求解方程组的最小二乘解,得到所述畸变参数,所述方程组至少包括所述第一畸变方程组。
可选地,方程组还包括:
第二畸变方程组,所述第二畸变组方程通过将预设的虚拟特征点的预测像素坐标和畸变像素坐标代入所述畸变模型得到。
可选地,至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数,还包括:
在确定所述畸变参数之后,如果所述畸变参数不收敛,则执行以下流程,迭代计算所述畸变参数,直至所述畸变参数收敛:通过使用上一次迭代过程得到的所述畸变参数对所述平面阵列图像进行校正,更新所述正畸平面阵列图像,获取所述正畸平面阵列图像中的所述预设特征点的像素坐标,作为正畸像素坐标;依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标;至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的所述畸变参数。
可选地,畸变参数收敛的条件包括以下至少一项:
计算所述畸变参数的迭代次数达到预设数值;
当前迭代过程得到的所述畸变参数的值,与上一次迭代过程得到的所述畸变参数的值的偏差小于第一预设阈值;
当前畸变像素坐标与历史畸变像素坐标的偏差小于第二预设阈值,所述当前畸变像素坐标使用当前迭代过程得到的所述畸变参数以及预设的真实像素坐标确定,所述历史畸变像素坐标使用上一次迭代过程得到的所述畸变参数以及所述真实像素坐标确定;
使用当前迭代过程得到的所述正畸参数确定的所述预测像素坐标与所述正畸像素坐标的偏差小于第三预设阈值。
可选地,畸变模型中的所述畸变参数包括:
多阶径向畸变模型阶数、径向畸变参数、以及切向畸变参数。
一种相机的畸变校正装置,包括:
图像获取单元,用于获取平面阵列图像和正畸平面阵列图像,所述平面阵列图像由相机采集,所述正畸平面阵列图像为将对所述平面阵列图像矫正畸变得到;
第一坐标获取单元,用于获取所述平面阵列图像中的预设特征点的像素坐标,作为畸变像素坐标;
第二坐标获取单元,用于获取所述正畸平面阵列图像中的所述预设特征点的像素坐标,作为正畸像素坐标;
第三坐标获取单元,用于依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标;
畸变参数计算单元,用于至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数;
图像矫正单元,用于使用所述畸变参数,校正所述相机采集的图像。
一种相机的畸变校正设备,包括:存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于执行所述程序,实现如上所述的相机的畸变校正方法的各个步骤。
一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上所述的相机的畸变校正方法的各个步骤。
本申请所述的技术方案,获取相机采集的平面阵列图像和对平面阵列图像矫正畸变得到的正畸平面阵列图像,获取平面阵列图像中的预设特征点的像素坐标,作为畸变像素坐标,获取正畸平面阵列图像中的预设特征点的像素坐标,作为正畸像素坐标。依据正畸像素坐标,获取预设特征点的预测像素坐标,至少依据畸变像素坐标和预测像素坐标,计算相机的畸变参数,使用畸变参数,校正相机采集的图像。从上述步骤可以看出,畸变参数的计算过程,只需使用像素坐标,因此,无需引入相机的外参和和除畸变参数外的其它内参,所以,能够显著减小计算量。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的相机的畸变校正***的结构示意图;
图2为本申请实施例公开的一种相机的畸变校正方法流程图;
图3示例了一种平面阵列图;
图4为本申请实施例公开的采用直线拟合的方式获取预设特征点的预测像素坐标的流程图;
图5为本申请实施例公开的一种计算相机的畸变参数的方法流程图;
图6为本申请实施例公开的一种相机的畸变校正装置的结构示意图;
图7为本申请实施例公开的一种相机的畸变校正设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例公开的相机的畸变校正***,包括平面阵列图案,相机以及计算设备。相机拍摄平面阵列图案得到平面阵列图像,用相机拍摄其它场景得到场景图像,平面阵列图像及场景图像统称为原始图像(即带畸变的图像)。
其中,计算设备内部包括畸变校正单元,畸变校正单元运行本申请提供的相机的畸变校正方法。
图2为本申请实施例公开的一种相机的畸变校正方法,包括以下步骤:
S201:获取平面阵列图像和正畸平面阵列图像。
其中,平面阵列图像为相机采集平面阵列图案得到的图像。平面阵列图案的示例如图3所示,可以为黑白棋盘格图案(图3左)或者圆形阵列图案(图3右)。
正畸平面阵列图像为对平面阵列图像进行畸变校正后的图像。具体的,使用畸变参数对平面阵列图像进行畸变校正,本实施例中,畸变参数的初始值设置为0,在此情况下,初始正畸平面阵列图像即为平面阵列图像。
当然,也可以设置畸变参数的初始值为其它的经验值,并使用其它的经验值对平面阵列图像进行畸变校正,得到初始正畸平面阵列图像。
当然,还可以使用其它方式,得到正畸平面阵列图像,这里不做限定。
S202:获取平面阵列图像中的预设特征点的像素坐标,作为畸变像素坐标。
其中,预设特征点依据平面阵列图案的特点选取。例如,对于黑白棋盘格,将各个单元格的左上角作为预设特征点,可以采用角点检测的方法检测预设特征点的像素坐标。对于圆形阵列图案,将圆形的中心作为预设特征点,可以采用圆形检测及圆心求取的方法检测预设特征点的像素坐标。
以上具体的检测算法可以参见现有技术。可选的,在检测到预设特征点的像素坐标之后,还可以使用亚像素插值方法得到更加精确的预设特征点的像素坐标,具体可参见现有技术,这里不再赘述。
设平面阵列图像为其分辨率为N×M,N为垂直方向分辨率,M为水平方向分辨率。假设平面阵列图案包含n行m列个阵列单元(如棋盘图案的一个单元格或圆形图案的一个圆形),假设每个阵列单元包含一个预设特征点(以下简称为特征点)。设i为阵列单元在阵列中的行号,i=1,2,…,n;设j为阵列单元在阵列中的列号,j=1,2,…,m;设t=i·m+j。则原始平面阵列图像中,第t个阵列单元的特征点的像素坐标记为
Figure BDA0002235883180000061
为了后续叙述区分的需要,将平面阵列图像中的作为预设特征点的像素,称为畸变像素,该步骤获得的像素坐标也称为畸变像素坐标。
S203:获取正畸平面阵列图像中的预设特征点的像素坐标,作为正畸像素坐标。
设正畸平面阵列图像为
Figure BDA0002235883180000062
其分辨率亦为N×M。使用与平面阵列图像相同的检测方式,得到正畸平面阵列图像中的预设特征点的像素坐标。第t个阵列单元特征点的像素坐标表示为
Figure BDA0002235883180000063
为了后续叙述区分的需要,将正畸平面阵列图像中的作为预设特征点的像素,称为正畸像素,该步骤获得的像素坐标也称为正畸像素坐标。
S204:依据正畸像素坐标,获取预设特征点的预测像素坐标。
具体的,可以采用直线拟合的方式获取预设特征点的预测像素坐标:
获取预测行直线,其中,正畸平面阵列图像中的第i行正畸像素对应的预测行直线由斜率i和参考点i的像素坐标确定,斜率i为第i行正畸像素的行拟合直线的斜率,参考点i为第i行正畸像素中,距离预设的主点最近的正畸像素点,或者,距离行拟合直线的垂线最近的正畸像素点,行拟合直线的垂线为经过主点且与行拟合直线垂直的直线。
获取预测列直线,其中,正畸平面阵列图像中的第j列正畸像素对应的预测列直线由斜率j和参考点j的像素坐标确定,斜率j为第j列正畸像素的列拟合直线的斜率,参考点j为第j列正畸像素中,距离预设的主点最近的正畸像素点,或者,距离列拟合直线的垂线最近的正畸像素点,列拟合直线的垂线为经过主点且与列拟合直线垂直的直线。
将预测行直线与所述预测列直线的交点,作为预测像素坐标。
其中,预设的主点的像素坐标(u0,v0)可以用其它的相机内参标定方法得到,具体可参见现有技术,也可以用图像正中心的像素坐标(0.5M+0.5,0.5N+0.5)近似表示,其中N为图像垂直方向的分辨率,M为图像水平方向的分辨率。
获取预设特征点的预测像素坐标的更为详细的实现步骤如图4所示的流程。
在后续描述中,将第t个阵列单元特征点的预测像素坐标表示为Pt=(ut,vt)。
S205:至少依据畸变像素坐标和预测像素坐标,计算相机的畸变参数。
具体的,畸变模型用于表示畸变像素坐标和预测像素坐标,依据畸变参数产生的变换关系。
可选的,本实施例中,畸变模型如式(1)所示:
上式中,q为径向畸变模型阶数;k1,k2,…,kq为径向畸变参数;p1,p2为切向畸变参数;
Figure BDA0002235883180000082
为畸变像素坐标;u,v为理想像素坐标;u0,v0为图像主点的像素坐标;R为像素坐标归一化系数,是一个常数。
在本实施例中,可以使用如下公式计算畸变模型中的常数R:
R=0.5(M2+N2)0.5
上式中M和N分别为图像水平分辨率和垂直分辨率,采用该公式意味着R的值设置为图像对角线长度的一半。
因此,将畸变像素坐标和预测像素坐标代入畸变模型,得到方程组,通过求解方程组的最小二乘解,获得畸变参数。
具体的求解过程可以参见现有技术。
可选的,为了防止过拟合且得到最优解,如图5所示,可以将虚拟特征点也作为计算依据,计算畸变参数,畸变参数的具体计算流程。
S206:使用畸变参数,校正相机采集的图像。
设去畸变图像为I,其分辨率为N×M,N为垂直方向分辨率,M为水平方向分辨率。设l=i·M+j,第i行j列像素坐标表示为(ul,vl),显然ul=j,vl=i。图像去畸变方法流程为:
A1.利用求得的畸变参数,以去畸变图的第i行j列像素(ul,vl)为理想像素坐标,代入公式(1)计算出对应的畸变像素坐标
A2.根据畸变像素坐标从原始图像I中取出该位置的邻域像素。
A3.根据邻域像素的像素值进行像素插值得到原始图像中像素坐标
Figure BDA0002235883180000085
处的新像素值像素插值可以采用最近邻插值、双线性插值或者双三次插值等方法实现。
A 4.用
Figure BDA0002235883180000087
的值填充去畸变图像中第i行j列像素I(ul,vl)的值。
需要说明的是,以上畸变校正方法仅为示例,也可以使用现有的其它方式,依据畸变参数,校正图像。
图2所示的相机的畸变校正方法,具有以下有效果:
1、使用像素坐标进行运算,而非图像坐标,畸变标定过程可实现畸变参数独立计算从而去除了对除畸变参数外的其它内参和外参的依赖关系,图像去畸变过程也只有畸变参数参与,计算量降低。
2、因为是基于像素坐标的,所以,只需一张平面阵列图像即可进行畸变参数的标定,而无需使用不用角度拍摄的多张平面阵列图像,因此,计算效率较高。
3、现有的相机畸变标定方法大多都不考虑切向畸变,因此不能对相机的切向畸变做校正。本实施例的畸变模型中包括切向畸变参数,所以能够对相机的高阶切向畸变进行校正。
4、现有的相机畸变标定方法采用的径向畸变模型的阶数较低,大多只支持1~3阶径向畸变,只能校正比较小的径向畸变,不适合对鱼眼相机进行畸变校正。本实施例中的畸变模型中径向畸变的阶数k可设置,可支持4阶及以上径向畸变,因此可对鱼眼相机进行畸变校正。
图4为采用直线拟合的方式获取预设特征点的预测像素坐标的具体流程,包括以下步骤:
设正畸平面阵列图像中第i行阵列单元特征点集合表示为
Figure BDA0002235883180000092
按S401-S404求取第i行阵列单元特征点的预测行直线:
S401:使用直线拟合法,确定点集Si的最佳拟合直线(即行拟合直线),假设该直线斜率为γi
S402:求取经过主点(u0,v0)且与该最佳拟合直线垂直的直线方程u=-γiv+(u0iv0),该直线称为行拟合直线的垂线。
S403:求取Si中距离行拟合直线的垂线最近的点,假设其像素坐标为(αii)。
S404:求取经过点(αii)且斜率为γi的直线的方程v=γiu+(βiiαi),该直线称为第i行阵列单元特征点的预测行直线。
在相机的畸变较小的情况下,在求取第i行阵列单元特征点的预测直线的过程中,S403可以用求取Si中距离主点(u0,v0)最近的点的方法替代,以减少计算量。
设正畸平面阵列图像
Figure BDA0002235883180000101
中第j列阵列单元特征点集合为
Figure BDA0002235883180000102
按S405-S408求取第j列阵列单元特征点的预测列直线:
S405:用直线拟合方法求得该点集的最佳拟合直线(即列拟合直线),假设该直线斜率为
Figure BDA0002235883180000103
S406:求取经过主点(u0,v0)且与该最佳拟合直线垂直的直线方程
Figure BDA0002235883180000104
该直线称为列拟合直线的垂线。
S407:求取Tj中距离列拟合直线的垂线最近的点,假设其像素坐标为(ρjj)。
S408:求取经过点(ρjj)且斜率为
Figure BDA0002235883180000105
的直线的方程
Figure BDA0002235883180000106
该直线称为第j列阵列单元特征点的预测列直线。
在相机的畸变较小的情况下,在求取第j列阵列单元特征点的预测直线的过程中,S407可以用求取Si中距离主点(u0,v0)最近的点的方法替代,以减少计算量。
S409:将预测行直线与预测列直线的交点,作为预测像素坐标。
具体的,因为第i行j列阵列单元的预测像素坐标(ut,vt)是两条预测直线的交点,将其坐标代入两个直线方程得:
vt=γiut+(βiiαi)
Figure BDA0002235883180000107
则第i行j列阵列单元的预测像素坐标(ut,vt)是以上二元一次方程组的解。
图4所示的流程中,只使用了线性算法,即可得到预测像素坐标,因此,计算速度快并易于硬件实现。
图5为本申请实施例公开的至少依据畸变像素坐标和预测像素坐标,计算相机的畸变参数的流程,包括以下步骤:
S501:设置初始畸变参数为0,即初始正畸平面阵列图像为平面阵列图像。
S502:获取预设的虚拟特征点的预测像素坐标和畸变像素坐标。
现有的畸变矫正方法矫正后的图像中,距离主点较远的像素点,通常还会存在较大的畸变,为了解决该问题,本实施例中,选取平面阵列图像中的边缘像素点作为虚拟特征点,并从平面阵列图像中获取虚拟特征点的畸变像素坐标,从正畸平面阵列图像的预测像素坐标中,获取虚拟特征点的预测像素坐标。
S503:将畸变像素坐标和预测像素坐标代入预设的畸变模型,得到第一畸变方程组。
畸变像素坐标即当前平面阵列图像中的预设特征点的像素坐标。预测像素坐标即当前正畸平面阵列图像中的预设特征点的像素坐标。
S504:将虚拟特征点的预测像素坐标和畸变像素坐标代入畸变模型,得到第二畸变方程组。
S505:通过求解第一畸变方程组和第二方程畸变组的最小二乘解,得到畸变参数。
具体的,令w=m·n,根据各单元特征点的预测像素坐标和畸变像素坐标,将预测像素坐标作为理想像素坐标,代入畸变模型公式(1)可得如下第一畸变方程组:
Figure BDA0002235883180000111
Figure BDA0002235883180000112
以上两式中,xt=(ut-u0)R-1,yt=(vt-v0)R-1,
根据虚拟特征点的预测像素坐标和畸变像素坐标,将预测像素坐标作为理想像素坐标,代入畸变模型公式(1)可得如下第二畸变方程组
Figure BDA0002235883180000122
以上两式中,Xt=(Ut-u0)R-1,Yt=(Vt-v0)R-1,
Figure BDA0002235883180000124
将w个特征点以及c个虚拟特征点的畸变公式(2)(3)(4)(5)联立起来,同时为了降低虚拟特征点对于畸变参数的贡献,将公式(4)和(5)的等号两边各乘以一个较小的权值εs,其中0≤εs≤1,s=1,2,...,c,可构建如下线性方程组:
Figure BDA0002235883180000123
令f=[k1 … kq p1 p2]T,记以上线性方程组为Af=b,可得畸变参数的最小二乘解为:
f=(ATA)-1ATb (7)
S506:判断畸变参数是否收敛,如果是,结束流程,如果否,执行S507。
收敛则说明畸变参数已接近最优解。
具体的,畸变参数收敛的条件包括以下至少一项:
1、计算畸变参数的迭代次数达到预设数值。
2、当前迭代过程得到的畸变参数的值,与上一次迭代过程得到的畸变参数的值的偏差小于第一预设阈值。
3、当前畸变像素坐标与历史畸变像素坐标的偏差小于第二预设阈值。
其中,当前畸变像素坐标使用当前迭代过程得到的畸变参数以及预设的真实像素坐标确定,历史畸变像素坐标使用上一次迭代过程得到的畸变参数以及真实像素坐标确定。
真实像素坐标为已知的真实坐标像素,例如,平面阵列图像的4个顶点的像素的坐标:(U1,V1)=(1,1),(U2,V2)=(M,1),(U3,V3)=(M,N),(U4,V4)=(1,N)。
4、使用当前迭代过程得到的正畸参数确定的预测像素坐标与正畸像素坐标的偏差小于第三预设阈值。
即当前迭代过程所使用的正畸平面阵列图像的正畸像素坐标和由此计算出的相应预测像素坐标的偏差。
S507:使用计算得到的畸变参数对平面阵列图像进行校正,得到新的正畸平面阵列图像,并使用新的正畸平面阵列图像代替前一次迭代过程中使用的正畸平面阵列图像,以更新正畸平面阵列图像。返回执行S502。
需要说明的是,c个虚拟特征点的权值εs可以不一样,并且可以随着每轮迭代其值做相应地改变。
例如,采用4个虚拟特征点,4个虚拟特征点权值被设置为固定值0.003,即εs≡0.003,s=1,2,...,4。或者,采用2个虚拟特征点,这2个虚拟特征点权值的初始值设置为ε1=0.004,ε2=0.005,在每轮迭代过程计算完畸变参数后,ε1和ε2的值均增加0.001。
可选的,为了保证防止过拟合的手段具有良好的效果,本实施例中,也可以,将畸平面阵列图像的4个顶点的像素作为虚拟特征点,在此情况下,可以将4个顶点的像素的实际像素坐标作为虚拟特征点的预测像素坐标:即虚拟特征点的预测像素坐标始终为(U1,V1)=(1,1),(U2,V2)=(M,1),(U3,V3)=(M,N),(U4,V4)=(1,N)。
每一步迭代过程中,计算出畸变参数后,将4个虚拟特征点的预测像素坐标作为理想像素坐标分别代入公式(1),求得4个畸变像素坐标并以此更新4个虚拟特征点的畸变像素坐标,作为下一轮迭代过程的虚拟特征点的畸变像素坐标。
图5所示的流程具有以下有益效果:
1、为了避免畸变参数计算中的过拟现象,而导致的去畸变后的图像中距离主点比较远的位置扭曲变形严重的问题,本实施例中,采用除预设特征点外的额外约束条件(即虚拟特征点)防止最优化畸变参数求解过程出现过拟合,避免了去畸变后的图像中距离主点比较远的位置出现扭曲变形。
2、在得到最小二乘解后,更新正畸平面阵列图像,以迭代计算畸变参数,直至收敛,从而得到最优的畸变参数。
图6为本申请实施例公开的一种相机的畸变校正装置,包括:
图像获取单元601,用于获取平面阵列图像和正畸平面阵列图像,所述平面阵列图像由相机采集,所述正畸平面阵列图像为将对所述平面阵列图像矫正畸变得到;
第一坐标获取单元602,用于获取所述平面阵列图像中的预设特征点的像素坐标,作为畸变像素坐标;
第二坐标获取单元603,用于获取所述正畸平面阵列图像中的所述预设特征点的像素坐标,作为正畸像素坐标;
第三坐标获取单元604,用于依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标;
畸变参数计算单元605,用于至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数;
图像矫正单元606,用于使用所述畸变参数,校正所述相机采集的图像。
可选地,第三坐标获取单元用于依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标,包括:
所述第三坐标获取单元具体用于:
获取预测行直线,其中,所述正畸平面阵列图像中的第i行正畸像素对应的预测行直线由斜率i和参考点i的像素坐标确定,所述斜率i为所述第i行正畸像素的行拟合直线的斜率,所述参考点i为第i行正畸像素中,距离预设的主点最近的正畸像素点,或者,距离所述行拟合直线的垂线最近的正畸像素点,所述垂线为经过所述主点且与所述行拟合直线垂直的直线;
获取预测列直线,其中,所述正畸平面阵列图像中的第j列正畸像素对应的预测列直线由斜率j和参考点j的像素坐标确定,所述斜率j为第j列正畸像素的列拟合直线的斜率,所述参考点j为所述第j列正畸像素中,距离预设的主点最近的正畸像素点,或者,距离所述列拟合直线的垂线最近的正畸像素点,所述列拟合直线的垂线为经过所述主点且与所述列拟合直线垂直的直线;
将所述预测行直线与所述预测列直线的交点,作为所述预测像素坐标。
可选地,畸变参数计算单元用于至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数,包括:
所述畸变参数计算单元具体用于:
将所述畸变像素坐标和所述预测像素坐标代入预设的畸变模型,得到第一畸变方程组;所述畸变模型用于表示所述畸变像素坐标和所述预测像素坐标,依据所述畸变参数产生的变换关系;
通过求解方程组的最小二乘解,得到所述畸变参数,所述方程组至少包括所述第一畸变方程组。
可选地,方程组还包括:
第二畸变方程组,所述第二畸变组方程通过将预设的虚拟特征点的预测像素坐标和畸变像素坐标代入所述畸变模型得到。
可选地,畸变参数计算单元用于至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数,还包括:
所述畸变参数计算单元具体用于:
在确定所述畸变参数之后,如果所述畸变参数不收敛,则执行以下流程,迭代计算所述畸变参数,直至所述畸变参数收敛:通过使用上一次迭代过程得到的所述畸变参数对所述平面阵列图像进行校正,更新所述正畸平面阵列图像,获取所述正畸平面阵列图像中的所述预设特征点的像素坐标,作为正畸像素坐标;依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标;至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的所述畸变参数。
可选地,畸变参数收敛的条件包括以下至少一项:
计算所述畸变参数的迭代次数达到预设数值;
当前迭代过程得到的所述畸变参数的值,与上一次迭代过程得到的所述畸变参数的值的偏差小于第一预设阈值;
当前畸变像素坐标与历史畸变像素坐标的偏差小于第二预设阈值,所述当前畸变像素坐标使用当前迭代过程得到的所述畸变参数以及预设的真实像素坐标确定,所述历史畸变像素坐标使用上一次迭代过程得到的所述畸变参数以及所述真实像素坐标确定;
使用当前迭代过程得到的所述正畸参数确定的所述预测像素坐标与所述正畸像素坐标的偏差小于第三预设阈值。
可选地,畸变模型中的所述畸变参数包括:
多阶径向畸变模型阶数、径向畸变参数、以及切向畸变参数。
本申请实施例还公开了一种相机的畸变校正设备,请参阅图7,示出了该相机的畸变校正设备的结构示意图,该设备可以包括:至少一个处理器701,至少一个通信接口702,至少一个存储器703和至少一个通信总线704;
在本申请实施例中,处理器701、通信接口702、存储器703、通信总线704的数量为至少一个,且处理器701、通信接口702、存储器703通过通信总线704完成相互间的通信;
处理器701可能是一个中央处理器CPU,或者是特定集成电路ASIC
(Application Specific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;
存储器703可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory)等,例如至少一个磁盘存储器;
其中,存储器存储有程序,处理器可调用存储器存储的程序,所述程序用于:
获取平面阵列图像和正畸平面阵列图像,所述平面阵列图像由相机采集,所述正畸平面阵列图像为将对所述平面阵列图像矫正畸变得到;
获取所述平面阵列图像中的预设特征点的像素坐标,作为畸变像素坐标;
获取所述正畸平面阵列图像中的所述预设特征点的像素坐标,作为正畸像素坐标;
依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标;
至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数;
使用所述畸变参数,校正所述相机采集的图像。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
本申请实施例还公开了一种可读存储介质,该可读存储介质可存储有适于处理器执行的程序,所述程序用于:
获取平面阵列图像和正畸平面阵列图像,所述平面阵列图像由相机采集,所述正畸平面阵列图像为将对所述平面阵列图像矫正畸变得到;
获取所述平面阵列图像中的预设特征点的像素坐标,作为畸变像素坐标;
获取所述正畸平面阵列图像中的所述预设特征点的像素坐标,作为正畸像素坐标;
依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标;
至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数;
使用所述畸变参数,校正所述相机采集的图像。
可选的,所述程序的细化功能和扩展功能可参照上文描述。
本申请实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (10)

1.一种相机的畸变校正方法,其特征在于,包括:
获取平面阵列图像和正畸平面阵列图像,所述平面阵列图像由相机采集,所述正畸平面阵列图像为将对所述平面阵列图像矫正畸变得到;
获取所述平面阵列图像中的预设特征点的像素坐标,作为畸变像素坐标;
获取所述正畸平面阵列图像中的所述预设特征点的像素坐标,作为正畸像素坐标;
依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标;
至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数;
使用所述畸变参数,校正所述相机采集的图像。
2.根据权利要求1所述的方法,其特征在于,所述依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标,包括:
获取预测行直线,其中,所述正畸平面阵列图像中的第i行正畸像素对应的预测行直线由斜率i和参考点i的像素坐标确定,所述斜率i为所述第i行正畸像素的行拟合直线的斜率,所述参考点i为第i行正畸像素中,距离预设的主点最近的正畸像素点,或者,距离所述行拟合直线的垂线最近的正畸像素点,所述垂线为经过所述主点且与所述行拟合直线垂直的直线;
获取预测列直线,其中,所述正畸平面阵列图像中的第j列正畸像素对应的预测列直线由斜率j和参考点j的像素坐标确定,所述斜率j为第j列正畸像素的列拟合直线的斜率,所述参考点j为所述第j列正畸像素中,距离预设的主点最近的正畸像素点,或者,距离所述列拟合直线的垂线最近的正畸像素点,所述列拟合直线的垂线为经过所述主点且与所述列拟合直线垂直的直线;
将所述预测行直线与所述预测列直线的交点,作为所述预测像素坐标。
3.根据权利要求1所述的方法,其特征在于,所述至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数,包括:
将所述畸变像素坐标和所述预测像素坐标代入预设的畸变模型,得到第一畸变方程组;所述畸变模型用于表示所述畸变像素坐标和所述预测像素坐标,依据所述畸变参数产生的变换关系;
通过求解方程组的最小二乘解,得到所述畸变参数,所述方程组至少包括所述第一畸变方程组。
4.根据权利要求3所述的方法,其特征在于,所述方程组还包括:
第二畸变方程组,所述第二畸变组方程通过将预设的虚拟特征点的预测像素坐标和畸变像素坐标代入所述畸变模型得到。
5.根据权利要求3所述的方法,其特征在于,所述至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数,还包括:
在确定所述畸变参数之后,如果所述畸变参数不收敛,则执行以下流程,迭代计算所述畸变参数,直至所述畸变参数收敛:通过使用上一次迭代过程得到的所述畸变参数对所述平面阵列图像进行校正,更新所述正畸平面阵列图像,获取所述正畸平面阵列图像中的所述预设特征点的像素坐标,作为正畸像素坐标;依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标;至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的所述畸变参数。
6.根据权利要求5所述的方法,其特征在于,所述畸变参数收敛的条件包括以下至少一项:
计算所述畸变参数的迭代次数达到预设数值;
当前迭代过程得到的所述畸变参数的值,与上一次迭代过程得到的所述畸变参数的值的偏差小于第一预设阈值;
当前畸变像素坐标与历史畸变像素坐标的偏差小于第二预设阈值,所述当前畸变像素坐标使用当前迭代过程得到的所述畸变参数以及预设的真实像素坐标确定,所述历史畸变像素坐标使用上一次迭代过程得到的所述畸变参数以及所述真实像素坐标确定;
使用当前迭代过程得到的所述正畸参数确定的所述预测像素坐标与所述正畸像素坐标的偏差小于第三预设阈值。
7.根据权利要求3所述的方法,其特征在于,畸变模型中的所述畸变参数包括:
多阶径向畸变模型阶数、径向畸变参数、以及切向畸变参数。
8.一种相机的畸变校正装置,其特征在于,包括:
图像获取单元,用于获取平面阵列图像和正畸平面阵列图像,所述平面阵列图像由相机采集,所述正畸平面阵列图像为将对所述平面阵列图像矫正畸变得到;
第一坐标获取单元,用于获取所述平面阵列图像中的预设特征点的像素坐标,作为畸变像素坐标;
第二坐标获取单元,用于获取所述正畸平面阵列图像中的所述预设特征点的像素坐标,作为正畸像素坐标;
第三坐标获取单元,用于依据所述正畸像素坐标,获取所述预设特征点的预测像素坐标;
畸变参数计算单元,用于至少依据所述畸变像素坐标和所述预测像素坐标,计算相机的畸变参数;
图像矫正单元,用于使用所述畸变参数,校正所述相机采集的图像。
9.一种相机的畸变校正设备,其特征在于,包括:存储器和处理器;
所述存储器,用于存储程序;
所述处理器,用于执行所述程序,实现如权利要求1~7中任一项所述的相机的畸变校正方法的各个步骤。
10.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1~7中任一项所述的相机的畸变校正方法的各个步骤。
CN201910983234.5A 2019-10-16 2019-10-16 一种相机的畸变校正方法及装置、设备、存储介质 Active CN110738707B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910983234.5A CN110738707B (zh) 2019-10-16 2019-10-16 一种相机的畸变校正方法及装置、设备、存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910983234.5A CN110738707B (zh) 2019-10-16 2019-10-16 一种相机的畸变校正方法及装置、设备、存储介质

Publications (2)

Publication Number Publication Date
CN110738707A true CN110738707A (zh) 2020-01-31
CN110738707B CN110738707B (zh) 2023-05-26

Family

ID=69269060

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910983234.5A Active CN110738707B (zh) 2019-10-16 2019-10-16 一种相机的畸变校正方法及装置、设备、存储介质

Country Status (1)

Country Link
CN (1) CN110738707B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111387987A (zh) * 2020-03-26 2020-07-10 苏州沃柯雷克智能***有限公司 一种基于图像识别的身高测量方法、装置、设备及存储介质
CN111415314A (zh) * 2020-04-14 2020-07-14 北京神工科技有限公司 一种基于亚像素级视觉定位技术的分辨率修正方法及装置
CN112947885A (zh) * 2021-05-14 2021-06-11 深圳精智达技术股份有限公司 一种曲面屏展平图像的生成方法及装置
CN113115017A (zh) * 2021-03-05 2021-07-13 上海炬佑智能科技有限公司 3d成像模组参数检验方法以及3d成像装置
CN113284189A (zh) * 2021-05-12 2021-08-20 深圳市格灵精睿视觉有限公司 畸变参数标定方法、装置、设备及存储介质
CN113298699A (zh) * 2021-05-27 2021-08-24 上海电机学院 鱼眼图像校正方法
CN113689413A (zh) * 2021-08-30 2021-11-23 深圳市睿达科技有限公司 一种对齐校正方法、装置及计算机可读存储介质
CN113822937A (zh) * 2020-06-18 2021-12-21 中移(苏州)软件技术有限公司 一种图像校正方法、装置、设备及存储介质
CN113838138A (zh) * 2021-08-06 2021-12-24 杭州灵西机器人智能科技有限公司 一种优化特征提取的***标定方法、***、装置和介质
CN114331814A (zh) * 2021-12-24 2022-04-12 合肥视涯技术有限公司 一种畸变画面校正方法及显示设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105701776A (zh) * 2016-01-07 2016-06-22 武汉精测电子技术股份有限公司 一种用于自动光学检测的镜头畸变矫正方法及***
CN105957041A (zh) * 2016-05-27 2016-09-21 上海航天控制技术研究所 一种广角镜头红外图像畸变校正方法
CN108245788A (zh) * 2017-12-27 2018-07-06 苏州雷泰医疗科技有限公司 一种双目测距装置及方法、包括该装置的加速器放疗***
CN108986172A (zh) * 2018-07-25 2018-12-11 西北工业大学 一种面向小景深***的单视图线性摄像机标定方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105701776A (zh) * 2016-01-07 2016-06-22 武汉精测电子技术股份有限公司 一种用于自动光学检测的镜头畸变矫正方法及***
CN105957041A (zh) * 2016-05-27 2016-09-21 上海航天控制技术研究所 一种广角镜头红外图像畸变校正方法
CN108245788A (zh) * 2017-12-27 2018-07-06 苏州雷泰医疗科技有限公司 一种双目测距装置及方法、包括该装置的加速器放疗***
CN108986172A (zh) * 2018-07-25 2018-12-11 西北工业大学 一种面向小景深***的单视图线性摄像机标定方法

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111387987A (zh) * 2020-03-26 2020-07-10 苏州沃柯雷克智能***有限公司 一种基于图像识别的身高测量方法、装置、设备及存储介质
CN111415314A (zh) * 2020-04-14 2020-07-14 北京神工科技有限公司 一种基于亚像素级视觉定位技术的分辨率修正方法及装置
CN113822937B (zh) * 2020-06-18 2024-01-26 中移(苏州)软件技术有限公司 一种图像校正方法、装置、设备及存储介质
CN113822937A (zh) * 2020-06-18 2021-12-21 中移(苏州)软件技术有限公司 一种图像校正方法、装置、设备及存储介质
CN113115017B (zh) * 2021-03-05 2022-03-18 上海炬佑智能科技有限公司 3d成像模组参数检验方法以及3d成像装置
CN113115017A (zh) * 2021-03-05 2021-07-13 上海炬佑智能科技有限公司 3d成像模组参数检验方法以及3d成像装置
CN113284189A (zh) * 2021-05-12 2021-08-20 深圳市格灵精睿视觉有限公司 畸变参数标定方法、装置、设备及存储介质
CN112947885A (zh) * 2021-05-14 2021-06-11 深圳精智达技术股份有限公司 一种曲面屏展平图像的生成方法及装置
CN112947885B (zh) * 2021-05-14 2021-08-06 深圳精智达技术股份有限公司 一种曲面屏展平图像的生成方法及装置
CN113298699A (zh) * 2021-05-27 2021-08-24 上海电机学院 鱼眼图像校正方法
CN113838138A (zh) * 2021-08-06 2021-12-24 杭州灵西机器人智能科技有限公司 一种优化特征提取的***标定方法、***、装置和介质
CN113689413A (zh) * 2021-08-30 2021-11-23 深圳市睿达科技有限公司 一种对齐校正方法、装置及计算机可读存储介质
CN114331814A (zh) * 2021-12-24 2022-04-12 合肥视涯技术有限公司 一种畸变画面校正方法及显示设备

Also Published As

Publication number Publication date
CN110738707B (zh) 2023-05-26

Similar Documents

Publication Publication Date Title
CN110738707A (zh) 一种相机的畸变校正方法及装置、设备、存储介质
CN107633536B (zh) 一种基于二维平面模板的相机标定方法及***
US9153014B2 (en) Image correction method and related image correction system thereof
CN109754434B (zh) 相机标定方法、装置、用户设备及存储介质
CN109544643B (zh) 一种摄像机图像校正方法及装置
US20090141148A1 (en) Distortion-corrected image generation unit and distortion-corrected image generation method
CN107657595B (zh) 一种畸变校正方法及移动终端和相关介质产品
JP2010041419A (ja) 画像処理装置、画像処理プログラム、画像処理方法、および電子機器
CN112241976A (zh) 一种训练模型的方法及装置
CN109547692B (zh) 图像姿态矫正方法、设备及终端
CN112258418A (zh) 图像畸变校正方法、装置、电子设备和存储介质
CN112862895B (zh) 一种鱼眼摄像头标定方法、装置及***
CN109887002A (zh) 图像特征点的匹配方法、装置、计算机设备和存储介质
CN112470192A (zh) 双摄像头标定方法、电子设备、计算机可读存储介质
CN109102524B (zh) 图像特征点的跟踪方法和跟踪装置
JP2021086616A (ja) ランダムサンプリング一貫性に基づく魚眼画像の有効領域抽出方法
CN114187188A (zh) 图像矫正方法、装置及电子设备
CN115439571A (zh) 一种适用于线阵推扫式卫星影像核线影像生成方法及装置
CN116012241A (zh) 图像畸变校正方法、装置、计算机设备和存储介质
CN113962892A (zh) 校正广角镜头图像畸变的方法、装置及照相设备
CN115705651A (zh) 视频运动估计方法、装置、设备和计算机可读存储介质
JP4020093B2 (ja) 縁検出方法及び装置及びプログラム及び記憶媒体及び枠検出方法及び装置及びプログラム及び記憶媒体
CN111028296B (zh) 球机焦距值估算方法、装置、设备及存储装置
JP7210337B2 (ja) 画像処理装置、及び、歪み補正係数算出方法
CN116012242A (zh) 一种相机畸变矫正效果评价方法、装置、介质及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant