图像深度估计方法及装置、设备、计算机可读存储介质与流程

文档序号:29633259发布日期:2022-04-13 16:30阅读:80来源:国知局
图像深度估计方法及装置、设备、计算机可读存储介质与流程

1.本技术涉及计算机视觉技术领域,特别是涉及一种图像深度估计方法及装置、设备、计算机可读存储介质。


背景技术:

2.多视图深度估计旨在从多张相互关联的图像中恢复逐帧深度,进而通过深度融合方法得到场景的三维几何结构。
3.传统多视图重建技术经过几十年的发展已经较为成熟,但是仍然有一些悬而未决的问题,如弱纹理和较细结构的重建问题,目前对弱纹理问题较为普遍的解决办法是通过构建图像金字塔,其本质还是通过将图像弱纹理缩小到可分辨的程度,但对大片的弱纹理仍然不能很好的解决;较细结构的重建问题则更为困难一些,主要体现在现有的深度恢复技术不能很好地处理细节,因为细节结构在图像中往往呈现在很小的一块区域,很容易被背景湮灭掉,给细节的重建带来很大挑战。


技术实现要素:

4.本技术主要解决的技术问题是提供一种图像深度估计方法及装置、设备、计算机可读存储介质。
5.本技术第一方面提供了一种图像深度估计方法,所述方法包括:获取参考图像以及对应的多个源图像,其中,所述源图像与所述参考图像具有重合视角;对所述参考图像进行深度图初始化,确定所述参考图像的初始深度图像;基于所述多个源图像对所述参考图像的初始深度图像进行深度传播,获得所述参考图像的深度信息。
6.因此,通过获取具有重合视角的参考图像以及对应的多个源图像,在对参考图像进行深度图初始化后,可以确定参考图像的初始深度图像,然后利用多个源图像对参考图像的初始深度图像进行深度传播,获得参考图像的深度信息,通过对参考图像的初始深度图像进行深度传播,所获得的参考图像的深度信息可以较好的处理细节结构,利于提升细节结构的重建效果。
7.其中,所述获取参考图像以及对应的多个源图像,包括:获取与所述参考图像具有重合视角的多个关联图像;获取每个所述关联图像与所述参考图像之间的图像重叠度和图像基线距;选取所述图像重叠度和所述图像基线距满足预设条件的预设数量的关联图像作为所述多个源图像。
8.因此,在与参考图像具有重合视角的多个关联图像中,选择出图像重叠度和图像基线距满足预设条件的预设数量的关联图像作为多个源图像,使得利用多个源图像可以确定参考图像的初始深度图像,并对参考图像的初始深度图像进行深度传播时,可以获得较大区域的参考图像的深度信息,且利于估算出参考图像的精准的深度信息。
9.其中,所述对所述参考图像进行深度图初始化,确定所述参考图像的初始深度图像,包括:给所述参考图像中深度信息未知的所有像素点随机赋予深度和法向,形成所述参
考图像的初始深度图像。
10.因此,通过给参考图像中的所有像素点随机赋予深度和法向,可以形成参考图像的初始深度图像,以便于基于多个源图像对参考图像的初始深度图像进行深度传播,进而实现较好地恢复场景的细节结构及维持弱纹理区域的完整度,并且在参考图像中具有深度信息已知的像素点时,可以提升传播优化时的收敛速度。
11.其中,所述基于所述多个源图像对所述参考图像的初始深度图像进行深度传播,获得所述参考图像的深度信息,包括:对于所述参考图像上的每个像素点,利用当前像素点所对应的在所述参考图像上的局部图像块中各采样点在所述初始深度图像中的深度信息进行深度传播,得到所述当前像素点在所述参考图像中的初步深度信息;对所述当前像素点在所述参考图像中的初步深度信息进行优化,得到所述当前像素点在所述参考图像中的目标深度信息;基于每个像素点在所述参考图像中的目标深度信息,得到所述参考图像的深度信息。
12.因此,对于参考图像上的每个像素点,利用当前像素点在参考图像上所对应的局部图像块中各采样点在参考图像的初始深度图像中的深度信息进行深度传播和深度信息优化,得到每个像素点在参考图像中的目标深度信息,进而得到参考图像的深度信息,可以较好地恢复场景的细节结构,且能较好地维持弱纹理区域的完整度。
13.其中,所述利用当前像素点所对应的在所述参考图像上的局部图像块中各采样点在所述初始深度图像中的深度信息进行深度传播,得到所述当前像素点在所述参考图像中的初步深度信息,包括:获取所述当前像素点所对应的局部图像块中的若干个采样点;比较所述若干个采样点以及所述当前像素点在所述参考图像和所述源图像之间的归一化互相关值,将对应的所述归一化互相关值最大的采样点在所述初始深度图像中的深度信息作为所述当前像素点在所述参考图像中的初步深度信息。
14.因此,通过获取当前像素点所对应的局部图像块中的若干个采样点,然后比较若干个采样点以及当前像素点在参考图像和源图像之间的归一化互相关值,将对应的归一化互相关值最大的采样点的深度信息传播至当前像素点,实现将采样点的深度信息迅速传播到当前像素点,能够提高传播过程的收敛速度。
15.其中,所述获取所述当前像素点所对应的局部图像块中的若干个采样点,包括:在所述当前像素点所对应的局部图像块中,划分出若干个采样区域;在每个采样区域内,选取具有最大的归一化互相关值的至少一个像素点作为所述采样点。
16.因此,通过在当前像素点所对应的局部图像块中,划分出若干个采样区域,然后在每个采样区域内,选取具有最大的归一化互相关值的像素点作为采样点,可以实现将对应的归一化互相关值最大的采样点的深度信息传播至当前像素点,可以减少计算复杂性,提高传播过程的收敛速度。
17.其中,所述若干个采样区域包括以所述当前像素点为中心向所述当前像素点的外围呈放射状展开的若干个条形区域,和/或以所述当前像素点为中心的环形区域。
18.因此,通过将当前像素点所对应的局部图像块,划分为以当前像素点为中心向当前像素点的外围呈放射状展开的若干个条形区域,在每个条形区域内将对应的归一化互相关值最大的采样点的深度信息传播至当前像素点,能将远处高置信的点迅速传播到当前位置,不仅能够提高收敛速度,还能提升平坦弱纹理区域的重建效果;而通过将当前像素点所
对应的局部图像块,划分为以所述当前像素点为中心的环形区域,考虑到局部空间一致性原理,从环形区域中将对应的归一化互相关值最大的至少一个采样点的深度信息传播至当前像素点,能够极大地提升前景传播的概率,从而使得细节结构能够较好地估算深度。
19.其中,所述对所述当前像素点在所述参考图像中的初步深度信息进行优化,得到所述当前像素点在所述参考图像中的目标深度信息,包括:对所述当前像素点在所述参考图像中的深度和法向进行扰动;将扰动前的归一化互相关值和扰动后的归一化互相关值进行比较;响应于扰动后的归一化互相关值优于扰动前的归一化互相关值,将所述当前像素点在所述参考图像中的深度和法向替换为扰动后的深度和法向,得到所述当前像素点在所述参考图像中的目标深度信息。
20.因此,通过深度传播能够将采样点的深度信息大致正确的传播到当前像素点,从而获取到当前像素点在参考图像中的初步深度信息,进一步通过对传播后的当前像素点在参考图像中的深度和法向进行扰动,将扰动前的归一化互相关值和扰动后的归一化互相关值进行比较,并在扰动后的归一化互相关值更优的情况下,将当前像素点在参考图像中的深度和法向替换为扰动后的深度和法向,以提升深度估计的精度。
21.其中,在所述基于所述多个源图像对所述参考图像的初始深度图像进行深度传播,获得所述参考图像的深度信息之后,所述方法还包括:基于所述参考图像和所述多个源图像,对所述参考图像的深度信息进行深度一致性校验,得到所述参考图像的深度估计结果。
22.因此,在利用多个源图像对参考图像的初始深度图像进行深度传播,获得参考图像的深度信息后,基于参考图像和多个源图像,对参考图像的深度信息进行深度一致性校验,从而获得参考图像的深度估计结果,且利用多个源图像确定参考图像的初始深度图像,并通过对参考图像的初始深度图像进行深度传播,所获得的参考图像的深度信息可以较好的处理细节结构,利于提升细节结构的重建效果。
23.其中,所述基于所述参考图像和所述多个源图像,对所述参考图像的深度信息进行深度一致性校验,得到所述参考图像的深度估计结果,包括:基于所述参考图像的深度信息和所述多个源图像的深度信息,得到对应的重投影误差和投影深度误差;对于每个像素点,确定所对应的重投影误差和投影深度误差是否满足预设条件;响应于当前像素点所对应的重投影误差和投影深度误差满足预设条件,确定所述当前像素点的深度信息有效;响应于当前像素点所对应的重投影误差和投影深度误差不满足预设条件,确定所述当前像素点的深度信息无效。
24.因此,在获得参考图像的深度信息后,可以基于参考图像的深度信息和多个源图像的深度信息,得到对应的重投影误差和投影深度误差,于是,对于每个像素点,可以确定所对应的重投影误差和投影深度误差是否满足预设条件,并在当前像素点所对应的重投影误差和投影深度误差满足预设条件时,确定当前像素点的深度信息有效,在当前像素点所对应的重投影误差和投影深度误差不满足预设条件时,确定当前像素点的深度信息无效,从而可以剔除参考图像的深度图上的噪声,得到参考图像的深度估计结果。
25.为了解决上述问题,本技术第二方面提供了一种图像深度估计装置,包括:获取模块,所述获取模块用于获取参考图像以及对应的多个源图像,其中,所述源图像与所述参考图像具有重合视角;初始化模块,所述初始化模块用于对所述参考图像进行深度图初始化,
确定所述参考图像的初始深度图像;解算模块,所述解算模块用于基于所述多个源图像对所述参考图像的初始深度图像进行深度传播,获得所述参考图像的深度信息。
26.为了解决上述问题,本技术第三方面提供了一种电子设备,包括相互耦接的存储器和处理器,所述处理器用于执行所述存储器中存储的程序指令,以实现上述第一方面中的图像深度估计方法。
27.为了解决上述问题,本技术第四方面提供了一种计算机可读存储介质,其上存储有程序指令,所述程序指令被处理器执行时实现上述第一方面中的图像深度估计方法。
28.上述方案,通过获取具有重合视角的参考图像以及对应的多个源图像,在对参考图像进行深度图初始化后,可以确定参考图像的初始深度图像,然后利用多个源图像对参考图像的初始深度图像进行深度传播,获得参考图像的深度信息,通过对参考图像的初始深度图像进行深度传播,所获得的参考图像的深度信息可以较好的处理细节结构,利于提升细节结构的重建效果。
附图说明
29.图1是本技术图像深度估计方法一实施例的流程示意图;
30.图2是图1中步骤s11一实施例的流程示意图;
31.图3是图1中步骤s13一实施例的流程示意图;
32.图4是图3中步骤s131一实施例的流程示意图;
33.图5是图4中步骤s1311一实施例的流程示意图;
34.图6是本技术图像深度估计方法中采样点的获取方法一实施例的结构示意图;
35.图7是图3中步骤s132一实施例的流程示意图;
36.图8是图1中步骤s14一实施例的流程示意图;
37.图9是本技术图像深度估计装置一实施例的框架示意图;
38.图10是本技术电子设备一实施例的框架示意图;
39.图11是本技术计算机可读存储介质一实施例的框架示意图。
具体实施方式
40.下面结合说明书附图,对本技术实施例的方案进行详细说明。
41.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本技术。
42.本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
43.本技术的图像深度估计方法的执行主体可以是图像深度估计装置,例如,图像深度估计方法可以由终端设备或服务器或其它电子设备执行,其中,终端设备可以为用户设备(user equipment,ue)、移动设备、用户终端、终端、个人数字处理(personal digital assistant,pda)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该图像深度估计方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实
现。
44.请参阅图1,图1是本技术图像深度估计方法一实施例的流程示意图。具体而言,可以包括如下步骤:
45.步骤s11:获取参考图像以及对应的多个源图像。其中,所述源图像与所述参考图像具有重合视角。
46.在本实施例中,执行主体以图像深度估计装置为例进行说明。在图像深度估计装置对当前帧进行深度估计时,需要先获取到当前帧对应的参考图像和多个源图像。参考图像为需要进行深度估计的图像,而源图像为在对当前帧进行深度估计时,用于进行匹配的图像,源图像和参考图像具有重合视角,例如,参考图像为需要生成立体视觉模型的标准图像,源图像为生成立体视觉模型的参照图像,参考图像与源图像可为对同一物体进行不同角度拍照的图像;源图像的数量可以为多个,考虑到深度估计的速度和鲁棒性的平衡,对于每帧参考图像,按照图像间的关联关系选取8帧左右的源图像较为合适,源图像的具体数量本实施例不作限定。
47.步骤s12:对所述参考图像进行深度图初始化,确定所述参考图像的初始深度图像。
48.在一实施例中,上述步骤s12具体可以包括:给所述参考图像中深度信息未知的所有像素点随机赋予深度和法向,形成所述参考图像的初始深度图像。
49.可以对所述参考图像进行深度图初始化,深度图初始化在于给参考图像中的每个像素点赋予一个随机的深度和法向,被用于计算参考图像和源图像之间局部图像块的归一化互相关性,通过给参考图像中所有像素点随机赋予深度和法向,以便于利用当前像素点所对应的局部图像块中各采样点在参考图像的初始深度图像中的深度信息进行深度传播,进而实现较好地恢复场景的细节结构及维持弱纹理区域的完整度。而在有结构先验信息时,例如有稀疏的地图点存在的情况下,由于地图点的深度和法向已知,可以通过稀疏的地图点初始化,于是这些深度和法向已知的点的深度信息可以快速准确的传播至其他像素点,可以提升传播优化时的收敛速度。
50.步骤s13:基于所述多个源图像对所述参考图像的初始深度图像进行深度传播,获得所述参考图像的深度信息。
51.参考图像与源图像可为对同一物体进行不同角度拍照的图像,在确定参考图像的初始深度图像后,在参考图像的初始深度图像上,按照预设传播方向进行深度传播,使参考图像的像素点的深度信息具有较高的可靠度,从而获得参考图像的深度信息,保证参考图像具有较好的深度图质量。
52.上述方案,通过获取具有重合视角的参考图像以及对应的多个源图像,在对参考图像进行深度图初始化后,可以确定参考图像的初始深度图像,然后利用多个源图像对参考图像的初始深度图像进行深度传播,获得参考图像的深度信息,通过对参考图像的初始深度图像进行深度传播,所获得的参考图像的深度信息可以较好的处理细节结构,利于提升细节结构的重建效果。
53.在一实施例中,在上述步骤s13之后,图像深度估计方法还可以包括:
54.步骤s14:基于所述参考图像和所述多个源图像,对所述参考图像的深度信息进行深度一致性校验,得到所述参考图像的深度估计结果。
55.在参考图像的初始深度图像上进行深度传播,获得参考图像的深度信息后,可以基于所述参考图像和所述多个源图像,衡量参考图像的各像素点的深度信息和各像素点在多个源图像上的深度信息的一致性,通过对参考图像的深度信息进行深度一致性校验,可以验证参考图像的各像素点与多个源图像是否具备深度一致性,剔除参考图像的深度图上的噪声点,得到参考图像的深度估计结果。
56.上述方案,在利用多个源图像对参考图像的初始深度图像进行深度传播,获得参考图像的深度信息后,基于参考图像和多个源图像,对参考图像的深度信息进行深度一致性校验,从而获得参考图像的深度估计结果,且利用多个源图像确定参考图像的初始深度图像,并对参考图像的初始深度图像进行深度传播,所获得的参考图像的深度信息可以较好的处理细节结构,利于提升细节结构的重建效果。
57.请参阅图2,图2是图1中步骤s11一实施例的流程示意图。本实施例中,上述步骤s11具体可以包括如下步骤:
58.步骤s111:获取与所述参考图像具有重合视角的多个关联图像。
59.步骤s112:获取每个所述关联图像与所述参考图像之间的图像重叠度和图像基线距。
60.步骤s113:选取所述图像重叠度和所述图像基线距满足预设条件的预设数量的关联图像作为所述多个源图像。
61.可以理解的是,参考图像对应的多个源图像的选取可以遵循两个标准:图像重叠度和图像基线距。图像重叠度表示参考图像和源图像中观测到的同一区域占参考图像的比例,正常情况下,图像重叠度越高,可用于估算有效深度的区域也越大。然而,在多视图场景下,图像重叠度越高,有可能造成参考图像和源图像之间的图像基线距过小,从而导致三角化误差过大,反而不利于估算出精准的深度。因此,在源图像选取时,需要同时考虑图像覆盖度和图像基线距两个因素,如公式(1)所示:
[0062][0063]
其中,表示筛选出的源图像的合集,t
ij
表示图像i和图像j之间共视地图点的合集,sort

表示按共视地图点数量自多到少进行排序,θ
tij
表示图像i和图像j之间共视地图点与图像光心之间的夹角和合集,median表示取夹角的中值,k表示筛选出的源图像的最大数量。
[0064]
因此,在与参考图像具有重合视角的所有关联图像中,选择出图像重叠度和图像基线距满足预设条件的多个关联图像作为多个源图像,使得利用多个源图像可以确定参考图像的初始深度图像,并对参考图像的初始深度图像进行深度传播时,可以获得较大区域的参考图像的深度信息,且利于估算出参考图像的精准的深度信息。
[0065]
请参阅图3,图3是图1中步骤s13一实施例的流程示意图。本实施例中,上述步骤s13具体可以包括如下步骤:
[0066]
步骤s131:对于所述参考图像上的每个像素点,利用当前像素点所对应的在所述参考图像上的局部图像块中各采样点在所述初始深度图像中的深度信息进行深度传播,得到所述当前像素点在所述参考图像中的初步深度信息。
[0067]
步骤s132:对所述当前像素点在所述参考图像中的初步深度信息进行优化,得到所述当前像素点在所述参考图像中的目标深度信息。
[0068]
步骤s133:基于每个像素点在所述参考图像中的目标深度信息,得到所述参考图像的深度信息。
[0069]
对于参考图像上的每个像素点,确定当前像素点在参考图像上所对应的局部图像块中各采样点,然后利用当前像素点所对应的局部图像块中各采样点在参考图像的初始深度图像中的深度信息,将各采样点在在参考图像的初始深度图像中的深度信息传播至当前像素点,得到当前像素点在参考图像中的初步深度信息。由于深度传播能够将大致正确的采样点的深度信息传播到当前像素点,如果采样点的深度信息存在误差,则传播至当前像素点的深度信息的误差会被放大,因此有必要对传播后的深度信息进行优化,以得到每个像素点在参考图像中的目标深度信息,以较好地恢复场景的细节结构,且能较好地维持弱纹理区域的完整度;而在得到每个像素点在参考图像中的目标深度信息后,则可以得到参考图像的深度信息。
[0070]
请参阅图4,图4是图3中步骤s131一实施例的流程示意图。本实施例中,上述步骤s131具体可以包括如下步骤:
[0071]
步骤s1311:获取所述当前像素点所对应的局部图像块中的若干个采样点。
[0072]
步骤s1312:比较所述若干个采样点以及所述当前像素点在所述参考图像和所述源图像之间的归一化互相关值,将对应的所述归一化互相关值最大的采样点在所述初始深度图像中的深度信息作为所述当前像素点在所述参考图像中的初步深度信息。
[0073]
在单次迭代中,每个像素点除了考虑自身的深度和法向对应的归一化互相关值之外,还要考虑采样点的深度和法向对应的归一化互相关值,通过获取当前像素点所对应的局部图像块中的若干个采样点,然后比较若干个采样点以及当前像素点在参考图像和源图像之间的归一化互相关值,将对应的归一化互相关值最大的采样点在初始深度图像中的深度信息传播至当前像素点,实现将采样点的深度信息迅速传播到当前像素点,能够提高传播过程的收敛速度。
[0074]
请参阅图5,图5是图4中步骤s1311一实施例的流程示意图。本实施例中,上述步骤s1311具体可以包括如下步骤:
[0075]
步骤s13111:在所述当前像素点所对应的局部图像块中,划分出若干个采样区域。
[0076]
步骤s13112:在每个采样区域内,选取具有最大的归一化互相关值的至少一个像素点作为所述采样点。
[0077]
通过在当前像素点所对应的局部图像块中,划分出若干个采样区域,然后在每个采样区域内,选取具有最大的归一化互相关值的像素点作为采样点,可以实现将每个采样区域内对应的归一化互相关值最大的采样点的深度信息传播至当前像素点,可以减少计算复杂性,提高传播过程的收敛速度。
[0078]
请结合图6,图6是本技术图像深度估计方法中采样点的获取方法一实施例的结构示意图。在一实施例中,所述若干个采样区域包括以所述当前像素点o为中心向所述当前像素点o的外围呈放射状展开的若干个条形区域s1。本实施例中的深度传播方案,其由基本的棋盘格传播方案改进而来;具体来说,对于当前像素点o,由于每个方向有若干个采样候选点d,为了减少计算复杂性,可以从每个方向所形成的条形区域s1中选择一个归一化互相关
值最大的采样候选点d作为该方向的采样点d1,在单次迭代中,每个像素点除了考虑自身的深度和法线的归一化互相关值之外,还会考虑图6中的8个采样点d1的深度和法向的归一化互相关值。可以理解的是,通过将当前像素点o所对应的局部图像块,划分为以当前像素点o为中心向当前像素点o的外围呈放射状展开的若干个条形区域s1,在每个条形区域s1内将对应的归一化互相关值最大的采样点d1的深度信息传播至当前像素点o,能将远处高置信的点迅速传播到当前位置,不仅能够提高收敛速度,还能提升平坦弱纹理区域的重建效果。
[0079]
在其他实施例中,所述若干个采样区域包括以所述当前像素点o为中心的环形区域s2。对于较细的结构,由于当前像素点o所对应的局部图像块可能包含了绝大部分的背景区域,即图6所示的窗口中,当前像素点o对应的8个方向的采样点d1绝大部分集中在背景区域,因此可能无法有效恢复出前景的深度。因此,考虑到局部空间一致性原理,本实施例还可以增加图6所示的环形区域s2的四邻域采样,从中选出归一化互相关值最大的两个采样点d1。通过将当前像素点o所对应的局部图像块,划分出以当前像素点o为中心的环形区域s2,考虑到局部空间一致性原理,从环形区域s2中将对应的归一化互相关值最大的至少一个采样点d1的深度信息传播至当前像素点o,能够极大地提升前景传播的概率,从而使得细节结构能够较好地估算深度。
[0080]
请参阅图7,图7是图3中步骤s132一实施例的流程示意图。本实施例中,上述步骤s132具体可以包括如下步骤:
[0081]
步骤s1321:对所述当前像素点在所述参考图像中的深度和法向进行扰动。
[0082]
步骤s1322:将扰动前的归一化互相关值和扰动后的归一化互相关值进行比较。
[0083]
步骤s1323:响应于扰动后的归一化互相关值优于扰动前的归一化互相关值,将所述当前像素点在所述参考图像中的深度和法向替换为扰动后的深度和法向,得到所述当前像素点在所述参考图像中的目标深度信息。
[0084]
通过深度传播能够将采样点的深度信息大致正确的传播到当前像素点,从而获取到当前像素点在参考图像中的初步深度信息;如果采样点存在误差,则传播至当前像素点的深度信息误差会被放大,因此有必要对传播后的当前像素点的深度信息进行优化。具体地,通过对传播后的当前像素点在参考图像中的深度和法向进行扰动,例如做一个随机的局部小的扰动,然后将扰动前的归一化互相关值和扰动后的归一化互相关值进行比较,如果扰动后的归一化互相关值更优,则将当前像素点在参考图像中的深度和法向替换为扰动后的深度和法向,以提升深度估计的精度。在经过多次这样的扰动之后,可以得到精度较高的当前像素点在参考图像中的目标深度信息。
[0085]
请参阅图8,图8是图1中步骤s14一实施例的流程示意图。本实施例中,上述步骤s14具体可以包括如下步骤:
[0086]
步骤s141:基于所述参考图像的深度信息和所述多个源图像的深度信息,得到对应的重投影误差和投影深度误差。
[0087]
步骤s142:对于每个像素点,确定所对应的重投影误差和投影深度误差是否满足预设条件。
[0088]
步骤s143:响应于当前像素点所对应的重投影误差和投影深度误差满足预设条件,确定所述当前像素点的深度信息有效。
[0089]
步骤s144:响应于当前像素点所对应的重投影误差和投影深度误差不满足预设条
件,确定所述当前像素点的深度信息无效。
[0090]
因此,在获得参考图像的深度信息后,可以基于参考图像的深度信息和多个源图像的深度信息,得到对应的重投影误差和投影深度误差,于是,对于每个像素点,可以确定所对应的重投影误差和投影深度误差是否满足预设条件,并在当前像素点所对应的重投影误差和投影深度误差满足预设条件时,确定当前像素点的深度信息有效,在当前像素点所对应的重投影误差和投影深度误差不满足预设条件时,确定当前像素点的深度信息无效,从而可以剔除参考图像的深度图上的噪声,得到参考图像的深度估计结果。上述过程下列公式表示:
[0091][0092]
x
′j=pjp
i-1
xid(xi)
ꢀꢀꢀꢀꢀꢀ
(3)
[0093][0094]
其中,pi和pj分别为图像i和图像j的投影矩阵,xi和xj分别是图像i上的点和其利用深度d(xj)投影到源图像j上的投影点,xj′
是图像j上的投影点对应的三维向量,其中xj′
(0)、xj′
(1)和xj′
(2)分别为xj′
在x轴、y轴和z轴的分量,τ为重投影误差的预设阈值,β为投影深度误差的预设阈值。在一实施方案中,可以设置为τ=4,β=0.01。因此,预设条件为当前像素点所对应的重投影误差小于等于τ,投影深度误差小于等于β,对于每个像素点,当重投影误差和投影深度误差满足预设条件时,可以确定当前像素点的深度信息有效。
[0095]
本技术的图像深度估计方法可以在gpu(图像处理器)上实现深度一致性校验,以使该过程更加高效。由于单张显卡显存有限,无法将全部图像一次载入显存,因此可以采用分块载入的策略。具体而言,由于所有图像具有对应的相机位姿,首先计算所有相机位姿的中心点,选择离中心点最远的图像,将与其关联的源图像和参考图像载入显存,然后对剩下的所有图像计算关联性得分s,其中,的所有图像计算关联性得分s,其中,表示中位于gpu的子集;然后将关联性得分s最高的图像和其作为参考图像计算得到的源图像也载入显存,直至不能载入为止。这种方式,在处理流程上充分利用了机器的内存和显存,结合多线程并行技术,充分利用gpu的多核优势,充分利用gpu算力,极大的提升了运行时效。
[0096]
请参阅图9,图9是本技术场景显示装置一实施例的框架示意图。本实施例中,图像深度估计装置90包括:获取模块900,用于获取参考图像以及对应的多个源图像,其中,所述源图像与所述参考图像具有重合视角;初始化模块901,用于对所述参考图像进行深度图初始化,确定所述参考图像的初始深度图像;解算模块902,用于基于所述多个源图像对所述参考图像的初始深度图像进行深度传播,获得所述参考图像的深度信息。
[0097]
上述方案,通过获取模块900获取具有重合视角的参考图像以及对应的多个源图像,初始化模块901在对参考图像进行深度图初始化后,可以确定参考图像的初始深度图像,解算模块902可以利用多个源图像对参考图像的初始深度图像进行深度传播,获得参考图像的深度信息,通过对参考图像的初始深度图像进行深度传播,所获得的参考图像的深
度信息可以较好的处理细节结构,利于提升细节结构的重建效果。
[0098]
在一些实施例中,图像深度估计装置90还包括:校验模块904,用于基于所述参考图像和所述多个源图像,对所述参考图像的深度信息进行深度一致性校验,得到所述参考图像的深度估计结果。
[0099]
在一些实施例中,获取模块900执行获取参考图像以及对应的多个源图像的步骤,具体包括:获取与所述参考图像具有重合视角的多个关联图像;获取每个所述关联图像与所述参考图像之间的图像重叠度和图像基线距;选取所述图像重叠度和所述图像基线距满足预设条件的预设数量的关联图像作为所述多个源图像。
[0100]
在一些实施例中,初始化模块901执行对所述参考图像进行深度图初始化,确定所述参考图像的初始深度图像的步骤,具体包括:给所述参考图像中深度信息未知的所有像素点随机赋予深度和法向,形成所述参考图像的初始深度图像。
[0101]
在一些实施例中,解算模块902执行基于所述多个源图像对所述参考图像的初始深度图像进行深度传播,获得所述参考图像的深度信息的步骤,具体包括:对于所述参考图像上的每个像素点,利用当前像素点所对应的在所述参考图像上的局部图像块中各采样点在所述初始深度图像中的深度信息进行深度传播,得到所述当前像素点在所述参考图像中的初步深度信息;对所述当前像素点在所述参考图像中的初步深度信息进行优化,得到所述当前像素点在所述参考图像中的目标深度信息;基于每个像素点在所述参考图像中的目标深度信息,得到所述参考图像的深度信息。
[0102]
在一些实施例中,解算模块902执行利用当前像素点所对应的在所述参考图像上的局部图像块中各采样点在所述初始深度图像中的深度信息进行深度传播,得到所述当前像素点在所述参考图像中的初步深度信息的步骤,具体可以包括:获取所述当前像素点所对应的局部图像块中的若干个采样点;比较所述若干个采样点以及所述当前像素点在所述参考图像和所述源图像之间的归一化互相关值,将对应的所述归一化互相关值最大的采样点在所述初始深度图像中的深度信息作为所述当前像素点在所述参考图像中的初步深度信息。
[0103]
在一些实施例中,解算模块902执行获取所述当前像素点所对应的局部图像块中的若干个采样点的步骤,具体可以包括:在所述当前像素点所对应的局部图像块中,划分出若干个采样区域;在每个采样区域内,选取具有最大的归一化互相关值的至少一个像素点作为所述采样点。
[0104]
在一些实施例中,所述若干个采样区域包括以所述当前像素点为中心向所述当前像素点的外围呈放射状展开的若干个条形区域,和/或以所述当前像素点为中心的环形区域。
[0105]
在一些实施例中,解算模块902执行对所述当前像素点在所述参考图像中的初步深度信息进行优化,得到所述当前像素点在所述参考图像中的目标深度信息的步骤,具体可以包括:对所述当前像素点在所述参考图像中的深度和法向进行扰动;将扰动前的归一化互相关值和扰动后的归一化互相关值进行比较;响应于扰动后的归一化互相关值优于扰动前的归一化互相关值,将所述当前像素点在所述参考图像中的深度和法向替换为扰动后的深度和法向,得到所述当前像素点在所述参考图像中的目标深度信息。
[0106]
在一些实施例中,校验模块904执行基于所述参考图像和所述多个源图像,对所述
参考图像的深度信息进行深度一致性校验,得到所述参考图像的深度估计结果的步骤,具体可以包括:基于所述参考图像的深度信息和所述多个源图像的深度信息,得到对应的重投影误差和投影深度误差;对于每个像素点,确定所对应的重投影误差和投影深度误差是否满足预设条件;响应于当前像素点所对应的重投影误差和投影深度误差满足预设条件,确定所述当前像素点的深度信息有效;响应于当前像素点所对应的重投影误差和投影深度误差不满足预设条件,确定所述当前像素点的深度信息无效。
[0107]
请参阅图10,图10是本技术电子设备一实施例的框架示意图。电子设备100包括相互耦接的存储器101和处理器102,处理器102用于执行存储器101中存储的程序指令,以实现上述任一图像深度估计方法实施例的步骤。在一个具体的实施场景中,电子设备100可以包括但不限于:微型计算机、服务器。
[0108]
具体而言,处理器102用于控制其自身以及存储器101以实现上述任一图像深度估计方法实施例中的步骤。处理器102还可以称为cpu(central processing unit,中央处理单元)。处理器102可能是一种集成电路芯片,具有信号的处理能力。处理器102还可以是通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器102可以由集成电路芯片共同实现。
[0109]
上述方案,处理器102通过获取具有重合视角的参考图像以及对应的多个源图像,在对参考图像进行深度图初始化后,可以利用多个源图像对参考图像的初始深度图像进行深度传播,获得参考图像的深度信息,通过对参考图像的初始深度图像进行深度传播,所获得的参考图像的深度信息可以较好的处理细节结构,利于提升细节结构的重建效果。
[0110]
请参阅图11,图11是本技术计算机可读存储介质一实施例的框架示意图。计算机可读存储介质110存储有能够被处理器运行的程序指令1100,程序指令1100用于实现上述任一图像深度估计方法实施例中的步骤。
[0111]
本公开涉及增强现实领域,通过获取现实环境中的目标对象的图像信息,进而借助各类视觉相关算法实现对目标对象的相关特征、状态及属性进行检测或识别处理,从而得到与具体应用匹配的虚拟与现实相结合的ar效果。示例性的,目标对象可涉及与人体相关的脸部、肢体、手势、动作等,或者与物体相关的标识物、标志物,或者与场馆或场所相关的沙盘、展示区域或展示物品等。视觉相关算法可涉及视觉定位、slam、三维重建、图像注册、背景分割、对象的关键点提取及跟踪、对象的位姿或深度检测等。具体应用不仅可以涉及跟真实场景或物品相关的导览、导航、讲解、重建、虚拟效果叠加展示等交互场景,还可以涉及与人相关的特效处理,比如妆容美化、肢体美化、特效展示、虚拟模型展示等交互场景。
[0112]
可通过卷积神经网络,实现对目标对象的相关特征、状态及属性进行检测或识别处理。上述卷积神经网络是基于深度学习框架进行模型训练而得到的网络模型。
[0113]
在本技术所提供的几个实施例中,应该理解到,所揭露的方法、装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的
相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
[0114]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
[0115]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0116]
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本技术各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1