CN113711276A - 尺度感知单目定位和地图构建 - Google Patents

尺度感知单目定位和地图构建 Download PDF

Info

Publication number
CN113711276A
CN113711276A CN201980095498.5A CN201980095498A CN113711276A CN 113711276 A CN113711276 A CN 113711276A CN 201980095498 A CN201980095498 A CN 201980095498A CN 113711276 A CN113711276 A CN 113711276A
Authority
CN
China
Prior art keywords
images
image
scale
model
feature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201980095498.5A
Other languages
English (en)
Inventor
本杰明·布萨姆
格雷戈里·斯拉堡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN113711276A publication Critical patent/CN113711276A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/18Image warping, e.g. rearranging pixels individually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)

Abstract

公开了一种图像处理设备,包括处理器,该处理器用于通过以下步骤估计图像特征的尺度:通过第一训练模型处理场景的多个图像,以识别图像中的特征并估计图像中这些特征的深度;通过第二训练模型处理多个图像,以估计图像的缩放比例;以及通过根据估计的缩放比例对估计的深度进行调整来估计特征的尺度。还公开了一种用于训练图像处理模型的方法。

Description

尺度感知单目定位和地图构建
技术领域
本发明涉及解决在投影数码摄像机捕获的图像时尺度模糊的问题。
背景技术
数码摄像机通过落在数字传感器上的光捕获图像,该数字传感器将收集到的光转换为数字数据,即原始数据。然后,处理原始数据以创建形成为像素场的光栅图像,其中,每个像素表示在数字传感器的一个区域接收到的亮度和颜色,该区域代表捕获的图像的一个区域。然后,像素场可以显示在屏幕上,从而可供人看到。这样,就实现了捕获的图像的投影。原始数据和处理后的数据都可以进行存储并传输到另一个设备,从而允许根据需要以及在需要时进一步再现捕获的图像。
如果该图像为场景(可以为室外场景或室内场景),则该图像通常会包括许多对象或特征。在一些情况下,可能希望能够识别构成场景的一部分的对象。例如,如果餐馆等对象是场景的一部分,则有用的是识别餐馆,使得餐馆能够被找到,且将该餐馆的名称、位置等提供给正在所识别的餐馆所在区域中寻找餐馆使用者的设备。或者或另外,识别对象可以有利于调整和/或增强该对象在显示时的外观。在单个摄像机捕获图像的情况下,很难知道对象离该摄像机的距离。对于一个在现实生活中观看场景的人来说,这通常至少在某种程度上是显而易见的。例如,如果该对象是一辆汽车,并且它看起来大约一米高(约3英尺),则知道一辆普通的汽车大约有1.3米(约4英尺)高的人就会推断出该汽车必定在大约10米(30英尺)远的地方。这是因为这个人会排除它是一栋房子的高度(这时会更远)的可能性,同样也会排除它是一只狗的高度(这时会更近)的可能性。但是,数字图像处理器并不具备关于对象是什么以及其大致可能大小的人类知识,因此无法以这种方式推断它有多远。换句话说,对象的尺度是模糊的,因为它与视点的距离是未知的。此外,数码摄像机投影的图像的外观还取决于传感器平面离摄像机光学中心的距离—同一位置的不同摄像机可能会捕获不同大小的场景。因此,处理原始图像数据的一个方面涉及考虑捕获的图像中对象的尺度的模糊性,从而能够确定它们的深度(即离摄像机的距离),使得图像可以被准确地投影和增强。
单个摄像机采集的图像称为单目视觉。可以确定构成图像一部分的对象的深度的一种方法是通过在捕获图像的同时移动摄像机。因此,视频序列是在摄像机移动的时间段内捕获的,捕获序列的每个帧的位置取决于在捕获帧的瞬间摄像机移动到的位置。处理移动摄像机捕获的这样的视频序列可以实现同步定位和地图构建(simultaneouslocalization and mapping,SLAM)到一个缩放因子。这是因为可以使用视差原理,即取决于对象离摄像机的距离,同一对象看起来大小不同。因此,如果一个图像是从两个(或更多)不同的空间位置获取的,则可以对在两个图像中不同像素位置看到的点进行三角测量。这两个图像之间的关系通过它们的对极几何描述,这可以用作创建像素场的数字处理的一部分。场景中一个点的像素位置差异称为视差,与该点离摄像机的距离(即深度)成反比。如果将深度编码在图像上,则称为深度图。深度的等差图像称为视差图。可以定位摄像机位置,同时对其周围环境进行地图构建,并且可以通过输入直接图像或特征关键点进行更新,以实现重新定位。
单目SLAM技术通常会导致尺度模糊,即使在进行上面描述的三角测量处理之后也是如此。现有的数字图像处理器使用算法来处理捕获的图像。用于确定尺度的处理部分可以大致分为基于统计的算法方法和基于学习的算法方法。基于统计的方法的缺点是需要大量的处理能力,这在所花费的时间和/或物理组件大小的限制方面是不利的。因此,最近开始用神经网络来创建算法。现有的方法以三种不同的方式解决尺度模糊问题。这些方法使用单目深度估计(1)或附加的传感器(2)来估计深度,或者保持尺度模糊(3)。以下对每种方式进行更详细的描述:
(1)使用单目深度估计的方法解决了高度约束不足的问题,并学习如何根据视觉线索推断距离(例如汽车通常是X米长……),并完全依靠他们在被训练时看到的事物。这存在不适定问题,因此结果是不准确的,不能推广到以前没看到的场景。
(2)附加的传感器,如第二摄像机、有源深度传感器或惯性测量单元(inertialmeasurement unit,IMU),使系统能够直接恢复尺度感知测量,但这会增加附加的硬件并需要融合不同模式的信息。此外,在确定第一摄像机和附加传感器之间的空间位移时,存在校准成本。
(3)尺度模糊方法是那些不恢复尺度的方法。缩放参数“s”最初是随机设置的(通常为1),所有连续测量都参考这个值。测量将只以“s”乘以测量单位为单位。在这些场景中,任何虚拟内容都不能以度量正确的方式放置。
CN 107945265 A是方法(1)的一个示例,描述了基于在线学习深度预测网络的SLAM方法,该方法涉及全深度图的预测和非常具体的表决方案。该方法依赖于关于对象的知识,这意味着当面对未知对象或不符合先前看到的该类型对象的已知对象时,该方法很容易失败,例如,如果该方法熟悉苹果树等树,则知道它们大约有3米(10英尺)高,但很难识别出一棵可能大约有100米(350英尺)高的红杉是一棵树。CN 106127739 A是方法(2)的一个示例,描述了一种依赖于单目深度估计的SLAM方法,需要单目摄像机和深度传感器的组合,以及附加的硬件传感器来估计尺度。CN 105825520 A是方法(3)的一个示例,描述了另一种单目SLAM方法,该方法能够创建大尺度地图,但不是尺度感知的。
希望提供一种能够提供准确的尺度和深度预测性能的技术,从而最大限度地减少处理需求。
发明内容
根据第一方面,提供了一种图像处理设备,包括处理器,该处理器用于通过以下步骤估计图像特征的尺度:借助于第一训练模型处理场景的多个图像,以识别图像中的特征并估计图像中这些特征的深度;通过第二训练模型处理多个图像,以估计图像的缩放比例;以及通过根据估计的缩放比例调整估计的深度来估计特征的尺度。这可以允许推断场景的深度和特征的尺度,而不需要额外的硬件或场景特征的知识。
尺度可以由设备估计的特征的一些示例包括像素、像素距离和共同表示对象或对象的特定部分的图像伪影。深度可以是离拍摄图像的摄像机的距离。摄像机可以是设备,也可以包括设备,或者可以是设备的一部分。
多个图像可以包括从不同位置捕获的场景的图像。这可以允许使用来自单目移动摄像机的两个图像,或来自两个不同摄像机的两个图像。
第一训练模型和第二训练模型可以用于独立于所述位置之间的距离操作。因此,摄像机速度并不重要。
多个图像可以包括在不同时间捕获的场景的图像。这也包括从单个移动摄像机捕获图像。
多个图像可以是公共视频流中的帧。这允许同步定位移动摄像机和特征地图构建。
在一些实现方式中,图像处理设备包括摄像机,多个图像是摄像机捕获的图像。因此,处理可以由摄像机进行。在其它实现方式中,部分或全部处理可以由另一个设备(如云中的服务器或计算机)执行。
估计的深度可以是相对距离。这可以是对象之间的相对距离。因此,对象可以相对于彼此正确重建。
估计的尺度可以是绝对距离。这可以是离捕获图像的摄像机的实际距离测量单位(如米、码等)。除了能够将对象作为图像的一部分进行精确重建外,此信息还可用于确定对象是什么。
该设备可以用于:对场景的下采样图像运行第一训练模型,以形成包括下采样图像中的特征的深度的估计的数据集;以及处理所述数据集以放大其分辨率。这使得存储和用于深度图计算的数据量较小,例如在存储和/或处理能力有限的移动设备中。但是,放大使所得到的图像的分辨率良好。
根据第二方面,提供了一种用于训练图像处理模型的方法,包括:(a)接收多对图像,每对图像代表一个公共场景且每对图像中的图像从间隔一定距离的不同位置捕获;(b)对于每对图像:(1)接收地面实况数据,地面实况数据包括图像中的区域的尺度估计;(2)通过第一模型处理图像,以识别图像中的特征;(3)通过第二模型处理图像,以估计特征的相对深度;(4)通过第三模型处理图像,以估计图像的绝对尺度;(5)根据地面实况数据调整第二模型和第三模型中的一个或两个模型。这可以允许生成处理图像数据以解决场景特征的尺度模糊的算法,该算法可以随后使用,而不需要附加的深度传感器或地面实况信息。
该方法还可以包括,对于每对图像,通过以下之一来估计所述图像中的区域的尺度来形成地面实况数据:(1)根据捕获图像的位置之间的距离对图像进行几何分析,以及(2)根据指示捕获图像的相对位置和捕获图像的相对方向的数据来估计图像之间的变换。这使得用立体视觉估计但具有任意尺度的对象的深度可以由实际缩放因子校正。
在一些实现方式中,该方法包括,对于每对图像,将这些图像中的一个图像扭曲到与该对中的另一个图像公共的图像帧;其中,所述步骤(3)和(4)是对扭曲的图像和所述另一个图像执行的。此技术可以用于处理同一场景的两个图像,例如通常在场景的左侧和右侧捕获,以缩放图像的特征。
在一些实现方式中,该方法的步骤(2)可以包括通过第一模型处理图像,以识别图像中的特征和每个特征在相应图像中的位置。在这些实现方式中的一些实现中,该方法可以包括:对于每对图像,将在这些图像中的一个图像中识别的特征的位置扭曲到与在该对的另一个图像中识别的特征的位置公共的图像平面;其中,该方法的所述步骤(3)和(4)是对扭曲的特征位置和所述另一个图像的特征位置执行的。对公共图像平面的校正减少了所需的计算量,因为图像之间对应关系的搜索空间缩小为单条线。
根据第三方面,提供了一种通过本文描述的任何方法形成的图像处理模型。这样的模型可用于处理不是由与用于生成模型的摄像机相同的摄像机捕获的更多图像。
根据第四方面,提供了一种图像处理设备,包括处理器和存储器,该存储器包括可由处理器执行的指令,以实现通过本文描述的任何方法调整的图像处理模型。因此,这样的设备可以是一个独立的单元,它既可以捕获场景的图像,也可以处理它们以进行重建,同时考虑场景中对象的尺度。
附图说明
现在仅参考附图以示例的方式描述本发明。
图1示出了单目图像捕获的基本概念。
图2示出了使用对极几何来对点进行三角测量的示例。
图3示出了用于训练神经网络的基于立体的深度和尺度估计流水线的概述。
图4示出了基于立体的深度和尺度估计的实现方式。
图5示出了特征塔提取流水线。
图6(a)-(f)示出了使用上采样的视差图的阶段。
图7(a)-(f)示出了基于尺度校正的深度估计细化过程。
图8(a)-(e)示出了训练模型的深度估计输出。
图9示出了用于估计场景的图像特征的尺度和用于校正场景的图像特征的深度的方法的示例。
图10示出了用于训练模型以估计场景的图像特征的尺度的方法的示例。
图11示出了包括用于执行尺度估计的摄像机的系统架构的示例。
具体实施方式
图1是单目视觉的示意图。对象1形成被捕获的图像的一部分。在这种情况下,对象1是一棵树,正在捕获室外场景。数码摄像机2具有近似针孔的孔4,光可以通过针孔进入,以便在数字传感器8上记录图像6。记录在数字传感器上的原始数据可以经处理,以便以人类可观看的格式重建图像,或者直接出现在摄像机的屏幕上,和/或使得它可以被传输到单独的设备用于进一步处理和/或查看。如上所述,这种处理的一个困难是,就对象(如对象1)的深度而言,将原始数据逆映射回图像是模糊的,因此可能不知道对象的尺度。
为了解决尺度模糊,代替单个图像,如果摄像机2在捕获多个图像作为视频帧的同时移动,则摄像机的同步定位和将捕获的数据映射回图像的精确重建可以实现到缩放因子。图2示出了如何用这种方法对对象的点P的两个图像进行三角测量。如果从位于两个不同位置的一个摄像机获得点P的两个图像,则点P将在两个图像中看到,但在不同的像素位置。这就是所谓的视差效应。这些立体图像的对极几何可以用于确定两个像素位置之间的视差。如果将相同的技术应用于图像的其它点,则可以创建视差图。这种图的值将与图上的点的深度成反比,这些点的深度即这些点与摄像机的距离。在图2中,两个捕获点被标记为左摄像机和右摄像机。这是指一个移动摄像机在两个不同时间的两个位置,尽管如果这两个图像是由两个不同的摄像机捕获的,原理是相同的。两个摄像机位置之间的距离是基线距离,从基线到点P的最短距离Z可以参考在每个图像中看到的位置来计算。它在每个图像中出现的位置取决于摄像机位置沿着基线、离测量距离Z时所使用的基线上的那个点有多远。
上述立体技术可以对多对图像重复进行,从而处理视频序列,以便能够实现摄像机的同步定位和地图构建。虽然这在估计对象之间的距离时很有用,但它只工作到缩放因子,即任意尺度,因为基线长度是任意选择的。另一个问题是,随着时间的推移和/或摄像机移动的距离,会累积小误差,从而在缩放中产生漂移。
下面描述了训练神经网络的方法,以及运行训练后的模型以估计图像特征的尺度的方法。还描述了可以在其上实现这些方法的装置和设备。在一些实现方式中,该方法由数码摄像机的组件执行,数码摄像机具有单目视觉但正在移动以捕获视频序列。
所描述的神经网络可以同时执行基于立体的深度和尺度估计。训练网络的方法包括将两者结合在一起。尺度模糊问题是由两个任务组成的多任务问题:(1)尺度模糊深度估计和(2)缩放参数估计。这两个任务基于相同的数据,并将其结果结合在一起,使得每个任务都能从另一个任务中获得信息。任务(1)是根据具有尺度“s0”的时间单目输入(即不同时间实例的图像)估计深度图。任务(2)是基于相同的数据估计缩放参数“st”,并相应地缩放任务(1)的输出。因此,这两个任务可以在端到端图像处理流水线中融合。在运行时,可能会删除深度估计分支,从而解决尺度模糊。如果解决了尺度模糊,这意味着将通过使用图像中对象的相对深度或其实际深度(即离摄像机的距离)来知道正在捕获的场景中对象的相对和/或绝对尺寸。
现在将描述一种实现尺度估计的流水线处理方法。
图3示意性地示出了处理流水线的概述,该流水线在一些实现方式中用作单目移动摄像机捕获的视频的数字图像处理的一部分,以便训练神经网络以解决尺度模糊,使得当运行时,它可以计算出捕获的图像中特征的正确深度(即离摄像机的实际单位距离)和尺度(即物理尺寸)。时空输入(例如在不同时间捕获的立体图像)被馈送到流水线中。出于训练目的,可以使用两个摄像机,分别命名为左侧摄像机和右侧摄像机,因为它们通常可以定位在图像(如正在捕获的场景)的左边和右边。示出了两对图像,可以理解,它们是可以两个摄像机捕获的许多视频帧的示例性图像。左侧摄像机在时间tref拍摄场景的第一图像10,在时间tn+1拍摄第二图像12。右侧摄像机在时间tn拍摄同一场景的第一图像14,在时间tn+1拍摄第二图像16。裁剪这些图像并调整这些图像的大小,并从这些图像中提取特征以生成特征图。在这一点上,该过程分为两个分支,实际上可以同时实现,尽管这不是必须的。第一分支(图中的下分支,一般地,通过附图标记18表示)执行上面讨论的任务(1)(即尺度模糊深度估计)。因此,第一分支估计了缩放的深度图。首先,将特征图扭曲到公共参考视图—此阶段的输出是H(d)。然后,通过代价容量(cost volume)。下面将参考图4更详细地描述这些步骤。该输出是任意缩放的深度图。因此,该分支可以概率地描述对应的图像区域及其深度。第二分支(图中的上分支,一般地,通过附图标记20表示)执行上面讨论的任务(2)(即估计缩放参数)。然后,此缩放参数可以用于将第一个分支输出的深度图缩放为正确的值。通过这种方式,可以确定特征离摄像机的距离。可以为图像的对象或图像的像素确定这些距离。
图4示出了参考图3描述的训练过程的更详细的实现方式。在将分辨率为w×h的图像通过神经网络之前,将两个视图(分别由左侧和右侧摄像机拍摄,如上所述)校正为公共参考平面。因此,使用对极几何,图像之间对应关系的搜索空间缩小为一条水平线。通过这种方式,获得地面实况数据。
为了实现本文所描述的方法,Google的TensorFlow 1.4.1以及Python 2.7基础库可以用于根据本文所描述的神经网络处理器的实现方式创建深度学习模型。合适的硬件资源包括在64GB内存的机器上运行的Intel(R)Core(TM)i7-8700 CPU@3.20GHz,以及在Ubuntu16.04.5LTS(XenialXerus)上运行的NVidia GeForce GTX1080。图4的实现方式标记为八个阶段,每个阶段在下文中进行描述。
第1阶段:特征提取
左视图和右视图的图像—例如图3中所示的图像10、12、14、16,但在图4中表示为单个框22(左图像L)和24(右图像R)—在训练期间被馈送到具有共享权重的两个相应的Siamese特征塔中。左图像22被馈送到第一特征塔26中,右图像24被馈送到第二特征塔28中。要实现缩小(下采样),可以使用3个ResNet块的一个卷积层,另一个卷积层利用BatchNorm和参数α=0.2的Leaky ReLu。后者可以重复三次,然后每个像素输出32维特征。特征图的大小为h/n×w/n×f,n=8,其中,h是图像的高度,w是图像的宽度,n是图像缩小的比例(例如通过下采样),f是特征深度(即特征数量)。该设计遵循了[Zhang,Yinda等人ActiveStereoNet,ECCV 2018]中提出的特征提取。
暂时转向图5,示出了特征塔26、28的实现方式。数字[C,K,S,D]表示特定卷积层或ResNetBlock层的通道、内核大小、步长和扩张所使用的参数。回到图4,阶段1的输出是通过第一特征塔26生成的左侧图像的特征的第一特征图30和通过第二特征塔28生成的右侧图像的特征的第二特征图32。
在从区间[0,s_max]随机采样缩放参数s之后,两个阶段2和4分别准备分别用于尺度估计和深度估计的两个分支(1)和(2)(在上面讨论的图3中一般地表示为18和20)。此参数是动态生成的,并保存用于训练目的。
第2阶段:特征扭曲
此阶段是执行上述任务(2)(即尺度估计)的第二分支20的一部分。进一步参考图4,利用d=l,焦距为l的可微单应性将右视图的第二图像特征图32扭曲到左参考视图的第一特征图30上,从而可以计算特征空间差。使用的单应性由以下公式给出:
Figure BDA0003306188980000061
其中,1对应于训练期间的左参考视图,i对应于右视图,并且其中,Ki是摄像机矩阵(存储固有摄像机参数);Ri是旋转,ti是摄像机i相对于参考摄像机1的位移的平移;n1表示参考摄像机的归一化z方向。
图4中的框34和36示出了此阶段。
第3阶段:尺度估计
此阶段是执行上述任务(2)(即尺度估计)的第二分支20的下一部分。使用左侧特征图30和右侧特征图32。在特征空间中计算特征差异,其中,维数为h/n×w/n×f(框38)。编码阶段40将该维度降低到零。编码器逐渐将分辨率降低到零维输出(标量)。在每一层,将特征图分辨率降低一半,然后将结果通过连接到单个神经元的全连接层。此参数称为s0(框42),表示相对于单目SLAM系统的归一化平移矢量的尺度变化。
第4阶段:微分单应性扭曲
此阶段形成执行上述任务(1)(即尺度模糊深度估计)的第一分支18的一部分。在左摄像机的参考系上将两个特征图(第一左侧地图30和第二右侧地图32)扭曲到不同的正面平行平面(fronto-parallel plane)(框44),即左特征图的单应性是3×3单位矩阵。对于右侧摄像机,用不同的深度假设扭曲第二特征图32。聚合这两个扭曲,以在下一阶段形成单一的代价容量。
第5阶段:代价容量的统计估计
此阶段形成执行上述任务(1)(即尺度模糊深度估计)的第一分支18的下一部分。在此阶段,左和右的特征容量融合到一个代价容量46。为了独立于输入视图的数量,使用了如[Yao,Yao等人MVSNet,ECCV 2018]中提出的基于方差的成本度量M。关于特征容量V_i,V(斜体)是特征空间的维数(本示例中为32)并且N=2(所使用的帧的数量),代价容量C为
Figure BDA0003306188980000071
与平均代价容量Vi(虚线)相关。
第6阶段:引导细化
此阶段形成执行上述任务(1)(即尺度模糊深度估计)的第一分支18的下一部分。为了保持低内存占用空间并能够在移动设备上运行(由于希望尽可能减小尺寸,这些设备对处理能力施加限制),在此阶段选择的分辨率为1/8。但是,为了维护全分辨率视差图,可以在一些实现方式中使用上采样阶段。一个合适的上采样过程是[Khamis,Sameh等人StereoNet,ECCV 2018]中提出的引导分层上采样。选定的深度形成为代价容量的深度值的SoftMax加权线性组合,如下所示:
Figure BDA0003306188980000072
其中,D是深度方向上的最大离散化。
这产生了一个1/8深度图,然后通过细化网络,以在双线性上采样后细化其残差。通过一个小型网络处理缩小的输入图像以及特定分辨率的深度图的跳跃连接,该小型网络由卷积、BatchNorm、Leaky ReLu和两个ResNet块组成。然后,在给定阶段将这些跳跃连接级联到处理后的上采样视差,其中,阶段按1/8、1/4、1/2、1/1(即全分辨率)分层排序。这些过程在图4中通过附图标记48共同表示。这传递了四个残差块和一个卷积。在每个单独的尺度上,以损失总结利用缩放的地面实况进行的监督。
转向图6,示出了从粗糙视差图到全分辨率的不同上采样阶段的结果。深度图的亮度对像素与摄像机的距离进行颜色编码。虽然在1/8分辨率(图(a)),仅存在有限的细节,但分层上采样借助输入图像的跳跃连接细化残差。图(b)示出1/4分辨率,图(c)示出1/2分辨率。最终,在全分辨率(图(d))下,恢复地面实况(图(e))的粒度。这在树的叶子和路边细细的灯柱等精细结构中尤其突出。示出原始图像(f)以进行比较。
第7阶段:缩放上采样深度图
如以上所讨论,下分支18的上采样深度图(图4中的阶段4-6;任务(1)深度估计)通过错误的缩放参数s错误地缩放。阶段3(图4中的阶段2和3;任务(2)尺度估计)的输出可以用于将深度值缩放为实际测量单位(例如米等公制单位或码等非公制单位),以便它可以通过地面实况深度图完全监督。所得到的深度估计50由以下公式给出:s0*D_s,其中,尺度s0是网络的上分支的输出42(图4中的阶段2和3-任务(2)尺度估计),D_s是下分支(图4中的第4-6阶段-任务(1)深度估计)的错误地缩放的深度图。
图7示出了此阶段,示出了对SceneFlow数据集[Cordts等人CVPR 2016]中的两个不同真实场景输入图像的估计的深度缩放。为了进行比较,输入图像示出为图像(a),地面实况深度示出为图像(b)。地面实况图像(b)中的黑色区域来自无效像素。图像(c)和(e)示出了缩放错误的尺度估计的示例性输出。此阶段7的深度估计网络可以将错误缩放的深度(图像(c)和(e))校正为最终尺度估计(分别为图像(d)和(f))。
第8阶段:监督
整个流水线是可端到端训练的,因为所有步骤都是完全可微的。如果给出了地面实况深度值(通过图4中的附图标记52表示),则可以通过深度图进行监督。在一些优选的实现方式中,以(自)监督的方式,立体方法(例如上面描述的阶段4-6,但利用已知的摄像机绝对位移)可以用于估计深度图,该深度图可以用于动态训练网络。一旦训练了整个流水线,深度估计输出可以类似于图8中所示的示例。在此示例中,深度图的亮度对像素与摄像机的距离进行颜色编码。图像(a)、(b)和(c)分别示出了1/8、1/4和1/2分辨率阶段。图像(d)示出了1/1分辨率下的扭曲单目深度,图像(e)示出了原始左侧图像22。图像(a)-(d)对应于阶段6的引导细化放大。因此,监督在每个尺度都进行。
实现的损失函数使用[Barron,Jonathan,A General and Adaptive Robust LossFunction,arXiv,2019]的广义自适应鲁棒损失函数
Figure BDA0003306188980000081
其中,α=1,c=2。
在推理过程中,经典的SLAM流水线现在可以用于环境的重建和地图构建,而网络的快速实时上分支可以动态估计尺度。通过这种方式,测量单元(如度量正确的地图构建和轨迹)被重建,并由此创建一个完全训练模型。
图9总结了一种估计由移动单目摄像机捕获的源图像特征尺度的方法。该方法使用由上面描述的阶段1-8训练的神经网络模型执行。因此,训练可以是使用从两个摄像机捕获的图像进行的,但在这种运行时方法中,可以使用单个移动的单目摄像机,因为如上所述,可以进行动态深度校正。这可能是与训练过程中使用的任何一个摄像机不同的摄像机。在步骤901中,通过第一训练模型处理捕获的场景的多个图像,以识别图像中的特征并估计图像中这些特征的深度。这些估计的深度可以是相对距离,因为只能使用假设的缩放因子(错误的缩放参数s),如上文在阶段7的讨论中所述。这个第一训练模型正在执行上面描述的尺度模糊深度估计的第一任务。在步骤902中,第二训练模型处理多个图像,以估计图像的缩放比例。这个第二个训练模型正在执行上面描述的尺度估计的第二任务。在下一个步骤903中,通过根据步骤902的估计的缩放比例调整步骤901的估计的深度来估计特征的尺度。因此,可以确定距离(如米、码等)的绝对深度。
可以与图9的方法一起使用的可选步骤是在场景的缩小图像上使用第一训练模型,以形成一组数据,其中包括对缩小图像中特征的深度的估计。然后,可以处理此数据以对其分辨率进行上采样,如上面参考阶段6所讨论。
图10示出了训练模型的方法,该方法通常对应于上面讨论的阶段1-8。在步骤1001中,接收多对图像,每对图像代表一个公共场景,这对图像中的图像从间隔一定距离的不同位置捕获。这两个图像可以由不同的摄像机捕获,或由同一摄像机在两个不同的位置捕获。其余步骤都是针对每对图像执行的。在步骤1002中,接收包括图像中的区域的尺度估计的地面实况数据。如上所述,这可以使用应用于视差原理的对极几何来计算,因为两个图像是在不同的位置获得的。在步骤1003中,图像由第一模型处理,以识别图像中的特征。这可以通过上面参考图3描述的特征塔流水线来执行。在步骤1004中,图像由第二模型处理,以估计特征的相对深度。这可以参考上面讨论的阶段4-6进行。因此,这里的第二模型正在执行上面描述的尺度模糊深度估计的第一任务。在步骤1005中,图像由第三模型处理,以估计图像的绝对尺度。这可以参考上面讨论的阶段3进行。因此,这里的第三模型正在执行上面描述的尺度估计的第二任务。在步骤1006中,第二模型和第三模型中的一个或两个根据地面实况数据进行调整。
图11示出了包括使用模型执行尺度估计和深度分辨率的摄像机的架构的示例。摄像机1101连接到通信网络1112。摄像机1101包括图像传感器1102。摄像机1101还包括存储器1103、处理器1104和收发器1105。存储器1103以非瞬态形式存储可以由处理器1104运行的代码。在一些实现方式中,该代码可以包括上面描述的神经模型。该算法可以包括可由处理器直接执行的代码和/或通过上面描述的训练模型导出的神经网络权重等参数,这些参数不是直接执行的指令,而是用于配置存储在存储器1103中的其它可执行代码。存储器1103还可以存储原始和/或处理后的图像数据。收发器1105可以能够通过有线通信信道和无线通信信道中的一个或两个信道发送和接收数据。例如,它可以支持以太网、IEEE802.11B,和/或4G或5G等蜂窝协议。
这样的摄像机1101通常包括一些板载处理能力。这可以由处理器1104提供。处理器1104还可以用于实现设备的其它功能。
收发器1105能够通过网络1112与其它实体1110、1111通信。虽然示出了两个实体,但可以提供更多实体。这些实体可以物理上远离摄像机1101。网络1112可以是互联网等公共可访问的网络。实体1110、1111可以基于云。实体1110可以是计算实体。实体1111可以是命令和控制实体。这些实体是逻辑实体。在实践中,它们可以由一个或多个物理设备(如服务器和数据存储)提供,并且两个或多个实体的功能可以由单个物理设备提供。每个实现实体的物理设备包括处理器和存储器。这些设备还可以包括收发器,用于向摄像机1101的收发器1105发送数据和从摄像机1101的收发器1105接收数据。它们的存储器以非瞬态方式存储代码,该代码可由处理器执行,以通过本文描述的方式实现相应的实体。
命令和控制实体1111可以训练用于估计源图像特征的尺度和深度的模型。这通常是一项计算密集型任务,即使所得到的模型可以被高效地描述也是如此,因此在云中执行算法的开发可能是有效的,在云中可能有大量的能量和计算资源可用。这可能比在典型摄像机上形成这样的模型更实用,后者可能在处理器尺寸和功能方面受到限制。
在一种实现方式中,一旦算法已经在云中开发,命令和控制实体1111可以在接收到该算法时自动形成对应的模型,并将该模型传输到相关的摄像机设备以执行。在此示例中,该方法由处理器1104在摄像机1101处执行。
在另一种可能的实现方式中,图像可以由摄像机传感器1102捕获,图像数据可以由收发器1105发送到云端进行处理,包括场景特征的尺度估计。然后,所得到的目标图像可以通过网络1112被发送回摄像机1101。
因此,该方法可以通过多种方式部署,例如在云中、在设备上,或者在专用硬件中或它们的组合。如上所述,云设施可以执行训练,以开发新的算法或改进现有的算法。根据数据语料库附近的计算能力,训练可以在源数据附近进行,也可以在云中进行,例如使用推理引擎。尺度估计也可以在摄像机、专用硬件或云中执行。
从上面可以理解,由于许多原因,本发明的实现方式是有利的。特别是,任务(1)和(2)的同时训练提供了以下优势:
·在端到端学习流水线中融合立体深度和尺度估计—这使得能够利用高质量的几何SLAM方法,并从相互依赖的特征中获得有意义的尺度,从而提供高分辨率和高精度的距离测量。
·仅图像单目SLAM中尺度模糊的解决方案—在此流水线中,在运行时不需要附加的传感器或其它模式,如IMU、LIDAR、有源立体声、第二摄像机等。
·通过立体SLAM进行自我监督—在训练期间可以使用附加的传感器来实现多视图成像。因此,不需要附加的地面实况数据,因为这可以使用第二摄像机动态生成。
·创建了一个与输入图像数量无关的时空流水线—可以使用可微单应性扭曲来完成不同图像(在空间和时间上)到引用的扭曲。对这些扭曲版本的统计分析与输入图像的数量无关,并允许在推理时更改输入图像的数量。这样,第二摄像机、第三摄像机等可以用于训练和推理。在运行时,该流水线可以在时间域及空间域中利用单声道输入和立体声输入使用。
·漂移可以通过对时间缩放参数的统计分析来检测—在经典的单目SLAM方法中积累了小误差(这称为漂移),这是很难检测的。随时间推移对缩放参数的简单分析(可以在与缩放和深度图创建不同的线程中运行)直接揭示漂移问题。这可以用作全局优化,以强制循环闭合/调整深度图,在传统系统中,这都是最大限度地减少漂移的昂贵方法。
·实时适用性—这两个任务可以单独使用(一旦训练),从而实现任务(2)的实时尺度估计。
申请人在此单独公开了本文中描述的每个单独特征以及两个或多个此类特征的任何组合,在某种程度上,这样的特征或组合能够根据本领域技术人员的公知常识基于本说明书作为一个整体来执行,无论这些特征或特征的组合是否解决了本文公开的任何问题,并且不限制权利要求的范围。申请人指出,本发明的方面可以包括任何这样的单独特征或特征的组合。鉴于上述描述,本领域技术人员将明显地看到,在本发明的范围内可以进行各种修改。

Claims (15)

1.一种图像处理设备(1101,1102),其特征在于,包括处理器(1104),用于通过以下步骤估计图像特征的尺度:
通过第一训练模型处理场景的多个图像,以识别所述图像中的特征并估计所述图像中的这些特征的深度;
通过第二训练模型处理所述多个图像,以估计所述图像的缩放比例;
通过根据所述估计的缩放比例对所述估计的深度进行调整来估计所述特征的尺度。
2.根据权利要求1所述的图像处理设备(1101,1102),其特征在于,所述多个图像包括从不同位置捕获的所述场景的图像。
3.根据权利要求2所述的图像处理设备(1101,1102),其中,所述第一训练模型和所述第二训练模型用于独立于所述位置之间的距离进行操作。
4.根据权利要求2或3所述的图像处理设备(1101,1102),其特征在于,所述多个图像包括在不同时间捕获的所述场景的图像。
5.根据上述权利要求中任一项所述的图像处理设备(1101,1102),其特征在于,所述多个图像是公共视频流中的帧。
6.根据上述权利要求中任一项所述的图像处理设备(1101,1102),其特征在于,包括摄像机,其中,所述多个图像是由所述摄像机捕获的图像。
7.根据上述权利要求中任一项所述的图像处理设备(1101,1102),其特征在于,所述估计的深度是相对距离。
8.根据上述权利要求中任一项所述的图像处理设备(1101,1102),其特征在于,所述估计的尺度是绝对距离。
9.根据上述权利要求中任一项所述的图像处理设备(1101,1102),其特征在于,所述设备用于:
对所述场景的下采样图像运行所述第一训练模型,以形成包括所述下采样图像中的所述特征深度的估计的数据集;以及
处理所述数据集以放大其分辨率。
10.一种用于训练图像处理模型的方法,其特征在于,包括:
(a)接收(1001)多对图像,每对图像代表一个公共场景且所述每对图像中的图像从间隔一定距离的不同位置捕获;
(b)对于每对图像:
(1)接收(1002)地面实况数据,所述地面实况数据包括所述图像中的区域的尺度估计;
(2)通过第一模型处理(1003)所述图像,以识别所述图像中的特征;
(3)通过第二模型处理(1004)所述图像,以估计所述特征的相对深度;
(4)通过第三模型处理(1005)所述图像,以估计所述图像的绝对尺度;
(5)根据所述地面实况数据调整(1006)所述第二模型和所述第三模型中的一个或两个模型。
11.根据权利要求10所述的方法,其特征在于,所述方法包括:对于每对图像,通过以下之一来估计所述图像中的所述区域的尺度来形成所述地面实况数据:(1)根据捕获所述图像的所述位置之间的距离对所述图像进行几何分析,以及(2)根据指示捕获所述图像的相对位置和捕获所述图像的相对方向的数据来估计所述图像之间的变换。
12.根据权利要求10或11所述的方法,其特征在于,包括:对于每对图像,将这些图像中的一个图像扭曲到与所述图像对中的另一个图像公共的图像帧;其中,所述步骤(3)和(4)是对所述扭曲的图像和所述另一个图像执行的。
13.根据权利要求10或11所述的方法,其特征在于,所述步骤(2)包括通过第一模型处理所述图像,以识别所述图像中的特征和每个特征在相应图像中的位置;所述方法包括:对于每对图像,将在这些图像中的一个图像中识别的特征的位置扭曲到与在所述图像对的另一个图像中识别的所述特征的所述位置公共的图像平面;其中,所述步骤(3)和(4)是对所述扭曲的特征位置和所述另一个图像的所述特征位置执行的。
14.一种图像处理模型,其特征在于,通过权利要求10至13中任一项所述的方法形成。
15.一种图像处理设备,其特征在于,包括处理器和存储器,所述存储器包括可由所述处理器执行的指令,以实现通过权利要求10至13中任一项所述的方法调整的图像处理模型。
CN201980095498.5A 2019-04-30 2019-04-30 尺度感知单目定位和地图构建 Pending CN113711276A (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2019/061071 WO2020221443A1 (en) 2019-04-30 2019-04-30 Scale-aware monocular localization and mapping

Publications (1)

Publication Number Publication Date
CN113711276A true CN113711276A (zh) 2021-11-26

Family

ID=66349575

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980095498.5A Pending CN113711276A (zh) 2019-04-30 2019-04-30 尺度感知单目定位和地图构建

Country Status (4)

Country Link
US (1) US20220051425A1 (zh)
EP (1) EP3953903A1 (zh)
CN (1) CN113711276A (zh)
WO (1) WO2020221443A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7240115B2 (ja) * 2018-08-31 2023-03-15 キヤノン株式会社 情報処理装置及びその方法及びコンピュータプログラム
JP7383870B2 (ja) * 2019-05-30 2023-11-21 モービルアイ ビジョン テクノロジーズ リミテッド デバイス、方法、システムおよびコンピュータプログラム
US11546568B1 (en) * 2020-03-06 2023-01-03 Nvidia Corporation View synthesis for dynamic scenes
US11688090B2 (en) 2021-03-16 2023-06-27 Toyota Research Institute, Inc. Shared median-scaling metric for multi-camera self-supervised depth evaluation
WO2022174198A1 (en) * 2021-03-18 2022-08-18 Innopeak Technology, Inc. Self-supervised depth estimation framework for indoor environments
JP7477596B2 (ja) * 2021-04-19 2024-05-01 グーグル エルエルシー 深度推定のための方法、深度推定システム、およびコンピュータプログラム
WO2023023160A1 (en) * 2021-08-18 2023-02-23 Innopeak Technology, Inc. Depth information reconstruction from multi-view stereo (mvs) images

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107204010A (zh) * 2017-04-28 2017-09-26 中国科学院计算技术研究所 一种单目图像深度估计方法与系统
CN107945265A (zh) * 2017-11-29 2018-04-20 华中科技大学 基于在线学习深度预测网络的实时稠密单目slam方法与系统
US20180231871A1 (en) * 2016-06-27 2018-08-16 Zhejiang Gongshang University Depth estimation method for monocular image based on multi-scale CNN and continuous CRF
US20180261005A1 (en) * 2017-03-07 2018-09-13 Baidu Online Network Technology (Beijing) Co., Ltd. Method and Apparatus for Constructing Three-Dimensional Map
US20190122378A1 (en) * 2017-04-17 2019-04-25 The United States Of America, As Represented By The Secretary Of The Navy Apparatuses and methods for machine vision systems including creation of a point cloud model and/or three dimensional model based on multiple images from different perspectives and combination of depth cues from camera motion and defocus with various applications including navigation systems, and pattern matching systems as well as estimating relative blur between images for use in depth from defocus or autofocusing applications

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105825520A (zh) 2015-01-08 2016-08-03 北京雷动云合智能技术有限公司 一种可创建大规模地图的单眼slam方法
US10841491B2 (en) * 2016-03-16 2020-11-17 Analog Devices, Inc. Reducing power consumption for time-of-flight depth imaging
US10839573B2 (en) * 2016-03-22 2020-11-17 Adobe Inc. Apparatus, systems, and methods for integrating digital media content into other digital media content
CN106127739B (zh) 2016-06-16 2021-04-27 华东交通大学 一种结合单目视觉的rgb-d slam方法
WO2019006760A1 (zh) * 2017-07-07 2019-01-10 深圳市大疆创新科技有限公司 一种姿态的识别方法、设备及可移动平台
US10664999B2 (en) * 2018-02-15 2020-05-26 Adobe Inc. Saliency prediction for a mobile user interface
DE102018206848A1 (de) * 2018-05-03 2019-11-07 Robert Bosch Gmbh Verfahren und Vorrichtung zum Ermitteln eines Tiefeninformationsbilds aus einem Eingangsbild
WO2019222135A1 (en) * 2018-05-16 2019-11-21 Benevis Informatics, Llc Systems and methods for review of computer-aided detection of pathology in images

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180231871A1 (en) * 2016-06-27 2018-08-16 Zhejiang Gongshang University Depth estimation method for monocular image based on multi-scale CNN and continuous CRF
US20180261005A1 (en) * 2017-03-07 2018-09-13 Baidu Online Network Technology (Beijing) Co., Ltd. Method and Apparatus for Constructing Three-Dimensional Map
US20190122378A1 (en) * 2017-04-17 2019-04-25 The United States Of America, As Represented By The Secretary Of The Navy Apparatuses and methods for machine vision systems including creation of a point cloud model and/or three dimensional model based on multiple images from different perspectives and combination of depth cues from camera motion and defocus with various applications including navigation systems, and pattern matching systems as well as estimating relative blur between images for use in depth from defocus or autofocusing applications
CN107204010A (zh) * 2017-04-28 2017-09-26 中国科学院计算技术研究所 一种单目图像深度估计方法与系统
CN107945265A (zh) * 2017-11-29 2018-04-20 华中科技大学 基于在线学习深度预测网络的实时稠密单目slam方法与系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YAO, YAO 等: "《MVSNet: Depth Inference for Unstructured Multi-view Stereo》", pages 1 - 4, Retrieved from the Internet <URL:https://arxiv.org/pdf/1804.02505> *

Also Published As

Publication number Publication date
US20220051425A1 (en) 2022-02-17
EP3953903A1 (en) 2022-02-16
WO2020221443A1 (en) 2020-11-05

Similar Documents

Publication Publication Date Title
CN108961327B (zh) 一种单目深度估计方法及其装置、设备和存储介质
AU2017324923B2 (en) Predicting depth from image data using a statistical model
CN113711276A (zh) 尺度感知单目定位和地图构建
CN107980150B (zh) 对三维空间建模
US11830211B2 (en) Disparity map acquisition method and apparatus, device, control system and storage medium
EP3182371B1 (en) Threshold determination in for example a type ransac algorithm
CN111899282B (zh) 基于双目摄像机标定的行人轨迹跟踪方法及装置
KR20190042187A (ko) 깊이 값을 추정하는 방법 및 장치
US20190387209A1 (en) Deep Virtual Stereo Odometry
KR20100119559A (ko) 2d 이미지 데이터를 스테레오스코픽 이미지 데이터로 변환하기 위한 방법 및 시스템
GB2580691A (en) Depth estimation
US9934585B2 (en) Apparatus and method for registering images
KR100560464B1 (ko) 관찰자의 시점에 적응적인 다시점 영상 디스플레이 시스템을 구성하는 방법
KR20200075727A (ko) 깊이 맵 산출 방법 및 장치
CN111105432A (zh) 基于深度学习的无监督端到端的驾驶环境感知方法
KR20210058686A (ko) 동시적 위치 추정 및 맵 작성을 구현하는 장치 및 방법
CN109040525B (zh) 图像处理方法、装置、计算机可读介质及电子设备
CN114419568A (zh) 一种基于特征融合的多视角行人检测方法
JP2007053621A (ja) 画像生成装置
Laskar et al. Robust loop closures for scene reconstruction by combining odometry and visual correspondences
KR20160039447A (ko) 스테레오 카메라를 이용한 공간분석시스템
Melbouci et al. Bundle adjustment revisited for slam with rgbd sensors
JP2015005200A (ja) 情報処理装置、情報処理システム、情報処理方法、プログラムおよび記憶媒体
WO2022105615A1 (zh) 3d深度图构建方法、装置及ar眼镜
CN118097352A (zh) 基于多模态传感器的数据融合方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination