魔改Stable Diffusion,开源创新“单目深度估计”模型
单目深度估计一直是计算机视觉领域的难点。仅凭一张 RGB 图像,想要还原出场景的三维结构,在几何结构上非常不确定,必须依赖复杂的场景理解能力。
即便使用更强大的深度学习模型来实现,也面临算力需求高、图像数据注释量大、泛化能力弱等缺点。
为了解决这些难题,苏黎世联邦理工学院的研究人员开发了Marigold模型。Marigold不需要从零开始训练,而是在Stable Diffusion(著名开源文生图模型)的基础上进行微调,只需要使用合成数据微调了中间的去噪网络,其他模块例如,编码/解码结构均保持原样,极大降低了训练成本。
实验数据显示,尽管Marigold从未直接学习过真实的深度信息,但在真实场景的测试中,其性能却超越了其他专门训练过的模型,并且迁移、兼容性非常强。
开源地址:https://github.com/prs-eth/Marigold
论文地址:https://arxiv.org/abs/2312.02145

Marigold的核心技术思路是,利用Stable Diffusion模型所捕获的丰富先验知识,来提升深度估计的泛化能力和性能。
简单来说,就是把Stable Diffusion当成一个图片查询数据库,只修改其去噪模块,就变成了可实现单目深度估计的全新模型。
Marigold的关键点在于保持预训练扩散模型的潜在空间,只对去噪U-Net进行修改和微调。
这种方法非常高效,无需实际深度图像的训练数据,就能在多个真实数据集上取得出色的性能表现。

Marigold提供了一个简单而资源高效的微调协议,将预训练的扩散生成模型转化为图像条件的深度估计器,成为了一种功能强大的单目深度估计模块。
Marigold通过使用合成的RGB-D数据以及在一块消费级显卡上只训练了几天,将Stable Diffusion转化为Marigold模型。主要流程如下:
去噪U-Net
研究人员主要通过修改和微调Stable Diffusion模型的去噪U-Net模块,来实现深度估计。去噪U-Net是一个编码器-解码器结构的神经网络,用于从输入图像中学习去除噪声的表示。

在Marigold模型中,研究人员保持了扩散模型的潜空间不变,只对去噪U-Net模块进行微调,以适应深度估计任务。
合成数据训练
为了微调Marigold模型,研究人员使用了合成的RGB-D训练数据,对模型进行训练。合成数据是通过在虚拟环境中,渲染图像并生成对应的深度图来创建的。
通过使用合成数据进行训练,Marigold可以学习到广泛的场景和物体形状,从而提高其在未见过数据集上的泛化能力。
仿射不变深度估计
Marigold使用了一种仿射不变的深度估计方法,能够估计图像中每个像素的深度值,而不受全局偏移和尺度的影响。

这种仿射不变性对于在不同场景和尺度下进行深度估计非常重要。通过估计仿射不变的深度,Marigold可以消除由于相机内参的不确定性,而引入的深度估计误差。
本文素材来源Marigold论文,如有侵权请联系删除
END
相关文章:
魔改Stable Diffusion,开源创新“单目深度估计”模型
单目深度估计一直是计算机视觉领域的难点。仅凭一张 RGB 图像,想要还原出场景的三维结构,在几何结构上非常不确定,必须依赖复杂的场景理解能力。 即便使用更强大的深度学习模型来实现,也面临算力需求高、图像数据注释量大、泛化能力弱等缺点。 为了解决这些难题&a…...
使用JAVA Zookeeper构建分布式键值存储
在这篇文章中,我将使用 JAVA 和网络套接字构建一个简单的分布式键值存储。 我将展示如何在具有多个分区和复制的集群中使用 Zookeeper 作为协调服务。 本系统中Zookeeper服务的功能如下: 维护从服务器到分区的映射,即哪些服务器属于分区“i”。这些数据还可用于推断哪些服务…...
2023-12-19 LeetCode每日一题(寻找峰值 II)
2023-12-19每日一题 一、题目编号 1901. 寻找峰值 II二、题目链接 点击跳转到题目位置 三、题目描述 一个 2D 网格中的 峰值 是指那些 严格大于 其相邻格子(上、下、左、右)的元素。 给你一个 从 0 开始编号 的 m x n 矩阵 mat ,其中任意两个相邻格子的值都 不…...
gin框架使用系列之五——表单校验
系列目录 《gin框架使用系列之一——快速启动和url分组》《gin框架使用系列之二——uri占位符和占位符变量的获取》《gin框架使用系列之三——获取表单数据》《gin框架使用系列之四——json和protobuf的渲染》 一 、表单验证的基本理论 在第三篇中,我们介绍了如何…...
HackTheBox - Medium - Linux - Interface
Interface Interface 是一种中等难度的 Linux 机器,具有“DomPDF”API 端点,该端点通过将“CSS”注入处理后的数据而容易受到远程命令执行的影响。“DomPDF”可以被诱骗在其字体缓存中存储带有“PHP”文件扩展名的恶意字体,然后可以通过从其…...
C++ 字符串操作说明 续
一、strstr函数 extern char *strstr(char *str1, const char *str2); 1. strstr(str1,str2) 函数用于判断字符串str2是否是str1的子串。如果是,则该函数返回str2在str1中首次出现的地址;否则,返回NULL。 2. str1: 被查找目标 string …...
[情商-7]:如何回答没有标准答案的两难问题
目录 前言: 一、用“逻辑推理思维”回答两难问题 二、用“情绪思维”回答两难问题 1.1 关注提问者提出问题背后的情绪状态和情绪/情感诉求 1.2 常见的常见的情绪和情感诉求 1.3 女性情感分析 1.4 理解女性情感的语言 1.5 如何通过语言理解女性的情绪需求 三…...
对偶问题的基本性质
写于:2024年1月3日晚 修改于: 原规划与对偶规划 原规划对偶规划 max z C T X s.t. { A X ≤ b , 其中 X ( m ∗ 1 ) X ≥ 0 \begin{aligned} & \max \mathrm{z}\mathbf{C}^T \mathbf{X} \\ & \text { s.t. }\left\{\begin{array}{l}\mat…...
Google Chrome 现在会在后台扫描泄露的密码
谷歌表示,Chrome 安全检查功能将在后台运行,检查网络浏览器中保存的密码是否已被泄露。 如果桌面用户正在使用标记为危险的扩展程序(从 Chrome Web Store 中删除)、最新的 Chrome 版本,或者如果启用安全浏览来阻止 Go…...
【Matlab】PSO-BP 基于粒子群算法优化BP神经网络的数据时序预测(附代码)
资源下载: https://download.csdn.net/download/vvoennvv/88689096 目录 【Matlab】BP 神经网络时序预测算法 【Matlab】CNN卷积神经网络时序预测算法 【Matlab】ELM极限学习机时序预测算法 【Matlab】基于遗传算法优化BP神经网络 (GA-BP)的数据时序预测 【Mat…...
Linux 485驱动通信异常
背景 前段时间接到一个项目,要求用主控用485和MCU通信。将代码调试好之后,验证没问题就发给测试了。测试测的也没问题。 但是,到设备量产时,发现有几台设备功能异常。将设备拿回来排查,发现是485通信有问题ÿ…...
mybatis配置与标签大全
文章目录 mybatis配置与标签大全mybatis的配置属性(properties)设置(settings)类型别名(typeAliases)类型处理器(typeHandlers)对象工厂(objectFactory)插件&…...
Mysql的基本用法(上)非常详细、快速上手
上篇结束了java基础,本篇主要对Mysql中的一些常用的方法进行了总结,主要对查询方法进行了讲解,包括重要的多表查询用到的内连接和外连接等,以下代码可以直接复制到可视化软件中,方便阅读以及练习; SELECT *…...
使用Vite创建React + TypeScript(node版本为16.17.0,含资源下载)
PC端 安装指令: npm create vitelatest react-ts-pro -- --template react-tsVite是一个框架无关的前端工具链,可以快速的生成一个React TS的开发环境,并且可以提供快速的开发体验说明: 1. npm create vitelatest固定写法&#…...
Springboot集成RabbitMq二
接上一篇:Springboot集成RabbitMq一-CSDN博客 1、搭建项目-消费者 与之前一样 2、创建配置类 package com.wym.rabbitmqconsumer.utils;import org.springframework.amqp.core.Binding; import org.springframework.amqp.core.BindingBuilder; import org.spring…...
机器学习笔记 - 基于Python的不平衡数据的欠采样技术
一、简述 随着从不同的来源生成和捕获大量数据。尽管信息量巨大,但它往往反映了现实世界现象的不平衡分布。数据不平衡的问题不仅仅是统计上的挑战,它对数据驱动模型的准确性和可靠性具有深远的影响。 以金融行业欺诈检测为例。尽管我们希望避免欺诈,因为其具有高度破坏性,…...
facebook广告的基础知识
Facebook广告是在Facebook、Instagram、Audience Network等与Facebook相关的SNS和服务上投放的广告。以下是关于Facebook广告的基础知识: 广告类型: 静态图片广告:主要通过Facebook的新闻提要投放的图片广告,可以张贴产品和服务…...
java常见面试题:什么是异常?Java中的异常有哪些分类?
异常是一个汉语词语,读音为y chng,指非正常的;不同于平常的;非常。在Java中,异常(Exception)是程序在运行过程中出现的不正常情况,例如除以零、数组越界等。异常分为两大类ÿ…...
类的加载顺序问题-demo展示
面试的的时候经常会被问到包含静态代码块、实例代码块和构造器等代码结构的加载顺序问题,下面借用一个面试题,回顾一下类的代码加载顺序。 public class AooTest {public static void main(String[] args) {AooTest.f1();}static AooTest test1 new Ao…...
[蓝桥杯2020国赛]答疑
答疑 题目描述 有 n 位同学同时找老师答疑。每位同学都预先估计了自己答疑的时间。 老师可以安排答疑的顺序,同学们要依次进入老师办公室答疑。 一位同学答疑的过程如下: 首先进入办公室,编号为 i 的同学需要 si 毫秒的时间。然后同学问…...
地震勘探——干扰波识别、井中地震时距曲线特点
目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...
微信小程序之bind和catch
这两个呢,都是绑定事件用的,具体使用有些小区别。 官方文档: 事件冒泡处理不同 bind:绑定的事件会向上冒泡,即触发当前组件的事件后,还会继续触发父组件的相同事件。例如,有一个子视图绑定了b…...
React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...
对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
Cinnamon修改面板小工具图标
Cinnamon开始菜单-CSDN博客 设置模块都是做好的,比GNOME简单得多! 在 applet.js 里增加 const Settings imports.ui.settings;this.settings new Settings.AppletSettings(this, HTYMenusonichy, instance_id); this.settings.bind(menu-icon, menu…...
人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...
虚拟电厂发展三大趋势:市场化、技术主导、车网互联
市场化:从政策驱动到多元盈利 政策全面赋能 2025年4月,国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》,首次明确虚拟电厂为“独立市场主体”,提出硬性目标:2027年全国调节能力≥2000万千瓦࿰…...
WEB3全栈开发——面试专业技能点P7前端与链上集成
一、Next.js技术栈 ✅ 概念介绍 Next.js 是一个基于 React 的 服务端渲染(SSR)与静态网站生成(SSG) 框架,由 Vercel 开发。它简化了构建生产级 React 应用的过程,并内置了很多特性: ✅ 文件系…...
数据结构第5章:树和二叉树完全指南(自整理详细图文笔记)
名人说:莫道桑榆晚,为霞尚满天。——刘禹锡(刘梦得,诗豪) 原创笔记:Code_流苏(CSDN)(一个喜欢古诗词和编程的Coder😊) 上一篇:《数据结构第4章 数组和广义表》…...
【免费数据】2005-2019年我国272个地级市的旅游竞争力多指标数据(33个指标)
旅游业是一个城市的重要产业构成。旅游竞争力是一个城市竞争力的重要构成部分。一个城市的旅游竞争力反映了其在旅游市场竞争中的比较优势。 今日我们分享的是2005-2019年我国272个地级市的旅游竞争力多指标数据!该数据集源自2025年4月发表于《地理学报》的论文成果…...
