一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

图像处理方法、装置、终端设备以及可读存储介质与流程

2021-10-24 09:50:00 来源:中国专利 TAG:终端设备 数据处理 图像处理 装置 可读


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.根据所述虚拟视角图像及其对应的权重、各帧所述修正图像及其各自对应的权重,获得新的虚拟视角图像,将所述新的虚拟视角图像重新确定为从所述目标视角采集的图像。
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.第六获得模块,用于获得所述虚拟视角图像和各帧所述修正图像各自对应的权重;
56.第七获得模块,用于根据所述虚拟视角图像及其对应的权重、各帧所述修正图像及其各自对应的权重,获得新的虚拟视角图像,将所述新的虚拟视角图像重新确定为从所述目标视角采集的图像。在本发明实施例的第三方面,还提供了一种终端设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
57.存储器,用于存放计算机程序;
58.处理器,用于执行存储器上所存放的程序时,实现本发明实施例的第一方面所述的图像处理方法中的步骤。
59.在本发明实施例的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述任一所述的图像处理方法中的步骤。
60.在本发明实施的又一方面,还提供了一种包含指令的计算机程序产品,当其在计
算机上运行时,使得计算机执行上述任一所述的图像处理方法。
61.本发明实施例提供的图像处理方法,首先确定距离目标视角预设范围内的真实视角,目标视角为无法采集真实图像的视角,真实视角为可采集真实图像的视角。接着获得从真实视角采集的真实图像,再获得真实图像在多个不同深度值下的针对目标视角的深度投影图像,最后根据获得的多个所述深度投影图像,获得目标视角的虚拟视角图像。该方法具备如下多个效果:
62.一、在无法准确估计真实图像的深度的情况下较为准确地合成虚拟视角的虚拟视角图像,使得合成的虚拟视角图像更逼近虚拟视角处的真实图像,保证了拍摄视频的流畅性,增强了用户的观看体验。
63.二、可在摄像装备的布设数量较少的情况下,达到摄像装备的布设数量较多时的拍摄效果,降低了设备部署的时间成本和人力成本。
附图说明
64.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
65.图1是本技术一实施例示出的一种实施场景示意图;
66.图2是本技术一实施例示出的一种图像处理方法的流程图;
67.图3是本技术一实施例示出的一种图像处理过程示意图;
68.图4是本发明一实施例示出的一种图像处理装置的结构框图;
69.图5是本技术一实施例示出的一种终端设备的结构示意图。
具体实施方式
70.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行描述。
71.在视频拍摄场景中,为了使观众可以获得沉浸式体验,通常会在拍摄点的周围布设多个摄像装备,以从多方位拍摄视频。例如,为了对舞台上的节目进行较好拍摄,通常会在舞台周围每隔一定距离布设摄像装备。然而,这种布设方式需要较多的摄像装备,增大了摄像装备的安装、校准、调试、数据传输同步等工作量,需要耗费大量的财力和物力。
72.相关技术中的一种解决方式为:采用自由视角合成算法,从安装有摄像装备的真实视角采集真实图像,利用该真实图像中间合成一个中间的虚拟视角图像,将该虚拟视角图像等效为从距离该真实视角较近的虚拟视角采集的图像,从而降低摄像装备的布设数量。图1是本技术一实施例示出的一种实施场景示意图。在图1中,深色阴影部分(包括:l1-l3和r1-r3)为安装的摄像装备,每一个摄像装备对应一个真实视角,浅色阴影部分(包括:o)为虚拟摄像装备,对应一个虚拟视角。那么可以采用自由视角合成算法,利用l1或r1采集的真实图像合成一个虚拟视角图像,将该虚拟视角图像等效为虚拟视角o采集的实际视角图像。
73.然而,采用相关技术中的自由视角合成算法在合成虚拟视角图像时,需要经过将真实图像从图像坐标系转换到相机坐标系的步骤,而该步骤需要知道真实图像的深度信息。例如在图1中,在利用摄像装备l1采集的真实图像合成虚拟虚拟视角o的虚拟视角图像时,必须要知道从l1采集的真实图像的每个像素的深度信息,但目前的一些深度估计算法
精度并不高,无法获得较为精准的深度信息,因此在实际合成虚拟视角图像的时候会引入很大的误差,导致最终合成的虚拟视角图像与虚拟视角处的实际图像差距过大,图像质量较低。
74.为解决相关技术中由于深度估计算法精度较低而导致合成的虚拟视角图像质量较低的问题,本技术提供了一种技术构思:在无法准确估计真实图像的深度的情况下,获得多个不同的深度值,将真实图像在每一个深度值下进行一次投影(在本技术中,利用从真实视角采集的真实图像合成在虚拟视角下的虚拟视角图像,相当于将从真实视角采集的真实图像投影到虚拟视角下,得到的投影则为虚拟视角图像),从而获得多个深度投影图像,最后再根据多个深度投影图像获得虚拟视角的虚拟视角图像。该方法可缩小最终合成的虚拟视角图像与虚拟视角处的实际图像的差距,提升图像质量。
75.下面将对本技术的图像处理方法进行详细说明。图2是本技术一实施例示出的一种图像处理方法的流程图。参照图2,本技术的图像处理方法可以包括如下步骤:
76.步骤s21:确定距离目标视角预设范围内的真实视角,所述目标视角为无法采集真实图像的视角,所述真实视角为可采集真实图像的视角。
77.在本实施例中,目标视角为未安装有摄像装备的虚拟视角,无法采集真实图像。
78.通常情况下,从距离目标视角较近的真实视角采集的真实图像,与目标视角处的实际图像的差异较小,因此,在步骤s21可以获得距离目标视角预设范围内的真实视角,其中,预设范围可以任意设置。
79.步骤s22:获得从所述真实视角采集的真实图像。
80.在确定真实视角后,可以获得从各个真实视角采集的真实图像。以图1为例,真实视角包括:摄像装备l1-l3和r1-r3各自对应的视角,那么可以获得摄像装备l1-l3和r1-r3各自采集的共6帧真实图像。
81.为便于后续各个实施例的陈述,在此特别说明,在本技术中,从单个真实视角采集一帧真实图像,单帧真实图像用于合成一帧目标视角下的虚拟视角图像。
82.步骤s23:获得所述真实图像在多个不同深度值下的针对所述目标视角的深度投影图像。
83.在本实施例中,会预先设置选取的深度的最小值和最大值。在设置时可以进行全局设置,即每个视角均使用同一组最小值和最大值。当然,也可以为每一个视角单独设置一组最小值和最大值。例如,在图1中,既可以为摄像装备l1

l3和r1

r3对应的视角统一设置一组最小值和最大值,也可以单独为摄像装备l1

l3和r1

r3中的每一个摄像装备对应的视角设置一组最小值和最大值。
84.在实施步骤s23时,首先在最小值和最大值之间选择多个深度值。接着,计算真实图像分别在每一个不同的深度值下的在目标视角上的投影,可获得多个投影到目标视角的深度投影图像。其中,本实施例对深度值的选取方式不作具体限制。
85.在具体实施时,可以采用自由视角合成算法来计算真实图像分别在每一个不同的深度值下的在目标视角上的投影。下面首先介绍合成过程中的几个参数,再介绍自由视角合成算法。
86.(一)、参数
87.图像数据:i
cam
88.深度数据:d
cam
(本技术的d
cam
值均为当前所在层的离散深度值)
89.相机内参:f
cam
(焦距)、cx
cam
(原点x轴偏移量)、cy
cam
(原点y轴偏移量)
90.相机外参:
91.(相机旋转矩阵)
92.(相机位移向量)
93.其中,cam表示相机序号,如i
l1
为从摄像装备l1采集的图像数据。
94.(二)自由视角合成算法
95.结合图1,利用摄像装备l1采集的真实图像(图像的长为w、宽为h)合成虚拟摄像装备0的虚拟视角图像为例,用src表示摄像装备l1,tar表示虚拟摄像装备0,有如下步骤:
96.步骤1:首先生成内参矩阵intrinsics
src
和外参矩阵extrinsics
src

[0097][0098][0099]
步骤2:假设src采集的真实图像在图像坐标系下的一点p,坐标为(u
src
,v
src
),该点的颜色为(r,g,b),深度为d,构成齐次坐标
[0100]
步骤3:计算点p在src相机坐标系下的坐标
[0101][0102]
步骤4:计算点p在世界坐标系下的坐标
[0103]
步骤5:将世界坐标系下的p点投影到目标视角的tar相机坐标系:
[0104]
p点在tar相机坐标系下的坐标为:
[0105]
步骤6:p点在tar图像坐标系下的坐标:
[0106]
例如,src采集的真实图像中的一点p,坐标(u
src
=0,v
src
=0),则:
[0107][0108][0109][0110][0111]
通过计算可知:
[0112]
点p在src相机坐标系下的坐标
[0113]
点p在世界坐标系下的坐标
[0114]
点p在tar相机坐标系下的坐标
[0115]
点p在tar图像坐标系下的坐标
[0116]
按照上述步骤1

步骤6,将src采集的真实图像的每一个像素点投影到tar相机坐标系下,即可得到src采集的真实图像在虚拟摄像装备处的投影,由于每一次投影时采用的真实图像的深度数据d
cam
不同,因此可以获得多个不同深度值下的针对目标视角的深度投影图像。
[0117]
其中,关于图像坐标系、相机坐标系以及世界坐标系的描述请参照已有技术,本实施例在此不作赘述。
[0118]
当然,在具体实施时,也可采用除了上述自由视角合成算法外的其它虚拟视角图像合成算法合成深度投影图像,本实施例对此不作具体限制。
[0119]
步骤s24:根据获得的多个所述深度投影图像,获得所述目标视角的虚拟视角图像。
[0120]
在获得多个深度投影图像后,对多个深度投影图像进行处理,可获得目标视角的虚拟视角图像。
[0121]
结合图1,以真实图像是摄像装备l1采集的真实图像为例,在利用真实图像合成在虚拟摄像装备o的虚拟视角图像时,首先根据预先设置的最小值和最大值选择k个深度值。假设k为5,那么k个深度值包括:第一层的深度值、第二层的深度值、第三层的深度值、第四层的深度值以及第五层的深度值。接着,采用第一层的深度值,利用真实图像合成在虚拟摄像装备o的一个深度投影图像(合成方法可采用前文所述的自由视角合成算法),采用第二层的深度值,利用真实图像合成在虚拟摄像装备o的另一个深度投影图像,以此类推,共合成5个深度投影图像。最后对k个深度投影图像进行处理,获得目标视角的虚拟视角图像。
[0122]
通过本实施例,首先确定距离目标视角预设范围内的真实视角,目标视角为无法采集真实图像的视角,真实视角为可采集真实图像的视角。接着获得从真实视角采集的真实图像,再获得真实图像在多个不同深度值下的针对目标视角的深度投影图像,最后根据获得的多个所述深度投影图像,获得目标视角的虚拟视角图像。该方法具备如下多个效果:
[0123]
一、在无法准确估计真实图像的深度的情况下较为准确地合成虚拟视角的虚拟视角图像,使得合成的虚拟视角图像更逼近虚拟视角处的真实图像,保证了拍摄视频的流畅性,增强了用户的观看体验。
[0124]
二、可在摄像装备的布设数量较少的情况下,达到摄像装备的布设数量较多时的拍摄效果,降低了设备部署的时间成本和人力成本。
[0125]
结合以上实施例,在一种实施方式中,获得所述真实图像在多个不同深度值下的针对所述目标视角的深度投影图像,可以包括:
[0126]
对所述真实图像的深度值进行离散处理,获得多个离散深度值;
[0127]
根据每一个所述离散深度值,利用所述真实图像合成所述目标视角的深度投影图像。
[0128]
在本实施例中,会预先设置选取的深度的最小值d
min
、最大值d
max
以及深度层数m。在设置时可以进行全局设置,即每个视角均使用同一组d
min
、d
max
以及深度层数m。当然,也可以为每一个视角单独设置d
min
、d
max
以及深度层数m。例如,在图1中,既可以为摄像装备l1

l3和r1

r3各自对应的视角统一设置一组d
min
、d
max
以及深度层数m,也可以单独为摄像装备l1

l3和r1

r3中的每一个对应的视角设置一组d
min
、d
max
以及深度层数m。
[0129]
为便于后续各个实施例的陈述,在此特别说明,本技术的真实视角以第i个视角为例,i
i
为视角图像(w
×
h
×
3),视角最大深度为d
max

i
,视角最小深度为d
min

i

[0130]
在具体实施时,首先采用任意方法对i
i
的深度值进行离散处理,并在视角最小深度为d
min

i
至视角最大深度为d
max

i
之间选取m个离散深度值。每一层选择一个离散深度值。接着,计算真实图像分别在m个不同的离散深度值下的在目标视角上的投影,可获得m个投
影到目标视角的深度投影图像。
[0131]
结合以上实施例,在一种实施方式中,对所述真实图像的深度值进行离散处理,获得多个离散深度值,可以包括:
[0132]
确定所述真实图像的最小深度值、最大深度值以及深度层数;
[0133]
针对所述深度层数中的每一层,根据所述最小深度值、所述最小深度值与所述最大深度值的差值以及当前深度层数,获得该层的离散深度值。
[0134]
在本实施例中,真实图像i
i
的最小深度值为d
min

i
,最大深度值为d
max

i
,深度层数为m。
[0135]
一般情况下,图像背景深度基本一致,更多的细节都在深度较小的前景上,因此在本技术的深度取值方法中第j(j表示当前深度层数)层的深度值可采用如下公式获得:
[0136][0137]
按照上述公式,j依次取1至m中任意一个自然数,将真实图像i
i
在不同的离散深度上进行投影,获得投影后的深度投影图像如此可获得m个深度投影图像。
[0138]
结合以上实施例,在一种实施方式中,本技术还提供了一种根据获得的多个深度投影图像,获得目标视角的虚拟视角图像的方法。具体地,该方法可以包括:
[0139]
确定各个深度投影图像的深度值所对应的权重值;
[0140]
根据所述权重值对各个深度投影图像中同一像素区域的像素值进行加权求和,获得所述真实图像在目标视角的虚拟视角图像。
[0141]
在本实施例中,可以预先为不同的深度值设置权重值,权重值可根据经验值选取,本实施例对各个深度值对应的权重值不作具体限制。
[0142]
示例地,假设真实图像p在深度值d1下的深度投影图像为p1,在深度值d2下的深度投影图像为p2,在深度值d3下的深度投影图像为p3,预先为深度值d1设置的权重值为w1,预先为深度值d2设置的权重值为w2,预先为深度值d3设置的权重值为w3。那么针对虚拟视角图像中的像素区域x1,可以从深度投影图像p1中挖取对应位置的像素值y1,从深度投影图像p2中挖取对应位置的像素值y2,从深度投影图像p3中挖取对应位置的像素值y3,然后求取y1w1 y2w2 y3w3,将求得的和值作为像素区域x1处的像素值。按照相同原理,根据w1、w2以及w3,对深度投影图像p1、p2以及p3中同一像素区域的像素值进行加权求和,最终获得虚拟视角图像中每一个像素区域的像素值。在本实施例中,各个虚拟视角图像的尺寸是相同的,可以预先根据虚拟视角图像的尺寸将虚拟视角图像划分为多个像素区域,例如某尺寸为300mm
×
300mm大小的图像,可以按照100mm
×
100mm的大小为单位进行划分,得到互不重叠的9个100mm
×
100mm的区域。可以理解的是,可以将每一个像素点作为一个像素区域。
[0143]
为便于陈述本技术的图像处理方法,在此特别说明,后续各个实施例中的像素区域均以像素点为例。当像素区域不为像素点时,其对应的图像处理方法的实施原理与像素区域为像素点时对应的图像处理方法的实施原理相同。
[0144]
本实施例中预先根据经验值设置每一个深度值对应的权重,使得在获得真实图像在多个不同深度值下的针对目标视角的深度投影图像后,能根据权重值和获得的深度投影
图像快速合成真实图像在目标视角下的虚拟视角图像,提升图像合成效率。
[0145]
结合以上实施例,在一种实施方式中,本技术还提供了另一种根据获得的多个深度投影图像,获得目标视角的虚拟视角图像的方法。该方法通过深度学习网络来更为准确地获得每一个深度值下的深度投影图像的权重,从而提升最终获得的虚拟视角图像的质量。具体地,该方法可以包括如下步骤:
[0146]
将所述多个深度投影图像输入深度学习网络,获得所述目标视角的虚拟视角图像中每一个像素点的像素值;
[0147]
根据所述虚拟视角图像中每一个像素点的像素值,获得所述目标视角的虚拟视角图像。
[0148]
具体而言,将所述多个深度投影图像输入深度学习网络,获得所述目标视角的虚拟视角图像中每一个像素点的像素值,可以包括:
[0149]
将多个所述深度投影图像拼接成图像矩阵;
[0150]
将所述图像矩阵输入深度学习网络,获得分层权重矩阵;
[0151]
根据所述图像矩阵和所述分层权重矩阵获得所述目标视角的虚拟视角图像中每一个像素点的像素值。
[0152]
在本实施例中,对得到的m个从视角i投影到目标视角的w
×
h
×
3的深度投影图像进行拼接,将其拼接为w
×
h
×
3m的深度投影图像矩阵m
i
。接着,将深度投影图像矩阵m
i
输入到深度学习网络,获得w
×
h
×
m的权重矩阵w
i
,该权重矩阵w
i
为分层权重矩阵,矩阵中包括每一个深度层的权重。接着,根据分层权重矩阵w
i
获得目标视角的虚拟视角图像中每一个像素点的像素值v
a,b
。在得到虚拟视角图像p
i
中每一个像素点的像素值后,即可将各个像素点的像素值组成虚拟视角图像p
i

[0153]
结合以上实施例,在一种实施方式中,根据所述权重矩阵获得所述目标视角的虚拟视角图像中每一个像素点的像素值,可以包括:
[0154]
根据所述深度投影图像矩阵和所述权重矩阵的乘积,获得所述虚拟视角图像中每一个像素点的像素值。
[0155]
在具体实施时,可采用如下公式获得虚拟视角图像p
i
中每一个像素点的像素值:
[0156][0157]
其中,v
a,b
表示目标视角的虚拟视角图像p
i
(w
×
h
×
3)中的第a行第b列的像素点的rgb像素值,为深度投影图像矩阵m
i
第a行第b列的第3k个元素到第3k 2个元素,为分层权重矩阵矩阵w
i
第a行第b列的第k个元素。
[0158]
本实施例提出了一种基于多层深度的投影方法,通过对深度进行离散处理,对每一个离散深度值都做一次完整的图像投影,再通过深度网络学习出一个蒙版矩阵来选择不同深度的投影图像上的像素值,最终获得合成后的虚拟视角图像。
[0159]
本实施例通过深度学习网络来更为准确地获得每一个深度值下的深度投影图像的权重,可显著提升最终获得的虚拟视角图像的质量。
[0160]
结合以上实施例,在一种实施方式中,在获得所述目标视角的虚拟视角图像之后,
本技术的图像处理方法还可以包括:
[0161]
获得从多个不同于所述真实视角的其它真实视角采集的真实图像;
[0162]
利用所述其它真实视角采集的真实图像合成针对所述目标视角的修正图像;
[0163]
利用各帧所述修正图像对所述虚拟视角图像进行修正。
[0164]
在前述各个实施例中,给出了利用一帧真实图像i
i
合成目标视角的虚拟视角图像p
i
的方法。在实际实施过程中,还可以采集多余的真实图像,利用这些多余的真实图像合成多余的虚拟视角图像(合成方法既可以与虚拟视角图像p
i
的合成方法相同,也可以是其它视角图像合成方法),将这些多余的虚拟视角图像作为修正图像,对虚拟视角图像p
i
进行修正,从而进一步提升合成的虚拟视角图像p
i
的质量。其中,本实施例可采用任意方法来实现修正图像对虚拟视角图像p
i
的修正。
[0165]
通过相关技术中的自由视角合成算法合成的虚拟视角图像会存在空洞现象,即在虚拟视角可以看到的部分,在真实视角下可能会由于被遮挡而无法看到,此时如果将真实视角处的图像投影到虚拟视角下,就会产生空洞区域(利用真实视角处的图像合成的虚拟视角图像无法完全填充到虚拟视角处的实际视角图像中,未填充的部分则为空洞区域,空洞区域即无效区域),空洞区域也可以理解为无像素值的区域。
[0166]
因此,在一种实施方式中,对虚拟视角图像进行修正,可以包括:
[0167]
针对虚拟视角图像中的无效区域,利用修正图像中的相应位置处的不为空的像素值对无效区域进行填充,直到无效区域达到预设范围大小。
[0168]
通过该修正方法,可补全传统视角合成算法合成的虚拟视角图像存在的空洞区域,使得合成的虚拟视角图像更逼近虚拟视角处的真实图像,提升图像合成质量。
[0169]
结合以上实施例,在一种实施方式中,在获得所述目标视角的虚拟视角图像之后,本技术的图像处理方法还可以包括:
[0170]
获得从多个不同于所述真实视角的其它真实视角采集的真实图像;
[0171]
利用所述其它真实视角采集的真实图像合成针对所述目标视角的修正图像,所述修正图像用于对所述虚拟视角图像进行修正;
[0172]
获得所述虚拟视角图像和各帧所述修正图像各自对应的权重;
[0173]
根据所述虚拟视角图像及其对应的权重、各帧所述修正图像及其各自对应的权重,获得新的虚拟视角图像,将所述新的虚拟视角图像重新确定为从所述目标视角采集的图像。
[0174]
在本实施例中,如果只通过一帧真实图像i
i
合成目标视角下的虚拟视角图像p
i
,那么得到的虚拟视角图像p
i
与目标视角处的实际图像会有一定区别,例如在真实视角处被遮挡的部分在目标视角处可能并没有被遮挡。因此为了提升最终合成的虚拟视角图像的质量,在实际实施过程中,还可以采集多余的真实图像,利用这些多余的真实图像合成多余的虚拟视角图像,将这些多余的虚拟视角图像作为修正图像,根据p
i
、各帧修正图像及其各自对应的权重获得一帧新的虚拟视角图像,该新的虚拟视角图像相对于虚拟视角图像p
i
而言更贴近目标视角处的实际图像,因此可将该新的虚拟视角图像重新确定为从目标视角采集的图像。
[0175]
示例地,假设虚拟视角图像为p1,修正图像包括:p2及p3,虚拟视角图像p1对应的权重为w1,修正图像p2对应的权重为w2,修正图像p3对应的权重为w3,那么针对最终要得到
的虚拟视角图像中的像素区域x1,可以从p1中挖取对应位置的像素值y1,从p2中挖取对应位置的像素值y2,从p3中挖取对应位置的像素值y3,然后求取y1w1 y2w2 y3w3,将求得的和值作为像素区域x1处的像素值。按照相同原理,根据w1、w2以及w3,对p1、p2以及p3中同一像素区域的像素值进行加权求和,得到最终的虚拟视角图像中每一个像素区域的像素值。
[0176]
其中,虚拟视角图像和各帧修正图像各自对应的权重可以通过任意方式获得,例如根据经验值获得,或者通过深度学习模型获得,本实施例对各帧虚拟视角图像的权重的获得方式不作具体限制。在本实施例中,采集多帧真实图像并获得每一帧真实图像在目标视角下的虚拟视角图像,再根据各帧虚拟视角图像及其对应的权重获得最终的虚拟视角图像,该种方式可显著提升最终合成的虚拟视角图像的质量,使得最终获得的虚拟视角图像与目标视角处的实际图像更为贴近。
[0177]
下面将以一个具体实施例对本技术的图像处理方法进行详细说明。
[0178]
假设获得了n个真实视角的信息,包括:每个视角的图像数据i
cam
、相机内参、相机外参。首先设置离散深度的最小值d
min
、最大值d
max
以及深度的层数m。以第i个视角为例,可以获得视角图像i
i
(w
×
h
×
3)、相机内参int
i
、相机内参ext
i
、视角最大深度d
max

i
、视角最小深度d
min

i

[0179]
视角图像i
i
可按照下述步骤获得虚拟视角的虚拟视角图像p
i

[0180]
步骤1:计算离散深度值:在d
min

i
~d
max

i
之间选择m个深度值。
[0181]
采用的深度取值方法为:第j层深度值获得m个离散深度值。
[0182]
步骤2:计算深度投影图像。
[0183]
此处前文提到的自由视角合成算法,计算m次投影,将视角图像i
i
在不同的离散深度上进行投影,获得投影后的离散深度投影图像可获得m个从视角i投影到目标虚拟视角的离散深度投影图像。
[0184]
步骤3:计算分层权重矩阵。
[0185]
在步骤2中计获得了m个从视角i投影到虚拟视角的w
×
h
×
3的投影图像,将其拼接为w
×
h
×
3m的矩阵m
i
,并将其输入深度学习网络中,输出w
×
h
×
m的分层权重矩阵w
i

[0186]
步骤4:计算虚拟视角图像
[0187]
虚拟视角图像p
i
大小为w
×
h
×
3,其中每一个像素点的像素值为v
a,b
。v
a,b
如下所示:
[0188][0189]
其中,v
a,b
为虚拟视角图像p
i
第a行第b列像素的rg b像素值,为矩阵m
i
第a行第b列的第3k个元素到第3k 2个元素,为矩阵w
i
第a行第b列的第k个元素。
[0190]
步骤5:重复步骤1到步骤4计算完所有的视角,即可获得n个虚拟虚拟视角图像p1,p2,

,p
n

[0191]
步骤6:根据步骤5获得的n个虚拟视角图像计算虚拟合成视角。例如可以以p1为基
础图像,利用p2,

,p
n
对p1进行修正,将修正后的p1作为最终的虚拟视角图像。
[0192]
图3是本技术一实施例示出的一种图像处理过程示意图。在图3中,真实图像的数量为n(包括:视角图像1

视角图像n),首先获得每一个真实图像的多个深度投影图像,然后将多个深度投影图像拼接成深度投影图像矩阵,将深度投影图像矩阵输入深度学习网络a,获得分层权重矩阵。接着根据深度投影图像矩阵和分层权重矩阵,获得目标视角的虚拟视角图像。在获得多个目标视角的虚拟视角图像后,将多个虚拟视角图像输入深度学习网络b,获得最终的虚拟视角图像。
[0193]
在得到最终的虚拟视角图像后,基于虚拟视角处的实际图像和得到的目标虚拟视角图像,采用感知损失函数、l1损失函数、l2损失损失函数分别计算损失值,并进行加权、求和,得到总的损失值,再根据总的损失值对深度学习网络a进行调整。
[0194]
本实施例对深度学习网络a和深度学习网络b的类型不作具体限制。
[0195]
以视角图像1为例,在获得视角图像1的多个深度投影图像后,将多个深度投影图像拼接成深度投影图像矩阵后输入深度学习网络a,获得分层权重矩阵1,接着根据深度投影图像矩阵和分层权重矩阵1,获得来自视角图像1的虚拟视角图像。按照相同的方式,获得来自其它n

1个视角图像的虚拟视角图像。在获得n个虚拟视角图像后,将n个虚拟视角图像输入深度学习网络b,获得最终的虚拟视角图像,深度学习网络b可以采用任意方式根据n个虚拟视角图像获得最终的虚拟视角图像,例如可以将来自视角图像1的虚拟视角图像为基础图像,利用来自其它n

1个视角图像的虚拟视角图像作为修正图像对基础图像进行修正(任意修正方式),获得最终的虚拟视角图像。
[0196]
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
[0197]
基于同一发明构思,本发明一实施例提供一种图像处理装置400。参考图4,图4是本发明一实施例示出的一种图像处理装置的结构框图。如图4所示,该装置400包括:
[0198]
确定模块401,用于确定距离目标视角预设范围内的真实视角,所述目标视角为无法采集真实图像的视角,所述真实视角为可采集真实图像的视角;
[0199]
第一获得模块402,用于获得从所述真实视角采集的真实图像;
[0200]
第二获得模块403,用于获得所述真实图像在多个不同深度值下的针对所述目标视角的深度投影图像;
[0201]
第三获得模块404,用于根据获得的多个所述深度投影图像,获得所述目标视角的虚拟视角图像,将所述虚拟视角图像作为从所述目标视角采集的图像。
[0202]
可选地,所述第二获得模块403包括:
[0203]
第一获得子模块,用于对所述真实图像的深度值进行离散处理,获得多个离散深度值;
[0204]
第二获得子模块,用于根据每一个所述离散深度值,利用所述真实图像合成所述目标视角的深度投影图像。
[0205]
可选地,所述第一获得子模块包括:
[0206]
确定子模块,用于确定所述真实图像的最小深度值、最大深度值以及深度层数;
[0207]
第三获得子模块,用于针对所述深度层数中的每一层,根据所述最小深度值、所述最小深度值与所述最大深度值的差值以及当前深度层数,获得该层的离散深度值。
[0208]
可选地,所述第三获得模块404包括:
[0209]
第四获得子模块,用于将所述多个深度投影图像输入深度学习网络,获得所述目标视角的虚拟视角图像中每一个像素点的像素值;
[0210]
第五获得子模块,用于根据所述虚拟视角图像中每一个像素点的像素值,获得所述目标视角的虚拟视角图像。
[0211]
可选地,所述第四获得子模块包括:
[0212]
拼接子模块,用于将所述多个深度投影图像拼接成图像矩阵;
[0213]
输入子模块,用于将所述图像矩阵输入深度学习网络,获得分层权重矩阵,所述分层权重矩阵包含所述图像矩阵中各个像素点对应的权重值;
[0214]
第六获得子模块,用于根据所述图像矩阵和所述分层权重矩阵获得所述目标视角的虚拟视角图像中每一个像素点的像素值。
[0215]
可选地,所述装置400还包括:
[0216]
第四获得模块,用于获得从多个不同于所述真实视角的其它真实视角采集的真实图像;
[0217]
第一合成模块,用于利用所述其它真实视角采集的真实图像合成针对所述目标视角的修正图像;
[0218]
修正模块,用于利用各帧所述修正图像对所述虚拟视角图像进行修正。
[0219]
可选地,所述装置400还包括:
[0220]
第五获得模块,用于获得从多个不同于所述真实视角的其它真实视角采集的真实图像;
[0221]
第二合成模块,用于利用所述其它真实视角采集的真实图像合成针对所述目标视角的修正图像,所述修正图像用于对所述虚拟视角图像进行修正;
[0222]
第六获得模块,用于获得所述虚拟视角图像和各帧所述修正图像各自对应的权重;
[0223]
第七获得模块,用于根据所述虚拟视角图像及其对应的权重、各帧所述修正图像及其各自对应的权重,获得新的虚拟视角图像,将所述新的虚拟视角图像重新确定为从所述目标视角采集的图像。
[0224]
本发明实施例还提供了一种终端设备,如图5所示。图5是本技术一实施例示出的一种终端设备的结构示意图。参照图5,终端设备包括处理器51、通信接口52、存储器53和通信总线54,其中,处理器51,通信接口52,存储器53通过通信总线54完成相互间的通信;
[0225]
存储器53,用于存放计算机程序;
[0226]
处理器51,用于执行存储器53上所存放的程序时,实现如下步骤:
[0227]
确定距离目标视角预设范围内的真实视角,所述目标视角为无法采集真实图像的视角,所述真实视角为可采集真实图像的视角;
[0228]
获得从所述真实视角采集的真实图像;
[0229]
获得所述真实图像在多个不同深度值下的针对所述目标视角的深度投影图像;
[0230]
根据获得的多个所述深度投影图像,获得所述目标视角的虚拟视角图像,将所述虚拟视角图像作为从所述目标视角采集的图像。
[0231]
或者处理器51在执行存储器53上所存放的程序时,实现上述其他方法实施例中的步骤。
[0232]
上述终端提到的通信总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0233]
通信接口用于上述终端与其他设备之间的通信。
[0234]
存储器可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0235]
上述的处理器可以是通用处理器,包括中央处理器(centra lprocessing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signa lprocessing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0236]
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的网页显示方法。
[0237]
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一所述的网页显示方法。
[0238]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
[0239]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备
所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0240]
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0241]
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜