用于相机校准的方法和装置与流程

文档序号:15457146发布日期:2018-09-15 01:22阅读:175来源:国知局

本公开涉及相机装置,尤其是涉及一种执行立体相机装置中的相机的校准的方法。



背景技术:

随着数字相机技术的出现,已经流行使用相机用于多种目的。今天的相机不仅广泛用于照相而且也用于新的目的。利用相机进行公共区域或私有财产的监视已经变得流行。数字相机技术也适用于监控、导航等。计算机视觉是利用立体相机装置对场景进行成像的技术领域。

在立体相机装置中使用两个相机以产生环境或场景的3D(三维)图像或模型。在立体相机装置中根据两个不同方向朝向场景校正两个相机,并且在相机之间存在一距离。通过在它们之间采用多个角度整流(rectifying)相机,可以确定至物体距离的信息。为了模仿人类视觉,相机之间合适的距离为5和10cm之间,这与人类左眼和右眼之间的距离相对应。

将校准立体相机装置的相机以正确地操作。在校准相机时,将调节相机的本征参数,其中待调节的典型的本征参数是方向、焦点等。

传统地,当制造立体相机装置时已经设置了为了立体目的的相机的本征参数。可替换地,可以结合相机的安装而手动地设置本征参数,并且当需要时将对其执行手动调节。

然而,由于立体相机装置的量增多的事实,存在大量待调节其本征参数的相机。另外,已经开发了新的应用,并且立体相机装置还流行于用于其中物理条件要求本征参数的规律性调节的环境中。例如,车辆中的立体相机装置将通常受到振动的影响并且可能需要在运输期间调节以正确地操作。

参照图1a-图1b,其为示意性说明图,现将根据一个示例描述立体相机装置。在图1a中,以透视图的方式图示了立体相机装置,并且在图1b中,从上方图示了立体相机装置。

立体相机装置100包括第一相机102和第二相机104。第一相机102和第二相机104两者分别连接至控制单元106(图1b中未示出)。设置相机102、104被布置为捕获场景108的相应的图像。控制单元106被布置为校准相机102、104。

当今应用了一些方法以用于立体相机的校准。这些已知的方法是非常复杂的并且要求相当大量计算性能或额外的参考。比如,Nedevschi等人展示了一种方法(用于车辆应用中的立体视觉系统的在线校准方法),其中由两个相机捕获道路上的标记。Hansen等人展示了一种方法(在线连续立体非本征参数估算),其中,确定一条基线。

因此,存在的问题在于设计一种成本效益好的并且灵活的方法以用于立体相机装置中的相机的合适的校准。



技术实现要素:

本申请的教导的目的在于:通过提供一种相对于第二相机校准第一相机的方法来克服以上所列出的问题。该方法包括从第一相机接收第一图像,并且从第二相机接收第二图像,其中,第一图像和第二图像两者包括重叠。此外,该方法包括确定重叠中的第一图像的一个或多个候选点,并且确定重叠中的第二图像的一个或多个候选点。此外,该方法包括将第一图像的候选点与第二图像的候选点匹配,并且确定对应候选点的配对。该方法还包括基于对应候选点的配对来计算第一相机的单应性,并且通过基于所计算的第一相机的单应性调节第一相机的本征参数或非本征参数来校准第一相机。该方法进一步包括基于对应候选点的配对计算第二相机的单应性,并且通过基于所计算的第二相机的单应性调节第二相机的本征参数或非本征参数来校准第二相机。可以利用诸如Harris算法之类的特征检测算法以用于检测候选点,例如转角或交叉点。

本申请的教导的目的还在于:通过提供一种被布置为相对于彼此校准两个相机的立体相机装置来克服以上所列出的问题。立体相机装置包括第一相机、第二相机、和控制器,其中,控制器被适配为从第一相机接收第一图像,并且从第二相机接收第二图像,其中,在第一图像和第二图像两者中存在重叠,并且确定重叠中的第一图像的至少两个候选点。控制器进一步被适配为确定重叠中的第二图像的至少两个候选点,并且将第一图像的候选点与第二图像的候选点匹配并确定对应候选点的配对。此外,控制器被适配为基于对应候选点的配对计算第一相机的单应性,并且通过基于所计算的第一相机的单应性调节第一相机的本征参数或非本征参数来校准第一相机。控制器进一步被适配为基于对应候选点的配对计算第二相机的单应性,并且通过基于所计算的第二相机的单应性调节第二相机的本征参数或非本征参数来校准第二相机。

本发明的发明人在创新性和富有洞察力的推理之后,实现了通过确定第一相机和第二相机的对应候选点,可以计算可以用于相对于彼此校准第一相机和第二相机的合适的单应性。由此,可以执行合适的校准而无需在环境中布置特定参考点。

将根据以具体实施方式、根据所附权利要求、并且根据附图呈现所公开实施例的其他特征和优点。通常,权利要求中所使用的所有术语应该根据技术领域中它们通常的含义而解释,除非本文明确另外限定。

对于“一/该[元件、装置、部件、机构、步骤、等]”的引用应该开放地解释为涉及元件、装置、部件、机构、步骤等的至少一个实例,除非另外明确陈述。本文所公开的任意方法的步骤不必以所公开的确切顺序执行,除非明确规定。

附图说明

现在将以示例性实施例并参照附图的方式更详细地描述方案,其中:

图1a至图1b是根据现有技术的装置的示意图。

图2a至图2b是根据本文的教导的实施例的装置的示意图;

图3是根据本文的教导的实施例的方法的流程图;

图4a至图4c是根据本文的教导的实施例的校准单元的示意性方框图;以及

图5是根据可能实施例的计算机程序产品的示意性方框图。

具体实施方式

现将在下文中将参照示出本发明的特定实施例的附图来更全面地描述所公开的实施例。然而,本发明可以以许多不同的形式来实施并不应构造为限定于本文所阐述的实施例;相反,以示例的方式提供的这些实施例将使得本公开全面和完整,并且向本领域技术人员完整地传达本发明的范围。相同的数字遍及全文涉及相同的元件。

尽管本文所公开的实施例将聚焦于诸如巴士或任意其他运输车辆之类的车辆中的相机,本文的教导也适用于其他情形。所公开的方法和系统可以适用于可以校准立体相机装置的相机的任意情形。本文所公开的方法和系统不限于适用于任意特定类型的对象,例如乘客和动物。

参照图2a和图2b(车辆中情形的示意性图示),现在将根据一个示例性实施例描述关于车辆中的立体相机装置的校准的所提出方案的一些原理。

图2a图示了在公共运输车辆(未涉及)中的四个站立的乘客200。在此示例性实施例中,公共运输车辆是巴士。

车辆是高度特殊的环境,其对于被布置在其中的相机装置提出了极端的要求。被布置在车辆中的相机由于严苛的物理条件而会要求规律性的调节,并且因此校准过程必须被容易地执行。由于车辆(诸如例如巴士)中相机的盗窃风险和破坏行为,如果相机廉价并且不复杂,则这是有益的。

图2b是采用两个不同相机204a、204b捕获两个图像的示意图。在此示意性示例中,从第一相机204a得到的第一图像包括候选点P1’和P2’。第一图像和第二图像彼此重叠,这由点划线示出。对应地,从第二相机204b得到的第二图像包括候选点P1”和P2”以及重叠。应该注意的是,候选点的真实数目可以远高于图2b中所示的两个。

相机204a、204b中的每一个捕获巴士内部的相应的图像,并且由第一相机204a捕获的图像与由第二相机204b捕获的图像相重叠。在重叠中,将针对每个图像确定多个区别性的候选点。在此实施例中,通过由所谓的Harris算法分析图像来检测转角。然而,所公开的概念不限于任意特定类型的候选电或感兴趣的点或算法。在所公开的概念内,当合适时可以应用任意合适类型的候选点或感兴趣点。比如,交叉点或其他合适的点可以用作候选点。可以通过对图像应用以下感兴趣点检测算法中的任意算法来检测候选点或感兴趣点:Harris转角检测算法,SIFT(尺度不变特征转换)算法、SURF(加速稳健特征)算法、FAST(来自加速区段测试特征)算法、BRIEF(二进制健壮独立基本特征)算法、ORB(定向FAST和旋转BRIEF)算法等。感兴趣点检测算法应用的结果产生多个检测到的转角或交叉点。比如巴士中的杆柱和扶手的交叉点将根据Harris算法检测作为转角并且确定为候选点P1’、P2’、P1”、P2”。然而,应该注意的是,候选点P1’、P2’、P1”、P2”的数目可以改变。

从第一图像(即,由第一相机204a)所确定的候选点P1’、P2’将与第二图像(即,来自第二相机204b)的候选点P1”、P2”匹配。将基于点P1’/P1”、P2’/P2”的匹配配对,计算单应性。第一相机204a的单应性是矩阵为[H1],并且如下与第一相机204a和第二相机204b的相机参数相关:

Hl=KnlRl(Kol)-1,

其中H1是左侧相机的单应性,Kol是关于左侧相机的旧相机矩阵并且包括左侧相机的本征参数,R1是左侧相机的旋转矩阵并且包括左侧相机的非本征参数,并且Knl是左侧相机的新相机矩阵。在此实施例中,第一相机204a是左侧相机并且第二相机204b是右侧相机。然而,所公开的概念也可以适用于调节右侧相机,如进一步所述的。当替换的校准右侧相机时,右侧相机是第一相机204a且左侧相机是第二相机204b。

对应地,Hr计算如下:

对于对应的参数,Hr=KnrRr(Kor)-1。通常,Knl选择作为Knl=Knr,并且Kol和Kor分别是至少部分已知的。针对相应的图像中的每个像素应用相应的单应性。

典型的相机的本征参数是:焦距、偏斜系数、以及主点。典型的非本征参数是:围绕x轴线、y轴线、或z轴线中的任意轴线的旋转,沿着x轴线、y轴线、或z轴线中的任意轴线的平移。因此,调节相机的本征参数或非本征参数可以包括调节以下项中的任意项:相机朝向参数、焦距参数、偏斜系数参数、主点参数、旋转参数、以及平移参数。

在图2b中的示例性实施例中,仅存在每个图像中的两个候选点P1’、P2’、P1”、P2”。然而,通常具有多个候选点P1’、P2’、P1”、P2”。计算单应性包括找到使误差函数最小化的矩阵[Hl],[Hr]。在此实施例中,通过利用RANSAC(随机取样一致算法)来确定Sampson误差。然而,所公开的概念不限于应用Sampson误差和RANSAC算法,当合适时可以备选地替换利用任意其他合适的函数和算法,比如沿着y轴线的绝对差、L1范数、L2范数、内点数目、截取L1范数、截取L2范数、或其任意合适的组合。

因此,通过实施检测重要点(例如,转角)的功能,将启用计算单元确定候选点而不必在巴士中应用特殊的校准参考标记。校准参考标记可以是粘贴条或涂料标记。此类参考标记可能丢失、损坏、或者甚至被乘客移除,这可以导致相机的令人不满意的校准。

参照图3,图3是示意性流程图,现在将根据一个示例性实施例描述由控制器执行的用于相对于彼此校准第一相机204a和第二相机204b的方法。

步骤300和302分别为接收采用第一相机204a捕获的第一图像以及接收采用第二相机204b捕获的第二图像。

在接下来的步骤304中,通过对第一图像采用Harris算法来确定第一图像的候选点。对应地,在步骤306中,确定第二图像的候选点。合适的候选点通常实现作为转角或交叉点,例如在杆柱和扶手之间,或者在窗户处等。

在随后的步骤308中,将确定的候选点匹配成候选点配对。随后在接下来的步骤310中,选择合适的候选点配对并且利用所选择的候选点配对来计算使误差函数(例如,Sampson函数)最小化的单应性。通常通过从重叠的不同区域选择点配对来执行候选点配对的选择,这提高了单应性的适当性。

应该注意的是,步骤300、302、304、306、308可以任选地重复,直至找到合适数目的候选点的配对。此外,还可以重复步骤310直至计算到令人满意的单应性。单应性可以基于第一匹配候选点,或者是被重复的步骤300-308中的匹配候选点。

在最终步骤312中,将随后利用所计算的单应性来校准第一相机204a和第二相机204b。通过调节根据单应性校准的相机的至少一个本征参数或至少一个非本征参数来校准每个相机204a、204b。应该注意的是,所公开的概念不限于任意特定数目的本征参数或非本征参数的调节,并可以在所公开概念内调节本征参数和非本征参数的任意合适的组合。

相机204a、204b可被多次重新校准。这在例如源自振动的、可能在运输期间(例如当被布置在车辆中时)影响相机干扰的事件中是有利的。

在上述实施例中,相对于彼此校准立体相机装置470的两个相机204a、204b。然而,所公开的概念不限于仅适用于两个相机。备选地,可以修改步骤公式和算法并应用于装置中任意合适的多个相机。

关于上述实施例,方法步骤或步骤是相对不复杂的,并且无需大量计算性能来提供适当的单应性。由此,普通数字相机中通常包括的有限的计算性能可以适用于校准立体相机装置的数字相机。

图4a至图4c示出了现将根据一些示例性实施例描述的立体相机装置470的总体结构的示意性视图。

图4a中所示的立体相机装置470包括被配置为基于从相机420、450接收到的图像流来校准第一相机420和第二相机450的控制器400。控制器400被布置为接收已被第一相机420和第二相机450捕获的图像。

控制器400进一步被布置为分别从接收到的第一图像和第二图像确定候选点。以上已经结合一些其他实施例公开了这些确定,并且将本文不再进一步讨论。

此外,控制器400被布置为将第一图像和第二图像的候选点匹配成对应候选点的配对,并且计算使误差函数最小化的相机的单应性。以上也已经更详细描述了该匹配。

如上所述,控制器400进一步被适配为基于所计算的第一相机420的单应性来调节第一相机420的本征参数和/或非本征参数。此外,控制器400还被适配为基于所计算的第二相机450的单应性来调节第二相机450的本征参数和/或非本征参数。

可选地,上述实施例的控制器400可以包括被布置为提供合适的功能的其他部件或单元。例如,诸如存储器之类的合适的存储单元406可被布置为存储:确定的候选点、候选点的配对、单应性、或本征参数或非本征参数的典型设置等。存储器406可以使用关于计算机可读存储器的任意通常已知的技术来实施,诸如ROM、RAM、SRAM、DRAM、CMOS、FLASH、DDR、SDRAM、或一些其他存储器技术。

参照图4b,根据一个示例性实施例示出了立体相机装置470。该实施例的相机420、450不同于上述实施例之处在于:两个相机420、450替换为两个相机模块422、452。每个相机模块422、452包括相机420、450、以及相机控制器424、454。每个相机控制器424、454装备具有图像处理功能,例如,用于相对于光照条件、清晰度等来预处理所捕获的图像。应该注意的是,至少一个相机420、450的校准由立体相机装置470中的控制器400进行,如以上更详细地描述的。

立体相机装置470可以收纳在一个公共外壳中,或者其可以由可能收纳在不同外壳中的多于一个的分立单元构成。这在图4b中由双重轮廓(虚线/实线)示出。

参照图4c,根据一个示例性实施例示出了立体相机装置470。立体相机装置470包括两个相机模块422、452,每个包括相机420、450以及相机控制器424、454。每个相机控制器424、454装备具有图像处理功能,例如用于相对于光照条件、清晰度等预处理所捕获的图像。在该示例性实施例中,相对于第二相机450校准第一相机420。由第二相机450捕获的图像数据被发送至第一相机420,在第一相机420中,该数据被使用以通过调节第一相机420的至少一个本征参数或至少一个非本征参数来校准第一相机420。

如上所述,立体相机装置470可以实施作为两个分立的相机420、450和分立的控制器400,或者两个相机420、450,其中控制器422、454插入或集成在相机420、450中的一个之内。可替换地,立体相机装置470可以实施作为包括两个相机420、450以及控制器400的立体相机实体。

关于结合图4a至图4c所述的实施例,控制器400可被进一步适配为在计算单应性之前挑选出冗余候选点。关于上述实施例中的一些实施例,示意性描述并且示出了装置和方法以便于简化理解。然而,设计者应该理解,在付诸实践可以在所公开概念内替换地实施装置。比如,一个装置或元件的任意部件和模块可被布置在另一装置或元件中,或者可以布置另外的装置或元件。

根据一些示例性实施例,一种计算机程序产品包括如图5中的由500所示的计算机可读介质(诸如例如磁盘或CD-ROM(小型光盘只读存储器))。计算机可读介质可以具有存储于其上的包括程序指令的计算机程序。计算机程序可以可加载至数据处理单元530中,其可以例如包含于通信网络节点510中。当被加载至数据处理单元530中时,计算机程序可以存储在与数据处理单元530相关联或集成的存储器520中。根据一些实施例,当被加载至数据处理单元530中并由该数据单元530运行时,计算机程序可以使数据处理单元530根据例如图3中所示方法来执行方法步骤。

应该注意的是,以非限定性方式描述了所述示例性实施例的布置。通常,设计者可以选择布置其他单元和部件以在所述概念内提供通信网络节点的合适的操作,例如其他处理器或存储器。此外,可以可替换地在所公开概念内执行所提出装置的物理实施方式。比如,在付诸实践时,可以在另一合适的单元或模块中实施特定的所示单元或模块的功能。所公开的校准单元也不限于被布置在任意相机中,并且可以可替换地布置为分立的单元。

遍及说明书对于“一个实施例”或“一实施例”的引用表示结合实施例所述的特定特征、结构或特性包括在至少一个实施例中。因此,遍及说明书中各个地方的表述“在一个实施例中”或“在实施例中”的出现不必涉及相同的实施例。进一步,特定的特征、结构或特性可以在一个或数个实施例中以任意合适的方式组合。尽管以上已经参照具体实施例描述了本发明,并非有意限定于再次所产生的具体形式。相反,本发明仅由所附权利要求限定,并且除了以上所详述之外的其他实施例均等的可能在所附权利要求的范围内。此外,应该知晓的是,如本文所使用的术语“包括”(comprise/comprises或include/includes)并不排除其他元件或步骤的存在。另外,尽管可以在不同权利要求中包括单个特征,这些可以可能有利地组合,并且不同权利要求的包括并不暗示特征的组合不是可行和/或不是有利的。此外,单数的引用并未排除多个。最后,权利要求中参考标记仅提供作为清楚地示例,并且不应构造为以任意方式限定权利要求的范围。

通常由以下独立权利要求限定范围。由从属权利要求限定示例性的实施例。

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