CN113052890A - 一种深度真值获取方法、装置、系统及深度相机 - Google Patents
一种深度真值获取方法、装置、系统及深度相机 Download PDFInfo
- Publication number
- CN113052890A CN113052890A CN202110348689.7A CN202110348689A CN113052890A CN 113052890 A CN113052890 A CN 113052890A CN 202110348689 A CN202110348689 A CN 202110348689A CN 113052890 A CN113052890 A CN 113052890A
- Authority
- CN
- China
- Prior art keywords
- depth
- point cloud
- cloud data
- transformation matrix
- true value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 230000009466 transformation Effects 0.000 claims abstract description 75
- 239000011159 matrix material Substances 0.000 claims abstract description 72
- 238000003384 imaging method Methods 0.000 claims abstract description 15
- 238000013507 mapping Methods 0.000 claims abstract description 10
- 238000012545 processing Methods 0.000 claims description 53
- 238000012549 training Methods 0.000 claims description 48
- 238000003062 neural network model Methods 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 24
- 238000004364 calculation method Methods 0.000 claims description 19
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 238000000605 extraction Methods 0.000 claims description 3
- 230000008859 change Effects 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 14
- 238000010586 diagram Methods 0.000 description 10
- 238000004422 calculation algorithm Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 230000003287 optical effect Effects 0.000 description 7
- 238000013135 deep learning Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000000691 measurement method Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/514—Depth or shape recovery from specularities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/521—Depth or shape recovery from laser ranging, e.g. using interferometry; from the projection of structured light
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Optics & Photonics (AREA)
- Optical Radar Systems And Details Thereof (AREA)
Abstract
本申请适用于计算机视觉技术领域,提供了一种深度真值获取方法、装置、系统及深度相机,该深度真值获取方法包括:获取深度相机采集的场景的第一深度图像,获取激光雷达采集的同一场景的第二深度图像;分别将第一深度图像和第二深度图像转换为第一点云数据和第二点云数据;匹配第一点云数据和第二点云数据,获得第一变换矩阵;利用第一变换矩阵,将激光雷达的第二点云数据映射至深度相机的成像平面以获取深度真值。本申请实施例不需要事先对设备进行标定,使用中也不需要考虑设备外参变化,采图灵活;另外,可以便捷地生成深度相机的高精度深度图像。
Description
技术领域
本发明属于计算机视觉技术领域,尤其涉及一种深度真值获取方法、装置、系统及深度相机。
背景技术
为了获得更为优质的三维信息和解决传统三维测量方法中难以克服的一些问题,越来越多的三维测量方法开始使用深度学习算法计算深度。如利用深度学习从单幅RGB图像或灰度图像中重构场景三维信息,用深度学习解决间接飞行时间(indirect time offlight,iToF)测量中多路径和散射等效应导致的深度错误问题。而深度学习需要大量的数据和深度的真值(ground truth)作为训练样本,训练样本数量和深度真值的精度直接决定了深度学习算法的最终表现。
发明内容
有鉴于此,本发明实施例提供了一种深度真值获取方法、装置、系统及深度相机,能够解决深度真值的精度不高的技术问题。
第一方面,本申请一实施例提供了一种深度真值获取方法,包括:
获取深度相机采集的场景的第一深度图像,获取激光雷达采集的同一场景的第二深度图像;
分别将第一深度图像和第二深度图像转换为第一点云数据和第二点云数据;
匹配第一点云数据和第二点云数据,获得第一变换矩阵;
利用第一变换矩阵,将激光雷达的第二点云数据映射至深度相机的成像平面以获取深度真值。
本申请实施例不需要事先对设备进行标定,使用中也不需要考虑设备外参变化,采图灵活;另外,可以便捷地生成深度相机的高精度深度图像。
作为第一方面的一种实现方式,所述深度真值获取方法还包括:
将所述第一深度图像和所述深度真值作为一组训练样本,获取不同目标场景下的多组训练样本,利用所述多组训练样本训练神经网络模型,获得经训练的神经网络模型。
作为第一方面的一种实现方式,所述匹配第一点云数据和第二点云数据,获得第一变换矩阵,包括:
分别提取第一点云数据和第二点云数据中的特征点,对特征点进行描述。
确定具有相同描述的特征点的对应关系,并计算第二变换矩阵。
基于第二变换矩阵,迭代第一点云数据与第二点云数据的对应关系,并获取第三变换矩阵;
利用第三变换矩阵,更新第一点云数据与第二点云数据对应点的对应关系,并迭代求解第一变换矩阵。
作为第一方面的一种实现方式,所述利用第三变换矩阵,更新第一点云数据与第二点云数据对应点的对应关系,并迭代求解第一变换矩阵,包括:
利用第三变换矩阵将第二点云数据映射至第一点云数据所在空间,得到第四点云数据;
寻找第四点云数据与第一点云数据的对应点,求取第四点云数据与第一点云数据的变换关系,不断迭代循环,使目标函数值不断下降,直至小于预设阈值,获取最终的第一变换矩阵。
第二方面,本申请一实施例提供了一种深度真值获取装置,包括:
获取模块,用于获取深度相机采集的场景的第一深度图像,获取激光雷达采集的同一场景的第二深度图像;
转换模块,用于分别将第一深度图像和第二深度图像转换为第一点云数据和第二点云数据;
匹配模块,用于匹配第一点云数据和第二点云数据,获得第一变换矩阵;
深度真值计算模块,用于利用第一变换矩阵,将激光雷达的第二点云数据映射至深度相机的成像平面以获取深度真值。
作为第二方面的一种实现方式,深度真值获取装置还包括:
训练模块,用于将所述深度图像和所述深度真值作为一组训练样本,获取不同场景下的多组训练样本,利用所述多组训练样本训练神经网络模型,获得经训练的神经网络模型。
作为第二方面的一种实现方式,所述所述匹配模块包括:
提取子模块,用于分别提取第一点云数据和第二点云数据中的特征点,对特征点进行描述。
计算子模块,用于确定具有相同描述的特征点的对应关系,并计算第二变换矩阵。
迭代子模块,用于基于第二变换矩阵,迭代第一点云数据与第二点云数据的对应关系,并获取第三变换矩阵。
求解子模块,用于利用第三变换矩阵,更新第一点云数据与第二点云数据对应点的对应关系,并迭代求解第一变换矩阵。
作为第二方面的一种实现方式,所述求解子模块,具体用于:
利用第三变换矩阵将第二点云数据映射至第一点云数据所在空间,得到第四点云数据;
寻找第四点云数据与第一点云数据的对应点,求取第四点云数据与第一点云数据的变换关系,不断迭代循环,使目标函数值不断下降,直至小于预设阈值,获取最终的第一变换矩阵。
第三方面,本申请一实施例提供了一种深度真值获取系统,包括深度相机和激光雷达,所述深度真值获取系统还包括如第二方面或第二方面任一实现方式所述深度真值获取装置。
第四方面,本申请一实施例提供了一种深度相机,包括投影模块、采集模块及处理模块,
所述投影模块,用于向目标区域投射脉冲光束;
所述采集模块,用于接收经所述目标区域反射回的脉冲光束并生成目标图像;
所述处理模块,包括经训练的训练单元,用于对所述目标图像进行深度值计算并生成第三深度图像,进而利用所述第三深度图像和所述训练单元获取所述目标区域的深度真值;
其中,所述训练单元为预先利用如第一方面或第一方面任一实现方式所述的深度真值获取方法获取的所述第一深度图像作为训练样本训练的神经网络模型。
第五方面,本申请一实施例提供了一种计算机存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面或第一方向任一实现方式所述深度真值获取方法的步骤。
第六方面,本申请一实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备可实现上述第一方面或第一方面任一实现方式所述深度真值获取方法的步骤。
可以理解的是,上述第二方面至第六方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的一种深度真值获取系统的结构示意图;
图2是本申请一实施例提供的一种处理单元的结构示意图;
图3是本申请一实施例提供的一种深度真值获取方法的实现流程示意图;
图4是本申请一实施例提供的一种深度相机的点云和激光雷达的点云的匹配过程示意图;
图5是本申请一实施例提供的一种深度真值获取方法中步骤S330的具体实现流程示意图;
图6是本申请一实施例提供的一种深度真值获取装置的示意图;
图7是本申请一实施例提供的一种深度真值获取装置中匹配模块的示意图;
图8是本申请一实施例提供的一种深度真值获取装置的示意图。
图9是本申请一实施例提供的一种深度相机的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
在本申请说明书中描述的“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
此外,在本申请的描述中,“多个”的含义是两个或两个以上。术语“第一”、“第二”、“第三”和“第四”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
还应当理解,除非另有明确的规定或限定,术语“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是直接相连,也可以是通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
图1为本申请一实施例提供的一种深度真值获取系统的结构示意图。如图1所示,深度真值获取系统包括深度相机11、激光雷达12和处理单元13。深度相机11和激光雷达12均可以与处理单元13进行数据交互。
深度相机11用于采集场景的第一深度图像。激光雷达12用于采集场景的第二深度图像。处理单元13用于根据第一深度图像和第二深度图像获取深度相机视角下场景的深度真值。
在一些实施例中,深度相机11包括投影模块和红外接收模块,激光雷达12包括发射端与接收端。深度相机11和激光雷达12贴合放置,即深度相机11的红外接收模块与激光雷达12的接收端紧邻放置,且使深度相机11的红外接收模块的光轴与激光雷达12的接收端的光轴相互平行,并使深度相机11的成像平面像素行列与激光雷达12的成像平面像素行列相互平行。
深度相机11是可以获取场景的深度信息的成像器件。在一些实施例中,深度相机11可以为iToF相机。在其他一些实施例中,深度相机11可以为直接飞行时间(direct timeof flight,dToF)相机。在其他一些实施例中,深度相机11还可以为基于结构光或激光扫描的深度相机,本申请实施例对深度相机的类型不作限制。
作为一非限制性示例中,以深度相机为iToF相机为例进行说明。iToF相机包括投影模块和红外接收模块。其中,投影模块可以包括光源和光学组件等。光源可以是边发射激光器(edge emitting laser,EEL)、垂直腔面发射激光器(vertical cavity surfaceemitting laser,VCSEL)等光源,也可以是多个光源组成的光源阵列。光源所发射的光束可以是可见光、红外光、紫外光等。光学组件可以包括衍射光学元件等。光源发射的光束经光学组件后可以在参考平面上形成均匀、随机或者特殊设计的强度分布投影图案。红外接收模块为图像传感器。图像传感器可以是电荷耦合元件(charge coupled device,CCD)、互补金属氧化物半导体(complementary metal-oxide-semiconductor transistor,CMOS)、雪崩二极管(avalanche diode,AD)、单光子雪崩二极管(single photon avalanche diode,SPAD)等组成的图像传感器,本申请对此不作限制。
在一些实施例中,激光雷达12可以为面阵激光雷达。作为一非限制性示例中,面阵激光雷达包括激光发射器和光电探测接收端。激光发射器用于发射光源。作为一非限制性实现方式,激光发射器可以为半导体激光器。更具体地,激光发射器可为在单块半导体基底上生成多个VCSEL光源以形成的VCSEL阵列光源芯片。VCSEL阵列光源芯片可以以一定频率(或称为脉冲周期)向外发射脉冲光束,脉冲光束投射至场景上形成照明斑点(即光斑)。脉冲光束的频率可以根据测量距离进行设定。光电探测接收端用于接收脉冲光束的回波信号,通过捕获回波信号的光强信息以确定场景的深度信息。
需要说明的是,在其他一些示例中,激光发射器还可以为固态激光器等其他类型的激光器,光电探测接收端可以为CCD等面阵光强采集器件,本申请对两者不作限制。
在图1所示实施例中,处理单元13为计算机。在其他一些实施例中,处理单元14可以包括车载终端、机器人、手机、平板电脑、笔记本电脑、上网本、个人数字助理(personaldigital assistant,PDA)等电子设备。本申请实施例对处理单元13的具体类型不作任何限制。
在本申请一些实施例中,如图2所示,处理单元可以包括一个或多个处理器20(图2中仅示出一个),存储器21以及存储在存储器21中并可在一个或多个处理器20上运行的计算机程序22,例如,获取深度真值的程序。一个或多个处理器20执行计算机程序22时可以实现后述深度真值获取方法实施例中的各个步骤。或者,一个或多个处理器20执行计算机程序22时可以实现后述各深度真值获取装置实施例中各模块/单元的功能,此处不作限制。
本领域技术人员可以理解,图2仅仅是处理单元的示例,并不构成对处理单元的限定。处理单元可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如处理单元还可以包括输入输出设备、网络接入设备、总线等。
在一个实施例中,所称处理器20可以是中央处理单元(Central ProcessingUnit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在一个实施例中,存储器21可以是处理单元的内部存储单元,例如处理单元的硬盘或内存。存储器21也可以是处理单元的外部存储设备,例如处理单元上配备的插接式硬盘,智能存储卡(smart media card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。进一步地,存储器21还可以既包括处理单元的内部存储单元也包括外部存储设备。存储器21用于存储计算机程序以及处理单元所需的其他程序和数据。存储器21还可以用于暂时地存储已经输出或者将要输出的数据。
本申请一实施例还提供了处理单元14的另一种优选的实施例,在本实施例中,处理单元包括一个或多个处理器,该一个或多个处理器用于执行存在存储器的以下程序模块:获取模块、转换模块、匹配模块、深度真值计算模块。
其中,获取模块,用于获取深度相机采集的场景的第一深度图像,获取激光雷达采集的同一场景的第二深度图像。
转换模块,用于分别将第一深度图像和第二深度图像转换为第一点云数据和第二点云数据。
匹配模块,用于匹配第一点云数据和第二点云数据,获得第一变换矩阵。
深度真值计算模块,用于利用第一变换矩阵,将激光雷达的第二点云数据映射至深度相机的成像平面以获取深度真值。
在一些实施例中,处理单元可以独立于深度相机和激光雷达,参见图1所示实施例。在其他一些实施例中,处理单元可以集成于双目相机和目标相机中的至少一个。也就是说,在其他一些实施例中,深度相机和/或激光雷达自身的一个或多个处理器在执行存储在存储器中的计算机程序时可以实现后述深度真值获取方法实施例中的一个或多个步骤。或者,深度相机和/或激光雷达自身的一个或多个处理器在执行存储在存储器中的计算机程序时可以实现后述各深度真值获取装置实施例中一个或多个模块/单元的功能。
请参见图3,图3是本申请一实施例提供的一种深度真值获取方法的实现流程示意图。本实施例中的深度真值获取方法可由处理单元执行,处理单元包括但不限于计算机、深度相机或激光雷达等。作为示例而非限定,深度真值获取方法可应用于图1所示的深度真值获取系统,深度真值获取方法可由图1或图2所示实施例中的处理单元执行。本实施例中的深度真值获取方法适用于需要获取场景深度真值的情形。如图3所示的深度真值获取方法,可以包括:步骤S310至步骤S340。
S310,获取深度相机采集的场景的第一深度图像,获取激光雷达采集的同一场景的第二深度图像。
处理单元获取深度相机和激光雷达分别采集的同一场景的第一深度图像和第二深度图像。其中,深度相机用于采集场景的第一深度图像,激光雷达用于采集同一场景的第二深度图像。
在一些实施例中,为避免深度相机与激光雷达在获取深度图像过程中光源的相互干扰,深度相机与激光雷达可时序采集同一场景的深度图像。作为一非限制性示例,处理单元先开启深度相机,采集场景的第一深度图像;后关闭深度相机并开启激光雷达,控制激光雷达采集同一场景的第二深度图像。作为另一非限制性示例,可以手动操作深度相机和激光雷达时序采集同一场景的第一深度图像和第二深度图像。应理解,先后顺序可以进行调换,本申请对采集第一深度图像和第二深度图像的先后时序不作限制。
深度相机采集的第一深度图像,激光雷达采集的第二深度图像都传输至处理单元进行后续处理。
在一些实施例中,处理单元包括通信模块和/或输入输出设备,可以通过通信模块和/或输入输出设备从深度相机和激光雷达,分别获取第一深度图像和第二深度图像。基于图1所示的实施例,在一些实现方式中,计算机接收深度相机和激光雷达分别主动传输的第一深度图像和第二深度图像,也就是说,深度相机和激光雷达可以在分别采集第一深度图像和第二深度图像后,主动发送采集的第一深度图像和第二深度图像给计算单元。在其他一些实现方式中,处理单元可以主动获取深度相机和激光雷达采集的第一深度图像和第二深度图像。
在其他一些实施例中,处理单元包括处理器,处理单元可以从与其处理器耦合的存储器(例如外部存储设备或内部存储单元)中获取深度相机采集的场景的第一深度图像,以及激光雷达采集的同一场景的第二深度图像。深度相机采集的场景的第一深度图像,激光雷达采集的同一场景的第二深度图像事先存储于存储器中,待需要获取场景的深度真值时,处理单元从存储器调用事先存储的第一深度图像和第二深度图像。
S320,分别将第一深度图像和第二深度图像转换为第一点云数据和第二点云数据。
具体地,处理单元将深度相机采集的第一深度图像转换为第一点云数据,将激光雷达采集的第二深度图像转换为第二点云数据。
作为一非限制性示例,将第一深度图像转换为第一点云数据的计算方法为:
其中,(xs,ys,zs)为深度相机坐标系下的第一点云三维坐标,z为每个像素上的深度,(u,v)为像素坐标,(u0,v0)为图像主点坐标,dx和dy为深度相机的传感器像元在两个方向上的物理尺寸,f’为焦距(单位为毫米)。
同理,可以基于上述计算方法,将激光雷达采集的第二深度图像转换为第二点云数据。
S330,匹配第一点云数据和第二点云数据,获得第一变换矩阵。
匹配第一点云数据和第二点云数据,即配准第一点云数据和第二点云数据。深度相机的点云和激光雷达的点云的配准过程可以参考图4所示。
在一些实施例中,如图5所示,步骤S330可以包括步骤S331至S334。
S331,分别提取第一点云数据和第二点云数据中的特征点,对特征点进行描述。
提取第一点云数据和第二点云数据中的特征点,特征点包括但不限于尖锐边、光滑边、脊或谷、尖头等。
对特征点进行描述,可以是描述特征点的几何属性。特征点的几何属性包括但不限于法矢和曲率等。
S332,确定具有相同描述的特征点的对应关系,并计算第二变换矩阵。
描述特征点后,将具有相同描述(例如几何属性)的特征点视为第一点云数据和第二点云数据之间的对应关系中的对应点。应理解地是,第一点云数据和第二点云数据中具有相同描述(例如几何属性)的两个特征点为一对对应点。
在一些实施例中,以第一点云数据为参考点云数据,获取第一点云数据与第二点云数据中具有相同描述(例如几何属性)的特征点,将第二点云数据中具有相同描述的特征点映射至第一点云数据,获取第二变换矩阵。
需要说明的是,在步骤S331中提取特征点,通过保留具有相同描述且特征显著的点,可减少配准所需要考虑的点数,可以减少计算量,提高计算效率。
S333,基于第二变换矩阵,迭代第一点云数据与第二点云数据的对应关系,并获取第三变换矩阵。
在一些实施例中,可以利用迭代最近点(iterative closest point,ICP)算法计算第一点云数据与第二点云数据的第三变换矩阵。
更具体地,首先,将第二点云数据中所有点通过第二变换矩阵映射至第一点云数据所在空间,获取新的点云数据,为第三点云数据。
ICP算法的核心为最小化目标函数,以第一点云数据为参考点云数据,得目标函数为:
其中,R为旋转矩阵,T为平移矩阵,pt i和ps i为第一点云数据和第三点云数据中的第i对对应点,Np表征第一点云数据与第三点云数据之间共有Np对对应点。优选地,对应点为第三点云数据与第一点云数据中的最邻近点,即计算第三点云数据与第一点云数据中的点云的欧式距离,若欧式距离在预设距离阈值以内,则两个点云为对应点。需要说明的是,通常根据对最终结果的精度要求对预设距离阈值进行设置,本申请对此不予限制。
接着,根据目标函数对第一变换矩阵[R,T]进行计算,R和T只有6个自由度,对应点的数量是庞大的,因此可利用最小二乘等方法求解第三变换矩阵的最优解。
需要说明的是,求解第三变换矩阵的方法不仅限于ICP算法,还可以为奇异值分解(singular value decomposition,SVD)算法,本申请对此不作限制。
S334,利用第三变换矩阵,更新第一点云数据与第二点云数据对应点的对应关系,并迭代求解第一变换矩阵。
在一些实施例中,第三变换矩阵为一个新的变换矩阵,以第一点云数据为参考点云数据,利用第三变换矩阵将第二点云数据映射至第一点云数据所在空间,可得到一个新的点云数据,即第四点云数据。获取第四点云数据后,循环步骤S333,利用迭代最近点算法寻找第四点云数据与第一点云数据的对应点,进而求取第四点云数据与第一点云数据的变换关系,不断迭代循环,使目标函数值不断下降,直至小于预设阈值,获取最终的变换关系,即第一变换矩阵。
S340,利用第一变换矩阵,将激光雷达的第二点云数据映射至深度相机的成像平面以获取深度真值。
在一些实施例中,利用第一变换矩阵,将激光雷达的第二点云数据映射至深度相机的成像平面。根据投影至深度相机的成像平面的第二点云数据,计算深度相机获取的场景的深度信息,并以此深度信息作为深度相机的深度真值。
作为一非限制性示例,根据投影至深度相机的成像平面的第二点云数据,计算深度相机获取的场景的深度真值的方法为:
其中,(xs,ys,zs)为第二点云三维坐标,K为深度相机的内参,[R,T]为第一变换矩阵,(u,v)为第二点云数据映射到深度相机后所对应的像素坐标,zc为深度相机坐标系下点云的深度真值。
本申请实施例不需要事先对设备进行标定,使用中也不需要考虑设备外参变化,采图灵活;另外,可以便捷地生成与深度相机中成像器件逐像素对齐的高精度深度图。
需要说明的是,在其他一些实施例中,由于激光雷达的点云是较为稀疏的,因此可对深度相机获取的深度真值进行插值,获取完整的深度真值信息。其中,插值的方法包括最近邻插值法、双线性插值法,或边缘引导插值法等,此处不作限制。作为一非限制性示例,可以根据像素坐标对深度真值zc进行插值得到深度相机视角下的场景的深度真值。
前述实施例中,通过步骤S310至S340,获取了场景的第一深度图像,以及第一深度图像对应的深度真值。进一步地,在其他一些实施例中,第一深度图像以及对应的深度真值,可以作为一组训练数据,针对多个不同的场景,就可以获得多组训练数据,多组训练数据构成训练样本。利用训练样本训练神经网络模型,获取神经网络模型的权重参数,得到经训练的神经网络模型。经训练的神经网络模型可以部署于电子设备,电子设备例如计算机、手机或相机等,在应用时,电子设备可以根据某一相机或摄像头获得的某一场景或区域的深度图像,利用经训练的神经网络模型得到该场景或区域的精度更高的深度真值。
本申请实施例利用深度相机获取某一场景的第一深度图像,并将其作为神经网络模型的输入,通过学习深度相机的深度真值,获取神经网络模型的权重参数。应当理解的是,经过上述步骤S310至S340,深度相机可依据激光雷达获取不同场景的深度真值,利用深度相机获取不同场景的第一深度图像,利用神经网络模型学习不同场景的深度真值,可对神经网络模型的权重参数进行更新迭代,以确保深度相机后续获取的深度图像输入该神经网络模型后,可获取精度更高的深度图像。
神经网络模型可以是例如卷积神经网络模型,全连接神经网络模型等,本申请对此不予限制。
深度学习需要大量的训练数据(例如图像)和深度真值(ground truth)作为训练样本,训练样本数量和深度真值的精度直接决定了深度学习算法的最终表现。本申请实施例通过简单的方法和系统,能够准确、高效的获取端对端深度学习神经网络所需的训练样本。
对应于上文的深度真值获取方法,本申请一实施例还提供一种深度真值获取装置。该深度真值获取装置中未详细描述之处请详见前述方法的描述。
参见图6,图6是本发明实施例提供的一种深度真值获取装置的示意框图。深度真值获取装置可以配置于电子设备。作为一个示例,所述深度真值获取装置配置于图1或图2所示的处理单元,所述处理单元连接深度相机和激光雷达。
所述深度真值获取装置包括:获取模块61、转换模块62、匹配模块63、深度真值计算模块64。
获取模块61,用于获取深度相机采集的场景的第一深度图像,获取激光雷达采集的同一场景的第二深度图像。
转换模块62,用于分别将第一深度图像和第二深度图像转换为第一点云数据和第二点云数据。
匹配模块63,用于匹配第一点云数据和第二点云数据,获得第一变换矩阵。
深度真值计算模块64,用于利用第一变换矩阵,将激光雷达的第二点云数据映射至深度相机的成像平面以获取深度真值。
可选的,如图7所示,所述深度真值获取装置还包括训练模块65。所述训练模块65,用于将所述第一深度图像和所述深度真值作为一组训练样本,获取不同目标场景下的多组训练样本,利用所述多组训练样本训练神经网络模型,获得经训练的神经网络模型。
可选的,如图8所示,所述匹配模块63,包括:提取子模块631,计算子模块632,迭代子模块633,和求解子模块634。
提取子模块631,用于分别提取第一点云数据和第二点云数据中的特征点,对特征点进行描述。
计算子模块632,用于确定具有相同描述的特征点的对应关系,并计算第二变换矩阵。
迭代子模块633,用于基于第二变换矩阵,迭代第一点云数据与第二点云数据的对应关系,并获取第三变换矩阵。
求解子模块634,用于利用第三变换矩阵,更新第一点云数据与第二点云数据对应点的对应关系,并迭代求解第一变换矩阵。
图9为根据本发明提供的一种深度相机结构示意图,深度相机包括投影模块、采集模块及处理模块,其中,投影模块,用于向目标区域投射脉冲光束;采集模块,用于采集经目标区域反射回的脉冲光束并生成目标图像;处理模块,包括训练单元,处理模块用于对目标图像进行深度值计算并生成第三深度图像,进而利用第三深度图像和训练单元获取目标区域的深度真值,其中,训练单元为经训练的神经网络模型,更具体地为,预先利用上述深度真值获取方法获取的第一深度图像作为训练样本训练神经网络模型,获得经训练的神经网络模型。
在一些实施例中,对目标图像进行深度值计算并生成第三深度图像可以包括以下三种方式中的至少任一种:
方式①:投影模块向目标区域投射结构光光束,采集模块接收经目标区域反射回的光束并形成电信号。电信号传输至处理模块,处理模块对该电信号进行处理,计算出反映该光束的强度信息以形成结构光图案,最后基于该结构光图案进行匹配计算或三角法计算,得到深度值。
方式②:投影模块向目标区域投射红外光束,采集模块接收经目标区域反射回的光束并形成电信号。电信号传输至处理模块,处理模块对该电信号进行处理以计算出相位差,并基于该相位差间接计算光束由投影模块发射到采集模块接收所用的飞行时间,进一步基于该飞行时间计算出深度值。应当理解的是,红外光束可包括脉冲型和连续波型,此处不作限制。
方式③:投影模块向区域投射红外脉冲光束,采集模块接收经目标区域反射回的光束并形成电信号。电信号传输至处理模块,处理模块对电信号进行计数以获取波形直方图,并根据直方图直接计算由投影模块发射到采集模块接收所用的飞行时间,进一步基于该飞行时间计算出深度值。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种电子设备,该电子设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一深度真值获取方法实施例中的步骤。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述任一深度真值获取方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备可实现上述任一深度真值获取方法实施例中的步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/电子设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/电子设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种深度真值获取方法,其特征在于,包括:
获取深度相机采集的场景的第一深度图像,获取激光雷达采集的同一场景的第二深度图像;
分别将第一深度图像和第二深度图像转换为第一点云数据和第二点云数据;
匹配第一点云数据和第二点云数据,获得第一变换矩阵;
利用第一变换矩阵,将激光雷达的第二点云数据映射至深度相机的成像平面以获取深度真值。
2.如权利要求1所述的深度真值获取方法,其特征在于,还包括:
将所述第一深度图像和所述深度真值作为一组训练样本,获取不同目标场景下的多组训练样本,利用所述多组训练样本训练神经网络模型,获得经训练的神经网络模型。
3.如权利要求1或2所述的深度真值获取方法,其特征在于,所述匹配第一点云数据和第二点云数据,获得第一变换矩阵,包括:
分别提取第一点云数据和第二点云数据中的特征点,对特征点进行描述。
确定具有相同描述的特征点的对应关系,并计算第二变换矩阵。
基于第二变换矩阵,迭代第一点云数据与第二点云数据的对应关系,并获取第三变换矩阵;
利用第三变换矩阵,更新第一点云数据与第二点云数据对应点的对应关系,并迭代求解第一变换矩阵。
4.如权利要求3所述的深度真值获取方法,其特征在于,所述利用第三变换矩阵,更新第一点云数据与第二点云数据对应点的对应关系,并迭代求解第一变换矩阵,包括:
利用第三变换矩阵将第二点云数据映射至第一点云数据所在空间,得到第四点云数据;
寻找第四点云数据与第一点云数据的对应点,求取第四点云数据与第一点云数据的变换关系,不断迭代循环,使目标函数值不断下降,直至小于预设阈值,获取最终的第一变换矩阵。
5.一种深度真值获取装置,其特征在于,包括:
获取模块,用于获取深度相机采集的场景的第一深度图像,获取激光雷达采集的同一场景的第二深度图像;
转换模块,用于分别将第一深度图像和第二深度图像转换为第一点云数据和第二点云数据;
匹配模块,用于匹配第一点云数据和第二点云数据,获得第一变换矩阵;
深度真值计算模块,用于利用第一变换矩阵,将激光雷达的第二点云数据映射至深度相机的成像平面以获取深度真值。
6.如权利要求5所述的深度真值获取装置,其特征在于,还包括:
训练模块,用于将所述第一深度图像和所述深度真值作为一组训练样本,获取不同场景下的多组训练样本,利用所述多组训练样本训练神经网络模型,获得经训练的神经网络模型。
7.如权利要求5或6所述的深度真值获取装置,其特征在于,所述匹配模块包括:
提取子模块,用于分别提取第一点云数据和第二点云数据中的特征点,对特征点进行描述。
计算子模块,用于确定具有相同描述的特征点的对应关系,并计算第二变换矩阵。
迭代子模块,用于基于第二变换矩阵,迭代第一点云数据与第二点云数据的对应关系,并获取第三变换矩阵。
求解子模块,用于利用第三变换矩阵,更新第一点云数据与第二点云数据对应点的对应关系,并迭代求解第一变换矩阵。
8.一种深度真值获取系统,其特征在于,包括深度相机和激光雷达,所述深度真值获取系统还包括如权利要求5至7任一项所述的深度真值获取装置。
9.一种深度相机,其特征在于,包括投影模块、采集模块及处理模块,
所述投影模块,用于向目标区域投射脉冲光束;
所述采集模块,用于接收经所述目标区域反射回的脉冲光束并生成目标图像;
所述处理模块,包括经训练的训练单元,所述处理模块用于对所述目标图像进行深度值计算并生成第三深度图像,进而利用所述第三深度图像和所述训练单元获取所述目标区域的深度真值;
其中,所述训练单元为预先利用权利要求1至4任一项所述的的深度真值获取方法获取的第一深度图像作为训练样本训练的神经网络模型。
10.一种计算机存储介质,所述计算机存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述的深度真值获取方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110348689.7A CN113052890A (zh) | 2021-03-31 | 2021-03-31 | 一种深度真值获取方法、装置、系统及深度相机 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110348689.7A CN113052890A (zh) | 2021-03-31 | 2021-03-31 | 一种深度真值获取方法、装置、系统及深度相机 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113052890A true CN113052890A (zh) | 2021-06-29 |
Family
ID=76516778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110348689.7A Pending CN113052890A (zh) | 2021-03-31 | 2021-03-31 | 一种深度真值获取方法、装置、系统及深度相机 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113052890A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113539444A (zh) * | 2021-08-30 | 2021-10-22 | 上海联影医疗科技股份有限公司 | 医学图像重建方法、装置、电子设备和存储介质 |
WO2023070555A1 (zh) * | 2021-10-29 | 2023-05-04 | 华为技术有限公司 | 一种获取深度真值的方法及相关装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201716533D0 (en) * | 2017-10-09 | 2017-11-22 | Nokia Technologies Oy | Methods and apparatuses for depth rectification processing |
CN109118532A (zh) * | 2017-06-23 | 2019-01-01 | 百度在线网络技术(北京)有限公司 | 视觉景深估计方法、装置、设备及存储介质 |
CN109920011A (zh) * | 2019-05-16 | 2019-06-21 | 长沙智能驾驶研究院有限公司 | 激光雷达与双目摄像头的外参标定方法、装置及设备 |
CN111179331A (zh) * | 2019-12-31 | 2020-05-19 | 智车优行科技(上海)有限公司 | 深度估计方法、装置、电子设备及计算机可读存储介质 |
WO2020192209A1 (zh) * | 2019-03-25 | 2020-10-01 | 华为技术有限公司 | 一种基于Dual Camera+TOF的大光圈虚化方法 |
-
2021
- 2021-03-31 CN CN202110348689.7A patent/CN113052890A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109118532A (zh) * | 2017-06-23 | 2019-01-01 | 百度在线网络技术(北京)有限公司 | 视觉景深估计方法、装置、设备及存储介质 |
GB201716533D0 (en) * | 2017-10-09 | 2017-11-22 | Nokia Technologies Oy | Methods and apparatuses for depth rectification processing |
WO2020192209A1 (zh) * | 2019-03-25 | 2020-10-01 | 华为技术有限公司 | 一种基于Dual Camera+TOF的大光圈虚化方法 |
CN109920011A (zh) * | 2019-05-16 | 2019-06-21 | 长沙智能驾驶研究院有限公司 | 激光雷达与双目摄像头的外参标定方法、装置及设备 |
CN111179331A (zh) * | 2019-12-31 | 2020-05-19 | 智车优行科技(上海)有限公司 | 深度估计方法、装置、电子设备及计算机可读存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113539444A (zh) * | 2021-08-30 | 2021-10-22 | 上海联影医疗科技股份有限公司 | 医学图像重建方法、装置、电子设备和存储介质 |
CN113539444B (zh) * | 2021-08-30 | 2024-04-19 | 上海联影医疗科技股份有限公司 | 医学图像重建方法、装置、电子设备和存储介质 |
WO2023070555A1 (zh) * | 2021-10-29 | 2023-05-04 | 华为技术有限公司 | 一种获取深度真值的方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111563923B (zh) | 获得稠密深度图的方法及相关装置 | |
US10677923B2 (en) | Optoelectronic modules for distance measurements and/or multi-dimensional imaging | |
US7417717B2 (en) | System and method for improving lidar data fidelity using pixel-aligned lidar/electro-optic data | |
CN111340864A (zh) | 基于单目估计的三维场景融合方法及装置 | |
CN111045029B (zh) | 一种融合的深度测量装置及测量方法 | |
CN113034567A (zh) | 一种深度真值获取方法、装置、系统及深度相机 | |
CN111862180B (zh) | 一种相机组位姿获取方法、装置、存储介质及电子设备 | |
CN113052890A (zh) | 一种深度真值获取方法、装置、系统及深度相机 | |
CN112446927A (zh) | 激光雷达和相机的联合标定方法、装置、设备及存储介质 | |
CN111047650B (zh) | 一种用于飞行时间相机的参数标定方法 | |
CN113111513B (zh) | 传感器配置方案确定方法、装置、计算机设备及存储介质 | |
CN113077523B (zh) | 一种标定方法、装置、计算机设备及存储介质 | |
CN113160298A (zh) | 一种深度真值获取方法、装置、系统及深度相机 | |
CN113533256A (zh) | 一种光谱反射率的确定方法、装置及设备 | |
CN112132900B (zh) | 一种视觉重定位方法及系统 | |
CN110738703A (zh) | 定位方法及装置、终端、存储介质 | |
CN113780349A (zh) | 训练样本集的获取方法、模型训练方法及相关装置 | |
KR20170100718A (ko) | 점군 정합 장치 및 방법 | |
CN113160292B (zh) | 一种基于智能移动终端的激光雷达点云数据三维建模装置及方法 | |
CN111637837B (zh) | 一种单目摄像头测量物体尺寸及距离的方法和系统 | |
CN117788686A (zh) | 一种基于2d影像的三维场景重建方法、装置及电子设备 | |
CN116704125A (zh) | 一种基于三维点云的映射方法、装置、芯片及模组设备 | |
CN113406654B (zh) | 一种itof测距系统及计算被测物反射率的方法 | |
WO2023077412A1 (zh) | 一种物体测距方法及装置 | |
CN114415133A (zh) | 激光雷达-相机外参标定方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |