改进摄像机固有参数校准的系统和方法与流程

文档序号:17332336发布日期:2019-04-05 22:10阅读:119来源:国知局
改进摄像机固有参数校准的系统和方法与流程

本申请根据35usc§119(e)要求于2017年9月28日提交的、题为“改进摄像机固有参数校准的系统和方法”的第62/564,882号(案卷号:28888-2164)的美国临时专利申请的优先权权益,其将yingzebao和mingyuchen列为发明人。上述专利文献通过引用以其整体并入本文。

本公开总体涉及用于改进图像处理的系统和方法,更具体地涉及用于改进摄像机校准的系统和方法。



背景技术:

摄像机校准是成像系统的不可分割的部分。像任何类型的传感器或测量系统一样,摄像机需要正确的初始校准,以使得捕获的结果是有用的。因此,成像系统的重要的部分将执行校准。对成像系统的典型校准活动是获取摄像机的固有参数。获取这些参数对于多种计算机视觉任务很重要,诸如三维重建、运动结构、视觉同步定位与地图创建(slam)、深度重建等。摄像机固有参数的精度高度影响这些任务的结果的质量。

由于制造和装配过程中的变化和限制,摄像机之间总是存在差异。例如,诸如透镜和摄像机传感器的摄像机部件在它们的响应和摄像机内的物理安装方面都可能有所不同。因此,对于每个摄像机,固有参数都是不同的。因此,对于摄像机,摄像机固有参数的校准是一个重要的过程。

摄像机固有参数的校准首先需要收集通常包括校准图案(例如,棋盘)的许多图像。然后,校准过程涉及执行计算处理以分析图像,从而估算用于在图像中捕获的特定摄像机的固有参数。

当前校准方法中所涉及的复杂性使得配置成像系统很难、耗时且昂贵。这些问题也使得外行用户难以校准视觉系统。

因此,需要提供简单、鲁棒、精确和快速的摄像机校准的系统和方法。



技术实现要素:

在本公开的一方面,提供了非暂时性计算机可读介质或媒介,包括一个或多个指令序列,所述一个或多个指令序列在由一个或多个处理器执行时,致使用于执行摄像机的固有参数校准的步骤,所述步骤包括:

捕捉校准目标的一组已捕获图像,所述校准目标包括一组唯一的校准标记,并被定位成使得所述摄像机捕捉所述校准目标的至少一部分在所述摄像机的图像帧中的视图;

将所述摄像机的所述图像帧划分成区域;

对于一组已捕获图像的每个已捕获图像,检测所述校准目标的、能够在所述已捕获图像中看见的一个或多个校准标记的一个或多个特征;

对所述图像帧的每个区域的已检测特征的数量进行计数;以及

响应于区域包含的已检测特征的数量超过已检测特征的阈值:

从所述一组已捕获图像中选择图像,以形成一组已选择图像;

响应于所述一组已选择图像对于所述图像帧的每个区域具有在已检测特征的阈值处或以上的已检测特征,选择已检测特征的子集,以确定所述摄像机的固有校准参数的估算值;

使用所述已检测特征的子集,估算所述摄像机的所述固有校准参数;

将来自一组核对图像的图像的特征点重投影,以核对所述摄像机的所估算的固有校准参数;对于来自所述一组核对图像的每个图像的重投影的特征点,计算重投影误差;

响应于图像的重投影误差小于误差阈值,将所述图像表示为内点,否则将所述图像表示为外点;以及

响应于内点图像的数量大于第一内点阈值,使用所述内点计算所述固有校准参数,作为用于所述摄像机的最终固有校准参数。

在本公开的另一方面,提供了用于执行摄像机的固有参数校准的处理器实施的方法,包括:

捕捉校准目标的一组已捕获图像,所述校准目标包括一组唯一的校准标记,并被定位成使得所述摄像机捕捉所述校准目标的至少一部分在所述摄像机的图像帧中的视图;

将所述摄像机的所述图像帧划分成区域;

对于一组已捕获图像的每个已捕获图像,检测所述校准目标的、能够在所述已捕获图像中看见的一个或多个校准标记的一个或多个特征;

对所述图像帧的每个区域的已检测特征的数量进行计数;以及

响应于区域包含的已检测特征的数量超过已检测特征的阈值:

从所述一组已捕获图像中选择图像,以形成一组已选择图像;

响应于所述一组已选择图像对于所述图像帧的每个区域具有在已检测特征的阈值处或以上的已检测特征,选择已检测特征的子集,以确定所述摄像机的固有校准参数的估算值;

使用所述已检测特征的子集,估算所述摄像机的所述固有校准参数;将来自一组核对图像的图像的特征点重投影,以核对所述摄像机的所估算的固有校准参数;

对于来自所述一组核对图像的每个图像的重投影的特征点,计算重投影误差;

响应于图像的重投影误差小于误差阈值,将所述图像表示为内点,否则将所述图像表示为外点;以及

响应于内点图像的数量大于第一内点阈值,使用所述内点计算所述固有校准参数,作为用于所述摄像机的最终固有校准参数。

在本公开的又一方面,提供了摄像机系统,包括:

成像系统,用于捕捉校准目标的图像,所述校准目标包括一组唯一的校准标记;

一个或多个处理器;以及

非暂时性计算机可读介质或媒介,包括一个或多个指令序列,所述一个或多个指令序列在由所述一个或多个处理器中的至少一个执行时,致使用于执行摄像机的固有参数校准的步骤,所述步骤包括:

捕捉校准目标的一组已捕获图像,所述校准目标包括一组唯一的校准标记,并被定位成使得所述摄像机捕捉所述校准目标的至少一部分在所述摄像机的图像帧中的视图;

将所述摄像机的所述图像帧划分成区域;

对于一组已捕获图像的每个已捕获图像,检测所述校准目标的、能够在所述已捕获图像中看见的一个或多个校准标记的一个或多个特征;

对所述图像帧的每个区域的已检测特征的数量进行计数;以及

响应于区域包含的已检测特征的数量超过已检测特征的阈值:

从所述一组已捕获图像中选择图像,以形成一组已选择图像;

响应于所述一组已选择图像对于所述图像帧的每个区域具有在已检测特征的阈值处或以上的已检测特征,选择已检测特征的子集,以确定所述摄像机的固有校准参数的估算值;

使用所述已检测特征的子集,估算所述摄像机的所述固有校准参数;

将来自一组核对图像的图像的特征点重投影,以核对所述摄像机的所估算的固有校准参数;

对于来自所述一组核对图像的每个图像的重投影的特征点,计算重投影误差;

响应于图像的重投影误差小于误差阈值,将所述图像表示为内点,否则将所述图像表示为外点;以及

响应于内点图像的数量大于第一内点阈值,使用所述内点计算所述固有校准参数,作为用于所述摄像机的最终固有校准参数。

附图说明

将为本发明的实施方式给出参考,本发明的实施方式的示例可在附图中示出。这些附图旨在进行说明而非限制。尽管在这些实施方式的上下文中大体描述了本发明,但应理解的是,它不旨在将本发明的范围限于这些特定的实施方式。附图中的项未必成比例。

图1描绘了根据本文件的实施方式的示例性摄像机系统。

图2描绘了根据本文件的实施方式的计算装置/信息处理系统的简化框图。

图3描绘了根据本文件的实施方式的摄像机校准系统。

图4描绘了根据本文件的实施方式的、包括一组校准图案的示例性校准目标。

图5包括根据本文件的实施方式的可用于帮助校准摄像机的校准处理器的描绘。

图6描绘了根据本文件的实施方式的可至少部分地由图像分析器执行的方法。

图7描绘了根据本文件的实施方式的示例性摄像机图像图案区域。

图8描绘了根据本文件的实施方式的用于用户协助校准图案捕捉的示例性提示。

图9描绘了根据当前公开的实施方式的可至少部分地由子集选择器执行的另一方法。

图10描绘了根据本公开的实施方式的可至少部分地由固有参数处理器执行的方法。

图11描绘了根据本文件的实施方式的可至少部分地由参数核对器执行的方法。

图12描绘了根据本公开的实施方式的从已捕获图像的重投影已检测点的整体覆盖范围以及重投影误差。

具体实施方式

在以下描述中,出于解释目的,阐明具体细节以便提供对本发明的理解。然而,将对本领域的技术人员显而易见的是,可在没有这些细节的情况下实践本发明。此外,本领域的技术人员将认识到,下文描述的本发明的实施方式可以以各种方式(例如过程、设备、系统、装置或方法)在有形的计算机可读介质上实施。

附图中示出的部件或是模块是本发明实施方式的示例性说明,并且意图避免使本发明不清楚。还应理解的是,在本论述的全文中,部件可描述为单独的功能单元(可包括子单元),但是本领域的技术人员将认识到,各种部件或其部分可划分成单独组件,或者可整合在一起(包括整合在单个的系统或组件内)。应注意,本文论述的功能或操作可实施为部件。部件可以以软件、硬件、或它们的组合实施。

此外,附图内的部件或系统之间的连接并不旨在限于直接连接。相反地,在这些部件之间的数据可由中间部件修改、重格式化、或以其它方式改变。另外,可以使用另外或更少的连接。还应注意,术语“联接”、“连接”或“通信地联接”应理解为包括直接连接、通过一个或多个中间装置来进行的间接连接、和无线连接。

在本说明书中对“一个实施方式”、“优选实施方式”、“实施方式”或“多个实施方式”的提及表示结合实施方式所描述的具体特征、结构、特性或功能包括在本发明的至少一个实施方式中,以及可包括在多于一个的实施方式中。另外,在本说明书的各个地方出现以上所提到的短语并不一定全都是指相同的实施方式或多个相同实施方式。

在本说明书的各个地方使用某些术语目的在于说明,并且不应被理解为限制。服务、功能或资源并不限于单个服务、单个功能或单个资源;这些术语的使用可指代相关服务、功能或资源的可分布或聚合的分组。还应理解的是,如本文中使用的术语“图像”或“多个图像”应意指静止图像、视频图像或两者。

术语“包括”、“包括有”、“包含”和“包含有”应理解为开放性的术语,并且其后任何列出内容都是示例,而不旨在限于所列项目。本文所使用的任何标题仅是为了组织目的,并且不应被用于限制说明书或权利要求的范围。本专利文献中提到的每个参考文献以其全文通过引用并入本文。

此外,本领域的技术人员应认识到,(1)某些步骤可以可选地执行;(2)步骤可不限于本文所阐述的特定次序;(3)某些步骤可以以不同次序执行;以及(4)某些步骤可同时地进行。

a.一般性概述

如上所述,摄像机校准是配置摄像机的重要的一部分。摄像机校准已经研究了数年,存在用于校准成像系统的大量工作。zhengyouzhang在《ieee模式分析与机器智能学报“ieeetransactionsonpatternanalysisandmachineintelligence”》上的“用于摄像机校准的灵活新技术(“aflexiblenewtechniqueforcameracalibration”)”(22(11):1330-1334(2000))中描述了一个通常已知的以及通常用于校准摄像机的方法。在这个方法中,形成特征点的平面的、棋盘式图案目标的若干图像被待校准的摄像机捕获。为了校准摄像机,目标相对于摄像机布置在多种角度和位置。提取特征点的图像位置,以及由于已知每个特征点的相对位置,因此捕获的特征点位置可用于校准摄像机。当系统中存在两个或更多个摄像机时,通过使所有摄像机捕捉每个布置角度下的平面对象的图像,可估算所有摄像机之间的固有参数以及几何关系。

虽然该方法有助于校准摄像机,但是该技术倾向于遭受至少几个缺点。首先,现有方法没有说明如何将校准图案放置在摄像机前面。在收集图像的过程中仍然存在很大的困难,在该过程中,摄像机或校准图案应该能够移动,使得校准图案的位置、比例和/或角度在不同的摄像机图像中发生变化。因为图像捕捉过程不太确定,校准过程的结果的质量通常有所不同。因此,为了获取一组好的校准参数,通常对单个摄像机执行多个试验。

其次,如果棋盘在已捕获图像中不完全可见,则在识别棋盘目标中的方格数量中存在模糊性。当试图检测图像帧的边缘附近的足够多的特征点时,这种状况尤其成问题,因为如果棋盘移动到摄像机视图的角落或侧部区域,则棋盘很可能仅部分地可见,因此,摄像机视图中的侧部区域和角落区域处的校准的质量通常非常低。

最后,由于所有已捕获图像都用于摄像机参数计算处理,因此数据过度拟合问题可能非常严重,以及离群数据样本可能显著地损害结果。

其他人已试图解决这些缺点中的一个或多个。例如,一些人提议交互式校准过程,或使用更容易识别特征点的不同校准目标。然而,即使这些方法也需要仔细地设计交互过程,并且也并没有解决上面呈现的所有缺点。

本文中呈现的实施方式提供克服上述缺点的系统和方法,以及提供校准摄像机系统的简单且有效的过程。

在一个或多个实施方式中,将一组校准图案(诸如,唯一标记的系列)用作为校准目标。当仅捕获校准目标的局部视图时,唯一的校准图案解决了模糊性问题。此外,该特征还允许校准目标移动到图像帧/摄像机视图中的侧部和/或角落,从而通过累积在不同的已捕获图像中的校准目标的至少一部分的视图,允许对摄像机视图的完全覆盖。

本文中公开的系统和方法允许交互式校准过程,该交互式校准过程在必要时提示用户摄像机图像内的特定位置需要额外的校准图像捕捉。在一个或多个实施方式中,通过将图像帧划分为许多的区域以及检查已在每个区域中检测到充足数量的校准图案,可便于提示用户针对摄像机视图的特定区域接收校准图案的更多已捕获图像。可使得这种过程对所有的摄像机通用,从而能够促进校准过程的可重复性。

此外,在一个或多个实施方式中,该系统和方法可在校准过程期间的一个或多个阶段核对摄像机固有参数实现了充足级别的精度。在一个或多个实施方式中,核对过程中的一个可包括通过例如使用校准图像的第一选择的子集计算固有参数和使用第二组图像核对结果来解决过度拟合问题。

b.系统实施方式

1.摄像机系统实施方式

图1描绘了根据本公开的实施方式的示例性摄像机系统或成像装置100。摄像机装置100包括一个或多个透镜105,该一个或多个透镜105用于将图像聚焦到图像传感器阵列110上。图像传感器阵列110可以是用于捕捉图像的半导体装置(诸如、电荷耦合装置(ccd)传感器阵列或互补金属氧化物半导体(cmos)传感器阵列)或一种或多种其它传感器装置。在一个或多个实施方式中,图像传感器阵列110通信地联接至处理器120(可以是芯片上的一个或多个集成电路、专用集成电路和/或系统),该处理器120用于处理由图像传感器阵列已捕获图像。在一个或多个实施方式中,摄像机还可包括附加部件,附加部件包括但不限于电源115、一个或多个永久性和/或可移动存储器或存储装置125、一个或多个通信模块130、显示器140以及一个或多个接口模块135,其中,存储器或存储装置125供处理器使用以暂时地、永久地或暂时地及永久地存储数据,通信模块130支持与一个或多个其它装置的通信(有线、无线或两者),显示器140用于向用户显示图像和/或菜单项,以及接口模块135用于经由一个或多个按钮和/或经由显示器140(如果该显示器是触敏显示器时)从用户接收输入。本领域技术人员应认识到,摄像机系统100可包括图1中未描绘的附加项,诸如图像编码器和其它项。呈现示例性成像装置100以帮助阐明本发明的方面;因此,应注意,没有特定的摄像机系统是关键的。当然,本领域技术人员将理解,可使用任何成像装置,包括非数字成像装置,该非数字成像装置中捕获的图像已被数字化。此外,本发明的实施方式可与任何装置一起使用,所述任何装置包括成像装置,该成像装置包括但不限于数字摄像机、视频摄像机、移动手机、计算机等。

2.计算系统实施方式

在一个或多个实施方式中,本发明的方面可使用、可包括一个或多个信息处理系统/计算系统或者可在一个或多个信息处理系统/计算系统上实施,该信息处理系统/计算系统可与摄像机系统100一起使用,或并入摄像机系统100中或与摄像机系统100合并。计算系统可包括可操作来计算、运算、确定、分类、处理、传输、接收、检索、发起、路由、交换、存储、显示、通信、显现、检测、记录、再现、处理或使用任何形式信息、智能或数据的任何手段或手段的组合。例如,计算系统可为或可包括个人计算机(例如,膝上型计算机)、平板电脑、平板手机、个人数字助理(pda)、智能手机、智能手表、智能包装、服务器(例如,刀片式服务器或机架式服务器)、网络存储装置、摄像机或任何其它合适装置,并且可在尺寸、形状、性能、功能和价格方面改变。计算系统可以包括随机存取存储器(ram)、一个或多个处理资源(诸如中央处理单元(cpu)或硬件或软件控制逻辑)、rom和/或其它类型的存储器。计算系统的附加部件可包括一个或多个盘驱动器、用于与外部装置通信的一个或多个网络端口、以及各种输入和输出(i/o)装置(例如键盘、鼠标、触摸屏和/或视频显示器)。计算系统还可包括可操作为在各种硬件部件之间传输通信的一个或多个总线。

图2描绘了根据本公开的实施方式的计算装置/信息处理系统(或计算系统)的简化框图。尽管应理解,计算装置可不同地配置并且包括不同部件,包括具有少于或多于图2中描述的部件,但应理解,针对系统200所示出的功能可操作为支持计算系统的各种实施方式。

如图2所示,计算系统200包括一个或多个中央处理单元(cpu)201,cpu201提供计算资源并控制计算机。cpu201可实施有微处理器等,并且还可包括一个或多个图形处理单元(gpu)219和/或用于数学计算的浮点协处理器。系统200还可包括系统存储器202,系统存储器202可呈随机存取存储器(ram)、只读存储器(rom)、或两者的形式。

如图2所示,还可提供多个控制器和外围装置。输入控制器203表示至各种输入装置204的接口,例如键盘、鼠标、触摸屏和/或触笔。还可存在扫描仪控制器(未示出),该扫描仪控制器与扫描仪(未示出)通信,该扫描仪可用于所接收的扫描的图像。系统200还可包括存储器控制器207,该存储器控制器207用于与一个或多个存储装置208对接,存储装置中的每个均包括存储介质(诸如磁带或盘)或光学介质(其可用于记录用于操作系统、实用工具和应用程序的指令的程序,它们可包括实施本发明的各方面的程序的实施方式)。存储装置208还可用于存储经处理的数据或是将要根据本发明处理的数据。系统200还可包括显示器控制器209,该显示器控制器409用于为显示装置211提供接口,显示装置211可为阴极射线管(crt)、薄膜晶体管(tft)显示器、有机发光二极管、电致发光面板、等离子面板或其它类型的显示器。计算系统200还可包括用于一个或多个外围装置206的一个或多个外围控制器或接口205。外围装置可包括一个或多个打印机、移动性系统(可包括一个或多个电机、伺服单元等)、惯性测量单元、视觉系统(可包括一个或多个摄像机)、传感器等。系统200还可包括用于一个或多个打印机213的打印机控制器212。通信控制器214可与一个或多个通信装置215对接,这使系统200能够通过各种网络(包括互联网、云资源(例如以太云、经以太网的光纤通道(fcoe)/数据中心桥接(dcb)云等)、局域网(lan)、广域网(wan)、存储区域网络(san))中的任一网络,或通过任何合适电磁载波信号(包括红外信号)来连接至远程装置。

在示出的系统中,所有主要系统部件可连接至总线216,总线216可以表示多于一个的物理总线。然而,各种系统部件可在物理上彼此接近或可不在物理上彼此接近。例如,输入数据和/或输出数据可远程地从一个物理位置传输到另一物理位置。另外,实现本文中呈现的各方面的程序可经由网络从远程位置(例如,服务器)访问。此类数据和/或程序可通过各种机器可读介质中的任一机器可读介质来传送,机器可读介质包括但不限于:诸如硬盘、软盘和磁带的磁性介质;诸如cd-rom和全息装置的光学介质;磁光介质;以及硬件装置,该硬件装置专门被配置成存储或存储并执行程序代码,该硬件装置例如专用集成电路(asic)、可编程逻辑器件(pld)、闪存装置、以及rom和ram装置。

本发明的方面可以利用用于一个或多个处理器或处理单元以使步骤执行的指令在一个或多个非暂时性计算机可读介质上编码。应注意,一个或多个非暂时性计算机可读介质应当包括易失性存储器和非易失性存储器。应注意,替代实现方式是可能的,其包括硬件实现方式或软件/硬件实现方式。硬件实施的功能可使用asic、可编程的阵列、数字信号处理电路等来实现。因此,任何权利要求中的术语“手段”旨在涵盖软件实现方式和硬件实现方式两者。类似地,如本文使用的术语“计算机可读媒介或介质”包括具有实施在其上的指令程序的软件和/或硬件或它们的组合。利用所构想的这些替代实现方式,应当理解,附图以及随附描述提供本领域的技术人员编写程序代码(即,软件)和/或制造电路(即,硬件)以执行所需处理所要求的功能信息。

应注意,本发明的实施方式还可涉及具有其上具有用于执行各种计算机实施的操作的计算机代码的非暂时性有形计算机可读介质的计算机产品。介质和计算机代码可为出于本发明的目的而专门设计和构造的介质和计算机代码,或者它们可为相关领域中的技术人员已知或可用的。有形计算机可读介质的示例包括但不限于:诸如硬盘、软盘和磁带的磁性介质;诸如cd-rom和全息装置的光学介质;磁光介质;以及专门配置成存储或存储并执行程序代码的硬件装置,例如,专用集成电路(asic)、可编程逻辑器件(pld)、闪存装置、以及rom和ram装置。计算机代码的示例包括机器代码(例如,编译器产生的代码)以及包含可由计算机使用解释器来执行的更高级代码的文件。本发明的实施方式可整体地或部分地实施为可在由处理装置执行的程序模块中的机器可执行指令。程序模块的示例包括库、程序、例程、对象、组件和数据结构。在分布的计算环境中,程序模块可物理上定位在本地、远程或两者的设定中。

本领域的技术人员将认识到,计算系统或编程语言对本发明的实践来说均不重要。本领域的技术人员将还将认识到,多个上述元件可物理地和/或在功能上划分成子模块或组合在一起。

3.摄像机校准方法和系统实施方式

图3描绘了根据本文件的实施方式的摄像机校准系统。如图3中所示,该系统包括计算系统305和摄像机310,其中,计算系统305可与图2中描述的计算系统类似,以及摄像机310可与图1中描述的摄像机类似。如上所述,虽然计算系统305和摄像机310被描绘为分离装置,但是它们可集成为单个装置。

在一个或多个实施方式中,摄像机校准系统300可包括一个或多个摄像机,该一个或多个摄像机可拍摄视频图像、静止图像或两者。图像可从不同的角度进行捕捉,或同时地、连续地或两者兼具地进行捕捉。这种系统对本领域普通技术人员是公知的,以及可使用各种的这种系统中的任一个。还对本领域普通技术人员公知的是,已捕获图像被用于帮助确定系统的摄像机的校准参数。

图3中描述的还有校准目标315,该校准目标315可包括多个校准图案。在一个或多个实施方式中,校准目标315可以是物理板或可以是显示器。在一个或多个实施方式中,校准目标中的校准图案中的一些或所有可包括唯一的图案,使得每个这样的校准图案在已捕获图像中可被清楚地识别。如上所述,当使用简单的棋盘式校准目标时,在试图识别棋盘式目标中的方格时,尤其是如果整个棋盘在已捕获图像中不是完全可见时,可存在模糊性。因此,当试图检测图像帧的边缘附近的足够多的特征点时,这种状况尤其成问题,因为如果棋盘移动到摄像机视图的角落或侧部区域,棋盘很可能仅部分地可见,

图4描绘了根据本文件的实施方式的、包括一组校准图案(例如,405和410)的示例性校准目标400。在一个或多个实施方式中,校准目标的校准图案可以是二维码,例如,aruco、artoolkit、apriltag、qr码等。这些唯一的校准图案(或标记)的阵列可打印到平面结构上或施加至平面结构,以形成校准目标400。应注意,校准标记可位于网格阵列(诸如5×6的标记阵列)中,尽管它们可包括不同数量的标记,以及可在不同的配置中显示或布置在不同的配置中。

现在转向图5,描绘的是校准处理器系统505,它的部件可以是摄像机(例如,图1的摄像机100、图3的摄像机310)的一部分,计算系统(例如,图3的计算系统305)的一部分,或分离在摄像机以及计算系统(例如,图3的计算系统305与摄像机310)之间。

如图5中所示,校准处理器系统505包括图像分析器515、子集选择器520、参数处理器525和参数核对器530,其中,图像分析器515检测已在图像中检测的图像特征点并确定图像特征点是否有充足的数量和覆盖范围,子集选择器520选择将用于估算摄像机参数的、已捕获图像的子集,参数处理器525使用所选择的图像子集中的、已检测特征点来估算摄像机参数,以及参数核对器530检查所估算的摄像机参数的精度。图5中还描述了摄像机或图像捕捉单元510,摄像机或图像捕捉单元510捕捉校准目标的图像并将它们提供给校准处理器系统505。应注意,系统505可包括额外的部件,此处未对额外的部件进行描绘以避免模糊本发明的方面。

虽然图5提供了校准处理器系统505的部件的一般性概述,但是下面针对图6至图12更详细地描述这些部件的功能以及它们的整体交互作用。

a)图像分析器的实施方式

图6描绘了根据本文件的实施方式的可至少部分地由图像分析器515执行的方法。在一个或多个实施方式中,用户可通过打开摄像机310并定位该摄像机310和校准目标(具有一组唯一的校准图案或标记)来最初地开始该过程,使得摄像机可捕捉校准目标的至少一部分的视图。在一个或多个实施方式中,使用摄像机的预览模式或显示器,用户可将校准目标最初地定位在图像帧的中心。捕获校准目标的一组已捕获图像535(可在不同的定位、角度和/或位置处拍摄),并提供给校准处理器系统505的图像分析器515。

在一个或多个实施方式中,图像分析器515将摄像机的图像帧划分成区域(605)。图7描绘了根据本文件的实施方式的示例性摄像机图像图案区域。第一示例性图案700为3×3的网格。应注意,用于区域的图案不需要在尺寸或分布上有规律,也不需要它们是统一的。例如,第二示例性图案705包括顶部和底部上的两个较长区域(区域1和区域5)以及划分中间部分的更多区域。在图像帧的对于摄像机校准需要更高精度的区域(诸如用户关注的主要焦点区域)中,图像帧可划分成具有更多的区域。在一个或多个实施方式中,每个区域可分配唯一标识符。

回到图6,捕获校准目标的图像(或一组图像)(610)。在一个或多个实施方式中,可移动校准目标和/或摄像机,以捕捉不同的图像,从而提供整个图像帧上的校准图案覆盖。对于每个已捕获图像,检测可在已捕获图像中观看到的校准目标的每个校准标记的角落或其它特征点(615)。本领域技术人员应理解,可使用许多不同的角落特征检测器或特征检测器来检测特征。例如,如果使用了apriltags,可使用可在april.eecs.umich.edu/software/apriltag.html(其内容通过引用以其整体并入本文中)和www.hitl.washington.edu/artoolkit/(其内容通过引用以其整体并入本文中)处获得的检测工具。

在一个或多个实施方式中,图像分析器对图像帧的每个区域的、已检测特征(例如,角落或其它特征点)的数量进行计数(620)。如果区域中的一个或多个不包括充足数量的已检测特征(例如,100个特征)(625),则可向用户提供提示(630),通知他或她特定的一个或多个区域需要额外的已检测特征。

在一个或多个实施方式中,每个区域的检查可包括已检测点是否覆盖全部的摄像机视图。例如,在一个或多个实施方式中,可确定图像帧的边界与已检测点之间的最大间隙和/或点之间的最大间隙。如果间隙太大,则可提示用户在影响区域中捕捉更多的特征点。

给用户的提示可通过其唯一标识符识别该区域,以及在一个或多个实施方式中,还可指示需要多少更多的已检测特征。例如,假定图7的网格区域700并假定它缺少18个特征点,则系统提示可以是“区域4需要至少18个更多的已检测特征点”。

本领域技术人员应理解,还可使用其它的提示(包括视觉提示)。在一个或多个实施方式中,这些提示可经由摄像机、经由计算系统(例如,计算系统305)或其组合提供。在一个或多个实施方式中,可允许用户打开或关闭视觉提示。图8描绘了根据本文件的实施方式的用于用户协助校准图案捕捉的示例性提示。

在第一描绘的示例中,提示800包括摄像机正在查看的实时视图,以及覆盖图,该覆盖图掩盖或至少部分地模糊具有充足数量已检测特征的区域(例如,805)。在描绘的示例中,不具有充足数量已检测特征的区域(例如。区域1(810)和区域2(815))没有被掩盖。通过不掩盖需要更多图像的区域,用户可容易地查看校准目标的放置位置,以确保校准图案在这些区域中可看见。

在第二描绘的示例中,提示850包括摄像机正在查看的实时视图,以及识别具有充足数量已检测特征的区域的指示符和识别不具有充足数量已检测特征的区域的指示符。在描绘的示例中,具有充足数量已检测特征的区域使用检查标记855进行标识,从而提示该区域不需要检测额外的特征点。在描绘的示例中,不具有充足数量已检测特征的区域没有正向指示(即,没有检查标记)。在一个或多个实施方式中,这样的区域还可包括应再多检测多少特征的指示符。在描绘的示例中,右上区域860需要多检测2个特征点,以及另一区域865需要多检测7个特征点。图像捕捉和特征点检测可继续,直到每个区域都具有足够多的已检测点(625)。在一个或多个实施方式中,图像分析器还可检查已捕获图像的数量超过阈值(例如,30个图像)。当图像捕捉过程是充分的时,整个方法可进行到接合子集选择器520(635)。图9中描绘了可由图像子集选择器520采用的示例性方法实施方式。

b)图像子集选择器实施方式

图9描绘了根据当前公开的实施方式的可至少部分地由子集选择器执行的另一方法900。在一个或多个实施方式中,图像子集选择器520从已捕获图像集中选择一组图像(例如,20个图像)(910)。在一个或多个实施方式中,图像可以是随机选择的。

在一个或多个实施方式中,子集选择器520检查图像帧的每个区域的已检测特征是否超过子集已检测特征的阈值(915),其中,子集已检测特征的阈值可与其它已检测特征的阈值(例如,100个特征)相同或可小于该量。如果一个或多个区域中没有充足数量已检测特征,则子集选择器可再尝试选择一组图像(例如,回到步骤910)。可替代地,子集选择器可通过随机地选择额外的图像来补充现有的该组所选择的图像。

如果该组所选择的图像在图像帧的每个区域中包括足够多的已检测特征,则图像(或图像标识符)提供给参数处理器525,以估算用于摄像机的固有参数(920)。图10中描绘了可由参数处理器525采用的示例性方法实施方式。

c)参数处理器实施方式

图10描绘了根据本公开的实施方式的可至少部分地由固有参数处理器执行的方法1000。在一个或多个实施方式中,使用从该组所选择的图像中已检测点中的至少一些,估算校准参数(1010),以及校准参数可表示为:

其中

(u0,v0)表示图像的主点的坐标;

α和β表示图像u轴和v轴中的比例因子;以及

γ表示描述两个图像轴的斜率的参数。

在一个或多个实施方式中,还可计算畸变参数,诸如基本畸变模型参数和/或鱼眼畸变模型参数,本文中畸变参数还可考虑是固有摄像机参数。

如先前所记载的,摄像机固有参数可使用zhengyouzhang在《ieee模式分析与机器智能学报“ieeetransactionsonpatternanalysisandmachineintelligence”》上的“用于摄像机校准的灵活新技术(“aflexiblenewtechniqueforcameracalibration”)”(22(11):1330-1334(2000))中讨论的方法进行计算,上述文章内容通过引用以其整体并入本文中,尽管还可使用其它的方法。

在一个或多个实施方式中,一旦获得估算的校准参数,然后可将估算的校准参数提供给参数核对器530(1015)。图11中描绘了可由参数核对器530采用的示例性方法实施方式。

d)参数核对器实施方式

图11描绘了根据本文件的实施方式的可至少部分地由参数核对器执行的方法。在一个或多个实施方式中,使用估算的校准参数,以对来自一组核对图像的图像执行n点透视(perspective-n-point(pnp))过程(1110),尽管还可使用其它方法。在一个或多个实施方式中,该组核对图像可以是所有已捕获图像或可以是它的子集。然后,对每个核对图像计算重投影误差测量(1115)。在一个或多个实施方式中,重投影误差可以是用于图像中的重投影的特征点的平均(平均的、中值或模式)误差。在一个或多个实施方式中,如果图像的重投影误差测量小于误差阈值(例如,1个像素),则图像表示为“内点(inlier)”(1120),否则该图像表示为“外点(outlier)”(1120)。

如果内点图像的数量大于第一内点阈值(例如,90%)(1125),则内点图像可用来计算摄像机固有参数,将该固有参数作为最终参数进行输出(1135)。可替代地,在一个或多个实施方式中,如果该比值充分的高(例如,大于或等于99%的第二内点阈值),则可将原始摄像机固有参数(包括内点图像)(1130)作为最终摄像机固有参数进行输出(1135)。

图12描绘了根据本公开的实施方式的从已捕获图像的重投影已检测点的整体覆盖范围和误差。在一个或多个实施方式中,越多的点表示越好的覆盖范围。此外,在实施方式中,图像1200中每个点均可分配指示符(诸如形状或颜色),以指示其重投影误差。例如,绿色点(或描绘的图像中的菱形点◇)可以是没有或具有极小(例如,小于1个像素)重投影误差的点,黄色点(或描绘的图像中的星形点)可以是具有中等重投影误差(例如,在1个像素至2个像素之间)的点,以及红色点(或描绘的图像中的圆形点)可以是具有超过阈值的误差(例如,超过2个像素)的点。在一个或多个实施方式中,该图像1200可经由摄像机显示器和/或计算装置显示器显示给用户,以帮助示出误差率和位置。理想地,这些点中的所有(或大多数)应具有小于阈值(例如,1个像素)的重投影误差。

如果内点图像的数量不大于比值阈值,则结果可被认为是“次优的”(1140),以及该过程可通过返回到选择已捕获图像的子集的步骤(即,回到图9的步骤910)(1145)进行重复。通过选择已捕获图像的新子集,可选择更好的图像采样,其产生对摄像机固有参数的更精确的估算。

在一个或多个实施方式中,如果随机选择在多次尝试(例如,100次)之后仍无法产生满意的效果,则可认为已捕获图像的数据集不足以进行校准,可向用户发送“失败”通知。

本领域技术人员将理解,前述示例和实施方式是示例性的,并且不限制本公开的范围。它的意图是,在阅读说明书和研究附图之后,对本领域技术人员显而易见的所有排列、增强、等同物、组合以及改进都包括在本公开的真正精神和范围之内。还应注意,任何权利要求的元件可进行不同地布置,包括具有多个从属、配置和组合。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1