线矫正镜头失真的代数方法外文翻译资料

 2022-08-14 02:08

英语原文共 15 页,剩余内容已隐藏,支付完成后下载完整资料


线矫正镜头失真的代数方法

Luis Alvarez·Luis Goacute;mez·J.Rafael Sendra

摘要:通常用于照相机投影的针孔模型的一个重要特性是将场景中的3D线投影为2D线。不幸的是,广角镜(特别是低成本的镜头)可能会产生强烈的镜筒畸变,从而使通常的针孔模型失效。镜头失真模型试图纠正这种失真。在本文中,我们提出了一种基于图像中线条校正的代数方法来估计镜头畸变参数。使用所提出的方法,可以通过将几个变量中的4个总度多项式最小化来获得镜头畸变参数。我们使用校准模式和真实场景执行数字实验,以显示所提出方法的性能。

关键词:子午线畸变·边缘线矫正·线性回归·代数方法·最小残留方差

1简介

通常,广角镜头容易受到镜筒变形的影响,远摄镜头容易受到枕形失真的影响。在变焦镜头的末端,两种效果都趋于增强,尤其是在低成本紧凑型相机,网络摄像头,鱼眼镜头等上。

在使用针孔模型的相机校准中,镜头畸变校正是一个重要问题(例如,参见[1、2]或[3])。桶形和销形缓冲变形补偿的基本标准模型(例如,参见[4、5]或[6])是由以下表达式给出的径向变形模型:

(1)

其中是原始点坐标(失真),是校正后的(未失真)点坐标,是相机失真模型的中心,通常是图像的中心(实际上,在本文中,我们始终将图像的中心作为失真中心),和是定义失真模型形状的函数。通常,由泰勒展开式近似,即,其中,集合为失真参数。该模型的复杂性由我们用来近似的泰勒展开项的数量给出。

在本文中,我们通过强加要求图像中3D线的投影必须为2D直线来确定。这种方法在[7-11]中已经成功地使用了线性方程或距离函数表示的目标误差函数。在本文中,我们提出了一种使用新的镜头畸变测量误差来获得畸变参数模型的快速技术。我们公式的主要优点是,它可以产生失真参数的一般4阶多项式,可以使用强大的计算机代数技术将其最小化。使用代数方法,可以直接找到(有界的)三参数模型情况下(即且)的失真度量误差函数的全局最小值。作为所提出方法的特定应用,我们还展示了如何以迭代方式使用此技术来估计具有更多参数的镜头畸变模型。

镜头失真通过以下方式包含在相机校准模型中:给定由旋转矩阵R定义的相机,焦点且三位矩阵参数A为3times;3,则相机中3D点的投影由以下表达式给出:,

其中在(1)中定义,而s是通常的投影因子值。在的情况下,相机模型没有镜头失真,并且上面的表达式成为通常的“针孔”投影模型,其中相机中3D点X的投影由线的截取给出与视网膜平面。我们观察到,在像素图像坐标中执行了镜头失真校正。为了使镜头变形模型成为像素坐标中的径向函数,我们需要假设相机CCD传感器具有正方形像素。实际上,大多数现代数码相机都可以满足这个正方形像素大小的假设。另一方面,如果我们使用归一化坐标而不是像素坐标,则可以删除该正方形大小的假设,但是要归一化点坐标,我们需要知道相机的固有参数。由于我们假设相机固有参数未知,因此我们已根据像素坐标对镜头畸变校正进行了公式化。

为了精确地校准摄像机,通常使用线性技术来获得摄像机参数的初始估计,然后使用束调整来提高参数估计的准确性。束调整基于非线性最小化,其中观察到的和预测的图像点之间的均方误差最小。通常失真模型是包括在束调整参数最小化中(有关更多详细信息,请参见例如[12])。从这个意义上讲,我们提出的方法可用于在束调整过程中快速获得畸变模型的初始估计。

本文的组织如下:在第2节我们介绍了本文提出的失真误差的度量;在第3节我们提出了失真误差的建议措施的代数分析;在第4节我们分析了用于估计失真参数的算法实现的数值方面;在第5节专门介绍了进行的数值实验;最后,在第6节我们提出一些结论。

2失真误差的度量

令(其中且)是N个3D对齐点在投影中的投影。在2D图像中,使为使用变形模型(1)的校正点(不失真),并且失真参数。对于每条线l和每一个点i,我们用和表示,接管i的各个变量的平均值。我们还考虑由我们在本文中提出的镜头畸变度量基于以下引理:

引理1

(2)

然后是并且当且仅当对于每条线l,点都对齐。

证明通过使用Cauchy-Schwarz不等式(参见实例[13]),我们可以得出:对于任何行l等式仅在变量成比例时才成立。存在使得对于任何。因此,特别是点是对齐的,从而得出引理的证明。

根据这个引理,我们提出将镜头畸变测度作为镜头畸变参数k,必须使其功能E(circ;k)最小。

接下来,我们将证明是系数k的4度多项式。实际上,使用失真模型(1),我们得到:

其中,和,i是接管i的各个变量的平均值,而是给出的矩阵:

(3)

因此,可以将失真误差量度表示为

(4)

它是4阶齐次多项式,变量k。

当然,的全局最小值对应于平凡解。为了避免这个问题,通常将k0设置为1()。正如在Sect中所解释的。参见图4,在本文中,我们使用另一种方法:通过最小化畸变点和未畸变点之间的平方距离之和,使用缩放因子拟合k0。

3失真误差测度的代数分析

在本节中,我们展示如何通过计算机代数技术来解决该问题。为了简化说明,我们给出具有实系数的多项式的结果,但是必须说,它们在更一般的多项式环上是有效的。有关此主题的更多详细信息,请参考[14]或[15]。

如第2节所述,需要最小化失真误差测量函数,它是变量k中的实多项式。可以减少多项式中多项式的最小值,以计算代数方程组的解,即由其梯度生成的方程组。在我们的情况下:。

正如将在第4节中解释的那样,参数被以不同的方式估计为缩放因子,因此上述代数系统不包括相对于的的导数。

当多项式为单变量时,例如说是变量,则只需逼近单变量多项式的实根。

但是,当出现多个变量时,问题就不那么容易了。为了应对这种新情况,可以在执行数值方法之前应用计算机代数技术来象征性地准备代数系统S。可以使用符号线性代数技术来处理二变量情况,而对于两个以上变量的情况,通常需要抽象代数技术。在这两种情况下,下划线理论都来自代数几何和可交换代数。为了更精确,我们首先详细描述在考虑两个变量时如何解决该问题,然后我们简要介绍在一般情况下如何进行处理。

因此,让我们假设我们正在使用两个变量,例如。观察到在使用两个失真参数时情况就是这样,并且系统S变为

为了计算S的解,我们应用了所谓的基于结果的方法。让我们描述这种方法。为此,令和是两个具有实系数的双变量多项式。选择一个变量,例如,作为主变量,我们可以将和写,

其中和是具有实系数的单变量多项式,,不等于零,且ngt;0且mgt;0。在这种情况下,将和相对于变量(我们用表示)的结果定义为Sylvester矩阵

观察到是变量中的实数单变量多项式。因此,变量已被消除。就我们的目的而言,有关结果的主要适用属性如下。

定理1令,如上,令。然后,它假定

1.当且仅当和具有共同的非恒定因子时,等于零。

2.如果是公共根和,则。

3.如果,则以下语句之一为

3.1,

3.2,使得是和的共同根。

证明见定理4.3.3,p.98,在[14]中。

定理1的几何含义如下(有关更多详细信息,请参见2.3节中的[16])。令,和G如上。然后,我们可以将和视为坐标平面中的曲线。在这种情况下,G的根是两条曲线的交点的坐标(见图1)。此外,G的实根包含两条曲线的实际交点的坐标。

为了应用定理1,首先请注意,在的构造中,我们要求,并且。让我们看到,作为积算,这并不是出于我们的目的而失去一般性。实际上,如果(类似地,如果),则仅取决于。然后,如果,则也是单变量的,并且的实解是两个多项式的最大公约数的实根。另一方面,如果,则对于一元多项式的每个实根,必须确定一元多项式的实根。也就是说,如果,,则实数解系统是

图1所得G的几何解释

此外,如果满足以下条件:

  1. 满足程度的条件(即且),
  2. (即两个多项式的最大公约数均为1),
  3. 且或是一个常数多项式(请注意,根据定义,和并不等于零),

那么定理1意味着系统的所有解(特别是实数解)(}可以从的根获得;此过程称为提升过程。

我们已经看到假设(i)(见上文)可以假设为w.l.o.g.让我们看看如何一般地进行假设(ii)和(iii)。

  • 假设(ii):如果,则将,除以D得到一个满足gcd条件的两个新多项式,即和,并且是D=0的解,而的解是有限的。此外请注意,由于在我们的情况下多项式来自经验数据,因此最可预期的情况是多项式是互质的,即其gcd为1。
  • 假设(iii):如果多项式,都不是常数,则可以检查是否将作为该属性持有的主要变量。如果对于变量和均不满足要求,则可以总是应用坐标的线性变化,以使新多项式验证该属性;注意,将坐标线性变化的逆应用于新系统的解,可以得到初始系统的解。为了确定性地选择坐标的线性变化,我们进行如下操作:我们将多项式之一(例如)表示为齐次多项式的总和(回想一下,二元多项式是r的齐次多项式其中t是一个新变量:

其中是i度的齐次。因此,收集总度为i的中的所有项;或等效地,是在(0,0)附近的泰勒展开的i度部分。

在这种情况下,如果使得,则加上较低阶项,因此达到要求。

下一个命题表明,在我们的情况下,假设(iii)成立,除了一些非现实的点分布配置。

命题2:如果对于某行l,点不对齐,则假设(iii)成立。

由(4)证明,在特定的失真模型下,其中。

因此是常数,并且由于,则当且仅当对于每行l,点在一条线上。特别是对于每条线l,都存在,,使得对于每个i,,因此点位于一条线上。因此,我们得出了命题和假设(iii)成立的陈述。

备注:我们观察到,如果对于所有线l,点对齐,则镜头的镜头畸变使用变换完全校正所有行:

(5)

但是,除了的情况之外,此变换不适合模型(1),因为在(5)中距离r是相对于而是点计算的,并且不像(1)那样相对于转换。的情况是不现实的配置,因为在实践中,在实际图像中,失真中心位于像素图像中心附近(远超过(0,0)。另一方面,我们观察到可以在分析中切换p和q的角色,如果对于一行l,则点对齐,也对齐(与),那么我们很容易得出结论,该线具有微不足道的配置,即该线仅由1个或2个点或点组成,N1位于经过(0,0)的行中。

综上所述,可以得出以下算法计算S的实解,我们假设w.l.o.g.假设(i),(ii)和(iii)成立。注意,一旦知道了这些解决方案,就可以在紧凑的分析集中最小化失真误差测量函数。

1.确定和。

2.确定并近似的实根。令是G的实根的集合。

3.对于每个,近似单变量多项式和的公共实根。令为这些实际共同根的集合。

4.S的实解为。

在一般情况下,即当使用sgt;2个变量(例如kp1,...,kps)时,不能直接通过结果来解决问题。但是,可以使用Grouml;bner基础技术或多元结果(更多信息请参见[17]和[14])。当然,Grouml;bner基础技术也可以应用于两个变量的情况,但是在这种情况下,我们发现更适合基于结果的方法。作为解决代数系统的工具,Grouml;bner基础的基本思想是提供一个等价于S(即相同的解)但更简单的新的代数方程组,并具有合适的结构(“粗略地说,当方程不是线性的时,Grouml;bner基可以看作是高斯消去的推广。作为将来的研究工作,我们将Grouml;bner基方法的应用留给当前问题。

4算法

使用以上介绍的技术,我们可以估计任意一对的失真参数。实际上,我们可以通过优化任意一对失真参数来更新任何先前的失真参数估计。确实,给定失真参数的估计值k,我们可以写成其中,是,的累加更新我们可以使用上一节介绍的代数方法来减小关于,的镜头畸变测度。一旦估计了,,我们就可以通过添加,来更新和。

在的情况下计算失真参数k。为了产生尽可能接近失真点的未失真点,我们估计缩放系数以最小化失真点和校正后(未失真)点之间的平方距离之和。让我们为这样的缩放系数,那么我们有:

我们最小化:

一个简单的计算导致

上述函数的最小值以,最后我们将多项式(即k)更新为将所有系数乘以smin(即)。

这种方法的一个有趣的优点是,未失真图像的分辨率与原始(失真)图像的分辨率相似。如果我们需要从原始失真的图像生成未失真的图像,这是非常有用的属性。

因此,可以通过以下步骤构造用于执行数字实验的派生算法:

1.我们使用具有亚像素精度的边缘检测算法来计算图像的边缘。

2.我们选择一些对应于不同3D直线段的边缘点集合,这些集合将用于拟合变形参数。

3.我们初始化。

4.我们选择任意对,并使用建议的代数技术对,进行优化。

5.我们使用缩放因子更新k,以使失真和未失真的点尽可能接近。

为了计算图像边缘

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[235605],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。