CN114072842A - 从图像中确定深度的方法和相关系统 - Google Patents
从图像中确定深度的方法和相关系统 Download PDFInfo
- Publication number
- CN114072842A CN114072842A CN202080049258.4A CN202080049258A CN114072842A CN 114072842 A CN114072842 A CN 114072842A CN 202080049258 A CN202080049258 A CN 202080049258A CN 114072842 A CN114072842 A CN 114072842A
- Authority
- CN
- China
- Prior art keywords
- image
- depth
- digital image
- metadata
- pixels
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/521—Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Optics & Photonics (AREA)
- Image Processing (AREA)
- Image Analysis (AREA)
- Measurement Of Optical Distance (AREA)
Abstract
本发明涉及一种用于从与场景(I)相关的数字图像(R,T)中确定深度的方法,包括以下步骤:A.获取(51,61)场景(I)的至少一个数字图像(R,T),所述数字图像(51,61)由像素矩阵(pij,其中i=1……W,j=1……H)构成;B.获取(52,62)与所述数字图像(R,T)的所述像素(pij)中的一个或多个相关的所述场景(I)的稀疏深度值(Sij);C.生成(53,63)与在所述步骤A中获取的所述数字图像(R,T)的每个像素(pij)相关的、与所述图像(I)的待估计的深度有相关关系的元数据,以便获得由所述数字图像(R,T)的像素(pij)的集合和所述元数据的值给出的元数据卷;D.借助于在所述步骤B中获取的稀疏深度值(Sij),修改(54,64)在所述步骤C中生成的、与所述数字图像(R,T)的每个像素(pij)相关的、与待估计的所述深度有相关关系的所述元数据,以便在所述步骤C中为所述数字图像(R,T)的每个像素(pij)生成的、与待估计的深度有相关关系的元数据卷(53,63)中,使与所述稀疏深度值(Sij)相关联的值在确定每个像素(pij)和周围像素的深度中占主导地位;以及E.优化在所述步骤D中修改的所述元数据(55,65),以便获得代表所述数字图像(R,T)的深度的图(56,66),以用于确定所述数字图像(R,T)本身的深度。本发明还涉及一种图像检测系统(1)、一种计算机程序和一种存储介质。
Description
技术领域
本发明涉及一种从图像中确定深度的方法和相关系统。
更具体地,本发明涉及一种用于从数字图像中确定深度的方法,该方法被研究和实施以特别地提高用于确定图像中的视差、并且因此用于基于自动和非自动学习使用在确定深度的过程之外获得的稀疏信息作为指导,通过密度等于或低于待处理图像的密度的稀疏含义信息来确定图像场景中的点的深度的根据现有技术的解决方案的有效性。
背景技术
在下文中,描述将针对优选地通过立体系统获取的数字立体图像的确定,但是显然不应被认为局限于这种特定用途,因为它可扩展到不同数量的图像,如将在下文中更好地阐明的那样。此外,认为数据可以由用于推断深度的任何系统(基于图像处理、主动深度传感器、激光雷达或能够推断深度的任何其他方法)生成,只要数据根据已知技术与输入图像一起被记录,如下文更好地解释的那样。
如众所周知的那样,从数字图像中获得密集和精确的深度的估计对于更高层次的应用至关重要,诸如人工视觉、自动驾驶、3D重构和机器人技术。
图像中的深度检测通常可以使用主动传感器来执行,诸如LiDAR(LightDetection and Ranging or Laser Imaging Detection and Ranging,光检测和测距或激光成像检测和测距),其是一种允许使用激光脉冲或标准相机来确定物体或表面的距离的已知检测技术。
第一类设备受到一些限制的影响,而第二类设备取决于用于推断深度的技术。
例如,基于结构光的传感器具有有限的范围,并且在室外环境中无效;而LiDAR虽然非常受欢迎但只能提供极其稀疏的深度测量,并且当其遇到反射性表面时可能具有缺陷。
相反,基于标准相机的被动传感器潜在地允许在任何环境和应用场景中获得密集深度的估计。
可以通过不同的方法从一个或多个图像开始获得对图像中的深度的估计(甚至“深度”)。最常见的情况或方法(但肯定不是唯一的)通过使用两个水平对齐的图像表示。
在这种称为立体的配置中,一旦对于场景的每个点,已经计算了其在参考图像中的坐标(例如,左)和目标坐标(例如,右)之间的水平偏差,就可以通过三角测量获得深度。为了获得这个结果,有必要找到两个图像的像素之间的对应关系。这可以通过为参考图像中的每个像素考虑所有可能的匹配假设、将其与目标的像素进行比较来实现。
通过处理这两个图像(即参考图像和目标图像),由于立体系统的特殊几何形状(即对极几何形状),可以重构所拍摄的场景的深度。
由于这点,可以简化寻找两个图像的同源点之间的对应关系的问题。特别地,使用立体相机的标准形状,可以通过将问题从二维平面带到一维平面,来简化对这种对应关系的搜索,因为从理论上已知同源像素位于同一扫描线上。
特别地,通过构造,参考图像中的点在像素的坐标(x,y)处,在目标图像中它将在位置(x-d,y),其中d指示待估计的偏差,称为视差。
因此,具有了每个点的视差,理想情况下就可以具有图像的每个像素中的深度的精确测量。
实际上已知,立体情况下深度Z和视差D之间的关系由以下关系给出
因此,根据使用场景,深度Z和视差D是完全可以互换的。
标识参考图像和目标图像中的同源像素以及计算相应视差的任务被委托给立体匹配算法。
这些算法背后的总体构思是将参考图像的每个像素与目标图像的那些像素进行比较,并且因此标识相对应的像素,从而对其在场景中的距离进行三角测量。
最简单的方法(并且因此并不总是最常用的方法)是将坐标的参考图像的像素的强度与在具有相同的高度但是移动了0和d之间的量d(该量表示所寻找的视差)的坐标处的目标图像的像素的强度进行比较。
特别地,为了计算的简单和经济,通过限定用于寻找匹配的最大范围[0:D],将计算参考图像中的每个像素和目标图像中的可能的耦合物或匹配物(x-0,y)……(x-D,y)之间的分数。
这些分数通常被称为匹配代价。例如,相似的像素可以以低代价对应。特别地,这些可以通过相异度函数或相似度函数来获得,根据相异度函数,低代价将被分配给相似的像素,根据相似度函数,高分数将对应于相似的像素。
然而,根据所使用的特定代价函数,相似的像素可以以低代价对应。
而且,对于可以与所提出的方法一起使用的一些方法,不能以如此简单的方式限定代价,但是在任何情况下,总是有可以在不同处理阶段为任何方法识别这些代价的元表示。
通过选择目标中的对应于如上所述的最佳匹配的像素(x-d,y)来确定像素的估计视差d。
通常,立体算法遵循两个主要步骤:
-匹配代价的初步计算;以及
-它们的聚集/优化,后者对于获得精确和空间一致的结果是必要的,因为初始估计只考虑局部信息,而不考虑场景的全局背景。
第一步骤可以总结为下面的伪代码,取H和W分别是图像的高度和宽度
cost_volume:
input:image L[H][W],image R[H][W]
output:cost_volume[H][W][D]
foreach i in 0...H
foreach j in 0...W
for each d in 0...D
cost_volume[i][j][d]=cost_function(L[i][j],R[i][j-d])
可能的代价函数或cost_function可以是像素强度之间的绝对差(在这种情况下是相异度函数)
cost_function(x,y)=abs(x-y)
因此,像素之间的强度方面的差越小,参考图像和目标图像的两个像素重合或相同的概率就越大。
在优化阶段(其根据算法不同而不同)之后,将例如通过遵循下面的伪代码选择视差
select_disparity:
input:cost_volume[H][W][D]
output:disparity[H][W]
foreach i in 0...H
foreach j in 0...W
disparity[i][j]=argmin(cost_volume[i][j])
上面的argmin函数选择向量的最小值的索引。另外,类似地,在相似度函数的情况下,这个函数将被类似的运算符argmax代替。
在这种情况下,对于每个像素,我们具有代价向量D,并且我们可以选择最小代价(即,在argmax运算符的情况下是最大值)的索引d。
例如,已知的算法SGM(半全局匹配)[1]遵循这种结构,并以其特定的优化程序而为人熟知。
也已知深度学习技术(主要基于卷积神经网络或CNN)用于立体技术,从而获得比通过传统算法获得的结果好得多的结果,诸如用其他算法(诸如上面提及的SGM)获得的那些结果。
尽管模型是通过从数据中学习来开发的,但是以上描述的计算匹配和优化代价的两个主要阶段可以在深度学习模型中找到,唯一的区别是它们是以学习的方式执行的。
特别地,匹配代价计算步骤将从特征或通过从图像学习提取的特征开始执行。
给定L[H][W][C]和R[H][W][C]特征卷(volume),匹配代价或元特征可以如下所示通过例如相关关系(correlation)(或在深度学习算法的情况下,通过级联(concatenation))获得
correlation:
input:L[H][W][C],R[H][W][C]
output:cost_volume[H][W][D]
foreach i in 0...H
foreach j in 0...W
foreach d in 0...D
cost_volume[i][j][d]=∑(L[i][j]*R[i][j-d])
concatenation:
input:L[H][W][C],R[H][W][C]
output:cost_volume[H][W][D][2C]
foreach i in 0...H
foreach j in 0...W
foreach d in 0...D
cost_volume[i][j][d]=L[i][j]##R[i][j-d]
将从图像(特别是使用SGM算法的立体图像)和从外部传感器(例如,飞行时间传感器,ToF)获得的深度数据进行组合的技术也是已知的。
然而,已知技术使用计算两者的最佳组合的算法,例如为每个像素选择通过两个模型获得的两者之间最正确的估计。
近年来,端到端卷积神经网络(Convolutional Neural Network,CNN)训练算法扩展到具有大量立体对(通常是合成的)以用于直接推断密集视差图的立体技术领域中。
然而,深度立体架构在移动域(例如从用于初始训练的合成数据切换到真实的目标图像)时出现问题。
显而易见的是,根据现有技术的方法在计算方面非常昂贵,使得它们不能容易地使用和应用。
此外,已经发现,在不利的条件下,由于(多个)图像的获取(例如,较差的照明),利用根据以上描述的技术的方法计算的图的精度不令人满意。
发明内容
鉴于以上内容,因此本发明的目的是提出一种用于确定图像的深度的方法,即使在弱光条件下,该方法也允许以适度的计算代价精确地确定图像的深度。
本发明的另一目的是提出一种用于确定图像的深度的方法,该方法可以与任何类型的算法一起使用,而不管所使用的图像的数量或算法的类型(学习算法或传统算法)。
因此,本发明的目的是一种用于从与场景相关的数字图像中确定深度的方法,包括以下步骤:A.获取场景的至少一个数字图像,所述数字图像由像素矩阵构成;B.获取与所述数字图像的一个或多个所述像素相关的所述场景的稀疏深度值;C.生成与在所述步骤A中获取的所述数字图像的每个像素相关的、与所述图像的待估计深度有相关关系的元数据,以便获得由所述数字图像的像素的集合和所述元数据的值给出的元数据卷;D.借助于在所述步骤B中获取的稀疏深度值,修改在所述步骤C中生成的、与所述数字图像的每个像素相关的、与待估计的深度有相关关系的所述元数据,以便在所述步骤C中为所述数字图像的每个像素生成的、与待估计的深度有相关关系的元数据卷中,使与稀疏深度值相关的值在确定每个像素和周围像素的深度中占主导地位;以及E.优化在所述步骤D中修改的所述元数据,以便获得代表所述数字图像的深度的图,用于确定所述数字图像本身的深度。
始终根据本发明,与所述数字图像的每个像素相关的、与所述图像的待估计深度有相关关系的所述元数据可以包括相对于可能的视差数据与每个像素或所述像素相关的匹配代价函数,并且所述稀疏深度数据可以是与所述数字图像的一些像素相关联的视差值。
仍然根据本发明,匹配函数是相似度函数,也可以是相异度函数。
有利地,根据本发明,在所述修改步骤D中,与所述数字图像的所述像素中的每一个相关联的所述匹配代价函数可以通过作为与所述数字图像的一些像素相关联的所述视差值的函数的可微函数来修改。
进一步,根据本发明,可以修改所述匹配代价函数,以便在所述匹配代价函数是相似度函数的情况下或者在通过神经网络进行元数据生成的情况下根据该等式获得经修改的匹配代价函数:
或者在所述匹配代价函数(cost_volumeijd)是相异度函数的情况下根据该等式获得经修改的匹配代价函数:
其中:vij是这样的函数,即,对于有视差值(Sij)的度量的每个像素(pij),vij=1,其中i=1…W,j=1…H,d=1…D,以及当没有视差值(Sij)的度量时vij=0;以及k和c是用于修改调制强度的可配置的超参数。
优选地,根据本发明,所述超参数k和c可以分别具有值10和0.1的值。
始终根据本发明,所述匹配代价函数可以通过相关关系来获得。
仍然根据本发明,所述元数据生成步骤C和/或所述元数据优化步骤E可以通过基于学习或深度学习的算法来实行,其中所述元数据包括从神经网络的特定层级中进行的特定激活,并且所述匹配代价函数可以通过级联来获得。
进一步,根据本发明,所述学习算法可以基于卷积神经网络或CNN,并且所述修改步骤可以对与数字图像的深度的估计有相关关系的激活实行。
优选地,根据本发明,所述图像获取步骤A可以通过立体技术来实行,以便检测参考图像和目标图像或单目图像。
有利地,根据本发明,所述获取阶段A可以通过至少一个摄像机或相机来实行。
进一步,根据本发明,所述获取阶段B通过至少一个摄像机或相机和/或至少一个主动LiDAR传感器、雷达或ToF来实行。
本发明的另外的目的是一种图像检测系统,包括:主图像检测单元,该主图像检测单元被配置为检测场景的至少一个图像,生成至少一个数字图像;处理单元,该处理单元可操作地连接到所述主图像检测单元,所述系统的特征在于,它包括稀疏数据检测单元,该稀疏数据检测单元适于获取所述场景的稀疏值、可操作地与所述处理单元连接,并且特征在于所述处理单元被配置为执行如上定义的用于确定数字图像的深度的方法。
始终根据本发明,所述主图像检测单元可以包括至少一个图像检测设备。
仍然根据本发明,所述主图像检测单元可以包括用于获取立体模式图像的两个图像检测设备,其中第一图像检测设备检测参考图像,以及第二图像检测设备检测目标图像。
有利地,根据本发明,所述至少一个图像检测设备可以包括相对于第一位置和第二位置可移动或固定的摄像机和/或相机,和/或主动传感器,诸如LiDAR、雷达或飞行时间(Time of Flight,ToF)相机等。
进一步,根据本发明,所述稀疏数据检测单元可以包括另外的检测设备,用于检测与一些像素相关的图像或场景的点状数据。
优选地,根据本发明,所述另外的检测设备可以是摄像机或相机或主动传感器,诸如LiDAR、雷达或ToF相机等。
始终根据本发明,所述稀疏数据检测单元可以被布置在所述至少一个图像检测设备的同一参考系统处和/或靠近所述至少一个图像检测设备的同一参考系统和/或在所述至少一个图像检测设备的同一参考系统中。
本发明的目的还在于一种包括指令的计算机程序,当该程序由处理器执行时,这些指令使得处理器执行以上限定的方法的步骤A至E。
本发明的另外的目的在于一种可由处理器读取的存储装置,该存储装置包括指令,当由处理器执行这些指令时,这些指令使得处理器执行以上限定的方法步骤。
附图说明
为了说明而非限制的目的,现在将根据本发明的优选实施例,特别地参考附图来描述本发明,其中:
图1示出了根据本发明第一实施例的处于立体配置的图像检测系统;
图2示出了图1的检测系统的参考图像;
图3示出了图1的检测系统的目标图像,对应于图2的参考图像;
图4示出了与图2的参考图像和图3的目标图像相关的视差图;
图5示出了与根据本发明的用于从图像中确定深度的方法的步骤相关的流程图;
图6示出了根据本发明的用于从图像中确定深度的方法的调制函数的应用,特别是在放大正确深度的假设的情况下(如,例如但不是唯一的,在从相似度函数或从神经网络元数据导出代价的情况下发生的那样);
图7示出了根据图6的应用调制函数之后的视差函数,特别是在减少正确深度的假设的情况下(如在从相异度函数导出代价的情况下发生的那样);
图8示出了根据本发明第二实施例的图像检测系统,特别是在从单个图像进行采集的情况下;以及
图9示出了与用于确定图8中示出的图像检测系统的图像的深度的方法的步骤相关的流程图。
具体实施方式
在不同的附图中,相似的部分将由相同的附图标记表示。
所提出的方法允许使用由任何方法(诸如传感器或算法)获得的稀疏数据(在下面更好地限定但是极其精确)来指导用于从单个或多个图像中估计深度(或甚至“深度”)的算法。
本质上,该方法涉及修改由算法处理的中间元数据,即匹配代价。
这些元数据和它们编码的信息在不同的算法和用于估计深度或深度(例如,从单个图像或从立体图像中或使用多个图像的其他方法)的不同方法之间不同。
特别地,有必要标识哪些元数据与待估计的深度密切相关。
因此,当这个测量可用时,根据由外部传感器/方法实际测量的深度来修改这些元数据的值。
在下文中,为了更好地解释根据本发明的从图像中确定深度的方法的操作,作为第一实施例,将参考立体图像的检测。
特别地,参考图1,观察到通常由数字标记1指示的图像检测系统,其包括主图像检测单元2、稀疏数据检测单元3和处理单元4,该处理单元功能性地连接到所述主图像检测单元2和所述稀疏数据检测单元3。
所述主图像检测单元2又包括两个图像检测设备21和22,这两个图像检测设备可以是相对于第一位置和第二位置可移动的摄像机或相机,或者是布置在两个不同的固定位置的两个检测设备21和22。
两个检测设备21和22各自检测它们自己的、待检测物体或场景I的图像(分别是参考图像和目标图像)。当然,可以提供多个检测设备的使用,而不仅仅是两个。
特别地,所述主图像检测单元2通过立体技术执行场景I的检测,使得图2的图像被检测设备21检测,而图3的图像被检测设备22检测。
在下文中,如所述的、由检测设备21获取的图2的图像将被认为是参考图像R,而如所提及的由检测设备22获取的图3的图像将被认为是目标图像T。
稀疏数据检测单元3包括另外的图像检测设备,其可以是附加相机或相机,或者在这种情况下也可以是主动传感器,诸如LiDAR或ToF相机。
所述稀疏数据检测单元3对应地并且在物理上接近地(即,在获取所述参考图像的检测设备21的相同的参考系统上)布置。换句话说,稀疏数据被记录并映射在与所获取的参考图像相同的像素上。
所述稀疏数据检测单元3检测图像或场景I的点状数据,实际上仅涉及参考图像R的一些像素,然而这些像素非常精确。特别地,参考小于或等于图像或场景的像素子集的像素子集,尽管从理论角度来看,它们也可能是全部。显然,利用当前传感器,这似乎是不可能的。
由所述稀疏数据检测单元3检测的所述稀疏数据的使用将在下面更好地阐明。
根据本发明并且下面将更好地进行解释,由所述主图像检测单元2和所述稀疏数据检测单元3获取的数据被所述处理单元4获取,所述处理单元4能够通过图5示出的用于确定图像的深度的方法精确地确定由检测设备21获取的参考图像R的深度。
一旦场景或图像I的深度已经被精确确定,如所提及那样,其可以用于各种复杂的人工视觉使用目的,例如车辆的自主驾驶等。
为了确定参考图像R的图2中示出的图像的深度,有必要为图像的每个像素确定(或估计)相对于目标图像T的相对视差。
如所预期的那样,这可以通过现有技术中已知的各种算法来获得,这些算法提供了参考图像R的每个像素i、j的匹配代价的计算(在下文中,索引i和j将分别用于指示图像的第i列且第j行的像素,并且可以分别从1变化到W和从1变化到H,W是图像的标称宽度,H是高度)、为所述参考图像R的每个像素i、j获得所谓的匹配或关联代价函数,随后是优化步骤。
以这种方式,获得了参考所述参考图像R的每个像素pij的视差dij的选择。
通常,用于确定所述参考图像R的每个像素的视差dij的算法基本上都提供了用于计算匹配和优化代价的前述步骤。
如上所述,匹配代价通常也被称为元数据。
在该技术中,可以使用和检测用于确定和计算元数据的不同系统。根据本发明的用于从图像中确定深度的方法可以等同地应用于用于确定和计算元数据的其他算法。
现在参考图5,如上所提及那样,示意性地观察根据本发明的用于从图像中确定深度的方法的流程图,该流程图通常利用数字标记5表示,其中51指示图像获取步骤,在所讨论的情况下,该步骤提供了通过立体技术进行的检测,并且因此提供了参考图像R和目标图像T的检测。
在利用数字标号52指示的步骤中,通过空间数据检测单元获得稀疏和精确数据。
随后,在步骤53中实行元数据的生成,如上所提及那样,这可以利用根据现有技术的算法或者通过基于学习的算法来获得。
更具体地,在立体检测的情况下,如上所提及那样,与先前定义兼容的元数据是匹配两个图像(即,参考图像R和目标图像T)的像素的代价。
每个匹配代价标识针对为图像的每个像素pij估计的可能视差dij(以及因此图像的可能深度)。因此,在输入处具有给定像素pij的深度的度量的情况下,可以将其转换为视差dij,并修改这个像素pij的代价,从而使该视差假设优于其他视差假设。
如预期的那样,传统的立体算法在三维“代价卷”中处理和收集立体对中的两个图像(作为所述参考图像和目标图像)之间的潜在相对应的像素之间的关系。例如,在上面简要描述的确定匹配代价的方法中,对于局部类型,在极线上针对数量D个像素寻找视差,代价体积将等于W×H×D。
基于本发明的的构思在于适当地作用在这一表示(即元数据)上,从而有利于由稀疏但精确的数据所暗示的那些视差。
更详细地,作为示例,在根据本发明的方法中,一种解决方案在于通过乘以所测量的深度的可微函数(例如但非必须或非限制性地,高斯函数)来调制根据与图像的像素pij相关联的所有代价获得的代价函数,以便最小化对应于这个值的代价并增加剩余的代价。
在这种情况下,在给定在步骤52中获得的、利用S[i][j]或Sij(其中i=1……W并且j=1……H)指示的稀疏度量的矩阵的情况下,构造掩模v[i][j](或vij),使得对于存在有效测量的每个像素pij,v[i][j]=1(即,vij=1),其中i=1……W并且j=1……H,并且当测量不可用时v[i][j]=0(即,vij=0)。
上述术语中的调制可以例如通过遵循下面示出的伪码来应用,其中k和c是可以被配置成改变调制的强度的超参数(出于示例性目的,归因于这些参数的可能值可以是例如k=10且c=0.1)。
modulation_stereo_algorithm:
input:cost_volume[H][W][D],S[H][W]
output:modified_cost_volume[H][W][D]
foreach i in 0...H
foreach j in 0...W
foreach d in 0...D
在更综合和数学的术语中,在代价匹配函数(cost_volumeijd)是相异度函数的情况下,在高斯调制的情况下,每个像素pij的匹配代价函数的修正因子由以下表达式给出:
相反,如果代价匹配函数(cost_volumeijd)是相似度函数,或者在通过神经网络生成元数据的情况下,以下函数适用:
回到前面的情况(代价匹配函数(cost_volumeijd)作为相似度函数),根据本发明的用于确定图像的深度的方法的这个步骤在具有步骤54的流程图中举例说明,其中元数据被修改或调制。
如可以看出的那样,修改像素pij的匹配代价的公式以这样的方式操作,即在没有特定像素pij的精确数据的情况下,由于掩模的值vij=0,则没有像素pij的匹配代价方面的变化,而如果存在特定像素pij的精确值,则由于掩模的值vij=1,对于因子K(在所讨论的情况下,该因子被设置为等于10)和对于高斯函数,这个像素的匹配代价被修改、或者放大(并且使用相似度函数——参见图6)或衰减(如果使用相异度函数-参见图7),在视差被设置为等于有效视差值Sij的情况下,该匹配代价最大化。以这样的方式,通过利用可用的稀疏数据Sij增强精确的视差值来修改匹配代价。
然后,接下来是元数据优化的步骤55,其可以根据基于现有技术的任何优化方案来执行(例如参见参考文献[1]和[2]),从而最终获得如步骤56所示的期望的视差图,其可用于任何人工视觉目的57,诸如驾驶车辆等。
以这样的方式,将使得与所获得的度量相对应的代价更低,而其他代价将增加,如图6所示,从而有利于选择第一个。
在学习算法或基于深度学习的情况下,经修改的元数据对应于特定的激活,作为来自神经网络的特定层级的输出。
所获得的元数据图可以用于精确确定所拍摄的图像或场景的深度。
因此,有必要标识哪些激活与图像的深度的估计严格相关:在立体网络的情况下,类似于传统算法的匹配代价的一些激活编码信息(通常使用相关算子(标量积;也参见参考参考文献[3])或参考图像R和目标图像T中的像素的激活之间的级联(也参见参考参考文献[4])),类似于如何基于函数(例如,两个图像中的像素的强度)获得匹配代价。
这样的元数据可以例如以类似的方式被调制,如下面的伪码中所报告的那样。
modulation_stereo_network:
input:cost_volume[H][W][D],S[H][W]
output:modified_cost_volume[H][W][D]
foreach i in 0...H
foreach j in 0...W
foreach d in 0...D
以这样的方式,与所获得的度量相链接的激活将增加,而剩余的激活将被衰减,如图6所示,从而有利于选择前者。
如所述的那样,立体情况代表特定的使用场景,但不是其中可以应用根据本发明的用于确定图像的深度的方法的唯一的使用场景。
稀疏数据将用于修改(甚至调整)匹配代价,从而在下一优化步骤中提供更好的匹配代价的表示。
特别地,如上所提及的,所提出的确定方法可以与用于生成深度数据的也基于学习(即,机器或深度学习)的任何方法一起使用。
在本发明的另外的实施例中,用于确定图像的深度的方法可以应用于单目系统。
特别地,参考图8和图9,观察用于单目情况的检测系统,其提供了单个检测设备21的使用,即单个相机。
因此,单目情况代表了替代性使用场景,其中深度图是通过处理单个图像获得的。典型地,但不是必须,单目方法基于机器/深度学习。
分散的数据将用于修改(或调制)由单目方法用于生成深度图所使用的元数据。
通过根据本发明的确定方法,同样在单目图像处理的情况下,在元数据的生成和它们的优化之间执行中间步骤(例如参见参考文献[5],其示出了单目系统如何能够模拟类似于立体情况的元数据,因此适合于调制),因此上述图5中示出的流程图在一般情况下也是有效的,在通过检测单元2基于单个检测设备21进行图像采集的情况下也是有效的。
通过从任何外部方法/传感器(激光雷达、雷达、飞行时间传感器或具有任何性质的传感器但也基于相同的图像)获得的稀疏但精确的测量,修改先前提取的元数据是可能的,以便允许更好的优化,并且因此获得更精确的最终的图。
在图8的情况下,外部传感器允许恢复3D结构,例如由于较差的照明条件,如果利用根据现有技术的方法计算,该3D结构是不准确的。
在用于确定图像的深度的方法的上述说明性描述中,可以考虑文献中已知的用于从图像获得深度图的其他技术。
事实上,除了单目和立体情况之外,还可以根据从不同视点(左下方)或从单个移动相机(右下方)获取的两个以上的图像中推断图像的深度。在这些情况下,稀疏数据既可以深度度量的形式使用,并且也可以以视差等效物形式使用。
在这两种情况下,所提出的方法可以有益地应用于所生成的元数据。
特别地,参考图8,观察到根据本发明的图像检测系统1,与图1所示的不同,该图像检测系统包括主图像检测单元2,该主图像检测单元2具有单个图像检测设备21,在这种情况下,该单个图像检测设备21也可以是摄像机或照相机或主动传感器。
当然,在这种情况下,图像检测系统1将使用单目系统来获取场景I的图像。替代地,如在前面的实施例中,稀疏数据检测单元3将获取场景I的精确的散射数据,以将它们传输到处理单元4,在该处理单元中安装了计算机程序,该计算机程序被执行以实行如图9所示的方法。
特别地,如可以看到的那样,流程图示出了用于获取单目图像的步骤61、用于从场景I获取稀疏数据的步骤62、用于生成元数据的步骤63、用于修改元数据的步骤64(完全类似于关于图5示出和描述的步骤54)、优化元数据的步骤65、获得视差图66、以及将所获取的视差的估计应用于人工视觉67。
本发明的优点是允许对编码参考图像和目标图像之间的、像素之间的对应关系的函数进行改进,以便改进从图像中检测深度的精度的优点。
事实上,根据本发明的方法还改进了当前已知方法的功能,并且可以无缝地与预先形成的模型一起使用,从而获得显著的精度改进。
本发明的另外的优点是用于训练神经网络(诸如特别是卷积神经网络或从头开始的CNN)以便充分利用输入指南,并且因此显著提高检测的精度和整体鲁棒性的优点。
本发明还具有的优点是还可利用常规立体匹配算法(诸如SGM,Semi-GlobalMatching,半全局匹配)或任何传统算法来实施,其展现出元数据的兼容表示,取得了显著的改进。
根据本发明的优选实施例,已经出于说明性而非限制性的目的描述了本发明,但是应当理解的是,在不脱离所附权利要求中限定的相关范围的情况下,本领域技术人员可以引入修改和/或变化。
参考文献
[1]Hirschmuller H.,Stereo Processing by Semi-Global Matching andMutual Information,TPAMI 2007.
[2]De-Maeztu L.,Mattoccia S.,Villanueva A.,Cabeza R.,“Linear stereomatching”,ICCV 2011.
[3]Mayer,N.,Ilg,E.,P.,Fischer,P.,Cremers,D.,Dosovitskiy,A.andBrox,T.,“A Large Dataset to Train Convolutional Networks for Disparity,Optical Flow,and Scene Flow Estimation”,CVPR 2016.
[4]Kendall,A.,Martirosyan,H.,Dasgupta,S.,Henry,P.,Kennedy,R.,Bachrach,A.and Bry,A.,2017.“End-to-end learning of geometry and context fordeep stereo regression”,ICCV 2017.
[5]Tosi,F.,Aleotti,F.,Poggi,M.and Mattoccia,S.,2019."Learningmonocular depth estimation infusing traditional stereo knowledge”,CVPR 2019.
Claims (21)
1.一种用于从与场景(I)相关的数字图像(R,T)中确定深度的方法,包括以下步骤:
A.获取(51,61)场景(I)的至少一个数字图像(R,T),所述数字图像(51,61)由像素矩阵(pij,其中i=1……W,j=1……H)构成;
B.获取(52,62)与所述数字图像(R,T)的所述像素(pij)中的一个或多个相关的所述场景(I)的稀疏深度值(Sij);
C.生成(53,63)与在所述步骤A中获取的所述数字图像(R,T)的每个像素(pij)相关的、与所述图像(I)的待估计的深度有相关关系的元数据,以便获得由所述数字图像(R,T)的像素(pij)的集合和所述元数据的值给出的元数据卷;
D.借助于在所述步骤B中获取的稀疏深度值(Sij),修改(54,64)在所述步骤C中生成的、与所述数字图像(R,T)的每个像素(Sij)相关的、与待估计的深度有相关关系的所述元数据,以便在所述步骤C中为所述数字图像(R,T)的每个像素(pij)生成的、与待估计的深度有相关关系的元数据卷(53,63)中,使与所述稀疏深度值(Sij)相关联的值在确定每个像素(pij)和周围像素的深度中占主导地位;以及
E.优化在所述步骤D中修改的所述元数据(55,65),以便获得代表所述数字图像(R,T)的深度的图(56,66),以用于确定所述数字图像(R,T)本身的深度。
2.根据前项权利要求所述的方法,其中
与所述数字图像(I)的每个像素(pij)相关的、与所述图像(I)的待估计深度有相关关系的所述元数据包括相对于可能的视差数据(dij,其中i=1……W,j=1……H,d=0……)与每个或所述像素(pij)相关联的匹配代价函数(cost_volumeijd),并且
其中所述稀疏深度数据是与所述数字图像(R,T)的一些像素(pij)相关联的视差值(Sij)。
3.根据前项权利要求所述的方法,其中匹配函数(cost_volumeijd)是相似度函数或相异度函数。
4.根据前述权利要求中任一项所述的方法,其中在所述修改步骤D(54,64)中,与所述数字图像(R,T)的所述像素(pij)中的每一个相关联的所述匹配代价函数(cost_volumeijd)是通过可微函数修改的,所述可微函数为与所述数字图像(R,T)的一些像素(pij)相关联的所述视差值(Sij)的函数。
6.根据前项权利要求所述的方法,其中所述超参数k和c分别具有10和0.1的值。
7.根据权利要求2至6中任一项所述的方法,其中所述匹配代价函数(cost_volumeijd)是通过相关关系获得的。
8.根据前述权利要求中任一项所述的方法,其中所述元数据(53,63)生成步骤C和/或所述元数据(55,65)优化步骤E是通过基于学习或深度学习的算法执行的,
其中所述元数据包括从神经网络的特定层级中进行的特定激活,并且
其中所述匹配代价函数(cost_volumeijd)是通过级联获得的。
9.根据前项权利要求所述的方法,其中
所述学习算法是基于卷积神经网络或CNN,并且
其中所述修改步骤(54,64)是针对与所述数字图像(R,T)的深度的估计有相关关系的激活执行的。
10.根据前述权利要求中任一项所述的方法,其中所述图像获取步骤(51,61)借助于立体技术来执行,以检测参考图像(R)和目标图像(T)或单目图像。
11.根据前述权利要求中任一项所述的方法,其中所述获取阶段A(51,61)是通过至少一个摄像机或相机执行的。
12.根据前述权利要求中任一项所述的方法,其中所述获取阶段B(52,62)是通过至少一个摄像机或相机和/或至少一个主动LiDAR传感器、雷达或ToF执行的。
13.一种图像检测系统(1),包括
主图像检测单元(2),所述主图像检测单元(2)被配置为检测场景(I)的至少一个图像,从而生成至少一个数字图像,
处理单元(4),所述处理单元(4)可操作地连接到所述主图像检测单元(2),
所述系统(1)的特征在于
其包括稀疏数据检测单元(3),所述稀疏数据检测单元(3)适于获取(52,62)所述场景(I)的稀疏值(Sij)、可操作地与所述处理单元(4)连接,以及
其中所述处理单元(4)被配置为执行根据权利要求1至12中任一项所述的用于确定数字图像的深度的方法。
14.根据权利要求13所述的系统(1),其中所述主图像检测单元(2)包括至少一个图像检测设备(21,22)。
15.根据前项权利要求所述的系统(1),其中所述主图像检测单元(2)包括用于获取立体模式图像的两个图像检测设备(21,22),其中第一图像检测设备(21)检测参考图像(R),以及第二图像检测设备(22)检测目标图像(T)。
16.根据权利要求14或15中任一项所述的系统(1),其中所述至少一个图像检测设备(21,22)包括相对于第一位置和第二位置可移动或固定的摄像机和/或相机,和/或主动传感器,诸如LiDAR、雷达或飞行时间(ToF)相机等。
17.根据权利要求13至14中任一项所述的系统(1),其中所述稀疏数据检测单元(3)包括另外的检测设备,所述另外的检测设备用于检测与一些像素(pij)相关的图像或场景(I)的点状数据。
18.根据前项权利要求所述的系统(1),其中所述另外的检测设备是摄像机或相机或主动传感器,诸如LiDAR、雷达或ToF相机等。
19.根据前述权利要求中任一项所述的系统(1),其中所述稀疏数据检测单元(3)被布置在所述至少一个图像检测设备(21)的同一参考系统处和/或靠近所述至少一个图像检测设备(21)的同一参考系统和/或在所述至少一个图像检测设备(21)的同一参考系统中。
20.一种包括指令的计算机程序,当所述程序由处理器执行时,所述指令使得所述处理器执行根据权利要求1至12中任一项所述的方法的步骤A至E。
21.一种可由处理器读取的存储装置,包括指令,当由处理器执行时,所述指令使得所述处理器执行根据权利要求1至12中任一项所述的方法步骤。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IT102019000006964 | 2019-05-17 | ||
IT201900006964 | 2019-05-17 | ||
PCT/IT2020/050108 WO2020234906A1 (en) | 2019-05-17 | 2020-05-05 | Method for determining depth from images and relative system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114072842A true CN114072842A (zh) | 2022-02-18 |
Family
ID=67809583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080049258.4A Pending CN114072842A (zh) | 2019-05-17 | 2020-05-05 | 从图像中确定深度的方法和相关系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220319029A1 (zh) |
EP (1) | EP3970115A1 (zh) |
CN (1) | CN114072842A (zh) |
WO (1) | WO2020234906A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220189049A1 (en) * | 2020-12-12 | 2022-06-16 | Niantic, Inc. | Self-Supervised Multi-Frame Monocular Depth Estimation Model |
TWI760128B (zh) * | 2021-03-05 | 2022-04-01 | 國立陽明交通大學 | 深度圖像之生成方法、系統以及應用該方法之定位系統 |
CN113446986B (zh) * | 2021-05-13 | 2022-07-22 | 浙江工业大学 | 一种基于观测高度改变的目标深度测量方法 |
-
2020
- 2020-05-05 CN CN202080049258.4A patent/CN114072842A/zh active Pending
- 2020-05-05 EP EP20726572.9A patent/EP3970115A1/en active Pending
- 2020-05-05 WO PCT/IT2020/050108 patent/WO2020234906A1/en active Application Filing
- 2020-05-05 US US17/595,290 patent/US20220319029A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3970115A1 (en) | 2022-03-23 |
US20220319029A1 (en) | 2022-10-06 |
WO2020234906A1 (en) | 2020-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108961327B (zh) | 一种单目深度估计方法及其装置、设备和存储介质 | |
US10853960B2 (en) | Stereo matching method and apparatus | |
Pantilie et al. | SORT-SGM: Subpixel optimized real-time semiglobal matching for intelligent vehicles | |
CN114072842A (zh) | 从图像中确定深度的方法和相关系统 | |
Correal et al. | Automatic expert system for 3D terrain reconstruction based on stereo vision and histogram matching | |
US20180091798A1 (en) | System and Method for Generating a Depth Map Using Differential Patterns | |
Wedel et al. | Detection and segmentation of independently moving objects from dense scene flow | |
KR20160010120A (ko) | 단항 신뢰도 및 쌍별 신뢰도 학습을 통한 스테레오 매칭 장치 및 방법 | |
US20220051425A1 (en) | Scale-aware monocular localization and mapping | |
Ranft et al. | Modeling arbitrarily oriented slanted planes for efficient stereo vision based on block matching | |
WO2021109138A1 (zh) | 三维图像传感系统以及相关电子装置以及飞时测距方法 | |
KR101076406B1 (ko) | 장애물체 위치 및 속도 추정 장치 및 방법 | |
US20170108338A1 (en) | Method for geolocating a carrier based on its environment | |
CN114445480A (zh) | 基于Transformer的热红外图像立体匹配方法及装置 | |
Bethmann et al. | Object-based multi-image semi-global matching–concept and first results | |
CN115457086A (zh) | 基于双目视觉和卡尔曼滤波的多目标跟踪算法 | |
CN114372523A (zh) | 一种基于证据深度学习的双目匹配不确定性估计方法 | |
CN110443228B (zh) | 一种行人匹配方法、装置、电子设备及存储介质 | |
JP6946255B2 (ja) | 学習装置、推定装置、学習方法およびプログラム | |
CN105335934A (zh) | 视差图计算方法和装置 | |
Rozsa et al. | Immediate vehicle movement estimation and 3D reconstruction for Mono cameras by utilizing epipolar geometry and direction prior | |
Harms et al. | Accuracy analysis of surface normal reconstruction in stereo vision | |
Calderon et al. | Depth map estimation in light fields using an stereo-like taxonomy | |
US20240153120A1 (en) | Method to determine the depth from images by self-adaptive learning of a neural network and system thereof | |
Melbouci et al. | Bundle adjustment revisited for slam with rgbd sensors |
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 |