首页> 中国专利> 用于确定摄像机相对于真实环境的至少一个对象的姿态的方法和系统

用于确定摄像机相对于真实环境的至少一个对象的姿态的方法和系统

摘要

一种用于确定摄像机相对于真实环境中至少一个对象的姿态的方法,用于创作/增强现实应用中,所述方法包括:由拍摄真实环境真实对象的摄像机产生第一图像;从与所述摄像机相关联的至少一个取向传感器或从算法产生第一取向数据,所述算法分析所述第一图像以找到并确定表示所述摄像机取向的特征;分配摄像机到真实对象的距离;产生表示所分配距离的距离数据;利用所述距离数据和所述第一取向数据确定所述摄像机相对于与所述真实环境的真实对象相关的坐标系的姿态。可以以更少的处理要求和/或更高处理速度,在移动装置中执行,移动装置例如是具有显示器、摄像机和取向传感器的移动电话。

著录项

  • 公开/公告号CN105701790A

    专利类型发明专利

  • 公开/公告日2016-06-22

    原文格式PDF

  • 申请/专利权人 METAIO有限公司;

    申请/专利号CN201510393737.9

  • 申请日2010-02-12

  • 分类号G06T7/00(20060101);G06T19/00(20110101);H04N5/222(20060101);

  • 代理机构11038 中国国际贸易促进委员会专利商标事务所;

  • 代理人周磊

  • 地址 德国慕尼黑

  • 入库时间 2023-12-18 15:45:39

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-11-01

    授权

    授权

  • 2018-05-11

    专利申请权的转移 IPC(主分类):G06T7/00 登记生效日:20180423 变更前: 变更后: 申请日:20100212

    专利申请权、专利权的转移

  • 2016-07-20

    实质审查的生效 IPC(主分类):G06T7/00 申请日:20100212

    实质审查的生效

  • 2016-06-22

    公开

    公开

说明书

本申请为分案申请,其原申请是于2011年10月12日(国际申请日为2010年2月12日)向中国专利局提交的专利申请,申请号为201080016314.0,发明名称为“用于确定摄像机相对于真实环境的至少一个对象的姿态的方法和系统”。

技术领域

本发明涉及用于确定摄像机相对于真实环境的至少一个对象的姿态的方法和系统,用于创作中,例如,用于地球空间数据库或增强的现实应用,其中由拍摄真实环境真实对象的摄像机产生至少一幅或两幅图像。根据所确定的摄像机姿态,可以根据创作或增强的现实技术,利用虚拟对象增强一幅或多幅图像。

背景技术

已知有这样的应用,其利用所谓的增强现实(AR)技术以虚拟对象增强至少在摄像机上产生的图像。在这样的应用中,耦合到诸如微处理器的处理单元的摄像机拍摄真实环境的画面,其中在显示屏上显示真实环境,除真实环境之外还可以显示虚拟对象,从而利用显示屏上任何种类的虚拟对象增强显示屏上显示的真实环境。在这样的应用中,为了利用虚拟对象增强图像,需要微处理器确定摄像机相对于真实环境至少一个对象的位置和取向(所谓的姿态),以便微处理器正确地利用任何虚拟对象增强拍摄的图像。在这种语境中,利用任何虚拟对象正确地增强拍摄图像意味着,显示虚拟对象,使得虚拟对象以透视上和尺度上正确的方式拟合到图像景色中。

用于确定摄像机姿态的一种已知方法利用的是摄像机拍摄的真实环境对应部分的虚拟参考模型,其中利用开始就知道的姿态近似值将虚拟参考模型投射到图像中并与真实环境的对应部分重叠。然后,图像处理跟踪算法使用虚拟参考模型判断摄像机相对于真实环境的姿态,例如,通过特征检测和参考模型和真实环境对应部分之间的比较。

用于确定摄像机姿态的另一种已知方法使用了放入真实环境中并在拍摄图像时被摄像机拍摄的标记。然后,图像处理跟踪算法使用该标记,尤其是利用已知的图像处理方法分析图像中的标记,以确定摄像机相对于真实环境的姿态。

上述方法的缺点是,必须首先构思并存储虚拟参考模型,这非常消耗时间和资源,如果能够在任何真实环境中自发地使用AR技术,这几乎是不可能的。对于使用标记,用户必须在拍摄图像之前在起始步骤中在真实环境中放置标记,这也非常耗时且麻烦。具体而言,出于这些原因,几乎不能将这些方法用于任何消费产品,例如具有集成摄像机和显示器的移动电话或其他移动装置。

此外,从现有技术知道有所谓的来自运动和同时定位和跟踪(SLAM)方法的结构。所有这些方法都用于确定摄像机相对于真实世界或真实世界一部分的位置和取向(姿态)。如果预先没有可用的信息,在一些情况下,不可能确定摄像机相对于真实世界或真实世界一部分的绝对姿态,而仅确定摄像机姿态从特定时间点开始的变化。在上述应用中,可以使用SLAM方法得到距平点的取向,但缺点是不能确保识别出地平面或某个其他平面。此外,利用这样的方法,通过沿例如10cm距离平移摄像机并向系统传送所涵盖的距离,仅可以得到初始比例尺。此外,SLAM方法需要在不同摄像机姿态下拍摄的至少两幅图像(所谓的帧)以及校准的摄像机。在如下文献中披露了另一种已知的技术:GerhardReitmayr,TomW.Drummond,“InitialisationforVisualTrackinginUrbanEnvironments”,EngineeringDepartmentCambridge,UniversityCambridge,UK(Reitmayr,G.和Drummond,T.W.(2007),InitialisationforVisualTrackinginUrbanEnvironmentsin:6thIEEEandACMInternationalSymposiumonMixedandAugmentedReality(ISMAR2007),13-16Nov2007,Nara,Japan)。基于模型的跟踪系统与测量3D转速、3D加速度和3D磁场强度的传感器组件集成,以在快速移动时更加鲁棒并具有通过重力和磁场传感器的绝对取向参照系。利用针对摄像机姿态动力学的恒速模型,与标准的扩展卡尔曼滤波器进行传感器融合。利用SCAAT型方法(GregWelch和GaryBishop.Scaat:incrementaltrackingwithincompleteinformation,Proc.SIGGRAPH'97,pages333-344,NewYork,NY,USA,1997。ACMPress/Addison-WesleyPublishingCo.)中的单一测量功能结合不同的输入,例如来自跟踪系统的摄像机姿态或来自传感器的测量结果。

在GerhardReitmayr,TomW.Drummond的“RobustModel-basedTrackingforOutdoorAugmentedReality”中披露了另一项技术(GerhardReitmayr和TomDrummond,GoingOut:RobustModel-basedTrackingforOutdoorAugmentedReality,Proc.IEEEISMAR'06,2006,SantaBarbara,California,USA)。跟踪系统依赖于要跟踪的景色的3D模型。在此前的系统中,3D模型描述了凸角边缘和封闭面。使用摄像机姿态的先验估计,将这个3D模型投射到针对每帧的摄像机视图中,计算边缘的可见部分。

因特网上还有另一种应用称为“mydeco”,其中可以利用虚拟对象增强显示真实环境的图像。不过,这种系统需要设置地平面的旋转,对于用户而言这相当麻烦。

在PetriHonkamaa,JaniJaeppinen,CharlesWoodward的“ALightweightApproachforAugmentedRealityonCameraPhonesusing2DImagestoSimulate3D”(ACMInternationalConferenceProceedingSeries;Vol.284,Proceedingsofthe6thinternationalconferenceonMobileandubiquitousmultimedia,OuIu,Finland,Pages155-159,YearofPublication:2007,ISBN:978-1-59593-916-6)中,描述了使用人工交互进行初始化,尤其是借助于参考模型和用户对其操控,是一种适当的方式,因为对于用户而言跟踪初始化是一项容易的任务,但使其自动化会需要事先了解环境、相当强的处理能力和/或额外的传感器。此外,这种交互方案与环境无关,可以在“任何时候,任何地方”应用。

在US7,002,551中,公开了一种用于提供光学透视增强现实比例尺修改显示的方法和系统。它包括传感器套装,包括罗盘、惯性测量单元和视频摄像机,用于精确测量用户当前的取向和角旋转速率。可以包括传感器融合模块以产生对用户角旋转速率和当前取向的统一估计,提供给取向和速率估计模块。取向和速率估计模块以静态或动态(预测)模式工作。绘图模块接收取向;绘图模块使用该取向、来自位置测量系统的位置以及来自数据库的数据在光学显示器中绘示对象处于其正确取向和位置的图形图像。位置测量系统可有效地进行位置估计,用于产生对象的计算机产生图像,以与实景合并,该系统与绘制模块连接。位置测量系统的范例是差分GPS。因为用户正在观看距离相当远的目标(例如通过双筒望远镜),所以由于位置测量系统中的位置误差导致的配准误差得到最小化。

因此,有益的是,提供一种方法和系统,用于确定摄像机相对于真实环境的至少一个对象的姿态,用于创作或增强现实应用中,可以利用更少的处理要求和/或以更高的处理速度执行其,更具体而言,提供事先无需对环境了解太多而创作3D对象的方法,在必要时,能够集成用户的交互以服务于姿态估计。

发明内容

本发明的实施例包括以下方面。在第一方面中,提供了一种用于确定摄像机相对于真实环境中至少一个对象的姿态的方法,用于创作或增强现实应用中,包括以下步骤:由拍摄真实环境真实对象的摄像机产生至少一个第一图像;从与所述摄像机相关联的至少一个取向传感器或从算法产生第一取向数据,所述算法分析所述第一图像以找到并确定表示所述摄像机取向的特征;提供用于分配摄像机到第一图像中显示的真实环境第一对象的距离的模块,所述模块产生表示所分配的摄像机到第一对象的距离的距离数据,并利用距离数据和第一取向数据确定摄像机相对于与真实环境的第一对象相关的坐标系的姿态。

在第二方面中,提供了一种用于确定摄像机相对于真实环境中至少一个对象的姿态的方法,用于创作或增强现实应用中,包括以下步骤:由拍摄真实环境对象的摄像机产生至少一个图像;在图像显示模块上显示图像;从与所述摄像机相关联的至少一个取向传感器或从算法产生取向数据,所述算法分析所述图像以找到表示所述摄像机取向的特征;提供被显示为与所述图像中的真实环境叠加的虚拟参考模型,并从所述虚拟参考模型产生距离数据,所述距离数据表示所分配的所述摄像机到对象的距离;以及利用所述距离数据和所述取向数据确定所述摄像机相对于与所述真实环境的对象相关的坐标系的姿态。

根据另一方面,提供了一种用于确定摄像机相对于真实环境中至少一个对象的姿态的方法,用于创作或增强现实应用中,包括以下步骤:由拍摄真实环境对象的摄像机产生至少一个图像;从与所述摄像机相关联的至少一个取向传感器或从算法产生取向数据,所述算法分析所述图像以找到并确定表示所述摄像机取向的特征;提供与所述摄像机相关联的测量装置,用于测量至少一个表示所述摄像机和所述对象之间的距离的参数;以及基于至少一个参数和所述取向数据确定所述摄像机相对于与所述真实环境的对象相关的坐标系的姿态。

根据另一方面,提供了一种用于确定摄像机相对于真实环境中至少一个对象的姿态的方法,用于创作或增强现实应用中,包括:由拍摄真实环境真实对象的摄像机产生至少一个第一图像;从与所述摄像机相关联的至少一个取向传感器或从算法或通过用户交互产生第一取向数据,所述算法分析所述第一图像以找到并确定表示所述摄像机取向的特征;提供用于分配摄像机到第一图像中显示的真实环境真实对象的距离的模块,所述模块产生表示所分配的摄像机到真实对象的距离的距离数据,并利用距离数据和第一取向数据确定摄像机相对于与真实环境的真实对象相关的坐标系的姿态。该方法继续进行:由拍摄所述真实环境真实对象的摄像机产生第二图像;从所述第一图像和所述第二图像提取至少一个相应特征,并匹配相应特征,以提供表示所述第一图像和所述第二图像之间对应关系的至少一个关系;提供所述摄像机相对于所述第一图像中真实对象的姿态,并利用所述摄像机相对于所述第一图像中真实对象的姿态和所述至少一个关系确定所述摄像机相对于所述第二图像中真实对象的姿态;以及从所述第一图像和所述第二图像提取至少一个相应特征,用于确定第一和第二图像中的地平面并移动放置坐标系以定位在所述地平面上。

一种用于确定摄像机相对于真实环境中至少一个对象的姿态的系统,用于创作或增强现实系统中,可以包括以下部件和特征:至少一个用于产生至少一个图像的摄像机,所述摄像机拍摄真实环境的至少一个对象;用于显示图像的图像显示装置;用于从与所述摄像机相关联的至少一个取向传感器或从算法产生取向数据的模块,所述算法分析所述图像以找到并确定表示所述摄像机取向的特征,特别是与摄像机相关联的至少一个取向传感器用于产生摄像机的取向数据;以及与摄像机和图像显示装置耦合的处理装置。布置处理装置以与摄像机和图像显示装置交互,执行以下步骤:提供被显示为与所述图像中的真实环境叠加的虚拟参考模型,并从所述虚拟参考模型产生距离数据,所述距离数据表示所分配的所述摄像机到对象的距离;以及经由用户接口接收用户指令,用于由用户在所述至少一个图像之内的特定位置放置所述参考模型,从而操控所述参考模型;以及利用所述距离数据和所述取向数据确定所述摄像机相对于与所述真实环境的至少一个对象相关的坐标系的姿态。

另一种用于确定摄像机相对于真实环境中至少一个对象的姿态的系统用于创作或增强现实系统中,可以包括以下部件和特征:至少一个用于产生至少一个图像的摄像机,所述摄像机拍摄真实环境的至少一个对象;用于从与所述摄像机相关联的至少一个取向传感器或从算法产生取向数据的模块,所述算法分析所述图像以找到并确定表示所述摄像机取向的特征,特别是与摄像机相关联的至少一个取向传感器用于产生摄像机的取向数据;以及与所述摄像机相关联的测量装置,用于测量所述摄像机和所述至少一个对象之间的距离;以及与摄像机耦合的处理装置,其中处理装置布置成从实测距离产生距离数据,并利用距离数据和取向数据确定摄像机相对于与真实环境的至少一个对象相关的坐标系的姿态。

例如,该系统包括在移动装置中,其中移动装置可以是移动电话。

本发明可以利用如下事实:当前很多移动电话提供了增强现实(AR)所需的各种部件,例如高分辨率摄像机和显示器、加速度计、取向传感器、GPS、通过WLAN和/或无线电链路的无线连接。

从以下实施例的公开,本发明的其他方面、实施例和有利特征会显而易见。

附图说明

现在将结合例示了本发明各实施例的附图更详细地描述本发明。

图1示出了利用参考模型的根据本发明实施例的方法的流程图例示。

图2示出了从用户角度看来,利用根据图1的过程中的参考模型的实施例的示意图。

图3示出了根据本发明的系统和示范性场景的实施例示意图。

图4示出了根据本发明的系统和示范性场景的实施例另一示意图。

图5示出了利用虚拟对象增强的图3场景的示意图。

图6示出了用于计算摄像机拍摄的图像中的放置坐标系的根据本发明方法实施例的流程图例示。

图7示出了计算线条取向的图。

图8示出了在有两幅或更多摄像机拍摄的图像时,用于计算地面坐标系的根据本发明方法另一实施例的流程图例示。

图9-12示出了执行图8所示过程时的示范性图像。

具体实施方式

在图3、4和5中,示出了根据本发明系统实施例和示范性场景的示意图。具体而言,图3示出了系统1,其中用户(未示出)手持移动装置10,其结合或组合了摄像机11,用于产生现实世界的至少一幅图像30,例如,包含如图所示的真实对象31、32。根据特定范例,真实对象31、32可以是桌子和柜子,放在具有地平面35的房间中,摄像机11拍摄真实环境的图像,以在显示屏20上显示。也可以将地平面视为真实对象。在确定姿态之后,为真实环境提供坐标系33,例如图3所示。此外,摄像机11与图像显示模块20耦合,例如并入移动装置10中的触摸屏。不过,可以使用适于向用户显示图像的任何其他图像显示模块,例如头戴式显示器或任何其他类型的移动或固定显示装置。此外,处理装置13与移动装置10连接或并入其中,处理装置13可以是例如微处理器。在本范例中,移动装置10还结合了取向传感器12或与之耦合。在特定应用中,移动装置可以是具有集成的取向传感器12、摄像机11、触摸屏20和处理装置13的移动电话。不过,出于本发明的目的,也可以将部件分布和/或用于不同应用中。此外,它们可以通过有线或无线的方式彼此耦合。

系统1用于确定摄像机相对于真实环境的至少一个对象的姿态,用于创作或增强现实系统中。在显示模块20上,可以利用虚拟对象,例如如图5所示,通过根据摄像机的姿态显示与图像30中的真实环境叠加的虚拟对象40来增强真实环境的图像。摄像机的姿态(包括位置和取向数据)可以是,例如相对于真实对象31的姿态。为此,可以相对于图3所示的坐标系33确定姿态,坐标系又与相应对象31相关联。

在下文中,将结合如图1和图6中所示的流程图描述根据本发明的过程的实施例。具体而言,布置处理装置13以与摄像机11和图像显示装置20交互,执行以下步骤:

在步骤1.0中,摄像机11拍摄真实环境的第一图像,例如,如图3所示。至少一个取向传感器12与摄像机11相关联,用于在步骤2.0中产生摄像机的取向数据。不过,应当指出,在任何情况下,取向传感器都不是必需的。相反,可以从算法替代地或额外地产生取向数据,该算法分析第一图像,以发现并确定表示摄像机取向的特征。本领域技术人员将认识到,这样的算法是本领域公知的,例如,ZuWhanKim的文章“GeometryofVanishingPointsanditsApplicationtoExternalCalibrationandRealtimePoseEstimation”(2006年7月1日)中公开的“Orientationfromlines(线条取向)”,InstituteofTransportationStudies,ResearchReports,PaperUCB-ITS-RR-2006-5。

图2A-2D示出了与图3-5先前所述场景不同的场景。在图2中,图2A、2B所示的图像对应于摄像机拍摄的第一图像,例如如前所述的第一图像30。图2C,2D显示了下文更详细所述的由相同或不同摄像机拍摄的相应第二图像60。为了反映图像与相应第一和第二图像的对应关系,结合不同场景使用与第一图像(30)和第二图像(60)相同的附图标记。

通常,根据本发明,用于向图像30中显示的真实对象31分配摄像机11的距离的模块产生距离数据,距离数据表示所分配的摄像机11到真实对象31的距离。根据图1中的步骤3.0,提供用于分配摄像机到真实对象的距离的模块包括提供虚拟参考模型,在第一图像30中虚拟参考模型被显示为与真实环境叠加。参考对象的初始距离可以是固定值(例如2.5米)和距离传感器提供的距离之一。例如,如图2A所示,根据取向传感器12提供的取向在图像30中放置参考模型50。参考模型50(可以是任何种类的虚拟模型)的尺度,例如其高度、宽度或深度,是该系统已知的。

一种实施方式可以包括:平行于取向平面平移参考模型或利用平行于平行于平面法线的轴向参考模型施加旋转或沿着由摄像机中心和已放置的对象质心定义的线移动参考模型(允许增大或减小图像中参考对象的尺寸)。

结合步骤4.0,系统正在接收用户的指令,用于由用户操控参考模型50,参考模型的操控包括如下至少一种:在平面上第一图像30之内的特定位置移动参考模型50,该平面至少部分由取向数据定义;以及改变参考模型50的尺度或变量,例如移动参考模型50和/或改变参考模型50的高度(在图1中,表示为移动和缩放参考模型)。

在下一步中,利用虚拟参考模型50,由其利用图像30中实际显示的其参数,例如高度,确定摄像机11和真实对象31之间的距离数据。就此而言,系统假设用户已在图像之内正确放置了参考模型50,使得参考模型50的比例对应于图像30中真实对象31、32的比例。从参考模型50的尺度,考虑到固有摄像机参数,可以导出摄像机11和真实对象31之间的距离。然后利用来自步骤4.0的距离数据和来自步骤2.0的取向数据确定摄像机11相对于真实对象31(或相对于与对象31相关联的坐标系33)的姿态。根据其最终位置和取向,参考模型50界定坐标系33的位置和取向。根据步骤5.0,根据确定的摄像机姿态,将图2B或图5所示的至少一个虚拟对象40与第一图像30中的真实环境叠加。如图2B所示,可以取消参考模型50。

用户操控参考模型50可以包括以下步骤中的至少一个:使用两个手指,借助触摸屏触摸参考模型,使手指彼此远离以增大尺寸,使手指彼此靠近以减小参考模型的尺寸(在具有来自传感器的距离测量结果时,这可能不是必要的),使用两个手指,借助于触摸屏触摸参考模型,彼此相对地旋转手指,以绕着垂直于地平面的轴旋转参考模型,利用至少一个手指触摸参考模型,并移动手指以在平面上移动参考模型。

在取向传感器表示摄像机的视轴取向接近平行于地面或向上看时,可以决定激活以替代以上交互方法的另一种交互可能是这样的方法:其中,用户操控参考模型可以包括以下步骤中的至少一个:

-使用两个手指,借助触摸屏触摸参考模型,使手指彼此远离以使模型更接近观看者,移动发生于假定的地平面上并平行于假定的地平面与包含摄像机中心的平面的交叉线,摄像机坐标系中的x为零。

-使用两个手指,借助触摸屏触摸参考模型,使手指彼此靠近以使模型远离观看者,移动发生于假定的地平面上并平行于假定的地平面与包含摄像机中心的平面的交叉线,摄像机坐标系中的x为零。

-使用两个手指,借助触摸屏触摸参考模型,并彼此相对地旋转手指,以便绕着垂直于假定地平面的轴旋转参考模型。

-利用至少一个手指触摸参考模型并上下移动手指,以便平行于假定地平面的法线移动参考模型。

-利用至少一个手指触摸参考模型并左右移动手指,以便在假定地平面上并平行于假定地平面和包含摄像机中心的平面的交叉线移动参考模型,摄像机坐标系中的y为零。

根据另一实施例,提供用于分配摄像机11到真实对象31的距离的模块包括提供与摄像机11相关联的测量装置,例如距离传感器,用于测量表示摄像机11和真实对象31之间距离的至少一个参数,其中基于该至少一个参数产生距离数据。例如,测量装置包括以下装置之一:由摄像机的聚焦单元、距离传感器、至少一个飞行时间摄像机和/或一个或多个立体摄像机提供的距离。

根据图3的实施例,测量装置14可以与摄像机11相关联,用于测量摄像机和对象31之间的距离。与摄像机11耦合的处理装置13被布置成从实测距离产生距离数据,并利用距离数据和取向数据确定摄像机相对于对象31的初始姿态。可以依据在地平面上的位置以及绕平行于平面法线的轴的旋转细化初始姿态。就此而言,图4示出了在知道与聚焦对象(在图4中与桌子31不同)的距离以及描述取向传感器提供的地平面法线的两个角度的情况下,如何确定摄像机11的姿态的范例。生成描述平面相对于摄像机旋转的旋转矩阵的一种可能是将第一矩阵列设置为重力矢量(可以由取向传感器提供)。将第二矩阵矢量设置为与垂直于重力矢量的平面平行的任意矢量。可以利用两个其他列的矢量积获得第三矩阵列。所有列都应当被归一化。

在本发明的实施例中,该方法还包括提供表示摄像机绕垂直于地平面的轴的旋转的参数,例如,由旋转传感器或罗盘提供(在图6中表示为z旋转)。这使得如上所述的第二矩阵矢量不是任意的。一开始可以正确地对模型取向,该模型与地球坐标系,例如表示北的标志相关。

在另一种方法中,提供用于分配摄像机11到真实对象31的距离的模块可以包括提供至少一个参数并使用固有的摄像机参数,其表示图像30中可见的真实环境两个特征间的距离,例如桌子31的桌腿和柜子32的一个边缘之间的距离。另一种有帮助的范例是提供位于地平面上的两个特征的距离。在适当的图像处理算法示出探测到的特征且用户从其对真实环境的了解提供距离之后,可以由用户以交互的方式提供该参数。

也可以通过任何适当方式组合用于提供分配摄像机11到真实对象31的距离的模块的任何上述方式。

如图3所示,使用距离数据和取向数据确定图像30中的至少一个放置坐标系,例如坐标系33,其中相对于放置坐标系33使至少一个虚拟对象40与真实环境叠加。在仅有一幅图像时,没有例如指向地的距离传感器,系统可能无法精确确定用于分配其上的对应坐标系的地平面。就此而言,假设放置坐标系33大致为地坐标系。如下文更详细所述,可以利用从摄像机不同姿态拍摄的相同场景的第二图像确定地平面,从而确定地坐标系。

参考图5,示出了与真实环境叠加的虚拟模型40,应当指出,虚拟模型40也可以充当上文参考图2A所述的参考模型50。

在图像30所示的房间中叠加虚拟模型40,用户可以获得如果在现实世界的房间中放入真实的沙发将如何与虚拟模型40对应的印象。因此,用户可以使用其移动电话拍摄图像并利用任何种类的虚拟对象增强图像,其中技术人员知晓各种应用。另一种应用例如可以是:在现实世界的图画中放置对象并具有摄像机的GPS位置和绝对取向,利用本发明确定虚拟模型40的姿态,允许馈送定位在地球上的对象的全局数据库,像Earth。

在图6中,如上所述,更详细地示出了上述过程。在初始化步骤中,一开始假设参考模型50的距离。根据用户的主观印象在平面(平面平行于地平面)上移动参考模型50和/或改变参考对象的尺度/参数,可以确定必要的平移数据。

参考图更详细地解释了用于确定摄像机取向而不利用取向传感器的遵循“线条取向”方式的算法:

隐没点是平行线交叉点的图像。令vx、vy、vz为隐没点,vx为“无穷远点Ix=(1,0,0,0)”的图像(x轴),vy为“无穷远点Iy=(0,1,0,0)”的图像(y轴),vz为“无穷远点Iz=(0,0,1,0)”的图像(z轴)。此外,令vx的齐次坐标为vx=[u1,v1,w1]=K*[Rt]*Ix。可以利用inv(K)*vx并随后将其归一化到1获得矩阵R的第一列。此外,令vy的齐次坐标为vy=[u2,v2,w2]=K*[Rt]*Iy。可以利用inv(K)*vy并随后将其归一化到1获得矩阵R的第二列。最后,令vz的齐次坐标为vz=[u3,v3,w3]=K*[Rt]*Iz。可以利用inv(K)*vz并随后将其归一化到1获得矩阵R的第三列。如果vx、vy和vz中仅有两个点可用,那么仍然能够使用矢量积计算第三个,例如vz=vx^vy。参见Z.Kim,“Geometryofvanishingpointsanditsapplicationtoexternalcalibrationandrealtimeposeestimation”,Inst.Transp.Stud.,Res.Rep.UCB-ITS-RR-2006-5,Univ.Calif,Berkeley,CA,2006,获取更多细节。

根据图8,将更详细地解释根据同一场景但从不同姿态拍摄的至少一个第二图像或更多图像计算地坐标系的方法。

该方法包括由摄像机(可以是与拍摄第一图像的摄像机相同或不同的摄像机,其固有参数也是已知的)产生第二图像60的步骤,该摄像机从不同姿态拍摄真实环境的真实对象(例如,图像30的对象31)。

在下一步骤中,提取来自第一图像30和第二图像60的至少一个相应特征,其中匹配相应特征以提供表示第一图像和第二图像之间对应关系的至少一个关系(在图8中在步骤A2中该关系表示为“基本矩阵”,根据比例尺定义该矩阵(要获得更多细节,参见MultipleViewGeometryInComputerVision第11章,第二版,RichardHartley和AndrewZisserman,CambridgeUniversityPress,March2004)在步骤B5中确定表示为“α”的Te比例尺)。根据步骤A1,可以使用从拍摄第二图像时的新姿态导出的第二取向数据减少所需特征的量或检查基本矩阵的结果。结果,第一图像的放置坐标系33可以过渡到第二图像。

当然可以利用取向传感器支持基本矩阵的计算,减少所需特征匹配的量。

在下文中,更详细地解释缺失“α”的计算:

从第一图像(图像1)和第二图像(图像2)之间的点对应关系,能够构建出基本矩阵:

F=K2-T[t]xRK-1

其中K1是采集第一图像的摄像机的摄像机固有参数矩阵,K2是采集第二图像的摄像机的固有参数矩阵,t是两个摄像机视图之间的平移,R为旋转。

令p1和p2为图像1和图像2中的两个对应点,它们证实了:

p2TFp1=0

因此F是按比例定义的。有了K和F,可以得到成比例的实质矩阵

E=[t]xR

可以从点对应关系直接计算实质矩阵。因此,为了得到成比例的平移t和旋转R(要获得更多信息,参见B.Horn:Recoveringbaselineandorientationfromessentialmatrix,JournaloftheOpticalSocietyofAmerica,January1990)。既然在两幅图像中都可见到平面,就可能计算出单应性,其将图像1中这个平面上的每个点转换成图像2中的其对应点。可以将单应性写为:

G=K2(R+t/dnT)Kl-1

其中n为第一摄像机视图中表达的平面的法向矢量,是第一视图的摄像机中心和平面之间的距离。如果我们知道两幅图像包含该平面且该平面具有很多特征点,检测位于平面上的点非常容易,例如:验证同一单应性的最大点集。另一种可能是探测平面以从对应关系重构3D点并找到包括大数量3D点的平面(任选地,接近平行于从权利要求1中的取向的平面,例如,以减小搜索空间并改进鲁棒性)。从单应性G,能够(再次)得到R,并能够得到t/d,能够得到n(利用ODFaugeras,FLustman的MotionandStructureFromMotioninaPiecewisePlanarEnvironment的算法,Intern.J.ofPatternRecogn.andArtific.Intelige.,Vol.2,No.,3.(1988),pp.485-508)。

由此可以看到要解决的问题,有了t的尺度将得到d,有了d将得到t的尺度(“α”)。两个视图之间的平移(车中的里程表或GPS…)会给出t的尺度。一个特征p1的距离给出了这个特征的深度z,我们知道:

zp1=K1[xyz]

-在p在该平面上时,我们有

nT[xyz]=d,这意味着d=znTKl-1pl.

-在p1不在平面上时,需要求解

K2(zRKl-1p1+alphat0)=betap2

其中t0是与真实平移共线的矢量,范数等于1,未知数为α和β,非常容易找到解(方程比未知数多)。

两个特征X=[xyz]和X'=[x'y'z']之间的距离允许得到t的尺度:

实际上给出了||X-X'||=||zKl-1p1-z'Kl-1p1p1'||。利用方程

K2(ZRKl-1p1+alphat)=betap2

能够表达z和z',使得z=Aα且z'=A'α,其中A仅取决于K,R,t(成比例),p1和p2,而A'仅取决于K1,K2,R,t(成比例),p1'和p2'(这些参数或者是假设给出的或者是上文计算的)。

alpha=||X-X'||/||A-A’||

在步骤C1中,从对第一图像的先前处理提供摄像机相对于第一图像中真实对象的姿态,使用摄像机相对于第一图像中真实对象的姿态和至少一个关系确定摄像机相对于第二图像中真实对象的姿态,至少一个关系即基本矩阵和“α”,用于确定姿态的平移参数tx,ty,tz,由定义摄像机位置和取向的参数tx,ty,tz,rx,ry,rz(“t”代表平移,“r”代表三个不同维度上的旋转参数)构成。

具体而言,使用针对第一图像记录的距离数据和第一取向数据确定第一图像中的至少一个放置坐标系(例如坐标系33)及其在第一图像中的位置和取向(如上所述),其中基本矩阵和“α”用于为第二图像中的放置坐标系分配对应于第一图像中相应位置和取向的位置和取向。在图2C中示出了这种情况,其中,第二图像60(根据“转换”的放置坐标系33定位)中示出了图2A中的参考模型50(根据放置坐标系33定位),位置和取向对应于第一图像30中的相应位置和取向(即,参考模型的后方转向第一图像30中的壁)。

根据实施例,提供至少一个关系(基本矩阵和α)的步骤还可以包括一种或多种以下步骤:

提供至少一个表示拍摄第一图像和第二图像之间摄像机运动的参数(步骤B1)。例如,在步骤B1中提供至少一个参数可以包括提供拍摄第一图像时摄像机的第一位置参数和拍摄第二图像时摄像机的第二位置参数,位置参数是由定位系统或探测器,例如用户GPS的探测器产生的。可以由卫星定位系统、无线网络定位机构、移动电话蜂窝位置机构和高度测量装置,例如高度计,中的至少一种产生第一和第二位置参数中的至少一个。注意,(来自tx,ty,tz的)一个平移尺度的测量值或t的范数注意求解α。

提供至少一个表示在第一和第二图像中都可见的真实环境两个特征间距离的参数(步骤B2)。任选地,可以应用参考模型50给出的尺度生成的2D-3D对应(任选地,假设参考模型在一个平面上)(步骤B3)向步骤B2提供输入。

通过假设它们在平面上并假设参考模型50位于平面上来提供至少一个表示在图像之一中都可见的真实环境两个特征间距离的参数(步骤B2),参考模型的尺度为两个特征之间的距离提供尺度。

而且,可以查询摄像机之一的位置附近特征(包括3D位置或特征距离)的数据库,获得图像之一中的特征和数据库中特征之间的特征对应关系。可以利用在已知姿态拍摄的图像源生成这个数据库,像Streetview。匹配来自两个位置的重叠图像的特征并使用上述机制。

提供至少一个表示真实环境的至少一个特征(在两幅图像中都匹配)和一个摄像机之间距离的参数(步骤B4)。例如,所提取的靠近摄像机投影中心或接近距离测量单元的特征是瞄准。

此外,在步骤C1中,在第二图像中放置了放置坐标系(位置和取向对应于第一图像中的相应位置和取向)之后,确定两幅图像中相对于放置坐标系的姿态。此外,确定两幅图像中所有匹配的特征对应关系的3D位置。在步骤C2中,利用上文所述的特征3D位置或利用单应性约束,可以确定主平面,例如地平面。

继续步骤C3,例如,通过沿着平面法线移动,将第一图像中的放置坐标系定位在地平面上。

图9-12示出了与前述场景不同的场景。在图9-12中,图9-11所示的图像对应于摄像机拍摄的第一图像,于是像前述场景那样,利用附图标记30表示。另一方面,图12示出了由同一或不同摄像机拍摄的与前述第二图像60对应的第二图像。

转到步骤C4,如图9-12所示,该方法前进到根据第一图像中确定的放置坐标系33a将至少一个虚拟对象(例如,图9中的对象71a,可以是参考模型或要与现实世界叠加的任何虚拟对象)与真实环境叠加。之后,根据现在位于第一图像中先前确定的地平面上的放置坐标系33a(在将坐标系33a移动到所确定的地平面之后,现在被显示为图9中的对象71b,新定位的坐标系表示为33b)将虚拟对象与真实环境叠加。该过程继续进行,沿着地平面移动放置坐标系33b(换言之,调节x,y)。如图10所示,在地平面上移动并定位放置坐标系33b,使得根据第一图像中的(原始)放置坐标系33a的虚拟对象(对象71a)的投影基本等于或接近(即,基本对应于)根据在地平面上移动并定位的放置坐标系33b的虚拟对象(对象71b)的投影。如图11所示,该过程可以继续,任选地缩放虚拟对象71b(即,改变尺度,例如其高度),使其对应于用户一开始在第一图像30中放置的虚拟对象(对象71a)的原始尺度。

另一种实现这一目的的可能性是从摄像机中心在对象一点(例如位于下部)上发射射线。下一步是使射线与平面相交。然后,最后,绘制虚拟对象,使得该点与交点重叠。

可以针对所有放置的虚拟对象逐一进行校正对象位置的过程,未必改变放置坐标系,但改变虚拟模型与放置坐标系的关系(tx,ty,tz,rx,ry,rz)。

如图12所示,现在根据第二图像60中地平面上移动的放置坐标系将虚拟对象71b与真实环境叠加,其中图12示出,可以从实际的地平面位移第一图像30中假设的放置坐标系。

应当指出,可以在背景中执行虚拟对象71a、71b的叠加,即不在显示屏上显示,而是仅仅在算法中叠加,用于确定在地平面上正确定位的最终放置坐标系。可以在任意其他图像中使用这一地平面,用于将任何虚拟对象与真实环境叠加,不管其他图像的相应远景如何。

尽管已经参考示范性实施例描述了本发明,但本领域的技术人员将理解,可以进行各种改变,可以用等价元件替代其元件而不脱离本发明的范围。此外,可以做出很多修改以针对本发明的教导调整特定状况或材料,而不脱离其实质范围。因此,意在本发明不限于公开的具体实施例,而是本发明将包括落在所附权利要求范围之内的所有实施例。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号