首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >【论文复现】单目深度估计的新突破

【论文复现】单目深度估计的新突破

作者头像
Eternity._
发布于 2024-11-26 02:34:26
发布于 2024-11-26 02:34:26
95702
代码可运行
举报
文章被收录于专栏:登神长阶登神长阶
运行总次数:2
代码可运行

1. 引言☁️

计算机视觉领域,深度学习技术已经成为解决许多任务的主要方法,其中包括图像分类、目标检测、语义分割等。然而,在单目深度估计方面,仍然存在着一些挑战。单目深度估计是指从单张RGB图像中估计场景中每个像素点的深度信息,这是许多视觉任务的关键前提。本文介绍了两种前沿的方法:稳定扩散和仿射不变深度估计,旨在解决深度估计中的关键问题。在本节中,我们将简要介绍这两个概念,并探讨研究的背景和动机。

1.1 稳定扩散简介


稳定扩散是一种基于概率的生成模型,其核心思想是利用扩散过程和自回归建模来生成清晰的图像。扩散过程模拟了噪声图像逐步转变为清晰图像的过程,通过在每个步骤中逐渐添加噪声,生成高质量的图像。稳定扩散的引入为图像生成任务带来了新的思路和方法,为深度估计提供了新的可能性。在稳定扩散中,图像被视为由初始噪声图像逐步演化而来,每一步都引入了更多的噪声,直到生成清晰的图像。这种逐步扩散的过程利用了概率分布的性质,通过不断迭代生成更高质量的图像。稳定扩散的工作原理和概念使得我们能够从噪声图像中准确地生成清晰的图像,为深度估计任务提供了新的思路和方法。

1.2 仿射不变深度估计简介


仿射不变深度估计是一种利用深度学习方法从单目图像中估计场景深度信息的技术。与传统的深度估计方法不同,仿射不变深度估计具有更强的鲁棒性,能够在不受姿态变化和光照变化影响的情况下准确地估计深度。这使得该方法在实际场景中具有更广泛的适用性和稳健性。通过使用深度学习方法,特别是卷积神经网络(CNN),我们可以学习到图像中的特征和场景结构,并从中推断出深度信息。仿射不变深度估计的方法和技术使得我们能够在各种复杂的场景中准确地估计深度,为实际应用提供了强大的工具和方法。

1.3 研究背景和动机


在当前的计算机视觉领域,单目深度估计一直是一个备受关注的研究方向。然而,传统的深度估计方法往往受限于姿态变化、光照变化等因素的影响,难以实现精确的深度估计。因此,引入了稳定扩散和仿射不变深度估计的概念,旨在解决这一挑战,并为单目深度估计领域带来新的突破。通过结合稳定扩散的生成能力和仿射不变深度估计的鲁棒性,我们期望能够提出一种更加有效和准确的深度估计方法,为视觉任务的实现和发展做出贡献。

在接下来的部分中,将详细介绍稳定扩散和仿射不变深度估计的原理、方法和实验结果,以及对未来研究方向的展望。通过深入研究和探索,我们希望能够为深度估计领域的进步和发展提供新的思路和方法。

2. 稳定扩散和深度估计☁️


2.1稳定扩散的工作原理


稳定扩散的工作原理是一种基于概率的生成模型,其核心思想是通过扩散过程和自回归建模来逐步生成图像。在稳定扩散中,图像被视为由初始噪声图像逐步演化而来,每个时间步都会引入一定程度的噪声,直到生成清晰的图像。这个过程类似于在图像上逐步叠加细节和结构,直到最终图像呈现出所需的特征和内容。

具体而言,稳定扩散模型的生成过程可以分为以下几个步骤:

  • 初始化阶段:首先,随机生成一个噪声图像作为初始输入。这个噪声图像可以是随机像素值的矩阵,也可以是根据某种分布生成的初始图像。
  • 扰动过程:接下来,在每个时间步中,对当前图像进行扰动操作。这个扰动操作通常由一个高斯噪声所参数化,即在当前图像的基础上加上一个服从高斯分布的随机噪声。这个噪声的强度可以随着时间步的增加而逐渐减小,这意味着随着时间的推移,图像会逐渐变得更加清晰。
  • 逐步减小扰动强度:在每个时间步中,扰动的强度会逐渐减小。这意味着随着时间的推移,噪声对图像的影响会逐渐减弱,最终图像会逐渐收敛到一个稳定状态,呈现出清晰的结构和内容。

通过这种逐步的扰动和减小噪声的过程,稳定扩散模型能够逐步生成清晰的图像。这种生成过程结合了概率建模和自回归建模的特点,能够捕捉图像的局部和全局结构,并生成具有高质量的图像。稳定扩散模型的这种生成方式使其在图像生成和深度估计等任务中具有广泛的应用前景。

2.2 深度估计的挑战与方法介绍


在深度估计领域,面临着多种挑战,如视角变化、光照变化、遮挡等因素的影响。传统的深度估计方法通常基于几何学原理,利用图像的纹理、边缘等特征进行深度估计。然而,这些方法往往依赖于复杂的数学模型和假设,对于复杂的场景和光照条件不具备良好的鲁棒性。

为了克服这些挑战,研究者们转向了基于深度学习的方法。基于深度学习的深度估计方法通过学习大量的数据中图像特征和深度信息的映射关系来实现深度估计,具有更高的灵活性和鲁棒性。这些方法通常采用卷积神经网络(CNN)来提取图像的特征,并通过回归或分类的方式来推断深度信息。

具体来说,基于深度学习的深度估计方法可以分为以下两类:

  • 基于传统几何的方法:这类方法通常利用图像的纹理、边缘等特征进行深度估计,如结构光、三角测距等。这些方法依赖于复杂的数学模型和假设,对场景的复杂性和光照条件敏感。
  • 基于深度学习的方法:这类方法利用深度学习技术从大量数据中学习到图像特征和深度信息的映射关系,实现更准确和鲁棒的深度估计。它们通常采用卷积神经网络(CNN)来提取图像特征,并通过回归或分类的方式来推断深度信息。随着深度学习技术的发展,这些方法在深度估计中取得了巨大的进展。

近年来,随着深度学习技术的不断发展和完善,基于深度学习的深度估计方法不断涌现,并在训练集和测试集上取得了良好的性能。例如,端到端的深度估计方法能够直接从图像中推断深度信息,极大地简化了深度估计的流程。此外,一些基于生成对抗网络(GAN)的方法通过生成逼真的深度图像来提升深度估计的准确性和鲁棒性。

这些基于深度学习的方法为解决深度估计中的挑战提供了新的思路和方法,为实现更准确、更鲁棒的深度估计在实际应用中提供了重要的技术支持。

3. 实现细节☁️


Marigold微调协议概述。从预训练的稳定扩散模型开始,使用原始稳定扩散VAE将图像x和深度d编码到潜空间中。通过优化标准扩散目标相对于深度潜码来微调仅U-Net。图像的条件是通过在将它们输入U-Net之前连接两个潜码来实现的。U-Net的第一层被修改为接受连接的潜码

3.1 混合数据集训练


混合数据集训练是一种有效的策略,能够提高深度学习模型在不同数据分布下的泛化能力。在本文中,我们采用了两个合成数据集进行训练:Hypersim和Virtual KITTI。这两个数据集具有不同的分辨率和长宽比,因此能够提供更丰富和多样化的训练样本,有助于模型学习到更广泛的场景和特征。

在混合数据集训练过程中,我们以一定的概率从这两个数据集中随机选择样本,并将它们组合成一个批次。这样的做法能够使模型在训练过程中接触到不同数据分布下的样本,从而更好地适应各种真实场景的变化和复杂性。通过在训练集上引入不同数据集的样本,模型可以学习到更多的特征和变化,提高其对于真实数据的适应能力。

然而,混合数据集训练的关键在于确定数据集之间的混合比例。在本文中,我们通过调整伯努利参数来控制数据集的选择概率。具体来说,我们尝试了不同的混合比例,并在验证集上评估模型的性能。通过对模型在不同混合比例下的性能进行比较,我们能够找到最佳的混合比例,使模型在不同数据分布下均能取得良好的性能表现。

这种混合数据集训练的策略能够帮助模型更好地适应各种真实场景的数据分布,提高其泛化能力和鲁棒性。通过合理地选择混合比例,我们可以使模型更有效地学习到数据的特征和结构,从而在实际应用中取得更好的性能表现。

3.2 退火的多分辨率噪声


多分辨率噪声是一种在深度学习领域中广泛应用的数据增强技术,其目的在于提高模型的鲁棒性和泛化能力。在本文中,我们将深入探讨多分辨率噪声的原理、应用及改进,并重点介绍引入退火策略后的改进方法。

Marigold推断方案概述。给定输入图像x,我们使用原始稳定扩散VAE将其编码为潜码z(x),并在每次去噪迭代之前与深度潜码z(d)连接,然后将其提供给经修改的微调U-Net。在执行T步骤的计划后,得到的深度潜码z(d)0被解码成图像,其3个通道被平均以获得最终的估计值ˆd。

  • 多分辨率噪声的原理和应用

多分辨率噪声是一种通过在图像中添加不同分辨率的噪声来进行数据增强的方法。其基本原理是在模型训练过程中,为图像引入不同程度的噪声,以模拟现实世界中的各种噪声环境,并帮助模型更好地学习到鲁棒的特征。通常,多分辨率噪声会在图像的不同尺度上引入高斯噪声或其他类型的噪声,以模拟真实世界中的噪声情况。

在实际应用中,多分辨率噪声通常被用于图像分类、目标检测、语义分割等任务中。通过在训练数据中引入多样化的噪声,可以使模型更好地适应各种复杂的场景和环境,提高其对噪声和干扰的抵抗能力。此外,多分辨率噪声还可以有效地防止模型出现过拟合的情况,提高其在测试数据上的泛化能力。

  • 引入退火策略的改进方法

尽管多分辨率噪声在数据增强中发挥着重要作用,但其性能仍然受到一些限制。为了进一步提高多分辨率噪声的效果,我们引入了退火策略,即在噪声的每个层级上逐步减小噪声的强度。这样的改进能够更好地保留图像中的高质量特征,从而提高模型的性能和泛化能力。

具体而言,我们修改了多分辨率噪声的权重计算公式,引入了退火因子 ( s_i )。这个退火因子随着扩散过程的进行而逐渐减小,使得在噪声消失的时间步上,低分辨率层级的影响变得更小。这样一来,模型在训练过程中能够更好地学习到高质量的特征,从而提高了其性能和泛化能力。

  • 实验结果及效果分析

在进行了改进的多分辨率噪声训练后,我们对模型进行了一系列的实验,并评估了其性能和泛化能力。实验结果表明,引入退火策略后的多分辨率噪声训练在各种任务和数据集上都取得了显著的改进。模型在测试数据集上的性能表现更加稳定,且对噪声和干扰的抵抗能力得到了显著提高。这表明退火策略能够有效地改进多分辨率噪声的效果,并提高模型的性能和泛化能力。

  • 潜在应用和未来展望

改进后的多分辨率噪声训练方法具有广泛的潜在应用和未来展望。首先,它可以应用于各种深度学习任务中,如图像分类、

目标检测、语义分割等,以提高模型的性能和鲁棒性。其次,可以进一步研究和优化退火策略,探索更加有效的权重调整方法,进一步提高多分辨率噪声的效果。最后,可以将改进后的多分辨率噪声训练方法应用于更广泛的领域,如医学影像分析、自动驾驶等,为这些领域的发展提供新的思路和方法。

综上所述,改进后的多分辨率噪声训练方法具有重要的理论意义和实际应用价值,将为深度学习领域的发展和应用提供新的思路和方法。

3.3 与地面真实深度的对齐


在深度估计任务中,评估模型的性能通常需要将预测的深度图与地面真实深度进行对齐。对齐的过程可以确保预测的深度图与地面真实深度图之间有一个合适的映射关系,从而可以进行有效的性能评估。在本文中,我们采用了一种基于最小二乘拟合的方法来进行深度图的对齐,以提高评估的准确性和可靠性。

具体而言,我们首先将预测的深度图和地面真实深度图转换为向量形式,并且只考虑地面真实深度中存在的像素。这样做的目的是为了消除深度图中不可见区域的影响,从而提高对齐的准确性。然后,我们使用最小二乘法来拟合预测的深度值和地面真实深度值之间的线性关系。最小二乘法可以找到一条直线,使得预测的深度值与地面真实深度值之间的残差平方和最小,从而得到一个尺度因子和一个偏移量。

在得到尺度因子和偏移量之后,我们将预测的深度图按照这个尺度因子和偏移量进行缩放和平移,以使其与地面真实深度图尽可能接近。这样一来,预测的深度图就可以与地面真实深度图在尺度和位置上对齐,从而可以进行有效的性能评估。这种基于最小二乘拟合的对齐方法具有简单、有效的特点,可以提高深度估计任务的评估准确性和可靠性,为模型的优化和改进提供重要参考。

3.4 3D可视化


在深度估计任务中,进行3D可视化操作是一种非常重要的手段,可以帮助我们更直观地理解模型的预测结果,并对模型的性能进行评估和优化。在本节中,我们将详细介绍实验结果,并对每个实验部分进行更深入的分析和讨论,以及评估模型性能的影响。

我们计算了预测深度图与地面真实深度图之间的比例和偏移标量。这些计算结果可以帮助我们了解模型预测的深度值与实际深度值之间的偏差情况,从而评估模型的准确性。通过比较比例和偏移标量,我们可以发现模型在不同场景和数据集上的性能差异,并且可以针对性地进行模型调整和优化。

使用相机内参将像素投影到度量3D空间中。这一步操作可以将预测的深度图转换为真实世界中的三维点云数据,从而更直观地展示模型对场景的理解和深度估计能力。通过观察三维点云数据,我们可以发现模型在不同区域和物体上的深度估计准确性,以及模型对场景结构的理解程度。

对于没有地面真实深度的“现实世界”样本,我们估计了尺度、偏移和相机内参等参数。这些参数估计结果可以帮助我们将模型的预测结果与真实世界场景进行对比,从而评估模型的泛化能力和鲁棒性。通过比较模型预测的深度图与真实世界场景的差异,我们可以发现模型在不同环境和条件下的性能表现,并且可以提出改进模型的建议和方法。

为了可视化法线,我们对每个位置进行了最小二乘平面拟合,考虑到其周围3×3像素的邻域范围。通过可视化法线,我们可以更直观地展示模型对场景表面的理解和深度估计结果。通过观察法线的方向和变化,我们可以发现模型在不同区域和物体上的深度估计准确性,并且可以评估模型对场景几何结构的理解程度。

通过这些实现细节和操作步骤,我们可以更全面地评估模型的性能和鲁棒性,发现模型存在的问题和不足之处,并提出改进模型的方法和策略。这些实验结果和分析将为我们进一步优化模型,提高深度估计的准确性和鲁棒性提供重要参考和指导。

4. 实验结果☁️


4.1 含深度的稳定扩散VAE


对预训练的稳定扩散VAE在深度图生成任务中的表现进行了评估。深度图生成是一个关键的任务,因为准确的深度图对于许多计算机视觉应用如三维重建、虚拟现实等具有重要意义。通过稳定扩散VAE生成的深度图,可以评估其对于不同场景和对象的表现。实验结果显示,稳定扩散VAE生成的深度图与地面真实深度之间的平均绝对误差(MAE)相对较小,表明其在深度图生成任务中表现出良好的性能和准确性。

在进一步分析中,可以将稳定扩散VAE生成的深度图与其他深度估计方法生成的深度图进行比较。这种比较可以帮助我们评估稳定扩散VAE在深度估计方面的优势和局限性,以及确定其在不同场景和数据集上的通用性和鲁棒性。通过与其他方法的比较,我们可以更全面地了解稳定扩散VAE在深度估计中的表现,并为进一步的研究提供指导和启示。

此外,还可以对稳定扩散VAE生成的深度图进行定性分析,以便直观地了解其生成效果。通过可视化稳定扩散VAE生成的深度图和地面真实深度之间的差异和一致性,我们可以深入了解其在不同场景和条件下的表现特点,并从中发现模型的优势和改进空间。

4.2 VAE解码器后通道的一致性


进一步评估了稳定扩散潜在空间对深度表示的适用性。这一部分的重点在于分析从VAE解码器获取的深度通道的一致性,并探讨这种一致性与解码器输出的关系。通过对潜在空间解码的深度通道之间的差异进行定量分析,可以评估稳定扩散潜在空间对深度表示的稳定性和可靠性。

在进一步分析中,可以探讨潜在空间解码的深度通道之间的差异与深度估计精度之间的关系。通过研究这种关系,我们可以深入了解稳定扩散潜在空间对深度表示的影响因素,并为提高深度估计精度提供参考和建议。此外,我们还可以将稳定扩散潜在空间与其他深度表示方法进行比较,以评估其相对优势和适用性。

4.3 预测方差和训练噪声


在不同数据集上对单目深度估计方法进行的深度定性比较。Marigold在捕捉细小结构(如椅子腿)和保留场景整体布局方面表现出色(如ETH3D示例中的墙壁和DIODE示例中的椅子)。

对集合大小的消融。我们观察到随着集合大小的增加,性能呈单调改善。在每个样本预测超过10次后,这种改善开始减弱。

另一个重要的实验部分是评估模型在不同训练和推断条件下的预测一致性。在这一部分中,我们对三种不同的训练方式进行了比较,包括使用高斯噪声、多分辨率噪声和退火的多分辨率噪声。我们通过对模型进行不同噪声条件下的训练,并在验证集上进行推断,来评估模型的预测一致性和鲁棒性。

进一步分析中,我们可以探讨不同训练噪声条件对模型性能和泛化能力的影响。通过研究不同训练噪声条件下模型的预测一致性和鲁棒性,我们可以深入了解噪声对深度估计模型的影响,并为模型的改进和优化提供指导和建议。

4.4 混合训练数据集的比例


研究了在微调协议中使用合成数据集的影响。通过在Hypersim和Virtual KITTI两个合成数据集上进行训练,并在真实数据集上进行验证,我们评估了混合不同数据集比例对模型性能的影响。进一步分析中,我们可以探讨不同数据集比例对模型性能和泛化能力的影响,以及确定最佳的数据集混合比例。

通过对混合训练数据集比例的影响进行深入分析,我们可以了解合成数据集在模型训练中的作用和价值,以及确定合适的数据集比例以提高模型性能和泛化能力。此外,我们还可以探讨不同数据集比例对模型在不同场景和条件下的适用性和鲁棒性的影响,为模型的进一步优化和改进提供指导和建议。

部署过程:


注意

确保您已经安装了必要的Python库,包括numpy、torch、PIL和tqdm。您可以使用以下命令安装这些库:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install numpy torch pillow tqdm

获取模型文件 我们将使用Marigold库提供的深度估计模型。您可以通过以下命令安装Marigold库:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install marigold

1. 选择检查点

在这个部分,用户可以通过下拉菜单选择要使用的深度估计模型。具体代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ckpt_dic = {}

w = widgets.Dropdown()

def on_change(change):
    if change['type'] == 'change' and change['name'] == 'value':
        ckpt_name = change['new']
        ckpt_path = ckpt_dic[ckpt_name]

w.observe(on_change)

display(w)

这段代码定义了一个包含两个选项的字典 ckpt_dic,分别代表两个不同模型的检查点。然后,创建了一个下拉菜单 w,供用户选择模型。通过观察下拉菜单的变化,可以实时更新所选择的检查点。

2. 准备输入数据

在这个部分,用户可以选择使用提供的样本图片或上传自己的图片进行深度估计。具体代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
button_download.on_click(on_button_download_clicked)
button_upload.on_click(on_button_upload_clicked)
button_clear_in.on_click(on_button_clear_in_clicked)
button_clear_out.on_click(on_button_clear_out_clicked)

# 将按钮放置在适当的布局中
widgets.VBox([widgets.HBox([button_upload, button_download]),
              widgets.HBox([button_clear_in, button_clear_out]),
              out_box])

这段代码创建了四个按钮,分别用于下载样本图片、上传图片、清空输入文件夹和清空输出文件夹。每个按钮的点击事件都会触发相应的回调函数,执行对应的操作。

3. 显示输入图片

在这个部分,展示用户上传或选择的输入图片。具体代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
image_paths = glob(os.path.join(input_dir, "*"))
display_images(image_paths)

通过 glob 函数获取输入文件夹中的所有图片路径,然后使用自定义函数 display_images 将这些图片显示在Notebook中。

4. 运行深度估计

在这个部分,使用所选的模型进行深度估计。具体代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 设置深度估计的参数
denoising_steps = 4
ensemble_size = 5
processing_res = 768
match_input_res = True

# 执行深度估计
for rgb_path in tqdm():
    # 读取输入图片
    input_image = Image.open(rgb_path)

    # 预测深度
    pipeline_output = pipe()

    # 处理预测结果
    depth_pred: np.ndarray = pipeline_output.depth_np
    depth_colored: Image.Image = pipeline_output.depth_colored

在这段代码中,首先设置了深度估计的参数,然后遍历了所有的输入图片路径,逐张进行深度估计。深度估计的结果会保存在指定的输出文件夹中。

5. 显示预测结果

在这个部分,展示深度估计的预测结果。具体代码如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
output_images_colored  = glob(os.path.join(output_dir_color, "*"))
display_images(output_images_colored)

使用 glob 函数获取输出文件夹中的所有彩色深度图像路径,然后使用自定义函数 display_images 将这些图像显示在Notebook中。

run.py


1. 准备环境和数据


注意

确保你已经安装了所需的Python库。在本示例中,我们使用了Marigold、torch、PIL和tqdm等库。如果还未安装,你可以使用pip进行安装。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pip install marigold torch torchvision pillow tqdm

2. 下载预训练模型


在运行代码之前,我们需要下载并指定要使用的预训练模型。在本示例中,我们使用了Marigold库中的一个预训练模型,具体路径为prs-eth/marigold-lcm-v1-0。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
checkpoint_path = "prs-eth/marigold-lcm-v1-0"

3. 设置参数和文件夹路径


在代码中,我们需要指定输入图像文件夹路径和输出结果保存的文件夹路径。此外,我们还可以调整一些深度估计的参数,例如去噪步数、集成预测数量、处理分辨率等。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
parser = argparse.ArgumentParser()
parser.add_argument()

parser.add_argument()

parser.add_argument()

# inference setting
parser.add_argument()
parser.add_argument()
parser.add_argument()

# resolution setting
parser.add_argument()
parser.add_argument()
parser.add_argument()

# depth map colormap
parser.add_argument()

# other settings
parser.add_argument()

parser.add_argument()
parser.add_argument()

args = parser.parse_args()

4. 运行深度估计


通过解析命令行参数或手动设置参数,我们可以执行深度估计。代码会遍历输入图像文件夹中的所有图像,并对每张图像进行深度估计。深度估计结果将保存为.npy和.png格式的文件,并根据深度值着色保存为彩色图片。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
with torch.no_grad():
    os.makedirs()
    for rgb_path in tqdm():
        # Read input image
        input_image = Image.open(rgb_path)

        # Predict depth
        pipe_out = pipe()

        depth_pred: np.ndarray = pipe_out.depth_np
        depth_colored: Image.Image = pipe_out.depth_colored

        # Save as npy
        rgb_name_base = os.path.splitext(os.path.basename(rgb_path))[0]
        pred_name_base = rgb_name_base + "_pred"
        npy_save_path = os.path.join(output_dir_npy, f"{pred_name_base}.npy")
        if os.path.exists(npy_save_path):
            logging.warning(f"Existing file: '{npy_save_path}' will be overwritten")
        np.save(npy_save_path, depth_pred)

5. 结果分析和优化


在获得深度估计结果后,我们可以通过可视化和分析结果来评估模型的性能和鲁棒性。我们还可以尝试调整模型的参数,例如调整去噪步数、集成预测数量等,以进一步优化模型的性能和效果。

通过以上步骤,我们可以轻松地部署和使用Marigold库进行单张图像的深度估计,并且可以根据需要对模型进行进一步的优化和调整。

参考文章:


https://paperswithcode.com/paper/repurposing-diffusion-based-image-generators https://github.com/prs-eth/marigold https://arxiv.org/abs/2312.02145 https://cdn.openai.com/papers/dall-e-3.pdf https://www.cvlibs.net/publications/Geiger2012CVPR.pdf


编程未来,从这里启航!解锁无限创意,让每一行代码都成为你通往成功的阶梯,帮助更多人欣赏与学习!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-11-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
PriorDiffusion利用文本到图像扩散模型语言先验,破解单目深度估计歧义,零样本性能优且收敛快 !
作者提出了PriorDiffusion,将人类提供的场景语言描述作为先验知识,引导深度图预测。在文本到图像预训练过程中,扩散模型学习生成与提供语言描述相符的多样化场景。为了实现这一目标,扩散模型必须理解每个目标的尺寸和形状、空间关系以及语言输入中描述的场景大小,以生成准确地表示输入文本在各种视图和场景布局下的图像。因此,在深度估计中,由人类生成的描述允许模型利用输入文本中嵌入的几何先验知识更有效地感知3D场景。在作者的PriorDiffusion中,在去噪过程中,模型使用图像和语言输入来预测要移除的噪声。最终,高斯噪声逐步细化为与输入图像和语言描述都相符的深度图。由于在训练和推理图像中获取足够的人类提供文本描述具有挑战性,作者利用视觉语言模型(例如LLaVA[11])为每张图像生成描述,模拟人类标注。
未来先知
2025/02/21
3030
PriorDiffusion利用文本到图像扩散模型语言先验,破解单目深度估计歧义,零样本性能优且收敛快 !
先验扩散: 在单眼深度估计的扩散模型中利用语言先验 !
本文探讨了利用文本到图像扩散模型学习的语言先验知识解决单目深度估计中的歧义和视觉干扰的潜力。特别是,传统的单目深度估计由于缺乏立体或多视角深度线索而具有固有的歧义,并且由于视觉缺乏鲁棒性而具有噪声。
未来先知
2025/02/25
2270
先验扩散: 在单眼深度估计的扩散模型中利用语言先验 !
LLM-MDE,多模态框架,通过语言理解深度,可以从单目图像中理解深度 !
单目深度估计(MDE)对于诸如自动驾驶等应用至关重要,其中准确的环境感知对安全性至关重要。基于手动设计的特征和几何模型的传统MDE方法在复杂场景中经常表现不佳。最近深度学习(DL)的进步已经革新了MDE ,提供了强大的性能,同时无需受制于物理或需要消耗大量资源的特征工程。
AIGC 先锋科技
2024/10/08
3430
LLM-MDE,多模态框架,通过语言理解深度,可以从单目图像中理解深度 !
自回归新王登基!NextStep-1强势登场,图像生成SOTA达成!高保真+强编辑,太能打了!
文章链接:https://arxiv.org/pdf/2508.10711 项目链接:https://stepfun.ai/research/en/nextstep1 Git链接: https://github.com/stepfun-ai/NextStep-1
AI生成未来
2025/08/27
1380
自回归新王登基!NextStep-1强势登场,图像生成SOTA达成!高保真+强编辑,太能打了!
ECCV 2020 | CLIFFNet:用于单目深度估计的多层嵌入损失
近年来,随着深度学习的发展,深度估计任务的性能得到了极大的提升,多层级CNN结构具有非常强的表达能力,使得更为精确的单目深度估计成为可能。为了有效训练模型进行深度估计,一个良好设计的损失函数显得尤为重要,它可以有效测量出预测结果与目标间的差异,从而指导模型更好地进行学习。
Amusi
2020/11/19
1K0
ECCV 2020 | CLIFFNet:用于单目深度估计的多层嵌入损失
单图像3D重建,ORG 模型如何统一摄像机参数估计与物体地面关系 ?
在联合物理可行地面的物体重建任务虽然尚未广泛探索,但其重要性不容忽视。这在图像编辑应用领域尤为相关,因为它影响着诸如可控阴影/反射合成和物体视图操作等关键方面。在这项工作中,作者旨在从单一图像中预测物体在3D空间中准确且基于地面的表示,特别是在不受限制的相机条件下。最近的单视图方法在处理物体重建方面显示出巨大潜力。然而,由于缺乏集成的物体-地面建模,使用这些方法重建的物体在放置在平坦表面上时常常显得“悬浮”或“倾斜”,这极大地阻碍了真实感的渲染。
AIGC 先锋科技
2024/08/05
3380
单图像3D重建,ORG 模型如何统一摄像机参数估计与物体地面关系 ?
TikTokDance5K 数据集助力 DreamDance,利用 2D 姿态丰富 3D 线索,仅用骨架动作序列动画化人体图像!
人类图像动画是指根据一系列动作控制信号,从静态的人类图像生成动态且逼真的视频。该领域由于其在电影制作、社交媒体和在线零售等多个行业的广泛应用而受到了广泛关注。尽管生成式人工智能迅速发展,但人类图像动画仍然具有挑战性,因为它需要对帧内连贯性和帧间一致性有全面的理解。
AIGC 先锋科技
2025/02/20
2930
TikTokDance5K 数据集助力 DreamDance,利用 2D 姿态丰富 3D 线索,仅用骨架动作序列动画化人体图像!
密集单目 SLAM 的概率体积融合
这篇论文主要还是在于深度估计这块,深度估计由于硬件设备的不同是有很多方法的,双目,RGBD,激光雷达,单目,其中最难大概就是单目了。在该论文中作者利用BA导出的信息矩阵来估计深度和深度的不确定性,利用深度的不确定性对3D体积重建进行加权三维重建,在精度和实时性方面都得到了不错的结果,值得关注。
3D视觉工坊
2023/04/29
1.1K0
密集单目 SLAM 的概率体积融合
单目深度估计重大突破:无需标签,精度超越 SOTA!西湖大学团队提出多教师蒸馏新方案
近日,西湖大学AGI实验室联合浙江工业大学等单位,提出了一种全新的多教师蒸馏算法,仅靠2万张无标签图片,就显著提升了单目深度估计的精度,刷新了现有SOTA!这一成果不仅降低了对标注数据的依赖,还让单目深度估计在更复杂的场景中表现得更强、更稳,真正为AI视觉感知打上“性价比”。
CoovallyAIHub
2025/07/11
2920
单目深度估计重大突破:无需标签,精度超越 SOTA!西湖大学团队提出多教师蒸馏新方案
基于深度学习的单目深度估计综述
文章:Monocular Depth Estimation Based On Deep Learning: An Overview
3D视觉工坊
2020/12/11
2.8K0
基于深度学习的单目深度估计综述
3D点云中高效的多分辨率平面分割方法
论文链接:https://www.researchgate.net/profile/Sven-Behnke-2/publication/221104985_Efficient_Multi-resolution_Plane_Segmentation_of_3D_Point_Clouds/links/0912f5012c7339e394000000/Efficient-Multi-resolution-Plane-Segmentation-of-3D-Point-Clouds.pdf
3D视觉工坊
2023/04/29
8830
3D点云中高效的多分辨率平面分割方法
微软开源 PromptFix | 从命令到图像,引领扩散模型进入精确控制新时代 !
近年来,扩散模型[55; 17; 61]在文本到图像生成方面取得了显著进展。得益于对大规模图像-文本对的训练[56],这些模型能够生成与文本提示高度一致且多样化的真实图像。它们已成功应用于视觉设计、摄影、数字艺术和电影产业等众多现实世界应用。此外,使用遵循指令数据进行训练的模型[7]在理解人类指令和执行相应图像处理任务方面展示了有希望的结果。先前的研究表明,使用遵循指令数据,作者可以简单地对文本到图像生成模型进行微调,以执行各种视觉任务,如图像编辑、目标检测[20]、分割[21]、修复[69; 21]和深度估计[20]。为了追随这些方法的成功,作者使用输入-目标-指令三联数据进行低级图像处理任务的模型训练。
AIGC 先锋科技
2024/07/08
5760
微软开源 PromptFix | 从命令到图像,引领扩散模型进入精确控制新时代 !
深度学习-最新论文解释
创建可靠且实时的 3D 姿势估计器的当前困难包括这样的事实:几乎没有训练数据,以及必须考虑遮挡的事实。例如,如果特定身体部位被阻挡而不能看到,则姿势估计器仍必须能够从身体其余部分的位置推断出其位置。
iOSDevLog
2019/04/18
8580
Lunima-OmniLV:多模态多Low-Level视觉框架,1K分辨率达佳效并助力系统构建 !
大规模基础模型的快速演进革新了人工智能,展示了跨多个领域的卓越泛化能力和多任务处理能力。GPT-4V [3]、InternVL [25-27]、Flamingo [8]、OmniGen [98] 和 OneDiffusion [51] 等统一框架通过在多模态数据集上进行大规模预训练,展现了令人印象深刻的表现。这些模型在语义驱动的视觉High-Level任务中表现出色,例如图像分类、图像理解、视觉生成和编辑。相比之下,Low-Level视觉统一模型的发展仍然高度分散且探索不足。
未来先知
2025/05/12
2160
Lunima-OmniLV:多模态多Low-Level视觉框架,1K分辨率达佳效并助力系统构建 !
真实时、强细节、高保真:更强大的视频重建算法,性能明显提升
我们知道过去几年,图像编辑领域发展惊人。但在视频领域,还有所缺陷。近日,一项视频编辑领域的研究成果放出。让我们先来看一下效果。
机器之心
2023/09/08
4690
真实时、强细节、高保真:更强大的视频重建算法,性能明显提升
单目图像和稀疏雷达数据深度估计
标题:Depth Estimation from Monocular Images and Sparse Radar Data
3D视觉工坊
2020/11/19
1.5K0
单目图像和稀疏雷达数据深度估计
Google/UC/Michigam University 联合提出 MegaSaM:融合多技术优势,重塑相机跟踪与深度估计 !
从一组图像中提取相机参数和场景几何结构是计算机视觉中的一个基本问题,通常被称为运动恢复结构(SfM)或同时定位与建图(SLAM)。尽管几十年的研究已经产生了适用于静止场景且具有大 Baseline 相机的成熟算法,但在处理在非受控环境中拍摄的手持相机捕捉的随意单目视频时,这些方法往往会失效[26, 78]。此类视频通常表现出有限的摄像机运动视差(例如,几乎静止或旋转相机),并且焦距范围广泛,并且常包含移动物体和场景动态变化。为了应对这些挑战,最近的研究主要集中在两种主要策略上:通过微调单目深度网络优化相机和场景几何结构,或者重构辐射场;或将来自单目视频的中间估计值(如深度、流场、长期轨迹和运动分割)结合到全局优化框架中。然而,当应用于包含长时间段、任意相机路径或复杂场景动态的不受约束视频时,这些方法往往是计算成本高昂或不够稳健的。
未来先知
2025/01/14
4830
Google/UC/Michigam University 联合提出 MegaSaM:融合多技术优势,重塑相机跟踪与深度估计 !
2024年6月计算机视觉论文推荐:扩散模型、视觉语言模型、视频生成等
6月还有一周就要结束了,我们今天来总结2024年6月上半月发表的最重要的论文,重点介绍了计算机视觉领域的最新研究和进展。
deephub
2024/07/01
4090
2024年6月计算机视觉论文推荐:扩散模型、视觉语言模型、视频生成等
深度学习中的“人体姿势估计”全指南
来源商业新知网,原标题:从DeepNet到HRNet,这有一份深度学习“人体姿势估计”全指南
商业新知
2019/05/08
3.7K0
深度学习中的“人体姿势估计”全指南
ICCV2023 室内场景自监督单目深度估计
本文方法是一种自监督的单目深度估计框架,名为GasMono,专门设计用于室内场景。本方法通过应用多视图几何的方式解决了室内场景中帧间大旋转和低纹理导致自监督深度估计困难的挑战。GasMono首先利用多视图几何方法获取粗糙的相机姿态,然后通过旋转和平移/尺度优化来进一步优化这些姿态。为了减轻低纹理的影响,该框架将视觉Transformer与迭代式自蒸馏机制相结合。通过在多个数据集上进行实验,展示了GasMono框架在室内自监督单目深度估计方面的最先进性能。
BBuf
2023/10/26
1.1K0
ICCV2023 室内场景自监督单目深度估计
推荐阅读
PriorDiffusion利用文本到图像扩散模型语言先验,破解单目深度估计歧义,零样本性能优且收敛快 !
3030
先验扩散: 在单眼深度估计的扩散模型中利用语言先验 !
2270
LLM-MDE,多模态框架,通过语言理解深度,可以从单目图像中理解深度 !
3430
自回归新王登基!NextStep-1强势登场,图像生成SOTA达成!高保真+强编辑,太能打了!
1380
ECCV 2020 | CLIFFNet:用于单目深度估计的多层嵌入损失
1K0
单图像3D重建,ORG 模型如何统一摄像机参数估计与物体地面关系 ?
3380
TikTokDance5K 数据集助力 DreamDance,利用 2D 姿态丰富 3D 线索,仅用骨架动作序列动画化人体图像!
2930
密集单目 SLAM 的概率体积融合
1.1K0
单目深度估计重大突破:无需标签,精度超越 SOTA!西湖大学团队提出多教师蒸馏新方案
2920
基于深度学习的单目深度估计综述
2.8K0
3D点云中高效的多分辨率平面分割方法
8830
微软开源 PromptFix | 从命令到图像,引领扩散模型进入精确控制新时代 !
5760
深度学习-最新论文解释
8580
Lunima-OmniLV:多模态多Low-Level视觉框架,1K分辨率达佳效并助力系统构建 !
2160
真实时、强细节、高保真:更强大的视频重建算法,性能明显提升
4690
单目图像和稀疏雷达数据深度估计
1.5K0
Google/UC/Michigam University 联合提出 MegaSaM:融合多技术优势,重塑相机跟踪与深度估计 !
4830
2024年6月计算机视觉论文推荐:扩散模型、视觉语言模型、视频生成等
4090
深度学习中的“人体姿势估计”全指南
3.7K0
ICCV2023 室内场景自监督单目深度估计
1.1K0
相关推荐
PriorDiffusion利用文本到图像扩散模型语言先验,破解单目深度估计歧义,零样本性能优且收敛快 !
更多 >
领券
一站式MCP教程库,解锁AI应用新玩法
涵盖代码开发、场景应用、自动测试全流程,助你从零构建专属AI助手
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验