深度图像的稳像方法、电子设备及存储介质与流程

文档序号:32983738发布日期:2023-01-17 22:25阅读:38来源:国知局
深度图像的稳像方法、电子设备及存储介质与流程

1.本技术实施例涉及图像处理领域,特别涉及一种深度图像的稳像方法、电子设备及存储介质。


背景技术:

2.基于二维图像的稳像算法是一种较为成熟的技术,其原理是通过陀螺仪、或基于特征的图像算法获取视频中帧间图像的运动路径,对运动路径进行平滑处理,从而消除视频图像中的随机抖动,实现稳像。
3.随着光电技术的发展,表达所拍摄场景的三维信息的深度图像在工业、消费电子等领域得到了广泛应用,如:三维环境感知、vr技术、人脸识别、活体检测等等应用场景。由此也催生了深度图像的防抖功能。如车载相机、户外运动相机在拍摄深度图像时,若抖动严重,极易影响图像数据的采集和操控体验;又比如在vr相关应用中,常使用深度相机来获取人体姿态、位置,若不添加抖动功能,原始图像数据中的噪声极易产生眩晕感,vr体验效果差。
4.然而,目前没有一种效果较好的基于深度图像的稳像算法。另外,由于二维图像在稳像处理时采用rgb颜色信息进行计算,而深度图像存储的是三维信息,两者蕴含的信息有根本差别,导致基于二维图像的稳像方法也无法用于深度图像上。


技术实现要素:

5.本技术实施方式的目的在于提供一种深度图像的稳像方法、电子设备及存储介质,采用包含当前帧的连续k帧深度图像对当前帧深度图像进行稳像处理,能有效滤除图像抖动的同时,还能达到较快的处理速度。
6.为解决上述技术问题,本技术的实施方式提供了一种深度图像的稳像方法,包括:根据拍摄截止到当前帧的连续k帧中每帧深度图像的相机的原始的位姿参数,对当前帧的原始相机位姿进行平滑处理,得到当前帧的平滑后的位姿参数;根据当前帧的所述平滑后的位姿参数和当前帧的所述原始的位姿参数,将当前帧的深度图像的点云数据映射到图像坐标系,得到当前帧的稳像后的深度图像;其中,所述原始的位姿参数为相机坐标系转换到预设基准坐标系的转换参数。
7.本技术的实施方式还提供了一种电子设备,包括:至少一个处理器;以及,与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使所述至少一个处理器能够执行以上实施方式所述的深度图像的稳像方法。
8.本技术的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时实现上述实施方式提及的深度图像的稳像方法。
9.本技术实施方式提供的深度图像的稳像方法,根据截止到当前帧的连续k帧中每帧深度图像对应的相机的原始的位姿参数,即每帧深度图像对应的相机坐标系转换到基准
坐标系的转换参数,对当前帧的相机位姿(位置和姿态)进行平滑处理,滤除随机抖动,得到平滑后的位姿参数,然后根据平滑后的位姿参数和原始的位姿参数,将当前帧深度图像的点云数据映射到图像坐标系,即可得到稳像后的深度图像。整个方法只采用包含当前帧的连续k帧深度图像进行稳像处理,在能有效滤除图像抖动的同时,还能达到较快的处理速度。
10.另外,本技术实施方式提供的深度图像的稳像方法,对于所述连续k帧中每帧深度图像,判断所述深度图像的空洞率是否小于第一阈值;若是,确定所述深度图像为有效深度图像;若否,确定所述深度图像为无效深度图像;获取拍摄所述连续k帧中有效深度图像的相机的所述原始的位姿参数,对当前帧的相机位姿进行平滑处理,得到所述平滑后的位姿参数。本技术通过对当前帧是否为有效深度图像进行判断,提高处理效率,减少不必要的计算。
11.另外,本技术实施方式提供的深度图像的稳像方法,将当前帧的深度图像的点云数据和与当前帧最临近帧的有效深度图像的点云数据进行点云匹配,确定各点云数据的一一对应关系;根据所述各点云数据的一一对应关系,计算当前帧的相机坐标系转换到与当前帧最临近帧的相机坐标系的中间位姿参数;根据所述中间位姿参数和与当前帧最临近帧的原始的位姿参数,获取当前帧的深度图像的原始的位姿参数。本技术将最临近帧的有效深度图像作为当前帧的深度图像的相机坐标系与基准坐标系之间的转换桥梁,以降低转换过程中点云匹配难度,提高处理速度。
12.另外,本技术实施方式提供的深度图像的稳像方法,对所述拍摄截止到当前帧的连续k帧中有效深度图像的相机的原始的位姿参数中平移矩阵进行平均计算,得到平滑后的平移矩阵;对所述拍摄截止到当前帧的连续k帧中有效深度图像的相机的原始的位姿参数中旋转矩阵进行平均计算和叉乘计算,得到平滑后的旋转矩阵,并将所述平滑后的平移矩阵和所述平滑后的旋转矩阵作为所述平滑后的位姿参数。本技术通过对原始的位姿参数中平移矩阵进行平均计算,对原始的位姿参数中旋转矩阵进行平均计算和叉乘计算获得平滑后的相机位姿,平滑方法简单有效、速度快。
附图说明
13.一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
14.图1是本技术实施方式提供的深度图像的稳像方法的流程图;图2是本技术实施方式提供的电子设备的结构示意图。
具体实施方式
15.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合附图对本技术的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本技术各实施方式中,为了使读者更好地理解本技术而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本技术所要求保护的技术方案。
16.下面对本实施方式的深度图像的稳像系统方法的实现细节进行举例说明。以下内
容仅为方便理解而提供的实现细节,并非实施本方案的必须。
17.本技术的实施方式涉及一种深度图像的稳像方法,如图1所示,包括。
18.步骤101,根据拍摄截止到当前帧的连续k帧中每帧深度图像的相机的原始的位姿参数,对当前帧的原始相机位姿进行平滑处理,得到当前帧的平滑后的位姿参数。
19.本实施例中,深度图像抖动的本质原因是运动过程中,深度感知设备位姿变换过快。因此,若要对深度图像进行稳像处理,就需要对相机的位姿或运动路径进行平滑,以滤除拍摄过程中的抖动。而由于相机在拍摄获取深度图像的过程中,相机位姿不断变化,相机坐标系也不断变化,因此,在稳像处理前需要将每一帧深度图像对应的相机坐标系统一到一个基准坐标系。原始的位姿参数就是相机坐标系转换到预设基准坐标系的转换参数。
20.可以理解的是,每一帧深度图像都是相机在不同相机位姿下拍摄的,因此,每一帧都对应一个原始的位姿参数,该原始的位姿参数表示拍摄该帧深度图像时的相机坐标系转换到预设基准坐标系的转换参数。
21.在一实施例中,步骤101包括:对于连续k帧中每帧深度图像,判断深度图像的空洞率是否小于第一阈值;若是,确定深度图像为有效深度图像;若否,确定深度图像为无效深度图像;获取拍摄所述连续k帧中有效深度图像的相机的所述原始的位姿参数,对当前帧的相机位姿进行平滑处理,得到平滑后的位姿参数。
22.具体地说,在对每一个当前帧进行处理时,先判断当前帧的深度图像是否为有效深度图像,若是有效深度图像,则获取当前帧深度图像对应的相机原始的位姿参数,并对当前帧的原始相机位姿进行平滑处理;若当前帧深度图像为无效深度图像,则直接采用截止到当前帧的连续k帧中有效深度图像对应的相机原始的位姿参数,对当前帧的相机位姿进行平滑处理。
23.对于深度感知设备输出的深度图像数据流,例如:假设k=5,则在截止到当前帧的连续5帧中,有4帧深度图像为有效深度图像,根据4帧有效深度图像对应的相机原始的位姿参数,对当前帧的原始相机位姿进行平滑处理。也就是说,对当前帧的平滑处理,采用的是当前帧和历史k-1帧,共连续k帧中全部或部分的原始的位姿参数。当然,平滑帧数k的设置可以根据对处理速度的要求、稳像效果的要求、稳像处理设备的性能等各种因素综合考虑。
24.需要注意的是,深度感知设备输出的深度图像的数据流是不断刷新的,当前帧的深度图像也是不断刷新变化的,因此截止到当前帧的连续k帧的深度图像也是不断变化的。
25.例如:k=4,截止到当前帧的连续4帧中,第k帧(当前帧)、第k-1帧、第k-2帧对应的深度图像均为有效深度图像,第k-3帧为无效深度图像,则计算时采用第k帧(当前帧)、第k-1帧、第k-2帧对应的原始的位姿参数对当前帧的相机位姿进行平滑处理。
26.下一时刻,当前帧的深度图像刷新为新的深度图像,在截止到当前帧的连续4帧中,若当前帧为有效深度图像,则计算时采用第k帧(当前帧)、第k-1帧(上一时刻的当前帧)、第k-2帧(上一时刻的第k-1帧)、第k-3帧(上一时刻的第k-2帧)对应的原始的位姿参数,对当前帧的原始相机位姿进行平滑处理。若当前帧为无效深度图像,则计算时采用第k-1帧(上一时刻的当前帧)、第k-2帧(上一时刻的第k-1帧)、第k-3帧(上一时刻的第k-2帧)对应的第一旋转矩阵和第一平移矩阵对当前帧的相机位姿进行平滑处理。
27.由此可见,对不同时刻的当前帧的相机位姿进行平滑处理时采用的数据可能相同,也可能不同。
28.可以理解的是,进行稳像处理的电子设备在获取每个当前帧的有效深度图像对应的原始的位姿参数后,都会将原始的位姿参数的数据保存,以便对下一时刻的深度图像的相机位姿进行平滑处理。如此,在处理前判断深度图像的有效性可以进一步提高深度视频稳像处理效率,避免深度图像中无效像素点过多影响稳像效果。
29.其中,有效深度图像为深度图像的空洞率小于第一阈值的深度图像。无效深度图像为深度图像的空洞率大于或等于第一阈值的深度图像。空洞率指的是深度图像中像素点深度值为无效值(例如深度值为0)的像素点数量占总像素点数量的比例。
30.另外,基准坐标系为当前帧的深度图像所在深度视频中空洞率小于第二阈值的任一帧深度图像的相机坐标系;其中第二阈值小于第一阈值。比如:在深度视频中起始帧的深度图像的空洞率小于第二阈值,则将起始帧的相机坐标系作为基准坐标系,则起始帧对应的原始的位姿参数中旋转矩阵为单位矩阵,起始帧对应的原始的位姿参数中平移矩阵为0。当然,也可选取其他空洞率小于第二阈值的深度图像的相机坐标系作为基准坐标系。
31.进一步地,获取拍摄连续k帧中有效深度图像的相机的原始的位姿参数,包括:将当前帧的深度图像的点云数据和与当前帧最临近帧的有效深度图像的点云数据进行点云匹配,确定各点云数据的一一对应关系;根据各点云数据的一一对应关系,计算当前帧的相机坐标系转换到与当前帧最临近帧的相机坐标系的中间位姿参数;根据中间位姿参数和与当前帧最临近帧的原始的位姿参数,获取当前帧的深度图像的原始的位姿参数。
32.具体地说,由于基准坐标系为深度视频中空洞率小于第二阈值的任一帧深度图像的相机坐标系,若基准坐标系对应的帧时刻与当前帧之间存在较多无效深度图像,或基准坐标系对应的帧时刻的相机视角(拍摄场景)与当前帧时刻的相机视角(拍摄场景)差异过大,都有可能导致点云匹配失败,无法获取原始的位姿参数。因此,本技术将与当前帧最临近帧的有效深度图像作为当前帧的相机坐标系和基准坐标系之间的转换桥梁,先将当前帧的相机坐标系转换到与当前帧最临近帧有效深度图像对应的相机坐标系,转换关系表示为中间位姿参数。然后再根据历史时刻计算的、与当前帧最临近帧的相机坐标系转换到基准坐标系的原始的位姿参数,获取当前帧的原始的位姿参数。
33.通过如下公式将当前帧的相机坐标系转换到最临近帧有效深度图像对应的相机坐标系:其中,p
i-a
为与当前帧最临近帧的有效深度图像的点云数据,pi为当前帧深度图像的点云数据,r
i(i-a)
为当前帧i的相机坐标系转换到最临近帧i-a的有效深度图像的相机坐标系的旋转矩阵,即中间位姿参数中的旋转矩阵,t
i(i-a)
为当前帧i的相机坐标系转换到最临近帧i-a的有效深度图像的相机坐标系的平移矩阵,即中间位姿参数中的平移矩阵。i(0)表示当前帧的相机坐标系转换到基准坐标系,i(i-a)表示当前帧的相机坐标系转换到最临近帧的有效深度图像的相机坐标系,例如:当前帧i的前一帧为有效深度图像,则最临近的有效深度图像的帧时刻表示为i-1,若当前帧i的前两帧均为无效深度图像,当前帧之前第三帧为有效深度图像,则最临近的有效深度图像的帧时刻表示为i-3。
34.通过如下公式获取当前帧的原始的位姿参数:
其中,r
i(0)
为当前帧原始的位姿参数中的旋转矩阵,t
i(0)
为当前帧原始的位姿参数中的平移矩阵,r
i-a(0)
为与当前帧最临近帧的有效深度图像对应的原始的位姿参数中的旋转矩阵,t
i-a(0)
为与当前帧最临近帧的有效深度图像对应的原始的位姿参数中的平移矩阵,r
i(i-a)
为中间位姿参数中的旋转矩阵,t
i(i-a)
为中间位姿参数中的平移矩阵。
35.其中,在将当前帧的深度图像的点云数据和与当前帧最临近帧的有效深度图像的点云数据进行点云匹配的过程中,若点云匹配失败,则将当前帧的深度图像作为无效深度图像。对该无效深度图像也采用截止到当前帧的连续k帧中有效深度图像对应的原始的位姿参数进行平滑处理。
36.在一实施例中,位姿参数包括:旋转矩阵和平移矩阵;根据拍摄截止到当前帧的连续k帧中每帧深度图像的相机的原始的位姿参数,对当前帧的相机位姿进行平滑处理,得到平滑后的位姿参数,包括:对拍摄截止到当前帧的连续k帧中有效深度图像的相机的原始的位姿参数中平移矩阵进行平均计算,得到平滑后的平移矩阵;对拍摄截止到当前帧的连续k帧中有效深度图像的相机的原始的位姿参数中旋转矩阵进行平均计算和叉乘计算,得到平滑后的旋转矩阵,并将平滑后的平移矩阵和平滑后的旋转矩阵作为平滑后的位姿参数。
37.具体地说,平滑后的旋转矩阵获取步骤为:对于拍摄截止到当前帧的连续k帧中有效深度图像的相机的原始的位姿参数,计算这些原始的位姿参数中旋转矩阵中z轴参数的平均值和x轴参数的平均值;将z轴参数的平均值与x轴参数的平均值进行叉乘得到平滑后的旋转矩阵中的y轴参数;将y轴参数与z轴参数的平均值进行叉乘得到平滑后的旋转矩阵中的x轴参数,并将x轴参数、y轴参数和z轴参数的平均值组合得到平滑后的旋转矩阵。
38.通过如下公式获取第二平移矩阵:其中,m为包含当前帧的连续k帧中有效深度图像的数量,vi=1表示第i帧的深度图像为有效深度图像,t
i(0)
为第i帧的原始的位姿参数中的平移矩阵。例如:假设k=4,当前帧和前三帧的深度图像均为有效深度图像,则m=4,平滑后的平移矩阵就是将当前帧i的原始的位姿参数中的平移矩阵、第i-1帧的原始的位姿参数中的平移矩阵、第i-2帧的原始的位姿参数中的平移矩阵、第i-3帧的原始的位姿参数中的平移矩阵求和再平均后的平均值。
39.通过如下公式获取第二旋转矩阵:
其中,r
zsmooth
为当前帧平滑后的旋转矩阵中的z轴参数,r
zi(0)
为当前帧原始的位姿参数中的旋转矩阵中的z轴参数,r
xi(0)
为当前帧原始的位姿参数中的旋转矩阵中的x轴参数,r
ysmooth
为当前帧平滑后的旋转矩阵中的y轴参数,r
xsmooth
为当前帧平滑后的旋转矩阵中的x轴参数。
40.在计算过程中,由于r
zsmooth
与r
x_avg
通常接近于正交的但非绝对正交,故r
x_avg
不能直接作为平滑后的x轴,可以先用叉乘计算平滑后的y轴参数,再计算平滑后的x轴参数。然后得到平滑后的旋转矩阵r
smooth
=(r
xsmooth
,r
ysmooth
,r
zsmooth
),旋转矩阵中x轴参数、y轴参数、z轴参数表示x轴方向向量、y轴方向向量、z轴方向向量。
41.步骤102,根据当前帧的平滑后的位姿参数和当前帧的原始的位姿参数,将当前帧的深度图像的点云数据映射到图像坐标系,得到当前帧的稳像后的深度图像。
42.本实施例中,在获取平滑后的相机位姿(第二旋转矩阵和第二平移矩阵)后,将当前帧点云数据转换到平滑后的相机坐标系中,将在平滑后的相机坐标系中的点云数据重新映射到图像坐标系即可得到稳像处理后的深度图像。
43.在一实施例中,步骤102包括:根据当前帧的平滑后的位姿参数和当前帧的原始的位姿参数,计算得到当前帧深度图像在平滑相机位姿参数后的相机坐标系上的点云数据;根据相机的焦距、相机的主点坐标和点云数据,映射得到当前帧各像素点的图像坐标和各像素点的深度值,并将图像坐标和对应的深度值组合得到当前帧的稳像后的深度图像。
44.采用如下公式得到当前帧深度图像在平滑后的相机坐标系上的点云数据:其中,p
smooth
为当前帧深度图像在平滑相机位姿参数后的相机坐标系上的点云数据,r
smooth
为相机在当前帧的平滑后的位姿参数中的旋转矩阵,t
smooth
为相机在当前帧的平滑后的位姿参数中的平移矩阵,r
i(0)
为相机在当前帧的原始的位姿参数中的旋转矩阵,t
i(0)
为相机在当前帧的原始的位姿参数中的平移矩阵。
45.采用如下公式得到稳像后的深度图像:
其中,x
smooth
、y
smooth
、z
smooth
为当前帧深度图像在平滑后的相机坐标系上的点云数据p
smooth
的x坐标、y坐标和z坐标,f为相机焦距,c
x
、cy为相机主点坐标。u
smooth
、v
smooth
为稳像后的深度图像的像素坐标,z
smooth
为稳像后深度图像的深度值。
46.本技术实施方式提供的深度图像的稳像方法,根据截止到当前帧的连续k帧中每帧深度图像对应的相机的原始的位姿参数,即每帧深度图像对应的相机坐标系转换到基准坐标系的转换参数,对当前帧的相机位姿(位置和姿态)进行平滑处理,滤除随机抖动,得到平滑后的位姿参数,然后根据平滑后的位姿参数和原始的位姿参数,将当前帧深度图像的点云数据映射到图像坐标系,即可得到稳像后的深度图像。整个方法只采用包含当前帧的连续k帧深度图像进行稳像处理,在能有效滤除图像抖动的同时,还能达到较快的处理速度。
47.上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。
48.本技术的实施方式涉及一种电子设备,如图2所示,包括:至少一个处理器201;以及,与至少一个处理器201通信连接的存储器202;其中,存储器202存储有可被至少一个处理器201执行的指令,指令被至少一个处理器201执行,以使至少一个处理器201能够执行如上述实施方式提及的深度图像的稳像方法。
49.该电子设备包括:一个或多个处理器201以及存储器202,图2中以一个处理器201为例。处理器201、存储器202可以通过总线或者其他方式连接,图2中以通过总线连接为例。存储器202作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。处理器201通过运行存储在存储器202中的非易失性软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述深度图像的稳像方法。
50.存储器202可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储选项列表等。此外,存储器202可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施方式中,存储器202可选包括相对于处理器201远程设置的存储器,这些远程存储器可以通过网络连接至外接设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
51.一个或者多个模块存储在存储器202中,当被一个或者多个处理器201执行时,执行上述任意实施方式中的深度图像的稳像方法。
52.上述产品可执行本技术实施方式所提供的方法,具备执行方法相应的功能模块和
有益效果,未在本实施方式中详尽描述的技术细节,可参见本技术实施方式所提供的深度图像的稳像方法。
53.本技术的实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述深度图像的稳像方法的实施例。
54.即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
55.本领域的普通技术人员可以理解,上述各实施方式是实现本技术的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本技术的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1