首页> 中国专利> 利用正向和反向深度预测进行图像的深度提取的系统和方法

利用正向和反向深度预测进行图像的深度提取的系统和方法

摘要

提供了一种利用正向和反向深度预测进行图像的时空深度提取的系统和方法。本公开的系统和方法提供了:获取(802)多个帧、基于多个帧中的前一帧的深度图来生成(806)多个帧中的当前帧的第一深度图,基于多个帧中的后一帧的深度图来生成(808)多个帧中的当前帧的第二深度图,以及处理(810)第一深度图和第二深度图以产生当前帧的第三深度图。

著录项

  • 公开/公告号CN102047288A

    专利类型发明专利

  • 公开/公告日2011-05-04

    原文格式PDF

  • 申请/专利权人 汤姆森特许公司;

    申请/专利号CN200880129526.2

  • 发明设计人 张冬青;伊扎特·伊扎特;尹永实;

    申请日2008-05-28

  • 分类号G06T7/00(20060101);

  • 代理机构11105 北京市柳沈律师事务所;

  • 代理人吕晓章

  • 地址 法国伊西莱穆利诺

  • 入库时间 2023-12-18 02:13:30

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-01

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

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

  • 2014-04-23

    授权

    授权

  • 2011-06-15

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

    实质审查的生效

  • 2011-05-04

    公开

    公开

说明书

技术领域

本公开一般地涉及计算机图形处理和显示系统,并更具体地涉及一种利用正向和反向深度预测进行图像的深度提取的系统和方法。

背景技术

立体成像是在视觉上组合一个场景的从稍微不同的视点取得的至少两个图像以便产生三维(“3D”)深度的错觉的处理。该技术依赖于如下事实:人眼间隔一定距离,并且因此没有观看完全相同的场景。通过为每只眼睛提供来自不同观察点(perspective)的图像,欺骗观看者的眼睛感觉到深度。典型地,在提供两个有区别的观察点的情况下,分别将组成图像称为“左侧”和“右侧”图像,也分别将其已知为基准图像和补充图像。然而,本领域技术人员将认识到,可以组合多于两个视点来形成立体图像。

在3D后期制作、视觉效果(VFX)工作流程和3D显示应用中,一项重要的处理是从由左眼视图图像和右眼视图图像组成的立体图像中推断深度图。例如,最近商业化的自动立体3D显示器要求图像加深度图(image-plus-depth-map)输入格式,使得该显示器可以生成不同的3D视图来支持多个视角。

根据立体图像对推断深度图的处理在计算机视觉研究的领域中被称为立体匹配,因为使用像素或块匹配以发现左眼和右眼视图图像中的对应点。新近,推断深度图的处理在3D显示团体中也通常被已知为深度提取。根据各图像中与场景中的相同点对应的两个像素之间的相对距离推断深度值。

在众多计算机视觉应用(诸如,例如用于计算机辅助绘图(CAD)的快速对象建模和原型成型、用于人机交互(HCI)的对象分割和检测、视频压缩和视觉监控(visual surveillance))中广泛使用数字图像的立体匹配,以便提供三维(3D)深度信息。立体匹配从场景中位于不同位置和朝向的两个或多个相机获得场景的图像。在大约相同的时间从每个相机获得这些数字图像,并且对应于空间中的3D点匹配每个图像中的点。通常,通过搜索一部分图像和使用约束(诸如核线约束)来匹配来自不同图像的点,以便使一个图像中的点与另一图像中的点相关联。

关于深度图提取已经进行了实质性的工作。关于深度提取的大部分工作集中在单个立体图像对上而不是在视频上。然而,视频取代图像成为消费电子界的主导媒体。对于视频而言,采用立体图像对的序列而不是单个图像对。在常规技术中,向每个帧对应用静止深度提取算法。在大多数情形下,输出深度图的质量对于3D回放是足够的。然而,对于具有大量纹理的帧而言,可以看见时间性的(temporal)抖动伪像,这是因为深度图在时间方向上(即,在图像对序列的时间段中)未精确地对齐。

因此,存在对于使深度图提取处理沿时间方向稳定以减少时间性的抖动伪像的技术的需求。

发明内容

根据本公开的一方面,提供了一种利用正向和反向深度预测进行图像的时空深度提取的系统和方法。本公开的系统和方法提供了:获取多个帧、基于多个帧中的前一帧的深度图来生成多个帧中的当前帧的第一深度图,基于多个帧中的后一帧的深度图来生成多个帧中的当前帧的第二深度图,以及处理第一深度图和第二深度图以产生当前帧的第三深度图。

附图说明

将对本公开的这些以及其他方面、特征和优点进行描述,或者根据要连同附图一起阅读的优选实施例的以下详细描述,本公开的这些以及其他方面、特征和优点将变得清楚。

在附图中,贯穿各视图,相同的参考标记表示类似的元件:

图1是根据本公开的一方面的将至少两个图像进行立体匹配的系统的示例性图示;

图2是根据本公开的一方面的将至少两个图像进行立体匹配的示例性方法的流程图;

图3图示在对场景中感兴趣的点拍摄的两个图像之间的核线(epipolarline)几何关系;

图4图示在视差和深度之间的关系;

图5是根据本公开的一方面的用于估计至少两个图像的视差的示例性方法的流程图;

图6是根据本公开的一方面的时空深度提取的示例性方法的流程图;

图7图示用于增强立体图像的连续帧序列的深度图的正向和反向预测处理;以及

图8是根据本公开的一方面的生成深度图的示例性方法的流程图。

应理解,(各)附图用于例示本公开的构思的目的并且不一定是用于例示本公开的唯一可能的配置。

具体实施方式

应理解:可以以各种形式的硬件、软件或其组合来实施附图中所示的元件。优选地,在一个或多个被适当编程的通用设备上以硬件和软件的组合来实施这些元件,所述通用设备可以包括处理器、存储器以及输入/输出接口。

本描述例示了本公开的原理。因此本领域技术人员应理解将能够设计出虽然未在此被明确描述或示出、但是体现本公开的原理并且被包括在本公开的精神和范围内的各种布置。

在此所叙述的所有示例和条件性语言意在教导性的目的,以帮助读者理解本公开的原理和由发明人为促进本领域技术而贡献的构思,并且要被解释为不限于这种具体叙述的示例和条件。

另外,在此叙述的本公开的原理、方面、以及实施例的所有陈述、以及本公开的具体示例,意在包含本公开的结构的和功能的两者的等效物。此外,这种等效物意在包括当前已知的等效物以及将来开发的等效物这两者,即,所开发的无论结构如何、执行相同功能的任何元件。

因此,例如,本领域技术人员应理解:在此呈现的框图表示体现本公开的原理的例示性的电路的概念性视图。类似地,应理解:任何流程图示、流程图、状态转换图、伪代码等等表示实质上可以在计算机可读介质中表示的、并因此通过计算机或处理器执行的各种处理,无论这种计算机或处理器是否被明确示出。

可以使用专用硬件以及通过与适合的软件相关联而能够执行软件的硬件来提供附图中所示的各种元件的功能。当由处理器提供时,可以由单个专用处理器、单个共享处理器、或其中一些可以被共享的多个独立处理器提供所述功能。另外,术语“处理器”或“控制器”的明确使用不应被解释为排他性地指代能够执行软件的硬件,其可以隐含地包括、而不限于数字信号处理器(“DSP”)硬件、用于存储软件的只读存储器(“ROM”)、随机存取存储器(“RAM”)、以及非易失性存储装置。

还可以包括其它的常规的和/或定制的硬件。类似地,附图中所示的任何开关只是概念性的。可以通过程序逻辑的操作、通过专用逻辑、通过程序控制和专用逻辑的交互作用、或甚至手动地执行它们的功能,如从上下文中具体理解的,具体技术可由实施者选择。

在其权利要求中,被表达为用于执行所指定的功能的部件的任何元件意在包含执行该功能的任何方式,所述任何方式例如包括:a)执行该功能的电路元件的组合或b)与用于执行软件的适当的电路组合以执行该功能的任何形式的软件(因此包括固件、微代码等)。由这样的权利要求所限定的本公开在于以下事实:以权利要求所请求保护的方式将所叙述的各种部件所提供的功能组合并放在一起。因此,可以提供这些功能的任何部件被认为等效于与在此所示出的那些部件。

立体匹配是用于从立体图像(例如,左眼视图图像和右眼视图图像)推断深度图的标准方法。在常规的自动立体显示器上进行的3D回放已经表明深度图的平滑度显著影响作为结果的3D回放的外观。不平滑的深度图经常导致3D回放中的之字形边缘,这在视觉上比具有不太准确的深度值的平滑的深度图的回放更糟糕。因此,对于3D显示和回放应用而言,深度图的平滑度比深度准确度更重要。此外,基于全局优化的方法对于3D显示应用中的深度估计而言是必须的。本公开提出了一种结合时间信息以提高深度图的平滑度的深度提取技术。众多立体技术优化了以下成本函数(cost function),该成本函数用于强制空间相干性以及与数据的一致性。针对图像序列,时间分量对于提高所提取的深度图的准确度是重要的。

提供了一种利用正向和反向深度预测进行图像的时空深度提取的系统和方法。本公开的系统和方法提供了一种结合时间信息以提高深度图的平滑度的深度提取技术。本公开的技术结合正向和反向通道(pass),其中使用图像序列的当前帧的前一帧的深度图来初始化当前帧处的深度提取,这使得计算更快并且更准确。然后可以利用深度图或视差图与立体图像对一起进行3D回放。本公开的技术在解决由深度图的不稳定造成的、2D+深度显示中3D回放的时间性抖动伪像的问题时是有效的。

现在参照附图,图1示出了根据本公开的实施例的示例性系统组件。可以提供扫描设备103用于将胶片印片(film print)104(例如相机原始的胶片底片)扫描为数字格式(例如,Cineon-格式或者运动画面和电视工程师协会(“SMPTE”)数字画面交换(“DPX”)文件)。扫描设备103可以包括例如电视电影装置(telecine)或者将根据胶片生成视频输出的任何设备(诸如例如具有视频输出的Arri LocProTM)。可替换地,可以直接使用来自后期制作处理或者数字电影的文件106(例如,已经是计算机可读形式的文件)。计算机可读文件的潜在来源是AVIDTM编辑器、DPX文件、D5磁带等。

所扫描的胶片印片被输入给后期处理设备102(例如,计算机)。该计算机在各种已知的计算机平台中的任一种上实现,所述计算机平台具有诸如以下硬件:一个或多个中央处理单元(CPU)、诸如随机存取存储器(RAM)和/或只读存储器(ROM)之类的存储器110,以及诸如键盘、光标控制设备(例如,鼠标或操纵杆)和显示设备之类的(多个)输入/输出(I/O)用户接口。该计算机平台还包括操作系统和微指令代码。在此描述的各种处理和功能可以是经由操作系统执行的微指令代码的一部分或者软件应用程序的一部分(或者是其组合)。在一个实施例中,软件应用程序有形地体现在程序存储设备中,其可以被上载到诸如后期处理设备102之类的任何合适的机器并且由该机器执行。另外,可以通过诸如并行端口、串行端口或者通用串行总线(USB)之类的各种接口和总线结构将各种其他外围设备连接到该计算机平台。其他外围设备可以包括附加的存储设备124和印片机(printer)128。可以采用印片机128来印制胶片的修改版本126,例如胶片的立体版本,其中可以使用作为以下描述的技术的结果的3D建模的对象来更改或者取代一个场景或多个场景。

可替换的,可以将已经是计算机可读形式的文件/胶片印片106(例如数字电影,其例如可以存储在外部硬盘驱动器124中)直接输入到计算机102中。注意,在此使用的用语“胶片”可以指胶片印片或者数字电影。

软件程序包括在存储器110中存储的立体匹配模块114,其用于将第一图像中的至少一个点与第二图像中的至少一个对应点进行匹配。该立体匹配模块114还包括图像偏转器(image warper)116,其被配置为调整立体图像对的核线使得核线精确地成为图像的水平扫描线。

该立体匹配模块114还包括视差(disparity)估计器118,其被配置为估计第一图像中的至少一个点与第二图像中的至少一个对应点的视差,并且根据所估计的视差对于第一图像中的至少一个点中的每一个点与第二图像中的至少一个对应点来生成视差图。该视差估计器118包括:像素匹配成本函数132,被配置为对第一图像和第二图像中的像素进行匹配;平滑度成本函数134,向视差估计应用平滑度约束;以及时间成本函数136,被配置为使所生成的视差图的序列在时间上对齐。视差估计器118还包括:置信传播算法或置信传播函数138,用于使所估算的视差最小化;以及动态编程算法或动态编程函数140,利用被应用到第一图像和第二图像的确定性匹配函数的结果来初始化置信传播函数138以加速置信传播函数138。

立体匹配模块114还包括深度图生成器120,用于通过对视差图的视差值进行反转(invert)而将视差图转换为深度图。

图2是根据本公开的一方面的对至少两个二维(2D)图像进行立体匹配的示例性方法的流程图。初始地,后期处理设备102获取至少两个二维(2D)图像,例如,具有左眼视图和右眼视图的立体图像对(步骤202)。后期处理设备102可以通过获得计算机可读格式的数字母版图像(master image)文件而获取至少两个2D图像。可以通过利用数字相机来捕捉移动图像的时间序列而获取数字视频文件。可替换的,可以通过常规的胶片类型的相机来摄制视频序列。在该情境下,经由扫描设备103扫描该胶片。

应理解,无论胶片是被扫描还是已经是数字格式,胶片的数字文件都将包括关于各个帧的位置的指示或信息(例如帧号、自胶片的起始起的时间等)。

可以通过具有相同设置的两个相机来摄制立体图像。对相机进行标定以使其具有相同焦距、焦点高度和平行焦平面;或者,必须基于已知的相机参数对图像进行偏转使得仿佛它们是被具有平行焦平面的相机所拍摄的(步骤204)。该偏转处理包括相机标定(calibration)(步骤206)和相机调校(rectification)(步骤208)。标定和调校处理调整立体图像的核线使得核线精确地成为图像的水平扫描线。参照图3,OL和OR表示两个相机的焦点,P表示两个相机感兴趣的点,而pL和pR表示点P被投影到成像平面的何处。每个焦平面上的交叉点被称作核点(epipole)(由EL和ER表示)。右核线(例如,ER-PR)是连接聚焦中心和左侧图像上的点的射线(ray)在右侧图像上的投影,因此左侧图像上的像素在右侧图像上的对应点应位于右侧图像上的核线上,同样的情况适用于左侧核线,例如EL-pL。由于对应点发现沿着核线进行,调校处理将对应搜索简化为仅仅沿扫描线搜索,这极大地减少了计算成本。对应点是图像中与同一场景点对应的像素。

接着,在步骤210,对场景中的每个点估计视差图。一旦发现对应点,则计算每个场景点的视差作为左眼图像和右眼图像中匹配点的相对距离。例如,参照图4,如果左眼图像402中的点的水平坐标为x,而其在右眼图像404中的对应点的水平坐标为x’,则视差d=x’-x。然后,在步骤212,使用以下公式z=Bf/d将场景点406的视差值d转换为深度值z(从场景点406(也被称为收敛点)到相机408、410的距离),其中B是两个相机408、410之间的距离(也被称作基线),而f是相机的焦距,在图4中示出对此的证明。

参照图5,提供了根据本公开的如上面步骤210所标识的用于估计视差图的方法。初始地,获取立体图像对(步骤502)。计算视差成本函数,包括:计算像素成本函数(步骤504)、计算平滑度成本函数(步骤506)和计算时间成本函数(步骤508)。执行低成本的立体匹配优化(例如,动态编程)来得到立体匹配两个图像的初始的确定性的结果(步骤510)。然后将该低成本优化的结果用于初始化置信传播函数以加速用于使序列的第一帧的视差成本函数最小化的置信传播函数(512)。然后将使用预测深度图来初始化用于该序列的后一帧的置信传播函数。

现在将详细地描述图5中所示的视差估计及其公式表示。视差估计是上述的工作流程中重要的步骤。该问题包括使得左眼图像和右眼图像中的像素进行匹配,即发现右侧图像和左侧图像中对应于同一场景点的像素。通过考虑视差图是平滑的,可以如下对立体匹配的问题在数学上进行公式表示:

C(d(.))=Cp(d(.))+λCs(d(.))    (1)

其中d(.)是视差域(disparity field),d(x,y)给出左眼图像中具有坐标(x,y)的点的视差值,C是总的成本函数,Cp是像素匹配成本函数,而Cs是平滑度成本函数。平滑度成本函数是用于强制视差图的平滑度的函数。在优化处理期间,对所有的视差域使得上述成本函数最小化。对于局部优化,丢弃平滑度项Cs;因此,在该优化处理期间不考虑平滑度。除此之外,可以将Cp建模为像素亮度(intensity)的均方差:

Cp(d(.))=Σx,y[I(x,y)-I(x-d(x,y),y)]2.---(2)

取决于是否强制了垂直平滑度,可以不同地写入平滑度约束。如果强制了水平和垂直平滑度两者,则可以按以下的均方误差函数来对平滑度成本函数进行建模:

Cs(d(.))=Σx,y[d(x,y)-d(x+1,y)]2+[d(x,y)-d(x,y+1)]2---(3)

接着,如图6所图示的,在成本函数中考虑时间约束。第(i-1)帧处的前一深度图用于预测第i帧处的当前深度图,使得可以通过前一深度图来约束当前深度图的估计。在步骤602,假定根据第(i-1)左侧图像604和第(i-1)右侧图像606所估计的第(i-1)帧处的深度图被表示为di-1(.)。预测深度图d+(.)被用于预测第i帧处的深度图。在步骤608,通过向第i帧插入第(i-1)帧处的深度图来计算预测深度图d+(.)。在一个实施例中,在不考虑运动信息的情况下,使用简单的插入处理,其中预测深度图等于第(i-1)帧处的深度图,即,d+(.)=di-1(.)。考虑预测深度图,可以如下构建总的深度成本函数中的时间预测项:

Ci(d(.))=Σx,y[d(x,y)-d+(x,y)]2---(4)

在步骤610,根据两个输入图像(即,第i左侧图像612和第i右侧图像614)来计算当前帧的成本函数。在步骤616,将使得该成本函数最小化以得到最终深度图结果。在步骤618,使用预测深度图(在步骤608确定的)来初始化该最小化处理(最小化块616)以便加速计算(如方程4所示)。

因此,总的成本函数变为

C(d(.))=Cp(d(.))+λCs(d(.))+μCi(d(.))    (5)

其中μ是总的成本函数中对时间预测成本函数进行加权的加权因子。可以根据经验来确定μ。

上述方法的缺点在于当在序列的第一帧中存在误差时,该误差将传播到剩余的帧直到序列的结束为止。此外,在实验中已经观察到在序列中的最后帧处的深度图比在序列中的第一深度图要平滑得多。这是因为在利用时间约束进行优化期间平滑效果沿着帧进行了累积。

为解决上述问题,如图7所图示,提供了一种多通道正向和反向处理。正向和反向处理首先在具有正向的第一通道702(即从序列中的第一帧到最后帧(即,第N帧))中执行时间预测。在下一通道704中,从最后帧开始时间预测,并且反向行进直到第一帧,例如,第(N-1)帧、第(N-2)帧、第(N-3)帧...第一帧。可以重复相同的例程以具有多通道正向和反向预测。

在正向和反向处理中,对正向通道,按d+(.)=di-1(.)设置预测深度图,而对反向通道,按d+(.)=di+1(.)设置预测深度图。剩余的例程和方程与前述的那些相同。

使用不同的方法可以使方程5中所示的总的成本函数最小化以得到估计的深度图。在一个实施例中,使用置信传播函数来最小化方程5的成本函数。置信传播是在计算机视觉和机器学习中使用的高质量的优化算法。为了加速置信传播函数或置信传播算法,使用低成本的优化算法(例如,动态编程函数)以首先得到低质量的深度图。然后,使用该低质量的深度图来初始化置信传播函数或置信传播算法。

在另一实施例中,取代使用低质量的深度图来初始化置信传播函数,可以采用预测深度图d+(.)来初始化置信传播函数。在该实施例中,对于图像序列,低质量的深度初始化仅仅用于序列中的第一帧。对于序列中剩余的帧,使用预测深度图来初始化置信传播函数或置信传播算法。

回过来参照图2,在步骤212,使用以下公式z=Bf/d将每个场景点的视差值d转换为深度值z(从场景点到相机的距离),其中B是两个相机之间的距离(也被称作基线),而f是相机的焦距。在深度图中存储至少一个图像(例如,左眼视图图像)中的每一个图像的深度值。例如在存储设备124中存储对应的图像和相关联的深度图,并且可以为了3D回放而取回所述对应的图像和相关联的深度图(步骤214)。此外,可以在表示运动画面或者视频剪辑的立体版本的单个数字文件130中将该运动画面或者剪辑的所有图像与相关联的深度图一起存储。可以在存储设备124中存储数字文件130用于随后的取回,以便例如印制原始胶片的立体版本。

现在参照图8,示出根据本公开的一方面的用于生成深度图的示例性方法。初始地,在步骤802,获取多个帧。所获取的多个帧可以表示电影(film)的场景、镜头或者某个其他片段。每个帧包括右眼图像和左眼图像(例如,立体图像对)、基准图像和补充图像、具有不同视点的多个图像等等。接着,在步骤804,选择要对其生成深度图的帧(例如,当前帧)。此后,在步骤806,并且根据在图6和7中讨论的处理,为所选择的帧生成第一深度图。第一深度图生成包括通过在第一方向上(例如,从最早的帧行进到最后的帧的正向)处理所获取的多个帧、基于前一深度图或者之前的多个深度图来估计第一深度图。接着,在步骤808,并且根据在图6和7中讨论的处理,为所选择的帧生成第二深度图。第二深度图生成包括通过在第二方向上(例如,从最后的帧行进到最早的帧的反向)处理所获取的多个帧、基于后一深度图或者之后的多个深度图来估计第二深度图。最后,在步骤810,处理第一和第二深度图使得:可以通过使用在另一方向上处理帧所生成的(例如反向并且存在于第二深度图中、或者正向并且存在于第一深度图中)校正值,来最小化或者减少在一个方向上通过帧传播的(例如,正向并且存在于第一深度图中的、或者反向并且存在于第二深度图中的)任何误差。

尽管在此已经详细地示出和描述了结合了本公开的教导的实施例,但本领域技术人员可以容易地设计出仍然结合这些教导的众多其他改变的实施例。已经描述了利用正向和反向深度预测进行图像的时空深度提取的系统和方法的优选的实施例(其旨在是例示性的而不是限制性的),应注意,本领域技术人员根据上述教导可以作出修改和变形。因此,应理解,可以在所公开的内容的具体实施例中进行改变,这些都在权利要求所概括的本公开的范围内。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号