一种深度真值获取方法、装置、系统及深度相机与流程

文档序号:25612420发布日期:2021-06-25 15:18阅读:206来源:国知局
一种深度真值获取方法、装置、系统及深度相机与流程

1.本申请属于计算机视觉技术领域,尤其涉及一种深度真值获取方法、装置、系统及深度相机。


背景技术:

2.为了获得更为优质的三维信息和解决传统三维测量方法中难以克服的一些问题,越来越多的三维测量方法开始使用深度学习算法计算深度。如利用深度学习从单幅rgb图像或灰度图像中重构场景三维信息,用深度学习解决间接飞行时间(indirect time of flight,itof)测量中多路径和散射等效应导致的深度错误问题。而深度学习需要大量的数据和深度的真值(ground truth)作为训练样本,训练样本数量和深度真值的精度直接决定了深度学习算法的最终表现。


技术实现要素:

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.图1是本申请一实施例提供的一种深度真值获取系统的结构示意图;
41.图2是本申请一实施例提供的一种处理单元的结构示意图;
42.图3是本申请一实施例提供的一种深度真值获取方法的实现流程示意图;
43.图4是本申请一实施例提供的一种深度真值获取方法中步骤s310的具体实现流程示意图;
44.图5是本申请一实施例提供的一种深度真值获取方法中步骤s320的具体实现流程示意图;
45.图6是本申请一实施例提供的一种直线拟合点云数据以确定角点的示意图;
46.图7是本申请一实施例提供的多个标定板的结构示意图;
47.图8是本申请一实施例提供的一种深度真值获取装置的示意图;
48.图9是本申请一实施例提供的一种深度真值获取装置的示意图;
49.图10是本申请一实施例提供的一种深度真值获取装置中求解模块的示意图。
50.图11是根据本申请一实施例提供的一种深度相机结构示意图。
具体实施方式
51.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
52.在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
53.在本申请说明书中描述的“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
54.此外,在本申请的描述中,“多个”的含义是两个或两个以上。术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
55.还应当理解,除非另有明确的规定或限定,术语“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是直接相连,也可以是通过中间媒介间
接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
56.为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
57.图1为本申请一实施例提供的一种深度真值获取系统的结构示意图。如图1所示,深度真值获取系统包括相机11、激光雷达12和处理单元13。相机11和激光雷达12均可以与处理单元13进行数据交互。
58.相机11用于采集场景的二维图像。激光雷达12用于采集场景的深度图像。处理单元13用于根据二维图像和深度图像获取相机视角下场景的深度真值。
59.在一些实施例中,相机11和激光雷达12尽可能地相邻放置。相机的接收模块与激光雷达的接收端尽可能地相邻放置,使相机的接收模块与激光雷达的接收端具有尽可能大的共视场。作为一非限制性示例,相机的接收模块与激光雷达的接收端紧邻放置或贴合放置,使相机的接收模块与激光雷达的接收端具有最大的共视场。
60.相机11是可以获取场景的二维图像的成像器件。在一些实施例中,相机11可以为深度相机,深度相机包括但不限于例如itof相机或直接飞行时间(direct time of flight,dtof)相机等基于光飞行时间(time of flight,tof)法的相机、基于结构光法的相机、或基于双目立体视觉法的相机等。在其他一些实施例中,相机11可以为rgb相机或黑白相机等成像器件。本申请实施例对相机的类型不作限制。
61.作为一非限制性示例,以相机为itof相机为例进行说明。itof相机包括投影模块和红外接收模块。其中,投影模块可以包括光源和光学组件等。光源可以是边发射激光器(edge emitting laser,eel)、垂直腔面发射激光器(vertical cavity surface emitting laser,vcsel)等光源,也可以是多个光源组成的光源阵列。光源所发射的光束可以是可见光、红外光、紫外光等。光学组件可以包括衍射光学元件等。光源发射的光束经光学组件后可以在参考平面上形成均匀、随机或者特殊设计的强度分布投影图案。红外接收模块为图像传感器。图像传感器可以是电荷耦合元件(charge coupled device,ccd)、互补金属氧化物半导体(complementary metal

oxide

semiconductor transistor,cmos)、雪崩二极管(avalanche diode,ad)、单光子雪崩二极管(single photon avalanche diode,spad)等组成的图像传感器,本申请对此不作限制。
62.在一些实施例中,激光雷达12可以为面阵激光雷达。作为一非限制性示例中,面阵激光雷达包括激光发射器和光电探测接收端。激光发射器用于发射光源。作为一种实现方式,激光发射器可以为半导体激光器。更具体地,激光发射器可为在单块半导体基底上生成多个vcsel光源以形成的vcsel阵列光源芯片。vcsel阵列光源芯片可以以一定频率(或称为脉冲周期)向外发射脉冲光束,脉冲光束投射至场景上形成照明斑点(即光斑)。脉冲光束的频率可以根据测量距离进行设定。光电探测接收端用于接收脉冲光束的回波信号,通过捕获回波信号的光强信息以确定场景的深度信息。
63.在其他实现方式中,激光发射器还可以为固态激光器等其他类型的激光器,光电探测接收端可以为ccd等面阵光强采集器件,本申请对两者不作限制。
64.需要说明的是,本申请一些实施例使用深度相机的红外接收模块采集二维图像,并不需要开启深度相机的投影模块,因而深度相机与激光雷达在采集图像时并不存在相互干扰的问题,因此,深度相机和激光雷达可时序或同步采集标定板的图像,此处不作限制。
65.在图1所示实施例中,处理单元13为计算机。在其他一些实施例中,处理单元14可以包括车载终端、机器人、手机、平板电脑、笔记本电脑、上网本、个人数字助理(personal digital assistant,pda)等电子设备。本申请实施例对处理单元13的具体类型不作任何限制。
66.在本申请一些实施例中,如图2所示,处理单元可以包括一个或多个处理器20(图2中仅示出一个),存储器21以及存储在存储器21中并可在一个或多个处理器20上运行的计算机程序22,例如,获取深度真值的程序。一个或多个处理器20执行计算机程序22时可以实现后述深度真值获取方法实施例中的各个步骤,此处不作限制。
67.本领域技术人员可以理解,图2仅仅是处理单元的示例,并不构成对处理单元的限定。处理单元可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如处理单元还可以包括输入输出设备、网络接入设备、总线等。
68.在一个实施例中,所称处理器20可以是中央处理单元(central processing unit,cpu),还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现成可编程门阵列(field

programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
69.在一个实施例中,存储器21可以是处理单元的内部存储单元,例如处理单元的硬盘或内存。存储器21也可以是处理单元的外部存储设备,例如处理单元上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,存储器21还可以既包括处理单元的内部存储单元也包括外部存储设备。存储器21用于存储计算机程序以及处理单元所需的其他程序和数据。存储器21还可以用于暂时地存储已经输出或者将要输出的数据。
70.本申请一实施例还提供了处理单元14的另一种优选的实施例,在本实施例中,处理单元包括一个或多个处理器,该一个或多个处理器用于执行存在存储器的以下程序模块:获取模块、求解模块、和深度真值计算模块。
71.其中,获取模块,用于获取相机和激光雷达分别采集的不同姿态的目标物的二维图像和深度图像。
72.求解模块,用于将深度图像转换为点云数据,求解点云数据与二维图像的变换关系,获得第一变换矩阵。
73.深度真值计算模块,用于利用第一变换矩阵将点云数据投影至相机的成像平面以获取深度真值。
74.在一些实施例中,处理单元可以独立于深度相机和激光雷达,参见图1所示实施例。在其他一些实施例中,处理单元可以集成于双目相机和目标相机中的至少一个。也就是说,在其他一些实施例中,深度相机和/或激光雷达自身的一个或多个处理器在执行存储在存储器中的计算机程序时可以实现后述深度真值获取方法实施例中的一个或多个步骤。或者,深度相机和/或激光雷达自身的一个或多个处理器在执行存储在存储器中的计算机程序时可以实现后述各深度真值获取装置实施例中一个或多个模块/单元的功能。
75.图3是本申请一实施例提供的一种深度真值获取方法的实现流程示意图。本实施
例中的深度真值获取方法可由处理单元执行,处理单元包括但不限于计算机、深度相机或激光雷达等。作为一示例而非限定,深度真值获取方法可应用于图1所示的深度真值获取系统,深度真值获取方法可由图1或图2所示实施例中的处理单元执行。本实施例中的深度真值获取方法适用于需要获取场景深度真值的情形。如图3所示的深度真值获取方法,可以包括:步骤s310至步骤s330。
76.s310,获取相机和激光雷达分别采集的不同姿态的目标物的二维图像和深度图像。
77.处理单元获取相机和激光雷达分别采集的不同姿态的目标物的二维图像和深度图像。其中,相机用于采集目标物的二维图像,激光雷达用于采集目标物的深度图像。目标物为拍摄对象,可以为场景中的任何物体,例如可以为标定板等。
78.相机采集的二维图像,激光雷达采集的深度图像都传输至处理单元进行后续处理。
79.在一些实施例中,处理单元包括通信模块和/或输入输出设备,可以通过通信模块和/或输入输出设备从相机和激光雷达,分别获取二维图像和深度图像。基于图1所示的实施例,在一些实现方式中,计算机接收相机和激光雷达分别主动传输的二维图像和深度图像,也就是说,相机和激光雷达可以在分别采集二维图像和深度图像后,主动发送采集的二维图像和深度图像给计算机。在其他一些实现方式中,计算机可以主动获取相机和激光雷达采集的二维图像和深度图像。
80.在其他一些实施例中,处理单元包括处理器,处理单元可以从与其处理器耦合的存储器(例如外部存储设备或内部存储单元)中获取深度相机采集的目标物的二维图像,以及激光雷达采集的目标物的深度图像。相机采集的目标物的二维图像,激光雷达采集的目标物的深度图像事先存储于存储器中,待需要获取场景的深度真值时,处理单元从存储器调用事先存储的二维图像和深度图像。
81.在一些实施例中,如图4所示,步骤s310可以包括步骤s311至s312。
82.s311,获取相机与激光雷达分别采集的目标物的二维图像和深度图像。
83.当目标相机与激光雷达置于目标物前,启动相机和激光雷达分别采集目标物的二维图像和深度图像。
84.在一些实施例中,当目标相机与激光雷达置于目标物前,可以由处理单元控制相机和激光雷达启动,分别采集目标物的二维图像和深度图像。相机将采集的二维图像传输至处理单元,激光雷达将采集的深度图像传输至处理单元。
85.在其他一些实施例中,当目标相机与激光雷达置于目标物前,可以由人工启动相机和激光雷达,相机和激光雷达分别采集目标物的二维图像和深度图像。相机将采集的二维图像传输至处理单元,激光雷达将采集的深度图像传输至处理单元。
86.这样,处理单元获取了某一姿态的目标物的二维图像和深度图像。
87.s312,获取不同姿态的目标物的二维图像和深度图像。
88.改变目标物的姿态,例如改变目标物的角度和/或位置等。
89.在一些实施例中,处理单元连接移动装置和/或旋转装置,目标物设置于移动装置和/或旋转装置,处理单元通过控制移动装置和/或旋转装置带动目标物平移和/或旋转以改变目标物的姿态。作为一非限制性示例,移动装置可以包括步进电机等,旋转装置可以包
括驱动马达等。处理单元可以控制步进电机旋转,进而带动目标物进行步进旋转,从而改变目标物的角度。处理单元可以控制驱动马达移动,进而带动目标物平移,从而改变目标物的位置。
90.在其他一些实施例中,也可以手动改变目标物的姿态。
91.在每次改变目标物的姿态后,通过相机和激光雷达分别采集该姿态的目标物的二维图像和深度图像。这样,相机和激光雷达就采集到不同姿态的目标物的多组图像,即二维图像和深度图像。
92.需要说明的是,在一些实施例中,根据实际情况,相机可以一次或分多次将采集的多个二维图像传输至处理单元。激光雷达可以一次或分多次将采集的多个深度图像传输至处理单元。
93.s320,将深度图像转换为点云数据,求解点云数据与二维图像的变换关系,获得第一变换矩阵。
94.具体地,处理单元将激光雷达采集的深度图像转换为点云数据,然后再求解点云数据与二维图像的变换关系,获得第一变换矩阵。
95.在一些实施例中,如图5所示,步骤s320可以包括步骤s321至s322。
96.s321,将深度图像转换为点云数据。
97.作为一非限制性示例,将深度图像转换为点云数据的计算方法为:
[0098][0099]
其中,(x
s
,y
s
,z
s
)为激光雷达坐标系下的点云三维坐标,z为每个像素上的深度,(u,v)为像素坐标,(u0,v0)为图像主点坐标,dx和dy为激光雷达的传感器像元在两个方向上的物理尺寸,f’为焦距(单位为毫米)。
[0100]
s322,利用二维图像和点云数据中特征点对的坐标信息,求解点云数据与二维图像的变换关系,获得第一变换矩阵。
[0101]
特征点包括但不限于尖锐边、光滑边、脊或谷、尖头等。二维图像和点云数据中对应目标物上同一点的两个特征点为特征点对(或称为匹配点对)。
[0102]
作为一实现方式,可以在二维图像和深度图像中利用角点检测算法分别提取图像中目标物的角点坐标,二维图像中获取的是角点的像素坐标,深度图像中获取角点坐标后还需将角点深度转换为点云得到角点的三维坐标。
[0103]
在一些实施例中,目标物可以采用标定板。由于标定板的形状已知,角点在图像中的分布也已知,很容易通过角点坐标或人工选点的方法将二维图像中的特征点与点云数据中的特征点一一对应起来。
[0104]
更具体地,假设itof相机采集的二维图像中某一特征点的像素坐标为(u,v),深度为z
c
,激光雷达获取的点云数据对应的特征点的坐标为(x,y,z),利用第一变换矩阵,可获取二维图像与点云数据的坐标变换关系,即:
[0105][0106]
其中,为itof相机的相机内参,可事先通过相机标定获得,表示为第一变换矩阵,r表示旋转矩阵,t表示偏移矩阵,更具体地:
[0107][0108][0109]
这种已知三维空间和二维图像上对应点对求解相机位姿的问题,可通过求解角度

n

点(perspective

n

point,pnp)问题得到矩阵r和t的值,即第一变换矩阵。求解pnp的具体方法可以采用三对特征点对估计位姿的p3p、直接线性变换(direct linear transformation,dlt)、epnp。此外,还可以采用非线性优化的方法,如采用光束法平差(bundle adjustment)构建最小二乘问题并迭代求解,在此不作限制。
[0110]
作为一非限制性示例,以dlt为例进行说明。进一步地,根据上述式子,可得:
[0111][0112]
由于第一变换矩阵有12个未知数,因此最少通过六对匹配点,即可实现第一变换矩阵的线性求解。当匹配点对大于六对时,可以使用奇异值分解法(singular value decomposition,svd)等方法对超定方程求最小二乘解。
[0113]
需要说明的是,由于激光雷达获取的点云数据较为稀疏,难以保证在标定板角点处有与itof相机对应的像素点的坐标信息。在一些实施例中,可利用标定板的边界轮廓点进行曲线或直线拟合,根据拟合出的曲线或直线,计算标定板角点在激光雷达获取的点云数据中的三维坐标信息。作为一非限制性示例,可以为手动选取标定板边缘处的三维点,利用最小二乘法等方法对所选边缘点进行直线拟合,然后求拟合出的标定板相邻边缘直线之间的交点,即为标定板角点,交点的三维坐标即为角点三维坐标信息。如图6所示,以三角形的标定板为例,利用标定板的边界轮廓点进行直线拟合,根据拟合出的直线,计算标定板角点在激光雷达获取的点云数据中的三维坐标信息。itof相机获取的二维图像可通过角点检
测算法提取角点,以获取角点的二维坐标信息。进而,根据角点的三维坐标信息和二维坐标信息求取第一变换矩阵。
[0114]
应当理解的是,在一些实施例中,可以利用一个或多个特殊形状的标定板作为目标物。例如在场景中放置一个或多个多边形标定板。如图7所示为在场景中放置多个多边形标定板。通过提取标定板的角点获取多组二维与三维对应的特征点对,加快标定速度。
[0115]
s330,利用第一变换矩阵将点云数据投影至相机的成像平面以获取深度真值。
[0116]
根据投影至相机的成像平面的点云数据,计算相机获取的场景的深度信息,并以此深度信息作为相机的深度真值。
[0117]
需要说明的是,相机视角下的深度真值,但不一定是标定板的深度真值,标定板仅为场景中目标物的示例。本申请目的是获取相机所拍摄场景(或场景中目标物)的深度真值,这里的场景可以为任一场景并不特指标定板。
[0118]
本申请实施例可以便捷地生成与相机中成像器件逐像素对齐的高精度深度图像。
[0119]
需要说明的是,在其他一些实施例中,由于激光雷达的点云是较为稀疏的,因此可对相机获取的深度真值进行插值,获取完整的深度真值信息。其中,插值的方法包括最近邻插值法、双线性插值法,或边缘引导插值法等,此处不作限制。作为一非限制性示例,可以根据像素坐标对深度真值z
c
进行插值得到更完整的深度相机视角下的场景的深度真值。
[0120]
前述实施例中,通过步骤s310至s330,获取了场景的二维图像,以及二维图像对应的深度真值。进一步地,在其他一些实施例中,二维图像以及对应的深度真值,可以作为一组训练数据,针对多个不同的场景,就可以获得多组训练数据,多组训练数据构成训练样本。利用训练样本训练神经网络模型,获取神经网络模型的权重参数,得到经训练的神经网络模型。经训练的神经网络模型可以部署于电子设备,电子设备例如计算机、手机或相机等,在应用时,电子设备可以根据某一相机获得的某一场景的深度图像,利用经训练的神经网络模型得到该场景的精度更高的深度真值。
[0121]
本申请实施例利用相机获取某一场景的二维图像,并将其作为神经网络模型的输入,通过学习相机的深度真值,获取神经网络模型的权重参数。应当理解的是,经过上述步骤s310至s330,相机可依据激光雷达获取不同场景的深度真值,利用相机获取不同场景的二维图像,利用神经网络模型学习不同场景的深度真值,可对神经网络模型的权重参数进行更新迭代,以确保相机获取的二维图像输入该神经网络模型后,可获取精度更高的深度图像。
[0122]
神经网络模型可以是例如卷积神经网络模型,全连接神经网络模型等,本申请对此不予限制。
[0123]
深度学习需要大量的训练数据(例如图像)和深度真值(ground truth)作为训练样本,训练样本数量和深度真值的精度直接决定了深度学习算法的最终表现。本申请实施例通过简单的方法和系统,能够准确、高效的获取端对端深度学习神经网络所需的训练样本。
[0124]
对应于上文的深度真值获取方法,本申请一实施例还提供一种深度真值获取装置。该深度真值获取装置中未详细描述之处请详见前述方法的描述。
[0125]
参见图8,图8是本申请实施例提供的一种深度真值获取装置的示意框图。深度真值获取装置可以配置于电子设备。作为一个示例,所述深度真值获取装置配置于图1或图2
所示的处理单元,所述处理单元连接深度相机和激光雷达。
[0126]
所述深度真值获取装置包括:获取模块81、求解模块82、和深度真值计算模块83。
[0127]
获取模块81,用于获取相机和激光雷达分别采集的不同姿态的目标物的二维图像和深度图像。
[0128]
求解模块82,用于将深度图像转换为点云数据,求解点云数据与二维图像的变换关系,获得第一变换矩阵。
[0129]
深度真值计算模块83,用于利用第一变换矩阵将点云数据投影至相机的成像平面以获取深度真值。
[0130]
可选的,如图9所示,所述深度真值获取装置还包括训练模块84。所述训练模块84,用于将所述二维图像和所述深度真值作为一组训练样本,获取不同场景下的多组训练样本,利用所述多组训练样本训练神经网络模型,获得经训练的神经网络模型。
[0131]
可选的,如图10所示,所述求解模块82包括转换子模块821和求解子模块822。
[0132]
转换子模块821,用于将深度图像转换为点云数据。
[0133]
求解子模块822,用于利用二维图像和点云数据中特征点对的坐标信息,求解点云数据与二维图像的变换关系,获得第一变换矩阵。
[0134]
图11为根据本发明提供的一种深度相机结构示意图,相机包括采集模块及处理模块,其中,采集模块,用于采集目标区域的目标二维图像;处理模块,包括训练单元,处理模块用于利用目标二维图像和训练单元获取目标区域的深度真值,其中,训练单元为经训练的神经网络模型,更具体地为,利用采集模块采集的二维图像作为训练样本,根据上述深度真值获取方法和训练样本训练神经网络模型,获得经训练的神经网络模型。
[0135]
在一个实施例中,深度相机还包括投影模块,投影模块用于向目标区域投射红外光束,采集模块用于采集经目标区域反射回的红外光束并生成红外图像,处理模块用于利用红外图像和训练单元获取目标区域的深度真值。
[0136]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0137]
本申请实施例还提供了一种电子设备,该电子设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一深度真值获取方法实施例中的步骤。
[0138]
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述任一深度真值获取方法实施例中的步骤。
[0139]
本申请实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备可实现上述任一深度真值获取方法实施例中的步骤。
[0140]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0141]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
[0142]
在本申请所提供的实施例中,应该理解到,所揭露的装置/电子设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/电子设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0143]
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0144]
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0145]
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
[0146]
以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1