文章:A COMPREHENSIVE OVERVIEW OF FISH-EYE CAMERA DISTORTION CORRECTION METHODS
作者:Jian Xu, De-Wei Han, Kang Li, Jun-Jie Li,Zhao-Yuan Ma
编辑:点云PCL
文章仅做学术分享,如有侵权联系删文。
文章未申请原创,侵权或转载联系微信cloudpoint9527。
摘要
鱼眼摄像头以其独特的广阔视场和其他特点,在各个领域得到了广泛应用。然而,与针孔相机相比,鱼眼摄像头存在显著的畸变,导致拍摄的图像失畸变严重。鱼眼摄像头畸变是数字图像处理中常见的问题,需要有效的校正技术来提高图像质量。本综述全面概述了用于鱼眼摄像头畸变校正的各种方法。文章探讨了多项式畸变模型,该模型利用多项式函数对径向畸变进行建模和校正。此外,还讨论了全景映射、网格映射、直接方法和基于深度学习的方法等替代方法。综述突出了每种方法的优势、局限性和最新进展,使读者能够根据其特定需求做出明智的决策。
介绍
鱼眼镜头因其广阔的视场和独特的视觉效果,在摄影、计算机视觉、机器人学和虚拟现实等各个领域中都变得越来越受欢迎。然而这些镜头通常会对拍摄的图像引入显著的畸变,这可能使对象的形状变形并降低图像质量。为了克服这一挑战,人们开发了鱼眼摄像头畸变校正方法,以纠正图像并恢复其原始外观。
鱼眼摄像头畸变的校正是数字图像处理中的一项关键任务。它涉及应用数学模型和算法来补偿鱼眼镜头引入的非线性畸变。校正畸变可以提高测量的准确性,促进准确的物体识别,并增强各种应用的整体图像质量。本综述旨在全面概述用于校正鱼眼摄像头畸变的不同方法。该综述将涵盖传统方法和较新方法,讨论它们的基本原理、优势、局限性和潜在应用。
相机投影模型
鱼眼相机的成像过程通常近似为一个单位球投影模型。鱼眼相机的成像过程可以分解为两个步骤:首先,将空间中的三维点线性投影到虚拟单位球上;然后,将单位球上的点投影到图像平面上,这是一个非线性过程。在鱼眼相机的背景下,有四个常用的投影模型:等距投影模型、等角投影模型、正交投影模型和立体投影模型。
等距投影模型
等距投影模型假设通过镜头的光线并投影到图像传感器上的光线与光轴成等角。在此投影模型中,相机坐标系中的三维点(X、Y、Z)与二维图像坐标(u、v)之间的映射可以表达如下:
这里,(θ, φ) 表示单位球上的球坐标,r 是光学中心到点的径向距离,(u, v) 表示归一化图像坐标,f 是鱼眼镜头的焦距。
等角投影模型
等角投影模型通常用于使用鱼眼镜头捕捉全景或360度图像。它涉及使用等角网格将单位球上的3D点映射到2D图像坐标。在这个投影模型中,单位球上的3D点 (X, Y, Z) 与2D图像坐标 (u, v) 之间的映射可以表示如下:
这里,(θ, φ) 表示单位球上的球坐标,而 (u, v) 表示归一化的图像坐标,取值范围从 0 到 1。
正交投影模型
正交投影模型是一种摄像机投影模型,假设场景中的光线是平行且垂直于图像平面的。在这个模型中,3D 点直接投影到 2D 图像上,没有任何透视失真。3D 点 (X, Y, Z) 在相机坐标系中与 2D 图像坐标 (u, v) 之间的映射可以表示如下:
这里,(u, v) 代表图像坐标,(X, Y) 代表相机坐标系中的 3D 点。
立体投影模型
立体投影模型具有保存角度的特性,这是数学中一种称为保角性的理想特性。保角性意味着任何相交线所形成的角度在变换后保持不变,尽管这些线本身可能会变成曲线。在保角变换下,圆仍然保持为圆(其中一条直线可以被认为是半径无限的圆)。因此,在模拟的场景中,圆柱表面上的所有边界线都被变换成了圆弧,并且所有相交线形成的角度保持在90度。
畸变校正方法
相机畸变是由相机的镜头、传感器或其他因素引起的图像透视变形。有几种类型的畸变,包括径向畸变、切向畸变以及非线性畸变。相机畸变校正的目的是将相机捕获的畸变图像转换为类似针孔相机产生的理想图像。这种校正旨在提高图像的准确性,增强其视觉质量,并满足各种应用的特定要求。在计算机视觉中使用鱼眼相机通常需要先进的畸变校正方法,以确保进行准确可靠的图像分析。鱼眼镜头引入了显著的畸变,可能影响测量的准确性、对象识别和场景理解。在本节中,我们讨论了各种用于鱼眼相机畸变校正的最新方法,旨在将畸变的鱼眼图像转换为经过校正的图像,使其类似于理想针孔相机捕获的图像。
畸变类型
对称径向畸变:对称径向畸变通常是在讨论图像畸变时想象到的。通常情况下,这种类型的畸变将根据其是否为正向(凹形)或负向(凸形)而特征化。
非对称径向畸变 :非对称径向畸变是类似于上述的径向畸变效应,但与对称径向畸变不同,非对称径向畸变表征的是依赖于图像中心距离以及被成像对象距离有多远的畸变效应。非对称径向效应在两种情况下最为显著:具有长焦距和非常短的相对物体距离的相机。例如,捕捉非常近的许多对象的远场望远镜镜头。通过高折射率介质或不同折射率介质观察对象。例如,水下的两个对象,其中一个离得很近,另一个离得很远。这种类型的畸变通常难以可视化和量化,因为它依赖于环境。在大多数机器人和自动化车辆的背景中,非对称径向畸变并不是一个很大的问题!为什么呢?嗯,畸变的差异取决于物体之间的距离差异。这通常是因为被成像的两个对象之间存在某种折射差异,或者因为这些对象超出了相机的焦距范围(即焦距相对于物体距离太大)。以上两种情况都不太典型,因此,在遇到这些情况时,非对称径向畸变是建模校准的重要方面。在大多数机器人环境中,成像和视觉测距的主要用途是在相对短的距离范围内使用焦距较短的摄像头完成的,并且光传播的主要介质是空气。由于靠近的物体之间通常没有大的大气变化,而且光都通过相同的介质传播,因此没有太多非对称折射效应可供表征或测量。因此,在为这些应用校准相机时,这种径向畸变并不常见。如果我们无法测量它,就不应该尝试对其进行建模!
切向(去中心)畸变:切向畸变有时也称为去中心畸变,因为其主要原因是由于镜头组件不在图像平面上居中且平行。切向畸变的几何效应不仅沿径向轴纯粹发生。相反,如上图所示,它可以对图像平面进行旋转和倾斜,具体取决于距图像中心的半径!
多项式畸变模型
多项式畸变模型是最常用的鱼眼摄像头畸变校正方法之一。它依赖于一种数学模型,描述了鱼眼图像中存在的径向畸变。通常,该模型使用多项式函数来近似畸变并进行校正。校正过程涉及将图像的像素坐标转换为标准化坐标,并应用多项式函数以矫正畸变。由于其在解决鱼眼图像中的径向畸变方面的简单性和有效性,该方法被广泛采用。尽管存在比此处描述的更多模型,但该行业主要已经标准化了以下两个畸变模型。
布朗-畸变模型
布朗-畸变模型可能是大多数人认为的“标准”径向和切向畸变模型。它最早由布朗和康拉迪于1966年首次发表,并在许多应用中得到应用。该模型将径向畸变表征为一系列高阶多项式:
Kannala-Brandt畸变模型
Juho Kannala和Sami Brandt发表了关于镜头畸变的论文。该论文的主要贡献是将镜头畸变建模优化,以适用于广角、超广角和鱼眼镜头。布朗-康拉迪的建模主要基于Seidel像差的物理学,这是围绕1867年首次制定的,用于当时的标准镜头物理学,不包括超广角和鱼眼镜头。使用这个模型时,大多数人会注意到的主要区别在于对称径向畸变。与以往的径向畸变模型不同,后者是基于点距离图像中心的远近(半径),康拉-布兰特将畸变表征为通过镜头的光的入射角度的函数。之所以这样做,是因为畸变函数在相对于这个角度(θ)参数化时更加平滑,这使得更容易将其建模为幂级数:
基于特征的方法
在鱼眼相机畸变校正的背景下,基于特征的方法通过利用鱼眼图像的特性来推断和矫正相机的畸变参数,发挥着至关重要的作用。
角点检测与矫正:角点检测和矫正方法涉及在鱼眼图像中检测角点,例如利用Harris角点检测或Shi-Tomasi角点检测。随后,通过利用检测到的角点之间的距离和角度的关系来估计相机的畸变参数,执行畸变矫正。通过采用这些参数,整个图像可以被矫正以减轻鱼眼畸变。
特征点匹配与矫正:特征点匹配和矫正方法依赖于提取和匹配鱼眼图像中的特征点。采用流行的技术,如SIFT特征点或SURF特征点,进行特征点提取。然后,检测到的特征点与矫正图像中的相应点进行匹配,从而推断相机的畸变参数并进行后续矫正。
直线检测与矫正:直线检测和矫正方法利用鱼眼图像中直线的存在。通过使用Hough变换等技术检测直线,可以推断相机的畸变参数。随后利用获得的参数对整个图像进行矫正,确保直线在矫正后的图像中保持线性。
基于光流的方法:基于光流的方法利用鱼眼图像中光流提供的信息进行畸变校正。通过计算鱼眼图像中的像素位移,可以推断相机的畸变参数并用于矫正。可以采用光流算法,如Lucas-Kanade方法或基于深度学习的光流估计,来估计像素位移。
直接法去畸变
鱼眼相机畸变校正的直接方法涉及检测和分析图像中的特定特征或图案,以估计畸变参数。这些方法通常依赖于畸变图像坐标与未畸变对象坐标之间的关系。可以使用RANSAC(随机抽样一致性)等技术,从特征对应关系中鲁棒地估计畸变参数。在没有校准数据或对畸变模型的先验知识可用的情况下,直接方法具有优势。
水平扩展方法:水平扩展方法是用于鱼眼图像矫正和畸变校正的技术。它旨在将畸变的鱼眼图像转换为矩形图像,具有直线和更自然的透视。该方法涉及扩展鱼眼图像的水平视场,并将畸变的像素映射到矩形图像中的相应位置。
纬经度映射方法:纬经度映射方法是一种将鱼眼图像转换为全景或等矩形投影的技术。该方法涉及将畸变的鱼眼像素映射到球形或柱形坐标系上的相应纬度和经度坐标,然后投影到2D等矩形网格上。
全景映射方法:全景映射方法是用于鱼眼图像矫正和畸变校正的技术。它旨在将畸变的鱼眼图像转换为矩形图像,具有直线和更自然的透视。该方法涉及将畸变的鱼眼像素映射到矩形图像中的相应位置。
基于深度学习的方法去畸变
随着深度学习的最新进展,基于神经网络的方法已经出现用于鱼眼相机畸变校正。这些方法涉及训练神经网络以学习畸变和未畸变图像之间的映射函数。使用已知畸变的成对图像的大型数据集对网络进行训练。训练完成后,网络可以对新的输入图像进行畸变校正。基于深度学习的方法具有学习复杂畸变模式并能有效处理各种畸变的优势。然而,它们需要大量的训练数据和计算资源。本节概述了常用于鱼眼相机畸变校正的深度学习方法。
卷积神经网络(CNNs):卷积神经网络(CNNs)已广泛应用于鱼眼相机畸变校正。这些网络包含多个卷积层,从输入图像中提取分层特征。通过在大量畸变和未畸变鱼眼图像对的数据集上训练CNNs,它们可以学习预测给定鱼眼图像的无畸变版本的基本模式和关系。
生成对抗网络(GANs):生成对抗网络(GANs)也已用于鱼眼相机畸变校正。GANs包括生成器网络和鉴别器网络,它们以对抗方式同时进行训练。生成器网络生成无畸变的鱼眼图像,而鉴别器网络旨在区分生成的无畸变图像和真实的无畸变图像。通过这种对抗训练过程,GANs可以学习生成高质量的无畸变鱼眼图像。
总结
鱼眼相机畸变校正是数字图像处理中的一项关键任务,旨在纠正鱼眼镜头引入的畸变并提高图像质量。在本综述中,讨论了多项式畸变模型,该模型利用多项式函数对径向畸变进行建模和校正。由于其简单性和有效性,这种方法得到了广泛应用。此外,还探讨了全景映射、网格映射、直接方法和基于深度学习的替代方法。每种方法都有其优点和局限性,其适用性取决于具体的需求和约束。
通过这次综述,数字图像处理领域的研究人员、专业人士和爱好者更深入地了解了用于鱼眼相机畸变校正的可用技术。综述突显了每种方法的基本原理、优势、局限性和潜在应用,有助于做出明智的决策。
为了评估畸变校正方法的性能,可以进行各种实验,包括合成数据评估、标定图像评估、比较研究、实时性能评估和特定应用的评估。这些实验为了解方法在不同场景中的准确性、计算效率和适用性提供了见解。
总之,鱼眼相机畸变校正方法在提高图像质量和实现各个领域的准确分析方面发挥着至关重要的作用。通过了解不同的技术并进行适当的实验,研究人员可以选择最适合其特定需求的方法,为数字图像处理领域的进展做出贡献。
为分享的伙伴们点赞吧!