| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> DepthInSpace:多帧影像信息在单目结构光深度估计中的应用(ICCV2021) -> 正文阅读 |
|
[人工智能]DepthInSpace:多帧影像信息在单目结构光深度估计中的应用(ICCV2021) |
作者‖ flow 编辑‖ 3D视觉开发者社区 3D 开发者社区该文链接‖ https://mp.weixin.qq.com/s/EYxbJmj3cxwOahwouwLxUg 目标读者: 对基于深度学习的单目结构光深度估计感兴趣的相关研究人员。 论文及附件链接: https://paperswithcode.com/paper/depthinspace-exploitation-and-fusion-of 数据链接:https://www.idiap.ch/paper/depthinspace (注:尽管论文提供了所谓的数据链接,但是目前看来数据并没有放上去。) 0. 概述我们知道,带有结构光相机的深度传感器,普遍配备的是传统的算法,比如说kinect v1采用的块匹配算法,Intel RealSense采用的半全局匹配算法。相对来说,深度学习在该领域中的蔓延暂时还是比较少的。 UltraStereo(CVPR 2017)通过对影像块进行二值编码,来实现低复杂度的匹配机制;HyperDepth(CVPR 2016)将深度估计问题视作分类问题,进而通过机器学习的方式,具体来说是级联的随机森林对其进行求解,然而,HyperDepth获取GT的方式是:从高精度的传感器中获取,或者从其他的立体匹配方法获得,换句话说,HyperDepth使用的是有监督的方式。至于connecting the dots(CVPR 2019), 则应用了ActiveStereoNet(ECCV 2018)中的光度损失函数,并提出了一个边缘检测的网络来应对edge-fattening问题。 该文在connecting the dots的基础上,进一步地做出以下几个贡献:
1. 方法以下将connecting the dots 简称为CTD,该文所提出的DepthInSpace模型简称为DIS。 DIS模型在CTD模型的基础上进行改进。CTD模型使用了两个分离的网络分别用于视差估计以及边缘检测。其中,用于边缘检测的网络,由环境光(ambient)影像(以下将称为泛光图)进行程度较弱的监督。然而,DIS认为,泛光图的抓取非常的简便,而且完全可以起到更大的作用,仅仅用于边缘检测有些浪费信息,为什么不再对其进行充分利用呢?因此,DIS进一步地,利用泛光图来进行光流的预测,从而提供更多的信息。 对于DIS而言,下表为其几个版本的模型简称及说明:
出于实用性的考虑及个人理解的限制,在本节中,将相对重点介绍DIS-SF的模型结构以及损失函数,着少量笔墨在DIS-MF中。 1.1 DIS-SFDIS-SF网络具体的模型结构如下: 对于某两帧,不妨设这两帧编号为 i i i 与 j j j,其对应的泛光图以及实时图则分别为 A i A_i Ai?, I i I_i Ii?, A j A_j Aj?, I j I_j Ij?。此外,设参考散斑为 P P P。 在训练过程中,首先,实时图 I i I_i Ii?以及 I j I_j Ij?将被喂入DispNet,进而得到与其对应的视差图,命名为 D i D_i Di?, D j D_j Dj?。同时,对于两帧泛光图 A i A_i Ai?以及 A j A_j Aj?,则被喂入用于光流预测的LiteFlowNet。光度损失 L p h L_{ph} Lph?以及平滑损失 L s L_s Ls?将分别作用于单独的影像上。而对于多视角损失 L m v L_{mv} Lmv?,由于其目的是为帧与帧之间施加连续性,因此,多视角损失作用于两帧之间。 在推理过程中,DispNet将接收一张单独的实时图,而后估计出其对应的视差图作为输出。 自监督的网络,往往通过设计精巧的损失函数进行限制,具体来说,DIS整体的损失函数设计为: L = 1 N ∑ i ∈ Γ ( L p h i + λ 1 L s i + λ 2 L p g t i ) + 1 N ( N ? 1 ) ∑ i , j ∈ Γ λ 3 L m v i j \begin{aligned} \mathcal{L}=\frac{1}{N} \sum_{i \in \Gamma}\left(\mathcal{L}_{p h}^{i}+\lambda_{1} \mathcal{L}_{s}^{i}+\lambda_{2} \mathcal{L}_{p g t}^{i}\right) \\ +\frac{1}{N(N-1)} \sum_{i, j \in \Gamma} \lambda_{3} \mathcal{L}_{m v}^{i j} \end{aligned} L=N1?i∈Γ∑?(Lphi?+λ1?Lsi?+λ2?Lpgti?)+N(N?1)1?i,j∈Γ∑?λ3?Lmvij?? 我们现标注 D D D 为视差图, I ~ \widetilde{I} I 为输入影像的LCN, P P P为同样做了LCN处理的参考图,从而,更为具体的损失函数说明可见下表:
对于这些损失函数,我们很自然会好奇哪个所起的作用会大些,在DIS提供的附录中,有loss函数的消融实验结果,具体如下表所示: 就数值上来说,不难看出 L s L_s Ls?起了非常大的作用。 1.2 DIS-MFDIS-MF则是将同一个场景下的其他帧的信息转至一帧上,进而更为充分地利用“多视角”的影像信息,得到更为准确的视差。其中,假设每一帧都有对应的初始视差图,而我们融合多帧信息的目的就是优化这些初始的视差图,在这里,初始的视差图可以由DIS-SF模型提供得到。文章认为,融合多帧影像信息的方式对于结构光的这种设定来说,应当是更为有效的,因为结构光深度估计的结果优劣,很大程度上取决于散斑在物体上的呈现。 DIS-MF的具体网络结构如下所示: 对于DIS-MF的训练,直接将其替换DIS-SF中独立的DispNet即可。损失函数与其他训练策略与DIS-SF一致。在DIS-MF中更为具体的公式表达以及fusion block等介绍,推荐读者去精读原文,这里则不做解读。 2. 实验结果2.1 数据用于验证模型效果的数据集为三个合成数据集以及一个真实数据集。合成数据集的制作方式与CTD的一致,即基于shapenet模型的仿真,自然,其中的相机模型参数需要调整为与实际的硬件情况一致。 三个合成数据的投影散斑分别为:
对于每一组合成数据,均有8192个sequence用于训练,512个sequence用于测试,其中,每一个sequence都包含了同一个场景的4对实时图和泛光图。不同的散斑形状会导致不同的深度表现,通常来说,散斑越密集,深度表现越好。不过在实际情况中,散斑的可选择性却往往受限于硬件。为了验证模型在真实数据上的泛化效果,文章使用真实的模组在4个不同的场景中,抓取了共148个sequence。用于抓取的模组可以通过手动开关投影,进而便捷地获取散斑图与泛光图。在这148个sequence中,划分出130个sequence进行训练,18个sequence用于测试。显然,真实场景不像合成数据一样能够便捷地获取GT,因此文章使用3D 扫描仪对真实场景进行扫描,而后再通过 ICP以及Ball-Pivoting等方式得到3D模型以及相机外参,进而得到GT。 2.2 与其他方法的对比实验类似于双目视觉的验证指标,在对比试验中也采取bad(x)的指标,只不过更关注亚像素精度,所以主要关注的像素误差为o(0.5),o(1)等,具体来说,这里所关注的指标为o(0.5),o(1),o(2),o(5)。 相对来说,我们更关注DIS-SF相对于CTD之类的方法的优劣,不难看出,其在真实数据的泛化中更具优势一些,而对于真实数据的泛化,也正是多数研究人员的兴趣所在。个人认为,如果想要走自监督的路线,该篇文章还是有很大的参考意义。 参考文献[1] Fanello, S. R. , Valentin, J. , Rhemann, C. , Kowdle, A. , & Izadi, S. . (2017). UltraStereo: Efficient Learning-Based Matching for Active Stereo Systems. 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). IEEE. [2] Riegler, G. , Liao, Y. , Donne, S. , Koltun, V. , & Geiger, A. . (2019). Connecting the Dots: Learning Representations for Active Monocular Depth Estimation. 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). IEEE. [3] Fanello, S. R. , Rhemann, C. , Tankovich, V. , Kowdle, A. , & Izadi, S. . (2016). HyperDepth: Learning Depth from Structured Light Without Matching. Computer Vision & Pattern Recognition. IEEE. [4] Zhang, Y. , Khamis, S. , Rhemann, C. , Valentin, J. , Kowdle, A. , & Tankovich, V. , et al. (2018). Activestereonet: end-to-end self-supervised learning for active stereo systems. |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 23:19:26- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |