论文阅读:Indoor Scene Layout Estimation from a Single Image

项目地址:https://github.com/leVirve/lsun-room/tree/master
发表时间:2018 icpr
在这里插入图片描述
场景理解,在现实交互的众多方面中,因其在增强现实(AR)等应用中的相关性而得到广泛关注。场景理解可以分为几个子任务(即布局估计、场景分类、显著性预测等)。在本文中,我们提出了一种基于深度学习的方法来实时估计一个给定的室内图像的布局。我们的方法包括一个深度全卷积网络,一种新的布局-退化增强方法,以及一种新的训练pipeline,它将自适应边缘惩罚和平滑项集成到训练过程中。与以前基于深度学习的方法(例如,提案排序和优化)不同,我们的方法在不需要部署后处理技术的情况下,激发了网络的泛化能力和估计布局边缘的平滑性。此外,该方法是高效的,因为它只需要模型一次来呈现精确的布局。我们在LSUN房间布局和Hedau数据集上评估了我们的方法,并获得了与最先进的方法相比较的估计结果。

请添加图片描述
这是一篇比较早的论文,偶然发现。其亮点有二:1、将室内布局估计任务转换为语义分割任务,使用像素交叉熵+平滑边缘loss进行训练。2、构建布局退化模式,见2.3,实现了数据增强过程中的布局属性的变化. 该论文已经是6年前的,后续在该领域当有更优质的算法。实在不行,换个模型也有巨大的效果提升。

该论文主要是带来启发:1、语义分割模型还能这样子使用,作用于室内布局估计;2、任务转换的启发,将室内布局任务转换为语义分割,那室内布局任务也可以转换为关键点检测等任务;3、特定任务场景下的数据增强模式存在label的退化行为,数据增强不可滥用。

1. INTRODUCTION

最近对现实交互的需求源于相关应用,将研究人员对场景理解的识别提高到了新的高度。通过使用算法识别场景结构,我们可以很容易地与环境进行交互,并为智能家居、增强现实、机器人导航等任务提供关键信息。虽然对三维场景理解的研究可以追溯到20世纪60年代的简单块世界假设[1],以当地证据重建全球室内布局的愿景,它已成为人工智能和深度学习时代最关键的研究领域之一。

在早期的计算机视觉方法中,已经提出了多种室内场景估计方法。线段提取是布局估计的基础,[1]、[2]是通过外科医生[3]、边缘特征提取[4]、超像素[5]和线段[6]等体积形式实现的。然而,这些方法大多在房间结构被物体遮挡的情况下失败。由于很难仅用局部证据来估计布局,一些研究了通过超体积推理[7],[8],[9]进行推断估计。后来,随着机器学习的兴起,结构化学习[10]被开发出来用于布局估计,其通过生成具有不完整的低层次局部特征[7]、[11]、[8]的假设来建模环境结构。

上述传统的结构推理方法严重依赖于手工特征提取,并是在许多假设下发展起来的。与之前的工作一样,我们在曼哈顿世界假设[12]下发展了我们的方法,其中我们考虑一个房间由正交平面组成,并以房间布局作为长方体结构。从不同的角度来看,布局估计也可以看作是长方体每个表面上的区域分割问题。

近年来,深度学习方法在语义分割等一些计算机视觉任务中的表现都优于传统方法。Long等人[13]提出了第一个用于对象语义分割的端到端监督FCN(全卷积网络)模型,并达到了最先进的性能。因此,一些人采用了将布局估计视为关键线检测的任务,如[11]中的信息边缘估计和[14]中的粗布局预测。Mallya等人,[11]是第一个使用分割网络,通过检测信息边缘的布局估计任务。Dasgupta等人[15],2015年LSUN房间布局挑战的赢家,采用两阶段框架处理任务: 1)用深度神经网络分割输入图像的平面和壁,2)用消失点估计优化输出。达斯库普塔等的结果,al启发几个后续工作[16],[17]遵循两阶段管道,由FCN-like网络语义分割和布局优化技术(例如,布局假设建议排序[11],[15],[14],[16],和特殊优化模块[17])后处理。

这并不是要否认上述方法所取得的惊人结果,然而,后处理技术的额外时间消耗使这些方法不适合在时间效率发挥关键作用的应用程序。因此,我们提出了一个单阶段管道来解决基于时间消耗的问题。本文的主要贡献如下:

  • 我们提出了一个单级管道来训练一个端到端神经网络来进行室内布局估计。
  • 我们提出了一种新的布局结构退化方法来扩充数据,并补偿现有数据集中的不平衡分布问题。
  • 我们的方法可以推断一个网络推断空间布局,并实时提供最先进的结果。

2. PROPOSED APPROACH

2.1 Overview

在本节中,我们首先提供了网络设计的详细描述和定制定制的训练准则,其中边缘/表面信息被集成在密集的像素级预测过程中。第二部分将介绍另一种旨在缓解数据不平衡问题的额外训练策略(即布局结构退化)。

2.2. Planar Semantic Segmentation

在曼哈顿世界假设[12]下,我们可以考虑每个场景都是由多个平面组成的,因此在不同的视角下捕获的布局类型有限。我们将这些布局称为[15]中描述的平面语义表示,这些平面被标记为前墙、右墙、左墙、天花板和地板。因此,我们可以将空间布局估计问题建模为表面标记或平面语义分割。
在这里插入图片描述

我们的模型设计是受到最近的FCN布局估计工作的启发。Ren等人[14]使用原始FCN的类似配置,VGG-16作为基础网络,预测粗布局和语义表面;[15]采用扩展卷积FCN的CRF细化,[17]采用ResNet101的扩展卷积网络,在大型数据集上进行语义分割,然后进行微调,转移语义特征进行布局估计,以获得更好的结果。

因此,我们选择了更深的网络,即普通的ResNet101作为我们的特征提取器,并采用DeLay等人[15]提出的布局表示,其中布局估计可以视为一个五类平面语义分割问题。我们的网络的完整视图如图2所示。我们将最大池化替换原始ResNet101中的最后一个平均池化层,用1×1卷积层替换全连接层,并附加三个转置卷积层,通过跳过连接对特征图进行上采样。为了使特征映射的维度保持一致,在转发到上样本模块之前插入了额外的卷积层。此外,对于网络中的主干,在转换分类器块之前有两个额外的辍学层和批处理范数层,以防止对该特定任务的过拟合。
在这里插入图片描述

2.3. Layout Structure Degeneration

我们主要在LSUN房间布局数据集上训练和评估我们的方法。尽管我们的模型的性能可以以9.75%的错误率与几种现有的方法竞争(表一中我们的条目)。现有数据集中的房间类型分布(图4,以绿色条和表二的第三列)非常不平衡,我们从结果中观察到房间类型包含较少的训练图像会导致更高的错误率,特别是对于由较少的表面组成的房间类型(表I)。换句话说,这意味着模型不能很好地处理这些罕见的情况,而最常见的解决方案是在训练阶段扩充原始数据集。但是,一般的随机裁剪和随机旋转等增强技术并不适用于我们想要保留曲面语义意义的情况,裁剪可能会破坏场景的一侧,破坏左墙、前墙、右墙之间的语义关系。因此,我们提出了布局结构的退化来产生和补偿不同房间类型的不平衡分布。
在这里插入图片描述
在这里插入图片描述

我们观察到,具有更多表面的房间类型,较高程度的表面,可以通过适当的变换退化为较低程度的表面。以LSUN房间布局中的0型房间为例,去掉天花板退化为1型,拆除地板退化为2型,拆除左、右墙退化为5型(需要重新标记保留左右语义)。因此,我们可以在LSUN房间布局中建立11种房间类型之间的关系,如图3所示的DAG(有向无环图),所有的非叶节点都退化为较低程度的表面。
在这里插入图片描述
通过深度优先搜索,我们可以枚举退化路径,从而将特定房间类型的图像增强到其他类型中,以弥补某些类型的样本不足。在那些包含较少图像的房间类型上应用布局退化,如类型2、类型3、类型7和类型8,可以使每种类型的分布更加平衡。在图4中,黄色条意味着新生成的数据的数量只有一步退化节点和红色的意味着更激进的退化与更多的步骤,这意味着将会有更多的数据类型由低程度的表面有更多的退化步骤。

我们提出的增强策略可以有效地通过更复杂的变换,扩展现有数据集的场景变化,从而有效地提高模型的性能和泛化能力。此外,它可以成功地将错误率从9.75%降低到6.25%(表二中我们的条目),通过在训练中使用两次或第四次额外的增强数据样本(分别为图4中的黄色条和红色条),可以与最先进的方法竞争。与在以前的方法中对几十次训练数据进行随机增强相比,我们可以在训练中使用更少的数据获得更好的性能。

2.4 Layout Criterion

语义分割任务是一个像素级分类问题,其原始目标函数是每个像素上的交叉熵损失Lseg。从平面语义分割的结果中,我们发现它在平面中心之外经常发生扭曲或撕裂,也有[15]中提到的“波浪曲线”(而不是直线)。图6 (a)描述了一个远离二维图像上的投影的示例。因此,我们引入了自适应边惩罚和平滑项来缓解这些伪影。通过这些定制的准则,我们可以在边缘上强制执行更光滑、更直的布局预测结果,从而得到更好的定性布局估计。
在这里插入图片描述

Smoothness Term: 将地面真实标签与分割布局之间的像素级L2距离lplesp最小,以增强各平面内的一致性,并对预测施加平滑约束。
Adaptive Edge Penalty: 边缘的分布往往是扭曲的,不够直的布局线索。因此,我们计算了预测布局的边缘图,并使用二值交叉熵损失的边缘来最小化与地面真相的差异。此外,该标准是自适应的,在开始时放松,随着训练迭代的增加更严格(图5)。采用这种自适应策略,计算结果的收敛性优于固定宽度的边缘约束。
在这里插入图片描述
训练深度神经网络模型的总体损失函数为:
在这里插入图片描述
其中M表示网络的输出分块图和E表示边缘图,通过计算梯度M∗生成预测的边缘图,表示最终分段布局预测,和较低的注释gt和pred表示地面真相和预测输出,。

图6 (b)中的结果显示了应用这两个约束条件的视觉效果。虽然没有太多的改进定量措施(降低错误率性能在约1%),整体可视化(见图7)表明约束可以有效地平滑和抑制噪声和人工预测混乱场景的表面,以及理顺扭曲的轮廓布局。
在这里插入图片描述

3、EXPERIMENTAL RESULTS

对于平面语义分割的评估,我们使用LSUN房间布局估计数据集,该数据集包含4000张图像用于训练,394张图像用于验证,1000张图像用于测试。在训练过程中,我们应用随机的颜色抖动,如轻微改变输入图像的亮度和对比度,以增加场景的多样性。除了布局退化增强外,我们还进一步引入了语义增强(通过交换左右两侧的语义标签),以获得更有效的增强。

由于测试集没有公开的地面真实标签,我们使用LSUN Room布局官方工具包在验证集上评估我们的方法,就像在之前的工作[14]中那样。首先,我们想证明我们所提出的标准项的效果。在边缘惩罚和附加的平滑项的监督下,预测变得更平滑,减轻了伪影,如图6 (b).所示图7描述了在训练准则中添加附加的平滑项和自适应边缘约束后,验证集中的一些布局估计结果。

我们进一步证明了改进的模型在提出的布局退化增强策略的结果。图8是在我们的完整策略下的视觉输出,它们都有非常清晰但很直的边缘,并且在每个预测的表面上都有很强的一致性。我们的方法的准确性与在LSUN挑战的官方学习板上表现最好的方法相当,并达到了6.25%的像素级错误率。
在这里插入图片描述

除了LSUN Room布局数据集外,我们还通过直接应用于Hedau数据集的测试集来评估我们的模型的泛化能力,而不使用其训练数据进行微调。从精度和可视化结果的表现,我们可以观察到,我们的模型可以应用于不同的室内数据集,即使无需再训练。图9描述了Hedau测试数据集中高质量布局估计结果的一些示例,表IV显示了我们的模型的准确性几乎可以达到最先进的结果。
在这里插入图片描述
在这里插入图片描述

我们用PyTorch实现了我们的方法,并在使用单个NVIDIA GeForce 1080 GPU和Inteli7-7700K4.20 GHz CPU的机器上执行了所有的实验。对于时间效率的分析,表三显示了退出方法的网络转发和后处理时间的消耗时间。因为我们找不到这些论文的任何发布的完整实现,我们列出了他们论文的官方报告记录或他们发布的演示视频的信息,作为后处理列的统计。为了使网络转发列更加耗时,使用Caffe实现了几种方法,并发布了这些网络配置文件,所以我们可以用Caffe官方分析工具进行测量,并在我们自己的机器上进行公平竞争的评估。
在这里插入图片描述
因此,我们提出了一个单一的网络来进行布局估计,并且该模型可以给出许多令人印象深刻的视觉结果。此外,布局结构退化可以有效缓解数据不平衡问题,进一步提高布局估计精度。此外,我们的端到端网络方法可以直接预测房间的布局,而无需进行任何后处理,因此它可以有效地实时预测来自图像的布局。

4、CONCLUSION

我们提出了一种端到端深度神经网络模型,该模型可以通过加强对边缘信息的平滑性约束和整体平滑性来估计房间的布局。同时,我们还引入了一种新的增强方法来进一步提高模型的布局估计精度和泛化能力。我们的实时方法可以在不使用任何后处理的情况下达到最先进的水平,我们还可以将布局估计模型移植到一个移动设备上,从现实世界中捕获时间图像。然而,我们发现布局估计结果的时间不一致性是一个需要解决的问题,因为许多现实世界的应用程序需要对视频进行稳健的时间布局估计。因此,我们未来的工作将集中于提高视频布局估计的鲁棒性。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/346332.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Web世界探险家】3. CSS美学(二)文本样式

📚博客主页:爱敲代码的小杨. ✨专栏:《Java SE语法》 | 《数据结构与算法》 | 《C生万物》 |《MySQL探索之旅》 |《Web世界探险家》 ❤️感谢大家点赞👍🏻收藏⭐评论✍🏻,您的三连就是我持续更…

vue-cli是什么?和 webpack是什么关系?

前言 Vue CLI是Vue.js项目的官方脚手架,基于Node.js与Webpack构建。安装Vue CLI前需确保Node.js已安装,随后通过npm全局安装。Vue CLI能迅速创建和管理Vue.js项目,提升开发效率。而Webpack则负责资源打包,通过配置文件管理依赖、插…

【Bazel入门与精通】 rules之属性

https://bazel.build/extending/rules?hlzh-cn#attributes Attributes An attribute is a rule argument. Attributes can provide specific values to a target’s implementation, or they can refer to other targets, creating a graph of dependencies. Rule-specifi…

Java(十七)---ArrayList的使用

文章目录 前言1.ArrayList的简介2. ArrayList使用2.1.ArrayList的构造2.2.ArrayList的扩容机制(JDK17) 3.ArrayList的常见操作4. ArrayList的具体使用4.1.[杨辉三角](https://leetcode.cn/problems/pascals-triangle/description/)4.2.简单的洗牌游戏 5.ArrayList的问题及思考 …

苹果WWDC大会AI亮点:大揭晓

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

STM32-电灯,仿真

目录 前言: 一. 配置vscode 二. 新创建软件工程 三. 仿真 1.新建工程想到,选择名称和路径 2.从选中的模板创建原理图 3.不创建PCB布版设计 4.选择没有固件项目 5.完成 四.源码 五. 运行效果 六. 总结 前言: 这篇主要是配置vscode和创建仿真,和点灯的完整代码,欢迎大…

C语言 图形化界面方式连接MySQL【C/C++】【图形化界面组件分享】

博客主页:花果山~程序猿-CSDN博客 文章分栏:MySQL之旅_花果山~程序猿的博客-CSDN博客 关注我一起学习,一起进步,一起探索编程的无限可能吧!让我们一起努力,一起成长! 目录 一.配置开发环境 二…

零拷贝技术

背景 磁盘可以说是计算机系统重最慢的硬件之一,读写速度相对内存10以上,所以针对优化磁盘的技术非常的多,比如:零拷贝、直接I/O、异步I/O等等,这些优化的目的就是为了提高系统的吞吐量,另外操作系统内核中的…

风能远程管理ARMxy嵌入式系统深度解析

智能技术正以前所未有的速度融入传统能源管理体系,而ARMxy工业计算机作为这一变革中的关键技术载体,正以其独特的性能优势,为能源管理的智能化升级铺设道路。本文将聚焦于智能电表、太阳能电站监控、风力发电站远程管理三大应用场景&#xff…

react修改本地运行项目的端口

一、描述 如果你想让项目在你想要的端口打开的话,就需要进行设置 二、代码 设置一下pages.json文件就可以了,如下: 如果想打开项目不需要点击下面的链接地址,让他运行npm run dev之后自己直接打开到浏览器的话,在后…

万能表单与AI的完美融合,打造个性化AI小程序

在人工智能技术日益成熟的今天,如何将AI智能与用户界面无缝结合,已成为软件开发领域的新挑战。MyCms 以其创新的“万能表单结合AI”功能,为开发者提供了一个全新的解决方案,让个性化AI小程序的开发变得前所未有的简单和高效。 一、…

从零开始搭建Electron项目之运行例程

最好的学习方式就是:给一段能够运行的代码示例。 本文给出了例程资源,以及运行的步骤。 在国内开发electron有一点特别不好,就是如果不爬梯子,下载依赖容易出错。 一、例程资源 到如下路径下载例程到本地。 GitCode - 全球开发者…

QSlider样式示例

参考代码: /********************QSlider横向滑动条样式**********************/ QSlider {background-color: rgba(170, 255, 255, 100); /* 设置滑动条主体*/ }QSlider::groove:horizontal {border: 1px solid #999999;height: 8px; /* 默认…

爬虫工具yt-dlp

yt-dlp是youtube-dlp的一个fork,youtube-dlp曾经也较为活跃,但后来被众多网站屏蔽,于是大家转而在其基础上开发yt-dlp。yt-dlp的github项目地址为:GitHub - yt-dlp/yt-dlp: A feature-rich command-line audio/video downloaderA …

01、Linux网络设置

目录 1.1 查看及测试网络 1.1.1 查看网络配置 1、查看网络接口地址 2、查看主机状态 3、查看路由表条目 4、查看网络连接qing 1.1.2 测试网络连接 1.测试网络连接 2.跟踪数据包的路由路径 3.测试DNS域名解析 1.2 设置网络地址参数 1.2.1 使用网络配置命令 1.修改网卡…

Sentinel1.8.6更改配置同步到nacos(项目是Gateway)

本次修改的源码在:https://gitee.com/stonic-open-source/sentinel-parent 一 下载源码 地址:https://github.com/alibaba/Sentinel/releases/tag/1.8.6 二 导入idea,等待maven下载好各种依赖 三 打开sentile-dashboard这个模块&#xf…

Vue3+vite部署nginx的二级目录,使用hash模式

修改router访问路径 import { createRouter, createWebHashHistory } from vue-routerconst router createRouter({history: createWebHashHistory (/mall4pc-bbc/),routes: [XXX,] })配置package.json文件 "build:testTwo": "vite build --mode testing --ba…

计算机网络学习记录 网络层 Day4(下)

计算机网络学习记录 网络层 Day4 (下) 你好,我是Qiuner. 为记录自己编程学习过程和帮助别人少走弯路而写博客 这是我的 github https://github.com/Qiuner ⭐️ ​ gitee https://gitee.com/Qiuner 🌹 如果本篇文章帮到了你 不妨点个赞吧~ 我…

hadoop未授权访问命令执行漏洞复现-vulfocus

1 介绍 Hadoop YARN(Yet Another Resource Negotiator)的ResourceManager是集群资源管理的核心组件,负责分配和管理集群资源以及调度作业。如果ResourceManager出现未授权访问漏洞,可能允许未经认证的用户访问或操作集群资源&…

在 Android App 里使用 C 代码 - NDK

原生开发套件 (NDK) 是一套工具,使能够在 Android 应用中使用 C 和 C 代码,并提供众多平台库,可使用这些平台库管理原生 activity 和访问实体设备组件,例如传感器和触控输入。 NDK 可能不适合大多数 Android 编程初学者&#xff…