本发明涉及图像处理技术领域,特别是涉及基于结构先验与深度学习的城市场景分段平面重建方法。
背景技术:
在利用二维图像重建三维场景结构的过程中,场景分段平面重建算法通常可有效解决像素级重建中的匹配多义性(如在弱纹理区域)问题而快速获取场景完整的近似结构,这在城市规划、虚拟旅游、驾驶导航等领域有着广泛的应用。在实际中,由于场景结构的复杂性以及诸多干扰因素(如光照变化、透视畸变等)的影响,有效提高场景分段平面重建的可靠性与精度仍是一个具有挑战性的难题,也是当前学术界研究的热点问题。
场景分段平面重建算法一般将场景重建过程分为以下步骤:(1)将图像分割为多个互不交叠的区域(即超像素);(2)利用初始空间点、线段等信息获取候选平面集;(3)利用全局优化方法推断不同超像素对应的最优平面,进而获得场景完整的分段平面结构。在实际中,此类算法通常存在以下问题导致其可靠性与效率较低:(1)与场景面片相关联的图像区域(即超像素)通常采用图像过分割算法获取,而超像素的尺寸却未得以合理的控制。事实上,超像素尺寸较大时,相应的场景面片往往由于深度变化较大而不能近似为平面;而尺寸较小时,则由于匹配多义性问题的存在(如超像素仅为单个像素的极端情况)而导致场景可靠性较低。(2)利用初始稀疏甚至稠密空间点往往不易获得完备的候选平面集(如超像素对应的真实平面并不包含于候选平面集中),这将对后续环节场景结构的推断可靠性造成较大的影响。(3)利用全局优化方法对场景结构进行推断时,超像素对应平面的可靠性度量的构造通常基于图像底层特征(如颜色、灰度)、空间点可见性约束与“具有相近特征的超像素具有相同平面”的规范化或假设。然而,在很多情况下,图像底层特征并不利于克服匹配多义性、光照变化等因素的干扰,具有相近特征的超像素对应的平面也并不一定相同,这通常也导致场景重建的可靠性与精度降低。(4)对场景中非重建区域(如天空、地面)缺乏有效的检测与滤除机制,整体重建效率因此受到较大的影响。
技术实现要素:
本发明实施例提供了基于结构先验与深度学习的城市场景分段平面重建方法,可以解决现有技术中存在的问题。
一种基于结构先验与深度学习的城市场景分段平面重建方法,所述方法包括以下步骤:
步骤100,输入稀疏空间点及标定图像;
步骤110,初始化初始平面集和初始超像素集;
其中,利用在标定图像中检测出的由不同平面相交而产生的线段对应的直线对超像素进行再分割;
步骤120,根据初始平面集和初始超像素集确定可靠平面及相应的超像素,并分别保存至集合h和r;
步骤130,初始超像素集中除去与可靠平面相应的超像素以外的超像素集为q,根据集合r计算集合q中超像素的平面推断优先级,然后根据平面推断优先级从大到小的顺序从集合q中选择并从中清除超像素s;
步骤131,如果选择的超像素s为天空和地面,则放弃后续步骤;
其中,对于地面区域,如果超像素s内部的像素在当前所有已重建场景平面的反投影空间点位于地平面下方者的平均比例大于90%,则将其直接视为地平面;
对于天空区域,通过以下条件tsky(s)来判断:
其中,psky(s)为语义标注算法获取的超像素s属于天空区域的概率,ε为相应的阈值,hr为已重建的平面集,hs为当前为超像素s分配的平面,edata(s,hs)为数据项,
步骤132,如果选择的超像素s不是天空或地面,则生成候选平面集并确定其最小的平面可靠性度量e(s,hs)值;
其中,生成候选平面集的方法为:首先检测与超像素s相邻且已获得可靠平面的超像素集π,然后根据平面夹角先验aprior,以场景垂直方向以及s与t∈π边界上任意一点确定的轴线为中心旋转超像素t对应的平面ht,进而将每个平面夹角对应的旋转平面作为超像素s的候选平面,多个候选平面组成候选平面集,其中场景垂直方向采用消影点检测方法确定;
步骤133,如果e(s,hs)值小于
步骤134,如果e(s,hs)值大于或等于
步骤140,跳转到步骤130,直到集合q为空;
步骤150,根据超像素集r对应的平面集h生成初始场景结构;
步骤160,得到初始场景结构后,在mrf框架下对场景结构进行全局优化,相应的能量函数为:
其中,e′pho(s,hs)为利用图像底层特征构造的平面可靠性度量,ω为权重系数,esmooth(hs,ht)为平滑项,
本发明实施例中的基于结构先验与深度学习的城市场景分段平面重建方法,通过融合场景结构先验与由深度学习获取的图像高层特征,采用图像区域与相应平面协同优化的方式对场景结构进行了初始推断,并在mrf能量优化架框下对场景结构进行了全局优化。实验结果表明,本发明的方法仅利用稀疏空间点即可有效重建场景完整的结构,整体上具有较高的性能。本发明的有益效果如下:(1)利用场景结构先验与图像高层特征克服了候选平面集的完备性、图像过分割质量、平滑项等问题对场景重建过程的影响,提高了图像区域对应平面度量以及整体重建过程的可靠性。(2)提出了一种融合空间点可见性、场景结构先验、图像底层与高层特征等信息的图像区域与相应平面协同优化的场景分段平面重建算法;该算法利用稀疏空间点即可有效重建场景完整、准确的结构。(3)针对城市场景重建中非重建区域(如天空、地面等),提出了相关可行的检测与滤除方法。
具体实施方式
下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种基于结构先验与深度学习的城市场景分段平面重建方法,该方法具体包括以下步骤:
步骤100,输入稀疏空间点及标定图像;
步骤110,初始化初始平面集和初始超像素集;
具体地,利用多模型拟合算法从输入的稀疏空间点中抽取初始平面,多个初始平面组成初始平面集;采用mean-shift图像过分割算法将标定图像分割为若干互不重叠的区域,即超像素,多个超像素即组成超像素集。为了克服图像过分割质量对场景重建过程的影响,本实施例对超像素集中的超像素进行以下优化处理:由于城市场景具有规则化的结构,标定图像中包含大量由不同平面相交而产生的线段,利用在标定图像中检测出的线段对应的直线对超像素进行再分割。在线段检测时需要将重复线段合并,即在同一直线上的线段,以减小计算复杂度;同时需要利用不同斜率的线段对超像素进行规范化。
步骤120,根据初始平面集和初始超像素集确定可靠平面及相应的超像素,并分别保存至集合h和r;
具体地,对于包含空间点的超像素s,根据以下条件tseed(s)在初始平面集中选取可靠平面:
其中,edata(s,hs)为数据项,hs为当前为超像素s分配的平面,
步骤130,初始超像素集中除去与可靠平面相应的超像素以外的超像素集为q,根据集合r计算集合q中超像素的平面推断优先级,然后根据平面推断优先级从大到小的顺序从集合q中选择并从中清除超像素s;
具体地,所述平面推断优先级为:
ρs=n(s)·b(s)
其中,n(s)为与超像素s相邻且已分配可靠平面的超像素数量,b(s)为超像素s与相邻且已分配可靠平面的超像素的连接边界总长度。从上式可知,如果超像素s相邻的已分配可靠平面的超像素越多,相应的连接边界越长,则其对应平面越易于确定,因而应优先推断其对应的平面。
步骤131,如果选择的超像素s为天空和地面,则放弃后续步骤;
具体地,对于地面区域,如果超像素s内部的像素在当前所有已重建场景平面的反投影空间点位于地平面下方者的平均比例大于90%,则将其直接视为地平面;
对于天空区域,通过以下条件tsky(s)来判断:
其中,psky(s)为语义标注算法获取的超像素s属于天空区域的概率,ε为相应的阈值,本实施例中为0.9,hr为已重建的平面集。
步骤132,如果选择的超像素s不是天空或地面,则生成候选平面集并确定其最小的平面可靠性度量e(s,hs)值;
具体地,生成候选平面集的方法为:首先检测与超像素s相邻且已获得可靠平面的超像素集π,然后根据平面夹角先验aprior,以场景垂直方向以及s与t∈π边界上任意一点确定的轴线为中心旋转超像素t对应的平面ht,进而将每个平面夹角对应的旋转平面作为超像素s的候选平面,多个候选平面组成候选平面集。其中场景垂直方向采用消影点检测方法确定。
如果集合π中的超像素较多,则可能导致超像素s的候选平面集包含较多的冗余平面(如两平行平面相距较近),因而需要进行冗余平面滤除处理(即多个冗余平面只保留一个)以提高场景结构推断的效率。此外,为了提高场景结构推断精度,需要根据不同方向的旋转轴线确定超像素s的候选平面集。
平面可靠性度量的表达式为:
其中,esmooth(hs,ht)为平滑项,γ为平滑项权重,本实施例取0.6。
数据项由以下公式计算获得:
edata(s,hs)=e′pho(s,hs)+ρ·ecnn(s,hs)
其中,e′pho(s,hs)为利用图像底层特征构造的平面可靠性度量,ρ为权重常数,ecnn(s,hs)为利用由深度学习方法获取的图像高层特征构造的平面可靠性度量。
ecnn(s,hs)的具体计算方法为:对于当前为超像素s∈ir分配的平面hs,首先在图像{ni}i=1,2中确定超像素s在平面hs诱导下的投影区域{si}i=1,2并分别在图像ir与{ni}i=1,2中截取包含超像素s与图像区域{si}的最小区域,然后将其尺寸归一化后融合为三通道的图像并采用vgg-m卷积神经网络框架提取该图像的特征,最后利用一个全连接层进行特征的线性回归并将结果作为超像素s与图像区域{si}的匹配度量及平面hs的可靠性度量,即ecnn(s,hs)。
上述的e′pho(s,hs)由以下公式计算获得:
其中,k为与超像素s相邻的图像ni的数量,|s|为超像素s内部像素的总数,p为超像素s中的像素。
上述的cs(p,hs,ni)定义为:
其中,ir为超像素s所在的图像,||ir(p)-ni(hs(p))||为图像ir中的像素p与相邻图像ni中的像素hs(p)之间的规范化颜色差异,δ为截断阈值,以增强颜色度量的可靠性,本实施例取0.5,m为相邻图像ni中待推断空间平面的区域,通常不包含任何空间点,d(x)和d(x)分别为
上述的esmooth(hs,ht)由以下公式计算获得:
其中,csim为相邻超像素之间的颜色特征差异,μ为结构先验松弛参数,a(hs,ht)表示当前为相邻超像素s和t分配的平面hs和ht之间的夹角,λdis为相邻平面间断惩罚量,本实施例取2。
上述颜色特征差异csim的定义为:
其中,||c(s)-c(t)||表示相邻超像素s与t之间规范化的平均颜色(即颜色值范围为0-1)差异。
步骤133,如果e(s,hs)值小于
步骤134,如果e(s,hs)值不小于
具体地,超像素s的再分割方法为调整图像过分割参数。
步骤140,跳转到步骤130,直到集合q为空;
步骤150,根据超像素集r对应的平面集h生成初始场景结构;
步骤160,得到初始场景结构后,在mrf框架下对场景结构进行全局优化,相应的能量函数为:
其中,
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。