用于处理深度图的装置和方法与流程

未命名 08-18 阅读:105 评论:0


1.本发明涉及用于处理深度图的装置和方法,并且特别地但不排他地涉及处理深度图以执行多视图深度/视差估计。


背景技术:

2.通常,图像的技术处理及使用已基于二维成像,但越来越多地在图像处理中明确地考虑第三维度。
3.例如,已发展通过将正被观看的场景的不同视图提供给观看者双眼而将第三维度加至观看体验的三维(3d)显示器。这能通过用户佩戴眼镜以分离被显示的两视图而实现。然而,由于这被认为对用户不便利,在许多情景中使用裸视立体(autostereoscopic)显示器是优选的,其使用在显示器处的器件(诸如,柱状透镜、或屏障)以分离视图,并在它们可个体地抵达用户眼睛的不同方向上发送它们。立体显示器需要两个视图,然而裸视立体显示器通常需要更多视图(例如,九个视图)。
4.另一示例是允许(在限制内)由多个相机捕获的场景的空间导航的自由视点用例。这可以例如在智能手机或平板电脑上完成,并且可以提供类似游戏的体验。作为替代方案,可以在增强现实(ar)或虚拟现实(vr)头戴件上查看数据。
5.在许多应用中,可能期望生成用于新观看方向的视图图像。尽管已知用于基于图像和深度信息生成这样的新视图图像的各种算法,但是它们往往高度依赖于所提供的(或导出的)深度信息的准确性。
6.实际上,三维图像信息可以由对应于场景的不同视图方向的多个图像提供。可以使用从偏移相机位置捕获两个或更多个同时图像的专用3d相机系统来捕获这样的信息。
7.然而,在许多应用中,所提供的图像可能不直接对应于期望的方向,或可能需要更多的图像。例如,对于裸视立体显示器,需要多于两幅图像,并且实际上经常使用9-26幅视图图像。
8.为了生成对应于不同视图方向的图像,可以采用视点移位处理。这通常通过视图移位算法来执行,该视图移位算法使用用于单个视图方向的图像以及相关联的深度信息(或可能多个图像和相关联的深度信息)。然而,为了生成没有显著伪影的新视图图像,所提供的深度信息必须足够准确。
9.其他示例性应用包括虚拟现实体验,其中可以连续地为虚拟现实头盔生成右眼视图和左眼视图以匹配用户的移动和取向变化。在许多情况下,动态虚拟现实视图的这种生成可以基于光强度图像与提供相关深度信息的相关联深度图的组合。
10.来自新视图的所呈现的一个或多个三维图像的质量取决于所接收的图像和深度数据的质量,并且具体地,三维感知取决于所接收的深度信息的质量。已知依赖于图像的深度信息的其他算法或处理,并且这些算法或处理往往对深度信息的准确性和可靠性也高度敏感。
11.然而,在许多实际应用和场景中,所提供的深度信息往往是次优的。实际上,在许
多实际应用和使用场景中,深度信息可能不像期望的那样准确,并且这可能导致在处理中引入错误、伪影和/或噪声并引入到所生成的图像。
12.在许多应用中,描述现实世界场景的深度信息可以根据从捕获的图像确定的深度线索来估计。例如,可以通过比较不同视图位置的视图图像来估计和提取深度值而生成深度信息。
13.例如,在许多应用中,使用在略微不同的位置处的两个相机将三维场景捕获为立体图像。然后可以通过估计两幅图像中的对应图像对象之间的视差来生成特定深度值。然而,这样的深度提取和估计是有问题的,并且往往导致非理想的深度值。这可能再次导致伪影和劣化的三维图像质量。
14.为了改善深度信息,已经提出了用于后处理和/或改善深度估计和/或深度图的多种技术。然而,这些都往往是次优的并且往往不是最佳准确且可靠的,和/或例如由于所需的计算资源而实现起来具有挑战性。在wo20/178289a1和ep3396949a1中提供了这样的算法的示例。
15.已经提出了深度图可以被初始化并且随后使用扫描方法迭代地更新的特定方法,其中当前像素的深度基于候选深度值的候选集合来更新,候选深度值通常是相邻像素的深度值。当前像素的深度值的更新取决于代价函数。然而,尽管这种方法可以在许多场景中改善深度图,但是它往往不是在所有场景中都是最佳的,包括不总是生成最佳准确的深度图。由于必须考虑大量候选像素,因此它也往往在计算上要求高。
16.因此,用于生成/处理/修改深度信息的改善方法将是有利的,并且特别地,允许增加的灵活性、便利的实施、降低的复杂度、降低的资源要求、改善的深度信息、更可靠和/或准确的深度信息、改善的3d体验、基于深度信息的渲染图像的改善质量和/或改善的性能的用于处理深度图的方法将是有利的。


技术实现要素:

17.因此,本发明试图单独地或以任何组合优选地减轻、缓解或者消除上文所提到的缺点中的一个或多个。
18.根据本发明的一方面,提供了一种处理深度图的方法,所述方法包括:接收深度图;针对所述深度图的至少第一像素,执行以下步骤:确定候选深度值的集合,所述候选深度值的集合包括所述深度图的除所述第一像素之外的其他像素的深度值;响应于代价函数,确定针对所述候选深度值的集合中的候选深度值中的每个候选深度值的代价值;响应于针对所述候选深度值的集合的所述代价值,从所述候选深度值的集合中选择第一深度值;响应于所述第一深度值,确定针对所述第一像素的经更新的深度值;其中,所述候选深度值的集合包括从所述第一像素沿着第一方向的第一候选深度值,并且沿着所述第一方向,至少一个像素的第一中间像素集合不包括所述候选深度值的集合中的代价函数不超过针对所述第一候选深度值的代价函数的候选深度值,从所述第一像素到所述第一候选深度值的距离大于从所述第一像素到所述第一中间像素集合的距离。
19.本发明可以改善深度图,导致改善的三维图像处理和感知的渲染质量。特别地,在许多实施例和情境中,该方法可提供更一致和/或准确的深度图。在许多实施例中,该处理可以提供改善的深度图,同时维持足够低的复杂度和/或资源需求。
20.许多实施例中的优点在于,该方法可以高度适合于与深度估计技术一起使用并集成在深度估计技术中,诸如在使用立体视图或多视图图像的基于视差的深度估计中。
21.该方法可以特别地使用相对低复杂度和低资源需求的方法来改善深度图。该方法可以例如允许顺序的位扫描和处理,其中,每像素相对更少的决策足以增加整体准确性。
22.深度图可以指示图像的像素的深度值。深度值可以是指示深度的任何值,包括例如视差值、z坐标或距视点的距离值。
23.可以迭代对第一像素的处理,其中,为每次迭代选择深度图的新像素。第一像素的选择可以根据深度图的扫描序列。像素可对应于深度图中为其提供深度值的位置/区域。深度图中的像素可对应于深度图指示深度的相关联图像中的一个或多个像素。深度图可以由像素的二维布置形成,其中,为每个像素提供深度值。因此,为深度图的(像素)区域提供每个像素/深度值。对像素的提及可以是对(像素的)深度值的提及,并且反之亦然。对像素的提及可以是对深度值的深度图中的位置的提及。深度图的每个像素可以与一个深度值链接(并且反之亦然)。
24.代价函数可以被实施为优值函数,并且代价值可以由优值指示。响应于代价值而选择第一深度值可以被实施为响应于根据优值函数确定的优值而选择第一深度值。增加的优值/函数是减小的代价值/函数。第一深度值的选择可以是候选深度值的集合中具有最低代价值的候选深度值的选择,对应于/等同于第一深度值的选择是候选深度值的集合中具有最高优值的候选深度值的选择。
25.更新的深度值将具有取决于第一深度值的值。对于一些情况并且在一些情况下对于一些像素,这可能导致经更新的深度值,其与处理之前的第一像素的深度值相同。在一些实施例中,经更新的深度值被确定为第一深度值的函数,并且具体地被确定为不依赖于深度图的除第一深度值之外的其他深度值的函数。在许多实施例中,经更新的深度值可以被设置为等于第一深度值。
26.在一些实施例中,第一方向可以是存在所描述的中间像素集合的唯一方向。在一些实施例中,第一方向可以是来自第一像素的方向的角度区间的方向,对于第一像素,存在所描述的中间像素集合。角度区间可以具有不超过1
°
、2
°
、3
°
、5
°
、10
°
或15
°
的跨度/宽度/范围。在这样的实施例中,第一方向可以用对这样的角度区间内的方向的提及来替换。
27.候选深度值的集合可以包括沿着第一方向的第一候选深度值,该第一候选深度值比沿着第一方向的至少一个像素更远离第一像素,该至少一个像素不包括在候选深度值的集合中或具有比第一候选深度值更高的代价函数。
28.根据本发明的任选的特征,对于低于距离阈值的距离,沿着所述第一方向的所述代价函数具有作为距所述第一像素的距离的函数的单调递增的代价梯度,并且针对高于距离阈值距所述第一像素的至少一个距离,沿着所述第一方向的所述代价函数具有作为距所述第一像素的距离的函数的递减的代价梯度。
29.在许多实施例中,这可以提供改善的性能和/或实施。可以确保存在至少一个像素的第一中间像素集合,该第一中间像素集合不包括代价函数不超过第一候选深度值的代价函数的候选深度值的集合中的候选深度值,从第一像素到第一候选深度值的距离大于从第一像素到第一中间像素集合的距离。
30.作为距离的函数的单调递增的梯度是针对增加的距离总是增加或保持恒定的梯
度。
31.根据本发明的任选的特征,所述第一中间像素集合是深度值不包括在所述候选值集合中的像素集合。
32.在许多实施例中,这可以提供改善的性能和/或实施。可以确保存在至少一个像素的第一中间像素集合,该第一中间像素集合不包括代价函数不超过第一候选深度值的代价函数的候选深度值的集合中的候选深度值,从第一像素到第一候选深度值的距离大于从第一像素到第一中间像素集合的距离。
33.根据本发明的任选的特征,所述代价函数包括代价贡献,所述代价贡献取决于针对通过与所述代价函数应用于的所述候选深度值匹配的视差而偏移的像素的多视图图像的图像值之间的差异。
34.该方法可以与多视图视差考虑相结合,以提供基于多视图图像的有利的深度估计方法。该方法可以例如允许基于多视图图像的不同图像之间的匹配来迭代地更新初始深度图。
35.根据本发明的任选的特征,所述方法还包括将所述第一方向确定为所述深度图的重力方向;所述重力方向是所述深度图中的与由所述深度图表示的场景中的重力方向匹配的方向。
36.这可以提供特别有效的性能和改善的深度图,并且可以利用场景的典型性质来提供改善的且通常更准确的深度图。
37.根据本发明的任选的特征,所述第一方向是所述深度图中的竖直方向。
38.这可以提供特别有效的性能和改善的深度图,并且可以利用场景的典型性质来提供改善的且通常更准确的深度图。
39.根据本发明的任选的特征,所述方法还包括确定由所述深度图表示的场景的至少部分的深度模型,并且其中,深度值的所述代价函数取决于所述深度值与根据所述深度模型确定的模型深度值之间的差。
40.这可以提供特别有效的性能和改善的深度图,并且可以利用场景对象的典型性质来提供改善的且通常更准确的深度图。代价函数可以提供针对增加深度值与模型深度值之间的差异的增加的代价。
41.根据本发明的任选的特征,所述代价函数关于所述深度值是超过所述模型深度值还是低于所述模型深度值是不对称的。
42.在许多实施例和场景中,这可以提供特别有利的深度图。
43.根据本发明的任选的特征,所述深度模型是所述场景的背景模型。
44.在许多实施例和场景中,这可以提供特别有利的深度图。
45.根据本发明的任选的特征,所述方法还包括在所述候选深度值的集合中包括不是来自所述深度图的候选深度值,包括以下中的至少一个深度值:来自深度图的时间序列中的另一深度图的深度值,所述序列包括所述深度图;与由所述深度图表示的场景无关的深度值;以及响应于所述第一像素的深度值的偏移而确定的深度值。
46.在许多实施例和场景中,这可以提供特别有利的深度图。
47.根据本发明的任选的特征,深度值的代价函数取决于所述深度值的类型,所述类型是包括以下中的至少一个的一组类型中的一个:所述深度图的深度值;所述深度图的比
距离阈值更接近的深度值;所述深度图的比距离阈值更远的深度值;来自包括深度图的深度图的时间序列中的另一深度图的深度值;具有相对于所述第一深度值的深度值的场景无关深度值偏移的深度值;与由所述深度图表示的场景无关的深度值;以及响应于所述第一像素的深度值的偏移而确定的深度值。
48.在许多实施例和场景中,这可以提供特别有利的深度图。
49.根据本发明的任选的特征,所述方法被布置为通过从所述深度图的多个像素中迭代地选择新的第一像素并对每个新的第一像素执行所述步骤来处理所述多个像素。
50.根据本发明的任选的特征,从所述第一像素开始的第二方向的所述候选深度值的集合不包括第二候选深度值,对于所述第二候选深度值,沿着所述第二方向的至少一个像素的像素集合不包括如下的候选深度值,针对所述候选深度值,所述候选深度值的集合中的所述代价函数不超过所述第二候选深度值的所述代价函数,从所述第一像素到所述第二候选深度值的距离大于从所述第一像素到所述像素集合的距离。
51.在许多实施例和场景中,这可以提供特别有利的深度图。在一些实施例中,第一方向可以是存在所描述的中间像素集合的唯一方向。
52.根据本发明的一个方面,提供了一种用于处理深度图的装置,所述装置包括:接收器,其用于接收深度图;处理器,其用于处理所述深度图,所述处理包括:针对所述深度图的至少第一像素,执行以下步骤:确定候选深度值的集合,所述候选深度值的集合包括所述深度图的除所述第一像素之外的其他像素的深度值;响应于代价函数,确定针对所述候选深度值的集合中的候选深度值中的每个候选深度值的代价值;响应于针对所述候选深度值的集合的所述代价值,从所述候选深度值的集合中选择第一深度值;响应于所述第一深度值,确定所述第一像素的经更新的深度值;其中,所述候选深度值的集合包括从所述第一像素沿着第一方向的第一候选深度值,并且沿着所述第一方向,至少一个像素的第一中间像素集合不包括如下的候选深度值,针对所述候选深度值,所述候选深度值的集合中的代价函数不超过所述第一候选深度值的代价函数,从所述第一像素到所述第一候选深度值的距离大于从所述第一像素到所述第一中间像素集合的距离。
53.本发明的这些和其他方面、特征和优点将参考下文描述的(一个或多个)实施例变得显而易见并将参考下文描述的(一个或多个)实施例得以阐述。
附图说明
54.将仅以示例的方式参考附图来描述本发明的实施例,其中:
55.图1图示了根据本发明的一些实施例的处理深度图的方法的示例;
56.图2图示了根据本发明的一些实施例的用于处理深度图的装置的示例;
57.图3图示了一些深度图的示例;
58.图4图示了深度图的一些像素和深度值的示例;
59.图5图示了深度图的一些像素和深度值的示例;
60.图6图示了根据本发明的一些实施例的沿着方法的方向的代价函数的示例;并且
61.图7图示了由不同过程生成的深度图的示例。
具体实施方式
62.以下描述集中于适用于处理图像的深度图的本发明的实施例,并且具体地集中于作为多视图深度估计方法的一部分来处理这样的深度图。然而,应当理解,本发明不限于该应用,而是可以应用于许多其他场景。
63.表示场景的图像如今有时由深度图补充,该深度图提供场景中的图像对象的深度的信息,即它为图像提供附加的深度数据。这样的附加信息可以允许例如视点移位、3d表示等,从而提供若干附加服务。深度图倾向于针对多个像素中的每个像素提供深度值,所述多个像素通常被布置为具有第一数量的水平行和第二数量的竖直列的阵列。深度值提供针对相关联图像的像素的深度信息。在许多实施例中,深度图的分辨率可与图像的分辨率相同,并且因此图像的每个像素可以具有到深度图的一个深度值的一对一链接。然而,在许多实施例中,深度图的分辨率可以低于图像的分辨率,并且在一些实施例中,深度图的深度值对于图像的多个像素可以是共同的(并且具体地,深度图像素可以大于图像像素)。
64.深度值可以是指示深度的任何值,具体地包括深度坐标值(例如,直接提供像素的z值)或视差值。在许多实施例中,深度图可以是像素的矩形阵列(具有行和列),其中每个像素提供深度(/视差)值。
65.场景的深度的表示的准确性是由用户渲染和感知的图像的所得质量的关键参数。因此,准确的深度信息的生成是重要的。对于人工场景(例如,计算机游戏),可以相对容易地实现准确的值,但是对于涉及例如真实世界场景的捕获的应用,这可能是非常困难的。
66.已经提出了用于估计深度的若干不同方法。一种方法是估计从不同视点捕获场景的不同图像之间的视差。然而,这种视差估计固有地是不完美的。此外,该方法需要从多个方向捕获场景,其通常不是这种情况,例如对于传统捕获。另一选项是执行基于运动的深度估计,其利用图像对象(在图像序列中)的运动对于靠近相机的对象将往往比对于更远的对象更高(例如,对于平移相机,可能在补偿场景中的对应对象的实际运动之后)。第三种方法是利用场景中深度的预定(假定)信息。例如,对于室外场景(并且实际上对于大多数典型的室内场景),图像中更低的对象往往比图像中更高的对象更接近(例如,对于增加的高度,地板或地面到相机的距离增加,天空往往比更低的地面更靠后等)。因此,可以使用预定的深度轮廓来估计合适的深度图值。
67.然而,大多数深度估计技术往往导致不太完美的深度估计,并且对于许多应用,改善的且通常更可靠和/或准确的深度值将是有利的。
68.在下文中,将描述用于处理和更新深度图的方法。在一些实施例中,该方法可以用作深度估计(诸如具体地考虑从不同视点捕获场景的多幅图像之间的视差的深度估计算法)的一部分,并且实际上该过程可以是从多视图图像确定深度的深度估计算法的组成部分。然而,应当理解,这对于该方法不是必需的,并且在一些实施例中,该方法可以例如被应用为对估计的深度图的后处理。
69.在许多场景中,该方法可以改善深度图并且提供更准确的深度信息。它还可以适合于组合不同的深度估计考虑和方法,并且可以用于改善深度估计。
70.将参考图1和图2描述该方法,图1示出了处理深度图的方法的流程图,图2图示了用于执行该方法的对应装置的元件。
71.图2的装置可以具体地是处理单元,诸如计算机或处理模块。因此,它可以由诸如
cpu、mpu、dsp等合适的处理器来实施。如本领域技术人员将已知的,该装置还可以包括耦合到处理器的易失性和非易失性存储器。此外,可以包括合适的输入和输出电路,例如用户接口、网络接口等。
72.图1的方法在步骤101中开始,其中,接收器201接收深度图。在许多实施例中,深度图与相关联的图像一起被接收。此外,在许多实施例中,针对图像接收深度图以及可进一步与单独深度图相关联的一幅或多幅图像。例如,可以接收表示来自不同视点的场景的其他图像。在一些实施例中,图像和深度图可以是图像和深度图的时间序列的一部分,例如图像是视频序列的图像或帧。因此,在一些实施例中,接收器201可以在其他时间接收图像和/或深度图。此后,深度图和正在处理的图像也将分别称为第一或当前深度图和第一或当前图像。
73.所接收的第一深度图可以是被处理以生成更准确深度图的初始第一图像,并且具体地在一些实施例中,可以是深度估计过程的初始输入。以下描述将集中于该方法用作多视点深度估计过程的一部分的示例,其中,深度估计包括来自不同视点的相同场景的不同图像之间的视差的考虑。该过程用初始深度图初始化,该初始深度图可以提供图像的可能深度的非常粗略的指示。
74.例如,可以通过检测图像中的图像对象并将图像划分为图像对象和背景来简单地生成初始深度图。背景部分可以被分配预定深度,并且图像对象可以被确定为指示它们进一步向前的不同的预定深度,或例如可以基于对另一图像中的对应图像对象的搜索来执行粗略的视差估计,并且所得到的估计深度可以被分配给整个图像对象。在图3(a)中示出了所得到的深度图的示例。
75.作为另一示例,预定的深度图案可以被分配诸如增加的深度,以便增加图像中的高度。这种深度图的示例在图3(b)中图示,并且可以适合于例如风景场景和图像。如图3(c)所示,这些方法可以被组合。
76.在许多实施例中,左/右图像对可以用于例如使用先验拟合的3d深度模型来初始化基于块的2d视差矢量场。在这样的实施例中,深度值可以是视差值,或可以从这些计算直接指示距视点的距离的深度值。该方法可以考虑场景几何结构的一些知识,诸如地面和背景。例如,基于3d模型,2d视差场可以被生成并用作初始深度图。
77.因此,在所描述的方法中,具有粗略且通常不准确的初始第一深度图的初始第一图像由接收器201接收,并且在该示例中,与表示来自不同视点的场景的至少一个其他图像一起接收。然后,该方法可以处理该深度图以生成更准确的深度图,该深度图更好地反映深度图的不同像素的实际深度。
78.(一个或多个)深度图以及(任选地)(一幅或多幅)图像从接收器201馈送到处理器203,处理器203被布置为执行如下面参考图1描述的剩余方法步骤。
79.尽管以下方法原则上可以仅应用于深度图的深度值/像素的子集,或实际上原则上仅应用于深度图的单个像素,但是该过程通常应用于深度图的所有或几乎所有像素。该应用通常是顺序的。例如,该过程可以扫描深度图,顺序地选择用于处理的像素。例如,该方法可以从左上角开始,并且首先水平扫描,并且然后竖直扫描,直到右下角处的像素被处理,即,可以应用从左到右、从上到下的扫描。
80.此外,在许多实施例中,该方法可以迭代,并且可以迭代地应用于相同的深度图。
因此,来自一个处理/更新的所得到的深度图可以用作后续过程/更新的输入深度图。在许多实施例中,可以多次重复/迭代深度图的扫描以及所得到的深度值的更新,例如,可以执行5-10次迭代。
81.该方法在步骤101中开始,其中,接收器201接收如上所述的深度图并将它转发到处理器203。
82.在步骤103中,选择下一像素。当开始深度图的过程时,下一像素通常可以是预定像素,诸如右上像素。否则,下一像素可以是根据所应用的处理序列(诸如具体地预定扫描序列/顺序)的下一像素。
83.对于所识别的像素(此后,其也将被称为第一或当前像素),该方法然后继续确定该像素的深度值。第一或当前像素的深度值也将被称为第一或当前深度值,并且术语“初始深度值”和“更新深度值”将用于分别指代像素处理之前和之后的值,即分别指代当前迭代之前和之后的深度图的深度值。
84.在步骤105中,处理器203继续确定/选择候选深度值的集合。候选深度值的集合被选择为包括针对候选像素的集合的深度值。当前深度图的候选像素的集合包括深度图中的多个其他像素。例如,候选集合可以被选择为包括当前像素周围的邻域中的像素的深度值,诸如在当前像素的给定距离内或在当前像素周围的窗口/内核内的像素集合。
85.在许多实施例中,候选像素的集合还包括当前像素本身的深度值,即,第一深度值本身是集合的候选深度值之一。
86.此外,在许多实施例中,候选深度值的集合还可以包括来自其他深度图的深度值。例如,在图像是视频流的一部分的许多实施例中,来自先前和/或后续帧/图像的一个或多个深度值也可以包括在候选深度值的集合中,或可以包括来自同时估计深度图的其他视图的深度值。
87.在一些实施例中,候选深度值的集合还可以包括如下的值,所述值不直接是深度图的深度值。例如,在一些实施例中,候选深度值的集合可以包括一个或多个固定深度值或例如相对偏移深度值,诸如比当前初始深度值大了或小了固定偏移的深度值。另一示例是候选深度值的集合可以包括一个或多个随机或半随机深度值。
88.步骤105之后是步骤107,其中,可以针对候选深度值的集合确定代价值,并且具体地,可以针对候选深度值的集合中的候选深度值中的每个候选深度值确定代价值。
89.代价值可以基于代价函数来确定,该代价函数可以取决于多个不同的参数,如稍后将更详细地描述的。在许多实施例中,针对当前深度图的像素的候选深度值的代价函数取决于偏移了与深度值相对应的视差的多视图图像的图像值之间的差异。因此,对于第一深度值,或者可能属于候选深度值的集合的候选深度值的集合中的候选深度值中的每个候选深度值,代价函数可以根据在具有匹配候选深度值的两个图像视图之间的视差的图像区域中的多视图图像的两个视图图像之间的差异而单调递减。图像区域可以具体地是包括当前像素和/或候选深度值的像素的图像区域。图像区域通常可以相对较小,诸如包括不超过图像的比如1%、2%、5%或10%和/或例如不包括超过100、1000、2000、5000或10000个像素。
90.在一些实施例中,处理器203可针对给定候选深度值确定与深度值匹配的两个图像之间的视差。然后,它可以应用该视差来识别两个图像中的一个图像中的区域,该区域以
该视差偏移到另一图像中的区域。可以确定两个区域中的图像信号值(例如,rgb值)之间的差异度量。因此,可以基于候选深度值正确的假设来确定两个图像/图像区域的差异度量。差异越低,候选深度值越可能是深度的准确反映。因此,差异度量越低,代价函数越低。
91.图像区域通常可以是第一/当前像素周围的小区域,并且实际上在一些实施例中可以仅包括第一/当前像素。
92.对于对应于当前深度图的候选深度值,代价函数可以相应地包括代价贡献,该代价贡献取决于两个多视图图像之间针对对应于候选深度值的视差的匹配。
93.在许多实施例中,针对与图像相关联的其他深度图(例如时间偏移深度图和图像)的候选深度值的代价值还可以包括对应图像匹配代价贡献。
94.在一些实施例中,一些候选深度值的代价可以不包括图像匹配代价贡献。例如,对于不与深度图或图像相关联的预定固定深度偏移,可以例如分配固定代价值。
95.代价函数通常可以被确定为使得它指示深度值反映当前像素的准确或正确深度值的可能性。
96.应当理解,基于优值函数确定优值和/或基于优值选择候选深度值本质上也是基于代价函数确定代价值和/或基于代价值选择候选深度值。可以简单地通过将函数应用于优值来将优值转换为代价函数,其中,该函数是任何单调递减函数。更高的优值对应于更低的代价值,并且例如选择具有最高优值的候选深度值与选择具有最低值的代价值直接相同。
97.确定候选深度值的集合中的候选深度值中的每个候选深度值的代价值的步骤107之后是步骤109,其中,响应于候选深度值的集合的代价值而选择来自候选深度值的集合的深度值。所选候选深度值此后将被称为所选深度值。
98.在许多实施例中,该选择可以是对确定最低代价值的候选深度值的选择。在一些实施例中,还可以考虑其他参数来评估更复杂的准则(等效地,这样的考虑通常可以被认为是(修改的)代价函数的一部分)。
99.因此,对于当前像素,该方法可以选择候选深度值,该候选深度值被认为最可能反映由代价函数确定的当前像素的正确深度值。
100.步骤109之后是步骤111,在步骤111中,基于所选深度值来针对当前像素确定经更新的深度值。确切的更新将取决于个体实施例的具体要求和偏好。例如,在许多实施例中,第一像素的先前深度值可以简单地由所选深度值替换。在其他实施例中,更新可以考虑初始深度值,例如更新的深度值可以被确定为初始深度值与所选深度值的加权组合,其中,例如权重取决于所选深度值的绝对代价值。
101.因此,在步骤111之后,已经针对当前像素确定了经更新或经修改的深度值。在步骤113中,评估当前深度图的待处理的所有像素是否确实已被处理。通常,这对应于图像中的所有像素是否已经被处理的确定,并且具体地,对应于扫描序列是否已经结束的检测。
102.如果不是,则该方法返回到步骤103,其中,选择下一个像素,并且对该下一个像素重复该过程。否则,该方法进行到步骤115,其中,评估是否将进一步的迭代应用于深度图。在一些实施例中,将仅执行一次迭代,并且省略步骤115。在其他实施例中,该过程可以迭代地应用于深度图,例如,直到达到某个停止准则(例如,在先前迭代中发生的变化的总量低于阈值)或已经执行了预定次数的迭代。
103.如果需要另一次迭代,则该方法返回到步骤103,其中,下一像素被确定为新迭代中的第一像素。具体地,下一像素可以是扫描序列中的第一像素。如果不需要进一步的迭代,则该方法进行到步骤117,其中,该方法以更新的且通常改善的深度图结束。深度图可以例如经由输出电路205输出到另一功能,诸如视图合成处理器。
104.应当理解,尽管以上描述集中于对单个像素的应用,但是可以应用块过程,其中,例如将所确定的经更新的深度值应用于包括第一像素的块内的所有深度值。
105.候选深度值的特定选择可以取决于特定应用的期望操作和性能。通常,候选深度值的集合将包括当前像素的邻域中的多个像素。内核、区域或模板可以覆盖当前像素,并且内核/区域/模板内的像素可以包括在候选集合中。另外,包括不同时间帧(通常紧接在为其提供深度图的当前帧之前或之后)中的相同像素,以及潜在地包括相邻像素的核,然而,其通常基本上小于当前深度图中的内核。通常,还包括至少两个偏移深度值(分别对应于增加的深度和减小的深度)。
106.然而,为了降低计算复杂度和资源需求,包括在候选集合中的深度值的数量通常基本上是有限的。具体地,由于针对每个新像素评估所有候选深度值,并且通常针对每次迭代的深度图的所有像素评估所有候选深度值,因此每个附加候选值导致大量附加处理步骤。
107.然而,还已经发现,可以实现的深度图的改善往往高度依赖于候选的具体选择和权重,并且实际上这往往对最终深度图质量具有很大影响。因此,质量/性能和计算资源要求之间的权衡非常困难,并且对候选深度值确定高度敏感。
108.在许多典型应用中,通常优选的是,在针对每个像素的候选深度值的集合中具有不超过约5-20个候选深度值。在许多实际场景中,有必要将候选深度值的数量限制为大约10个候选,以便实现视频序列的实时处理。然而,相对低数量的候选深度值使得确定/选择哪些候选深度值包括在集合中是非常关键的。
109.当确定深度图的候选深度值的集合以考虑更新当前深度值时,直观方法是包括邻近当前像素的深度值,并且加权使得选择更远的深度值的可能性更小(或至少不是更大),即,如果所有其他参数相同,则将选择更接近当前像素的候选深度值而不是更远的候选深度值。因此,直观方法将是将候选深度值的集合生成为包括当前像素周围的(通常非常小的)邻域中的像素的内核,并且其中,代价函数随着距当前像素的距离单调递增。例如,候选深度值的集合可以被确定为在距当前像素1或2个像素距离的预定距离内的所有像素,并且可以应用随着距第一像素的距离而增加的代价函数。
110.然而,尽管这种直观方法可以在许多实施例中提供有利的性能,但是发明人已经认识到,在许多应用中,可以通过采取增加沿着一个方向选择更远的像素的偏置超过在该方向上选择更近的像素的偏置的反直观方法来实现有利的性能。在该方法中,选择更远的像素的概率因此相对于沿着该方向的更近的像素增加。
111.在一些实施例中,这可以通过沿着方向的候选深度值的集合被选择/生成/创建/确定为包括/包括比未包括在候选深度值的集合中的一个或多个像素更远的一个或多个像素来实现。例如,沿着该方向的最接近的一个或多个像素可以包括在候选深度值的集合中,接着是不包括在候选深度值的集合中的一个或多个像素,并且然后接着是包括在候选深度值的集合中的一个或多个更远的像素。
112.图4中图示了这种方法的示例。在该示例中,围绕当前深度值/像素403的四个邻域深度值/像素401被包括在候选深度值的集合中。候选深度值的集合还可以包括当前深度值。然而,另外,候选深度值的集合被布置为包括沿着给定方向407的远处深度值/像素405。远处深度值/像素405在距当前像素403为δ个像素的距离处,其中,δ》2,并且通常大得多。在示例中,候选深度值的集合还包括时间相邻深度图中的相同位置处的像素409的深度值。
113.因此,在示例中,创建仅包括七个深度值的候选深度值的集合,并且系统可以继续通过评估这些深度值中的每一个的代价函数来确定代价值。然后,它可以选择具有最低代价值的深度值并更新当前深度值,例如通过将其设置为所选候选深度值的值。由于候选深度值的数量更少,因此可以执行非常快速和/或资源需求低的处理。
114.此外,尽管在评估多少候选深度值方面存在约束,但实际上已经发现不仅包括紧密邻域深度值而且还包括一个或多个远处深度值的方法提供了特别有利的性能,其例如通常可以提供正在生成的更一致和/或准确的经更新的深度图。例如,许多深度值表示存在于场景中并且基本上在相同距离处的对象。在许多情况下,考虑更远的深度值可以导致包括属于相同对象但是可以例如由于更少的局部图像噪声而提供更好的深度估计的深度值。对特定方向的考虑可以反映对象的可能性质,诸如几何性质或与图像的捕获取向的关系。例如,对于背景,深度往往在水平方向上相对恒定但在竖直方向上变化,并且因此在水平方向上识别更远的像素可以增加当前像素和更远的像素表示相同(背景)深度的可能性。
115.因此,在一些实施例中,候选深度值的集合可以被确定为包括沿着从当前像素开始的方向的第一候选深度值,该第一候选深度值比沿着中间像素集合的方向的中间像素集合更远离,其中,中间集合包括比第一候选深度值更接近当前像素的一个或多个像素,但是对于该一个或多个像素,深度值不被包括在候选深度值中。在一些实施例中,相应地,沿着第一候选深度值的像素位置与当前像素之间的方向存在间隙,其中,存在不被包括在候选深度值的集合中的一个或多个像素。在许多实施例中,间隙可以在第一候选深度值与包括在候选深度值的集合中的一个或多个紧密邻域像素之间。
116.在一些实施例中,可以基于当前像素所属的图像对象或图像对象类型来适配候选集合。例如,处理器203可以被布置为执行图像对象检测过程以检测深度图中的图像对象(例如,通过在相关联的图像中检测它们)。然后,它可以根据检测到的图像对象来调整候选集合。另外,在一些实施例中,可以响应于当前像素所属的图像对象的性质来调整第一方向。例如可以知道,像素属于特定图像对象或对象类型,并且可以响应于该对象的性质(诸如图像对象的最长方向)而确定第一方向。例如,水上的船将往往在水平方向上具有比在竖直方向上显著更长的延伸,并且因此第一方向可以被确定为水平方向。另外,可以选择在水平方向上比在竖直方向上延伸得更远的候选集合。
117.在一些实施例中,系统可以检测某种类型的对象(汽车、飞机等),并且可以继续基于分类的像素的类别来调整候选集合。
118.在一些实施例中,可以不通过排除沿着该方向的一个或多个像素被包括在候选深度值的集合中来实现沿着该方向比更近的深度值更远的至少一个深度值的增加的加权。在一些实施例中,可以包括从当前像素到更远的像素的沿着第一方向的所有像素,下文中分别称为第一候选深度值和第一候选像素。
119.在这样的实施例中,可以通过适当地设计代价函数来实现第一候选深度值相对于
属于具有更低偏差的中间候选深度值的集合的深度值的增加的偏差。具体地,代价函数可以使得第一候选深度值的代价函数低于更接近第一像素的一个或多个深度值的代价函数。
120.在一些实施例中,对于低于距离阈值的距离,沿着该方向的代价函数可以相对于从第一像素到针对其评估代价函数的候选深度值的距离具有单调递增的代价梯度,并且对于距第一像素的高于阈值的至少一个距离,沿着该方向的代价函数可以相对于距离具有减小的代价梯度。因此,直到距离阈值,代价函数随着到第一像素的距离的增加而增加,或者是恒定的。然而,对于超过距离阈值的至少一个距离,代价函数反而减小。
121.例如,距离阈值可以对应于到中间集合的最后一个像素的距离。因此,代价函数可以对于高达并包括中间集合的最远像素的像素增加(或恒定)。然而,该最远像素与第一候选像素之间的距离的代价梯度减小。因此,第一候选深度值的代价函数低于沿着更接近当前像素的方向的至少一个像素。
122.一针对个像素的代价函数小于或小于针对另一个像素的代价函数意味着由代价函数确定的结果代价值对于相同的所有其他参数(即,对于除了两个像素的位置相同之外的所有参数)更小/更低。类似地,针对一个像素的代价函数大于或高于针对另一像素的代价函数意味着由代价函数确定的结果代价值对于两个像素相同的所有其他参数都更大/更高。此外,针对一个像素的代价函数超过针对另一个像素意味着对于两个像素相同的所有其他参数,由代价函数确定的结果代价值超过另一个。
123.例如,代价函数通常考虑多个不同的参数,例如,代价值可以被确定为c=f(d,a,b,c,

),其中,d是指像素相对于当前像素的位置(诸如距离),并且a,b,c

反映被考虑的其他参数,诸如相关联的图像的图像信号值、其他深度值的值、平滑度参数等。
124.如果参数a,b,c,

对于两个像素是相同的(并且对于其他项也是类似的),c=f(d,a,b,c,

)针对像素a比针对像素b更低,则针对像素a的代价函数f(d,a,b,c,

)低于针对像素b的。
125.在图5中图示了使用代价函数来偏置更远的像素的示例。该示例对应于图4的示例,但是其中,候选深度值的集合还包括沿着该方向的所有像素,即还包括像素501-507。然而,在该示例中,代价函数被布置为使得它将第一候选深度值偏置为高于一些中间像素,特别是像素501-507。
126.图6中图示了可能的代价函数和对距第一像素的距离d的依赖性的示例。在该示例中,代价函数对于相邻像素401非常低,然后对于像素501随着距离增加。然而,对于第一候选像素,代价函数相对于像素501减小,但仍然保持高于相邻像素401。因此,通过应用该代价函数,第一候选深度值被偏置为高于中间像素501,但不像相邻像素401那么多。
127.因此,在该方法中,候选深度值的集合包括从第一像素沿着第一方向的第一候选深度值,该第一像素与当前像素的距离大于中间像素集合。中间像素集合包括至少一个像素,并且中间集合的所有像素不包括在候选深度值的集合中,或具有比第一候选深度值更高的代价函数。因此,中间像素集合不包括代价函数不超过第一候选深度值的代价函数的候选深度值。因此,候选深度值的集合包括沿着第一方向的第一候选深度值,该第一候选深度值比沿着第一方向的至少一个像素更远离第一像素,该至少一个像素不包括在候选深度值的集合中或具有比第一候选深度值更高的代价函数。
128.在一些实施例中,这可以直接对应于中间像素集合是深度值不包括在候选值集合
中的像素集合。在一些实施例中,这可以直接对应于包括代价函数超过第一候选深度值的代价函数的至少一个候选像素/深度值的中间集合。在一些实施例中,这可以直接对应于沿着该方向的代价函数,该代价函数可以相对于从第一像素到候选深度值(针对其确定代价值)的距离具有单调递增的代价梯度,并且对于距第一像素的高于阈值的至少一个距离,该代价函数可以相对于距离具有递减的代价梯度。
129.确切的代价函数将取决于具体实施例。在许多实施例中,代价函数包括代价贡献,该代价贡献取决于通过与深度值匹配的视差偏移的像素的多视图图像的图像值之间的差异。如先前所描述,深度图可以是从不同视点捕获场景的多视图图像集合中的图像(或图像集合)的图。因此,在不同图像之间的相同对象的位置之间将存在视差,并且视差取决于对象的深度。因此,对于给定的深度值,可以计算多视图图像的两个或更多个图像之间的视差。因此,在一些实施例中,对于给定的候选深度值,可以确定与其他图像的视差,并且因此可以在深度值正确的假设下确定第一像素位置在其他图像中的位置。可以比较相应位置中的一个或多个像素的图像值,诸如颜色或亮度值,并且可以确定合适的差异度量。如果深度值确实是正确的,则与深度值不是正确深度的情况相比,图像值更可能是相同的,并且差异度量更可能是小的。因此,代价函数可以包括对图像值之间的差异的考虑,并且具体地,代价函数可以反映针对增加的差异度量的增加的代价。
130.通过包括这样的匹配准则,该方法可以用作基于多视图图像的图像之间的视差的深度估计的整体分量。深度图可以被初始化并且然后迭代地处理,其中,更新偏向越来越小的图像值差。因此,该方法可以有效地提供不同图像之间的集成的深度确定和搜索/匹配。
131.在该方法中,在第一方向上的更远的深度值相应地被偏置/加权为高于沿着第一方向并且更靠近第一像素的至少一个深度值。在一些实施例中,这可能是多于一个方向的情况,但是在许多实施例中,可能(仅)是一个方向或小区间内的方向的情况,例如在1
°
、2
°
、3
°
、5
°
、10
°
或15
°
区间内。等效地,方向可以被认为具有不大于1
°
、2
°
、3
°
、5
°
、10
°
或15
°
的角度区间的范围。
132.因此,在许多实施例中,该方法为使得对于从第一像素沿着第二方向的任何候选深度值,具有到第一像素的较短距离的沿着第二方向的所有深度值属于候选深度值的集合,并且其中,沿着第二方向的代价函数随着距离单调递增(对于所有其他参数是相同的)。
133.对于大多数实施例,从第一像素开始的第二方向的候选深度值的集合不包括第二候选深度值,对于该第二候选深度值,沿着第二方向的至少一个像素的像素集合不包括代价函数不超过第二候选深度值的代价函数的候选深度值的集合中的候选深度值,从第一像素到第二候选深度值的距离大于从第一像素到像素集合的距离。
134.实际上,通常,仅一个方向包括比未包括在候选深度值的集合中或被包括但具有更高代价函数的一个或多个像素更远的候选深度值。
135.在许多实施例中,将更远的深度值/像素限于一个方向(潜在地包括小角度区间)的考虑可以允许特别有利的性能。它可以允许该方法适应于场景的特定性质,其可以将对更远的像素的考虑约束到更远的像素特别可能潜在地反映正确深度的情况。
136.特别地,在许多实施例中,第一方向可以对应于深度图/图像/场景中的重力方向。发明人已经认识到,通过考虑沿着重力方向的更远的像素,可以实现有利的操作,因为这样的深度值正确的可能性显著增加。
137.特别地,发明人已经认识到,在许多实际场景中,对象可以定位或站立在地面上,并且在这种场景中,整个对象的深度通常与在重力方向上最远的对象部分处的深度相当。发明人进一步认识到,这通常转化为深度图中的对应关系,其中,对象的深度值通常比局部邻域中的深度值更类似于深度图中的重力方向上的深度值。例如,对于站在平坦表面上的人的头部,深度将与脚的深度大致相同。然而,头部周围的邻域的深度可以显著不同,因为它可以包括对应于远处背景的像素。因此,仅基于邻域深度的深度处理对于头部可能不如对于脚部那么可靠和准确。然而,所描述的方法允许该方法不仅包括邻域,而且还包括在重力方向上的更远的深度值和像素。例如,当处理人的头部的深度值时,所描述的方法可以导致一个候选深度值是来自人的脚部的深度值(其可以是准确深度的更准确反映,特别是在几次迭代之后)。
138.图7图示了可以实现的改善的示例。该图图示了图像、在应用不考虑远处重力方向候选的对应过程之后的对应深度图、以及最后在应用考虑远处重力方向候选的过程之后的深度图。比较部分701和703示出了最左边的玩家的头部在第一示例中具有错误的深度值,但是在第二示例中具有适当的深度值。
139.在一些实施例中,深度图中的重力方向可以被预先预定,并且第一方向可以被预先预定。特别地,对于许多典型的深度图和图像,执行水平捕获(或执行后处理以对准图像和场景的水平方向),并且方向可以被预先预定为深度图/图像中的竖直方向。特别地,该方向可以是图像中的从上到下的方向。
140.在一些实施例中,处理器203可以被布置为将第一方向确定为深度图中的重力方向,其中,深度图中的重力方向是与由深度图表示的场景中的重力方向相对应的方向。
141.在一些实施例中,这样的确定可以基于例如来自捕获从其更新深度图的图像的相机的水平指示器的输入的评估。例如,如果接收到指示立体相机相对于水平面成比如30
°
的角度的数据,则第一方向可以被确定为在深度图和图像中相对于竖直方向偏移30
°
的方向。
142.在许多实施例中,深度图中的重力方向可以基于深度图和/或图像的分析。例如,可以选择与从图像中心指向平均加权图像像素位置的矢量相反的重力方向,其中,每像素加权与像素颜色的蓝色量成比例。这是使用图片中的蓝天来确定重力方向的直接方式。已知校正立体图像对(或多视图图像)使得所谓的极线是水平的方法。可以假设重力总是与极线正交。
143.在一些实施例中,代价函数可以包括对场景的至少一部分的深度模型的考虑。在这样的实施例中,处理器203可以被布置为评估深度模型以确定预期深度模型。然后,代价函数可以取决于深度值与从深度模型确定的模型深度值之间的差。
144.深度模型可以是对深度图的至少一些深度值施加深度约束的模型,其中,深度约束可以是绝对的或相对的。例如,深度模型可以是场景对象的3d模型,其在投影到深度图上时将导致对应于图像对象的像素的深度值之间的对应深度关系。因此,可能不知道场景对象的绝对深度,但是如果知道场景对象表示什么类型的对象,则可以暗示深度关系。作为另一示例,深度模型可以是针对静态地平面和/或静态背景估计的视差模型,或可以例如是用于动态移动的平面或圆柱形对象(例如,表示运动场上的体育运动员)的集合的视差模型。
145.因此,代价函数可以评估模型以根据深度模型确定候选深度值的预期深度值。然后,它可以将实际深度值与期望值进行比较,并确定随着差异的增加而单调递增的代价贡
献(对于至少一些深度值)。
146.在一些实施例中,代价贡献可以是不对称的,并且因此取决于深度值是高于还是低于预期值而不同。例如,可以应用不同的函数,使得比模型更远的深度值比比模型更近的深度值导致显著更高的代价贡献。这将使更新偏向比模型更向前的深度。当模型是提供背景深度的指示/估计的背景模型时,这种方法可能是特别有利的。在这种情况下,代价贡献可以使深度图不太可能被更新以反映导致感知上显著的伪影/错误的深度,其中,对象可以被渲染为比深度背景更靠后。
147.实际上,在一些情况下,指示比背景深度更高的深度的深度值的代价贡献可能非常高,使得该深度值非常不可能被选择,例如,在这种情况下,来自模型比较的代价贡献可以被设置为非常高的值(原则上甚至无穷大)。
148.作为示例,模型评估的代价贡献可以由下式给出:
[0149][0150]
其中,d
候选
是表示为视差的候选深度值,d
模型
是表示为视差的模型深度值,并且z
候选
和z
模型
是作为距视点的距离给出的对应深度,并且其中,k是可以被设置为非常高的值以避免估计的深度轮廓比拟合的模型更远离相机的设计参数。在这种情况下,拟合的模型用作算法在其上放置深度图的图像对象的先验背景模型。模型贡献进一步惩罚与模型的大视差偏差。
[0151]
在一些实施例中,对于候选深度值的集合,仅考虑来自深度图本身的候选深度值。然而,在一些实施例中,候选深度值的集合可以被生成为包括其他候选深度值。如先前所提及的,候选深度值的集合可以包括来自包括深度图的深度图的时间序列中的另一深度图的一个或多个深度值。具体地,可以包括来自视频序列中的先前和/或后续帧的深度图的深度值。在一些实施例中,候选深度值的集合可以包括响应于第一像素的深度值的偏移而确定的深度值。例如,候选深度值的集合可以包括通过将预定偏移添加到当前像素的深度值而生成的深度值和/或通过将预定偏移减去当前像素的深度值而生成的深度值。
[0152]
包括不同类型的深度值可以在许多应用和场景中提供改善的性能,并且可以特别地经常允许具有更少约束的更实质的更新。此外,可以通过设计考虑指示当前像素的正确深度的不同类型的潜在可能性的代价函数来包括不同类型的深度值。具体地,代价函数可以取决于深度值的类型,并且因此可以考虑代价函数被应用于什么类型的深度值。更具体地,代价函数可考虑深度值是否为深度图的深度值;比距离阈值更近的深度图的深度值(例如,在紧邻邻域中);深度图的深度值比距离阈值更远(例如,沿着重力方向的更远的像素);来自包括深度图的深度图的时间序列中的另一深度图的深度值;与由深度图表示的场景无关的深度值;或响应于第一像素的深度值的偏移而确定的深度值。当然,在许多实施例中,将仅考虑这些的子集。
[0153]
作为示例,可以针对候选深度值的集合中的候选深度值中的每个候选深度值评估以下代价函数:c
总计
=w1c
匹配
+w2c
平滑度
+w3c
模型
+w4c
候选
,
[0154]
其中,c
匹配
是取决于当前视图与一个或多个其他视图的匹配误差的代价,c
平滑度
对空间平滑度进行加权并且惩罚具有恒定颜色强度的区域内的深度过渡。用于确定这样的代价值/贡献的许多不同方法是本领域技术人员已知的,并且为了简洁起见,将不再进一步描述
这些方法。代价分量c
模型
可以是所描述的模型代价贡献,并且可以反映视差与先验已知或估计的视差模型的偏差。c
候选
可以引入取决于深度值的类型(例如它是否来自相同深度图、时间相邻深度图等)的代价贡献。
[0155]
作为示例,c
候选
可以由下式给出:
[0156][0157]
其中,对所有候选求和的候选代价可以等于1:
[0158]
∑kpk=1。
[0159]
单独候选的典型代价值的示例可以:
[0160]
p1=0,p2=0.05,p3=0.9,p2=0.05
[0161]
局部邻域候选的代价通常很小,因为这样的邻域很可能是良好的预测器。这同样适用于时间相邻候选,但是代价要高一点以避免快速移动对象的错误。偏移更新的代价必须很高,以避免引入噪声。最后,由于空间距离较大,因此远处(重力)候选的代价通常高于正常局部邻域候选的代价。可以使用在不同的更低位置处的多个这样的候选(不同的δ值)。在这种情况下,我们可以随着距正在处理的像素的距离δ的增加而增加代价。
[0162]
应当理解,为了清楚起见,以上描述已经参考不同的功能电路、单元和处理器描述了本发明的实施例。然而,显而易见的是,可以在不背离本发明的情况下使用不同功能电路、单元或处理器之间的任何合适的功能分布。例如,被示为由分别的处理器或控制器执行的功能可以由相同的处理器执行。因此,对特定功能单元或电路的引用仅被视为对用于提供所描述的功能的合适设备的引用,而不是指示严格的逻辑或物理结构或组织。
[0163]
本发明可以以任何合适的形式实现,包括硬件、软件、固件或这些的任何组合。本发明可以任选地至少部分地实现为在一个或多个数据处理器和/或数字信号处理器上运行的计算机软件。本发明的实施例的元件和部件可以以任何合适的方式来物理地、功能地和逻辑地实现。实际上,功能可以在单个单元中、在多个单元中或作为其他功能单元的一部分来实现。这样,本发明可以在单个单元中实现,或可以在不同的单元、电路和处理器之间物理地和功能地分布。
[0164]
尽管已经结合一些实施例描述了本发明,但是并不旨在将本发明限于这里阐述的特定形式。相反,本发明的范围仅受所附权利要求的限制。另外,尽管可能看起来结合特定实施例描述了特征,但是本领域技术人员将认识到,可以根据本发明组合所描述的实施例的各种特征。在权利要求中,术语“包括”不排除存在其他元件或步骤。
[0165]
此外,尽管单独列出,但是多个设备、元件、电路或方法步骤可以通过例如单个电路、单元或处理器来实现。另外,尽管各个特征可以包括在不同的权利要求中,但是这些特征可以有利地组合,并且包含在不同的权利要求中并不意味着特征的组合是不可行和/或不利的。在一类权利要求中包含特征并不意味着对该类别的限制,而是指示该特征在合适时同样适用于其他权利要求类别。此外,权利要求中的特征的顺序并不意味着特征必须工作的任何特定顺序,并且特别地,方法权利要求中的各个步骤的顺序并不意味着必须以该顺序执行这些步骤。而是,可以以任何合适的顺序来执行这些步骤。另外,单数引用不排除
多个。因此,对“一”、“一个”、“第一”、“第二”等的引用不排除多个。权利要求中的附图标记仅被提供用于地使示例清楚,不应被解释为以任何方式限制权利要求的范围。

技术特征:
1.一种处理深度图的方法,所述方法包括:接收深度图;针对所述深度图的至少第一像素,执行以下步骤:确定(105)候选深度值的集合,所述候选深度值的集合包括所述深度图的除所述第一像素之外的其他像素的深度值;响应于代价函数,确定(107)针对所述候选深度值的集合中的候选深度值中的每个候选深度值的代价值;响应于针对所述候选深度值的集合的所述代价值,从所述候选深度值的集合中选择(109)第一深度值;响应于所述第一深度值,确定(111)针对所述第一像素的经更新的深度值;其中,所述候选深度值的集合包括从所述第一像素沿着第一方向的第一候选深度值,并且沿着所述第一方向,至少一个像素的第一中间像素集合不包括所述候选深度值的集合中的以下候选深度值,针对所述候选深度值,所述代价函数不超过针对所述第一候选深度值的所述代价函数,从所述第一像素到所述第一候选深度值的距离大于从所述第一像素到所述第一中间像素集合的距离。2.根据权利要求1所述的方法,其中,对于低于距离阈值的距离,沿着所述第一方向的所述代价函数具有作为距所述第一像素的距离的函数的单调递增的代价梯度,并且对于大于阈值的距所述第一像素的至少一个距离,沿着所述第一方向的所述代价函数具有作为距所述第一像素的距离的函数的递减的代价梯度。3.根据权利要求1所述的方法,其中,所述第一中间像素集合是以下像素的集合,对于所述像素,深度值不被包括在所述候选值的集合中。4.根据任一前述权利要求所述的方法,其中,所述代价函数包括代价贡献,所述代价贡献取决于针对以下像素的多视图图像的图像值之间的差异:所述像素被偏移了与所述代价函数应用于的所述候选深度值相匹配的视差。5.根据任一前述权利要求所述的方法,还包括将所述第一方向确定为针对所述深度图的重力方向;所述重力方向是所述深度图中的与由所述深度图表示的场景中的重力方向匹配的方向。6.根据任一前述权利要求所述的方法,其中,所述第一方向是所述深度图中的竖直方向。7.根据任一前述权利要求所述的方法,还包括确定由所述深度图表示的场景的至少部分的深度模型,并且其中,针对深度值的所述代价函数取决于所述深度值与根据所述深度模型确定的模型深度值之间的差异。8.根据权利要求7所述的方法,其中,所述代价函数关于所述深度值是超过所述模型深度值还是低于所述模型深度值是不对称的。9.根据权利要求7或8所述的方法,其中,所述深度模型是所述场景的背景模型。10.根据任一前述权利要求所述的方法,还包括在所述候选深度值的集合中包括不是来自所述深度图的候选深度值,包括以下中的至少一个深度值:来自深度图的时间序列中的另一深度图的深度值,所述序列包括所述深度图;与由所述深度图表示的场景无关的深度值;以及
响应于针对所述第一像素的深度值的偏移而确定的深度值。11.根据任一前述权利要求所述的方法,其中,针对深度值的所述代价函数取决于所述深度值的类型,所述类型是包括以下项中的至少一项的一组类型中的一个:所述深度图的深度值;所述深度图的比距离阈值更接近的深度值;所述深度图的比距离阈值更远的深度值;来自包括所述深度图的深度图的时间序列中的另一深度图的深度值;具有相对于所述第一深度值的深度值的场景无关深度值偏移的深度值;与由所述深度图表示的场景无关的深度值;以及响应于针对所述第一像素的深度值的偏移而确定的深度值。12.根据任一前述权利要求所述的方法,其中,所述方法被布置为通过从所述深度图的多个像素中迭代地选择新的第一像素并且针对每个新的第一像素执行所述步骤来处理所述多个像素。13.根据权利要求1所述的方法,其中,针对从所述第一像素开始的第二方向的所述候选深度值的集合不包括第二候选深度值,针对所述第二候选深度值,沿着所述第二方向的至少一个像素的像素集合不包括所述候选深度值的集合中的以下候选深度值:针对所述候选深度值,所述代价函数不超过针对所述第二候选深度值的所述代价函数,从所述第一像素到所述第二候选深度值的距离大于从所述第一像素到所述像素集合的距离。14.一种用于处理深度图的装置,所述装置包括:接收器(201),其用于接收深度图;处理器(203),其用于处理所述深度图,所述处理包括:针对所述深度图的至少第一像素,执行以下步骤:确定(105)候选深度值的集合,所述候选深度值的集合包括所述深度图的除所述第一像素之外的其他像素的深度值;响应于代价函数,确定(107)针对所述候选深度值的集合中的候选深度值中的每个候选深度值的代价值;响应于针对所述候选深度值的集合的所述代价值,从所述候选深度值的集合中选择(109)第一深度值;响应于所述第一深度值,确定(111)针对所述第一像素的经更新的深度值;其中,所述候选深度值的集合包括从所述第一像素沿着第一方向的第一候选深度值,并且沿着所述第一方向,至少一个像素的第一中间像素集合不包括所述候选深度值的集合中的以下候选深度值:针对所述候选深度值,所述代价函数不超过针对所述第一候选深度值的所述代价函数,从所述第一像素到所述第一候选深度值的距离大于从所述第一像素到所述第一中间像素集合的距离。15.一种包括计算机程序代码单元的计算机程序产品,当所述程序在计算机上运行时,所述计算机程序代码单元适于执行根据权利要求14所述的所有步骤。

技术总结
深度图的处理包括针对深度图的至少第一像素执行以下步骤:确定包括深度图的其他深度值的候选深度值的集合(105),响应于代价函数而确定(107)针对候选深度值中的每个深度值的代价值;响应于针对所述候选深度值的集合的所述代价值而选择(109)第一深度值;并且响应于所述第一深度值而确定(111)所述第一像素的更新深度值。所述候选深度值的集合包括:沿着第一方向的第一候选深度值,所述第一候选深度值比沿着所述第一方向的至少一个像素更远离所述第一像素,所述至少一个像素不被包括在所述候选深度值的集合中或者具有比所述第一候选深度值更高的代价函数。深度值更高的代价函数。深度值更高的代价函数。


技术研发人员:C
受保护的技术使用者:皇家飞利浦有限公司
技术研发日:2021.12.07
技术公布日:2023/8/9
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐