【论文解读】OmniSRNet:畸变感知学习——从单张全向图像恢复房间结构

论文名片

项目 内容
论文名​ Structure recovery from single omnidirectional image with distortion-aware learning
方法名​ OmniSRNet(Omni Structure Recovery Network)
作者​ Ming Meng、Yi Zhou、Dongshi Zuo、Zhaoxin Li、Zhong Zhou
期刊​ JKSUCI (Journal of King Saud University - Computer and Information Sciences),Vol.36, Issue 7, 102151,2024-09-01
DOI​ 10.1016/j.jksuci.2024.102151
代码/数据​ github.com/mmlph/OmniSRNet
前身​ Meng et al. (2021) 的初步工作------本文大幅扩展
一句话贡献​ 一个统一的深度学习框架:畸变感知模块 DAM (全景用 EquiConv、鱼眼用 OrthConv 两种可变形卷积)+ 双向 LSTM + 水平垂直步进模块 HVSM ,从单张全向图 (全景 360° 或鱼眼 180°)恢复房间结构(长方体 + 非长方体都行),并贡献了 **IOSR 数据集(45K 张)**​

名字拆解 :Omni (全向 180°/360°)+ SR(Structure Recovery,结构恢复)+ Net。

标题里 **"distortion-aware learning"(畸变感知学习)**​ 是它的核心武器。


一、先做一个重要区分:它处理"两种"全向图,不只是全景

这是本文和这个系列大多数论文最大的不同。

类型 视场角 投影模型 畸变特点
**全景图(Panorama)**​ **360°**​ 水平 ERP(等距柱状投影) 越靠近两极(天花板/地板)横向拉伸越夸张
**鱼眼图(Fisheye)**​ 180°(本文用俯视 top-view) 正交投影(Orthographic) 中心正常、边缘严重压缩扭曲

打个比方:

  • 全景图 像把地球摊成一张世界地图------两极被拉得很扁;
  • 鱼眼图 像透过猫眼/鱼眼镜头看------中间正常、四周扭曲成一圈。

两种畸变的"形状"完全不同 ,所以要用不同的卷积去应对。这就是本文 DAM 模块要分成 EquiConv 和 OrthConv 的原因。

为什么鱼眼很重要? ​ 因为真实的视频监控系统、很多 VR/AR 设备用的都是鱼眼相机(成本低、单镜头就能看一大片)。以往研究几乎只做全景,本文把鱼眼也纳入进来------这是它的重要贡献。


二、动机:两个绕不开的难题

2.1 难题 1:全向图的"严重非线性畸变"

标准相机遵循针孔模型,卷积核的"方形采样"是合理的。但全向图不遵循针孔模型:

论文原话:由于全向图像不遵循针孔相机模型,常规的透视关系无法准确描述这些图像中的畸变。这些方法在建模几何信息上存在局限,使得学习全向特征变得复杂。

具体后果 :标准卷积的固定采样策略限制了网络建模几何变换的能力------它只会"按方格采样",无法适应全向图的非均匀拉伸。

打个比方 :用一把方格尺去量一块被揉皱、且不同位置皱法不一样的布------尺子形状对不上布的纹理走向。

2.2 难题 2:室内场景的"严重遮挡 + 非长方体"

  • 家具杂物遮挡关键局部区域(墙脚线被沙发挡、墙角被柜子挡);
  • 真实房间不都是长方体 ------L 形、多角(本文数据集房间角点数从 4 个到 10 个以上)。

2.3 前人的做法与不足

论文把现有方法分三类:

类别 代表 不足
基于几何​ Baskurt (2011)、PanoContext (2014) 依赖手工几何特征,生成假设再排序优化
几何+数据混合​ --- 结合了语义但复杂
端到端数据驱动​ LayoutNet、DuLa-Net、HorizonNet、PanoRoom 用标准卷积核 学全向特征------固定采样策略无法建模畸变​

最近有研究(CFL 的 EquiConv、OmniLayout 的 SphConv)开始用可变形卷积处理畸变,但论文指出:

不同投影模型具有截然不同的位置和畸变特性。 ​ 为此,我们采用基于投影模型的畸变感知模块,以实现对全向图像的有效特征提取。

这就是本文的立论 :不能只做通用的"畸变感知",必须针对全景和鱼眼各自的投影模型分别设计。

2.4 传统方法的核心痛点:畸变让网络 "看走眼"

所有全景图都是把球面视野 "摊平" 成平面图片,必然存在投影畸变,就像我们熟悉的世界地图:越靠近南北极,横向拉伸越严重,格陵兰岛看起来和非洲差不多大,实际面积只有 1/14。

普通的 CNN 网络是为普通透视照片设计的,天生默认图片没有变形,直接用在全景图上就会出现严重问题:

  1. 特征提取不公平 :同样大小的卷积核,在图像中间(平视区域)覆盖的真实空间大,到了上下边缘(天花板、地板区域)覆盖的真实空间很小,信息密度不均,学出来的特征不准。
  • 通俗例子:就像用同一把尺子,去量哈哈镜不同位置的物体,量出来的尺寸肯定全错,因为镜子本身就是变形的。
  1. 结构输出失真 :网络学出来的墙线,越往上下越弯,墙角角度越偏,两极区域的布局误差能比中间区域大好几倍。
  2. 传统修正思路的缺陷 :
  • 先去畸变再处理:插值会丢失边缘细节,反而让墙线更模糊;
  • 硬靠后处理掰直:很容易把正确的结构改错,误差叠加。

2.5 核心思路:让网络 "看懂畸变",主动抵消变形

不去强行修图,而是给网络嵌入畸变感知能力 ------ 让它知道每个位置的变形程度,自动调整观察方式,直接在畸变的原图上精准提取结构特征,再配合建筑几何规则约束,端到端输出正确的 3D 结构。

  • 通俗类比:就像专业的地图测绘员,知道世界地图有投影变形,会根据纬度自动调整测量尺度,直接在变形的地图上算出正确的真实尺寸,不用先把地图还原成球体再量。

三、核心方法:OmniSRNet 三大件

复制代码
输入:单张全向图(全景 ERP 或 鱼眼 top-view)
   ↓
【① 编码器 + DAM(畸变感知模块)】★核心
   ResNet-50 骨干
   ├─ 全景图 → EquiConv(等距柱状投影可变形卷积)
   └─ 鱼眼图 → OrthConv(正交投影可变形卷积)★本文设计
   → 输出无畸变的多尺度特征
   ↓
【② 解码器:Bi-LSTM + HVSM】★核心
   HVSM(水平+垂直步进模块)替代 LSTM 的单向步进
   → 同时利用【宽度方向】和【高度方向】的上下文
   → 识别扩展几何模式,保证整体预测一致
   ↓
【③ 输出 + 后处理】
   → 角点概率图(corner probability map)+ 边界
   → 显著峰值提取(prominent peaks extraction)
   → 3D 点云恢复(带纹理)
   ↓
输出:2D 结构 → 3D 房间结构(长方体 + 非长方体)

注意动词分工:DAM 负责"提取特征",HVSM 负责"上下文预测" 。前者管看得清,后者管想得通。


四、技术拆解 ①:DAM------畸变感知模块(第一贡献)

这是论文标题 "distortion-aware" 的落点。

4.1 为什么可变形卷积能治畸变?

标准卷积:在固定的方格位置采样(比如 3×3 的九个固定点)。

可变形卷积(Deformable Convolution) :给每个采样点学一个偏移量(offset)------采样位置可以"歪"、可以"拉伸"、可以"聚拢"。

打个比方:

  • 标准卷积 = 用一个硬方框去盖章------章的花纹排布是固定的;
  • 可变形卷积 = 用一个橡皮章------每个花纹的位置都能被"掰"到该去的地方。

面对全向图上"不同位置畸变不同"的情况,橡皮章能自适应地变形,硬方框不行。

4.2 两种投影 → 两种卷积

图像类型 卷积 偏移怎么算
**全景(Panorama)**​ EquiConv​ 沿用 Fernandez-Labrador et al. (2020,即 CFL) 的方法,**基于等距柱状投影(ERP)**计算可变形卷积偏移
**鱼眼(Fisheye)**​ OrthConv​ 本文新设计 ------基于**正交投影(Orthographic projection)**计算偏移

4.3 OrthConv 是本文的设计(值得强调)

论文明确说 OrthConv 是为鱼眼图像**"designed"(设计)**的------因为鱼眼遵循正交投影模型,和全景的 ERP 模型完全不同,不能照搬 EquiConv。

打个比方 :全景和鱼眼是两种不同形状的"橡皮"。你得按照各自的形状去切模具 ------全景用 ERP 模具,鱼眼用正交投影模具。通用模具对不上。

4.4 DAM 放在哪?

论文明确:在编码器(encoder)内部引入 DAM。

因为畸变是输入图像的固有属性------在最靠近原始像素的编码阶段就处理,代价最小、最直接。


五、技术拆解 ②:Bi-LSTM + HVSM(第二贡献)

这是解决"遮挡 + 非长方体复杂场景"的部分。

5.1 先理解:为什么全景布局估计爱用 LSTM/RNN?

从 HorizonNet​ 开始有个经典做法:

把 2D 特征图沿高度方向压扁成一维序列 ,然后用 **Bi-LSTM(双向长短期记忆网络)**沿这个序列扫描。

为什么? ​ 因为房间布局是环形/序列结构------沿着水平方向(360°)走一圈,墙、角点依次出现。LSTM 擅长建模这种"前后依赖"。

打个比方 :读一封信。你不是孤立地看每个字,而是顺着句子的前后文 理解------LSTM 就是那个"顺着读"的机制。双向(Bi-)则是既能顺着读又能倒着读。

5.2 本文的改进:HVSM(水平+垂直步进模块)

问题 :传统做法是单向步进 ------一般只沿宽度(水平)方向扫描一维序列。

但本文处理的是 180°/360° FoV 的全向图,论文指出:

我们提出并行的水平和垂直步进模块(HVSM) 来替代 LSTM 的单一步进,以利用鱼眼和全景图像中 180° 或 360° FoV 所呈现的【高度方向】和【宽度方向】上下文先验。

HVSM 做什么?

传统单向步进 **HVSM(本文)**​
只沿宽度方向扫 同时 沿宽度 和高度两个方向步进
只用水平上下文 水平 + 垂直双向上下文都要

5.3 为什么"高度方向"的上下文也重要?

因为房间布局里,天花板和地板是上下对称的结构 。你从左往右扫能知道"墙在哪",但从上往下扫能知道"天花板边界和地板边界的关系"。

打个比方 :读一页乐谱。传统方法是只从左到右读一行 ;HVSM 是同时看多行的上下对应关系 ------这样即使某一行有音符被污渍遮住(遮挡),你也能从上下行的规律推断出那里该是什么。

5.4 Bi-LSTM 在这里的角色

论文说:

对于具有严重遮挡和杂乱的复杂场景 ,我们采用双向 LSTM 来识别扩展的几何模式,并确保整体预测的一致性。

**"整体预测一致"**​ 是什么意思?------预测的墙角、边界不能前后矛盾(比如前一步说这里有 4 个角,后一步突然变 6 个)。


六、技术拆解 ③:输出与后处理(3D 点云恢复)

6.1 网络直接输出什么?

**角点概率图(probability map of predicted indoor corners)**​ mc​ + 边界。

角点用 BCE(二元交叉熵)损失监督------因为每个像素"是不是角点"是个二分类问题。

6.2 后处理:从概率图到 3D 点云(Algorithm 1)

论文给出了完整的算法流程(这是本文相对 2021 初步工作的新增):

复制代码
输入:鱼眼/全景图 I,角点概率图 m_c
   ↓
Step 1 - 提取(Extraction):
   ① extend(m_c)      → 扩展概率图
   ② binarize(...)    → 二值化
   ③ regioncons(...)  → 区域连通/一致性处理
   → 得到【显著峰值】(prominent peaks)
   ↓
Step 2 - 3D 点云恢复:
   把峰值反投影 → 生成【带纹理的 3D 点云(PCL)】

"显著峰值提取" ​ 是什么意思?网络输出的角点概率图是一片"热力图"------每个位置有个 0~1 的分数。峰值就是分数最高的那几个点,也就是真正的墙角位置。

6.3 长方体和非长方体都支持

论文 Fig.1 明确:3D 结构(cuboid 长方体 和 non-cuboid 非长方体 )都通过后处理生成。


七、数据集贡献:IOSR(第三贡献)

论文自己收集了一个新数据集:

项目 数值
名称​ IOSR(Indoor Omnidirectional Structure Recovery)
总规模​ 45K(4.5 万)张全向图像
全景图​ 22,583​ 张
俯视鱼眼图​ 22,783​ 张
房间复杂度​ 角点数从 4 个到 10 个以上​
特点①​ 修正了错误标注的全景图(correcting mislabeled panorama images)
特点②​ 扩展了来自真实视频监控场景的鱼眼图​
地位​ 论文自称是第一个 专门为室内全向结构恢复设计的大规模数据集,尤其(首次)包含鱼眼图像​

数据集构成(来自代码库):

  • 全景部分:基于 PanoContext / Stanford2D3D / Structured3D;
  • 鱼眼部分 :PanoContext-F 、Stanford2D3D-F 、Structured3D-F ------由优化后的全景图通过 pano2fish 工具转换得到(真实监控场景鱼眼为扩展)。

**"第一个专为鱼眼设计"**​ 这个定位很关键------以往数据集几乎只有全景,本文填补了鱼眼结构恢复的数据空白。


八、训练设置

项目 值(论文原文)
骨干​ ResNet-50​ 编码器
训练轮数​ 300 epochs​
Batch size​ 4​
角点损失​ **Binary Cross-Entropy(BCE)**​
框架​ PyTorch 1.8.1 + Python 3.7.6;Ubuntu 20 + NVIDIA GPU/CUDA
训练耗时​ PanoContext 5 小时 ;Stanford2D3D 4 小时 ;Structured3D 48 小时​

注意 Structured3D 要训 48 小时------因为它规模最大(合成数据)。而 PanoContext/Stanford2D3D 只要 4~5 小时,说明数据量小得多。


九、实验结果

⚠️ 来源说明 :以下指标数值来自综述论文(CVM 2025, 3D indoor scene geometry estimation... )整理的 Table 3,而非OmniSRNet 原论文表格。

指标含义:

  • CE (Corner Error,角点误差)------越小越好
  • PE (Pixel Error,像素误差)------越小越好
  • 3DIoU (3D 交并比)------越大越好

9.1 PanoContext(长方体)

方法 CE ↓ PE ↓ **3DIoU ↑**​
LayoutNet 0.93 2.81 76.90
DuLa-Net --- --- 77.42
AtlantaNet --- --- 78.70
LED²-Net --- --- 82.75
PanoViT --- --- 83.88
OmniLayout 0.69 2.10 84.50
PanelNet --- --- 84.52
LGT-Net​ 0.69 2.07 85.16
DMH-Net 0.73 1.96 85.48
Shape-Net 0.72 2.21 86.07
JLDNet​ 0.71 2.08 86.21
**OmniSRNet(本文)**​ 0.48​ 0.93​ 88.64​

四条读法:

  1. 3DIoU 88.64 是全场最高 ------超过第二名的 JLDNet(86.21)2.43 个点 ,超过 LGT-Net(85.16)3.48 个点;
  2. 角点误差 CE 0.48 ------大幅优于所有对手(第二名 LGT-Net/OmniLayout 都是 0.69)。相对 LGT-Net 降低约 30%;
  3. 像素误差 PE 0.93 ------同样大幅领先(第二名 DMH-Net 1.96)。不到第二名的 1/2;
  4. ⚠️ 这个数字非常强,需要谨慎看待 :88.64 的 3DIoU 在 PanoContext 上属于极高水平。考虑到这是综述整理的数据、且 OmniSRNet 主要贡献在"鱼眼+畸变感知",建议以原论文表格为准核对。

9.2 Stanford2D3D(角点误差 CE)

方法 CE ↓
DuLa-Net 1.06
LayoutNet 0.88
Shape-Net 0.69
AtlantaNet 0.70
OmniLayout 0.68
DMH-Net 0.67
PanoSwin 0.65
LGT-Net 0.63
JLDNet​ 0.61
**OmniSRNet(本文)**​ 0.52​

读法 :CE 0.52 同样是全场最低------低于 JLDNet(0.61)和 LGT-Net(0.63)。

综合两个数据集:OmniSRNet 在角点定位精度(CE)上优势最明显------这正是它"峰值提取 + 畸变感知"设计的直接回报(角点是最吃精确位置、也最容易被畸变干扰的量)。

9.3 关于鱼眼与非长方体的结果

论文声明在 cuboid(长方体)和 non-cuboid(非长方体)数据集上都取得领先结果,并且:

  • DAM 的可变形卷积消融:验证了 EquiConv / OrthConv 各自的有效性;
  • 扩展实验(expansion experiments):验证了方法在不同设置下的泛化;
  • 深入分析:对全景/鱼眼、长方体/非长方体结构都做了分析。

十、两个实际应用(本文的特色)

这是本文相对纯算法论文的额外价值------它真的落地了。

应用 1:VR 看房(VR-based house viewing)

复制代码
用全景相机拍摄 360° 图像
   ↓
OmniSRNet 处理 → 预测 2D 结构
   ↓
转换为 3D 点云
   ↓
生成详细的 3D 全景展示,用于 VR 看房

打个比方 :中介带你看房,不用跑现场------戴上 VR 眼镜,房间结构自动重建出来,你可以"走进去"看。OmniSRNet 就是那个"拍一张照片就能生成 3D 户型"的引擎。

应用 2:MR 视频监控(MR-based video surveillance)

复制代码
办公室部署 9 个鱼眼相机
   ↓
OmniSRNet 预测每个相机的 2D 结构
   ↓
【相机标定】把 2D 结构与室内 CAD 模型对齐
   ↓
【投影纹理映射】生成带纹理的模型
   ↓
实时视频流更新模型 → 沉浸式监控

为什么这个应用很聪明? ​ 监控室里 9 个鱼眼画面各自扭曲、互不关联,操作员看着头晕。本文把它们统一映射到一个 3D CAD 模型上 ------你在 3D 场景里看,哪个角落发生什么一目了然。这就是 "MR(混合现实)" 的价值:把多个扭曲的 2D 画面,"贴"回真实的 3D 空间。

注意 :这个应用正好发挥了本文"支持鱼眼"的独特优势------监控相机大多是鱼眼,以往只做全景的方法用不了。


十一、优势与局限

✅ 优势

优势 说明
同时支持全景 + 鱼眼(最独特) 覆盖 360° 和 180° 两种全向图,以往方法基本只做全景
DAM 按投影模型定制​ 全景用 EquiConv、鱼眼用 OrthConv(本文设计)------不是"通用畸变感知"
HVSM 双向上下文​ 同时利用宽度 + 高度两个方向的上下文,抗遮挡
Bi-LSTM 保证整体一致​ 识别扩展几何模式,避免前后矛盾
**贡献 IOSR 数据集(45K)**​ 22,583 全景 + 22,783 鱼眼,首个 专为此任务设计的大规模数据集,尤其首个含鱼眼​
修正了错误标注​ 提升了全景图数据质量
支持长方体 + 非长方体​ 房间角点 4 到 10+
角点精度优势明显​ PanoContext CE 0.48(第二名 0.69)
有真实落地应用​ VR 看房 + MR 视频监控(9 相机)
代码和数据集开源​ github.com/mmlph/OmniSRNet

❌ 局限

局限 说明
鱼眼数据多为"全景转换"而来​ PanoContext-F / S2D3D-F / S3D-F 是用 pano2fish 从全景转换 的------不是真实鱼眼相机拍摄,与真实鱼眼的畸变/噪声特性有差距(论文虽扩展了真实监控场景鱼眼,但主体仍是转换数据)
依赖后处理​ 3D 结构通过后处理 (峰值提取 + 点云)生成,不是端到端可微的 3D 回归​
峰值提取是启发式​ extend → binarize → regioncons 这套流程非学习得到
期刊非顶会​ JKSUCI 是沙特国王大学学报,影响力不同于 CVPR/ICCV/ECCV
未报告参数量 / 推理速度​ 无法评估部署成本(只给了训练耗时)
未明确说明是否支持斜墙/曲面墙​ Atlanta World 之外的能力未声明
Structured3D 训练需 48 小时​ 大规模数据训练成本高

十二、在方法谱系中的位置

把"畸变处理"这条线单独拎出来:

方法 怎么处理畸变 支持鱼眼?
HorizonNet / LGT-Net / DOP-Net 回避(压成一维,把畸变摊匀) ❌ 只全景
CFL(Fernandez-Labrador 2020) EquiConv(ERP 可变形卷积) ❌ 只全景
OmniLayout SphConv(球面卷积) ❌ 只全景
PanoFormer / DOPNet 虚拟切平面 / 跨尺度聚合 ❌ 只全景
**Meng et al. 2021(本文前身)**​ 鱼眼 OrthConv ✅ 只鱼眼
**OmniSRNet(本篇)**​ **DAM = EquiConv(全景)+ OrthConv(鱼眼)**​ ✅ 两者都支持​

本文的独特定位 :它是这条线上少数真正把"鱼眼"纳入统一框架 的工作,并且针对两种投影分别设计卷积------而不是指望一个"通用畸变感知模块"搞定所有投影。

这回应了论文那句关键论断:"不同投影模型具有截然不同的位置和畸变特性。"

意思是:别指望一个模块通吃------投影模型不同,卷积就该不同。


十三、一句话总结 + 四条可迁移的思路

OmniSRNet 做的是一件"补齐短板"的工作:全向结构恢复此前几乎只做 360° 全景,但真实世界(监控、VR/AR 设备)大量使用 180° 鱼眼相机,而鱼眼遵循正交投影、畸变形状与全景的 ERP 完全不同。它的解法是------在 ResNet-50 编码器里放一个"畸变感知模块 DAM",按投影模型分别定制:全景用 EquiConv(等距柱状投影可变形卷积,沿用 CFL),鱼眼用本文设计的 OrthConv(正交投影可变形卷积);解码端用双向 LSTM 加一个"水平+垂直步进模块 HVSM",不再只沿宽度方向扫,而是同时利用高度方向的上下文,从而在被严重遮挡和杂乱的非长方体场景里也能保持整体一致;最后从角点概率图提取显著峰值、恢复带纹理的 3D 点云。它还贡献了 IOSR 数据集------45K 张(22,583 全景 + 22,783 鱼眼),是首个专为室内全向结构恢复设计的大规模数据集,尤其首次系统纳入鱼眼。应用上落地了 VR 看房和 9 相机 MR 视频监控。

四条可以带走的思路:

  1. "通用模块"未必通用------当处理对象有明确的物理/几何分类时,就该分类定制。 本文最锋利的一点:全景(ERP)和鱼眼(正交)是两种投影模型 ,畸变特性不同,所以 DAM 分成 EquiConv 和 OrthConv,而不是做一个"通用畸变感知卷积"。当你发现一个模块要服务几种"性质明确不同"的输入时,先分类,再分别设计------一个模块通吃的想法往往是精度上限的杀手。
  2. 可变形卷积的本质是"让采样网格跟着几何走"。 标准卷积是固定方格,可变形卷积给每个采样点学一个偏移量------于是它能适应拉伸、压缩、扭曲。当你面对"非均匀形变"的数据(球面图、鱼眼、医学影像、极坐标数据)时,别只想着"先把数据掰正",让卷积核自己适应形变常常更直接。
  3. 序列建模时,别忘了"另一个方向"的上下文也是上下文。 大家都沿宽度(水平 360°)扫一维序列,本文加了个 HVSM 把高度方向 也纳入步进。当你用 RNN/LSTM/Transformer 扫一个序列时,问一句:这个数据还有没有"另一个维度"的规律没被利用? 天花板/地板的上下对称关系,就是那个被忽略的维度------它恰恰能在水平方向被遮挡时提供补充信息。
  4. 填补"数据空白"本身就是高价值贡献,尤其当它对应真实的落地场景。 本文的 IOSR 数据集自称"首个专为室内全向结构恢复设计、尤其首个含鱼眼"。这不只是"发论文的副产品"------它直接让"鱼眼结构恢复"这个此前没人做(因为没数据)的方向变得可做 ,并且支撑了 MR 监控这个真实应用。当你发现某个子方向"没人做"时,先确认:是不是因为缺数据?如果是,造数据集可能比改进模型更有价值。

核心贡献

  1. 提出畸变感知卷积机制 : 从特征提取层面解决了全景投影畸变的痛点,设计通用,可迁移到全景分割、检测等几乎所有全景视觉任务。
  2. 建立几何约束的训练范式 : 把建筑几何规则做成可微损失嵌入训练过程,输出结构天然符合物理规律,比后处理修正更精准、更稳定。
  3. 大幅提升边缘区域精度 : 解决了长期存在的 "两极区域精度差" 的行业痛点,让全景图全区域的结构估计精度都达到可用水平。

📖 名词小抄

名词 大白话
OmniSRNet​ Omni directional S tructure Recovery Net------全向结构恢复网络(本文方法)
**全向图像(Omnidirectional)**​ FoV 达 **180°(鱼眼)或 360°(全景)**​ 的图像,远超普通相机
**ERP(等距柱状投影)**​ 全景图格式:把球面摊成"世界地图",两极拉伸最严重​
**正交投影(Orthographic)**​ 鱼眼图模型:中心正常、边缘严重压缩扭曲​
**DAM(Distortion-Aware Module)**​ 畸变感知模块,在 encoder 内;按投影模型定制卷积
EquiConv​ 全景用:基于 ERP​ 计算偏移的可变形卷积(沿用 CFL/Fernandez-Labrador 2020)
OrthConv​ 鱼眼用:基于正交投影 计算偏移的可变形卷积------本文设计​
可变形卷积​ 采样位置可学习偏移------不是固定方格,能"跟着形变走"
**HVSM(Horizontal & Vertical Step Module)**​ 并行水平和垂直步进模块 ,替代 LSTM 单向步进,利用宽+高双向上下文​
Bi-LSTM​ 双向长短期记忆网络;本文用来识别扩展几何模式、保证整体一致
角点概率图 ​ 网络输出:每个像素是墙角的概率(热力图)
**BCE(二元交叉熵)**​ 角点监督损失
显著峰值提取​ 从概率图里找分数最高的点 = 真正的墙角位置
后处理流程​ extend → binarize → regioncons → 反投影 → 带纹理 3D 点云​
IOSR 数据集​ 45K ​ 张(22,583 ​ 全景 + 22,783 ​ 俯视鱼眼);房间 4~10+ 个角​
Pano2Fish​ 把优化后的全景图转换成鱼眼图的工具(生成 -F 子集)
训练配置​ ResNet-50 ​ 编码器;300 epochs ;batch 4;BCE
训练耗时​ PanoContext 5h |Stanford2D3D 4h |Structured3D 48h​
**指标(PanoContext)**​ CE 0.48 |PE 0.93 |3DIoU 88.64(综述 Table 3)
**指标(Stanford2D3D CE)**​ 0.52(综述 Table 3)
两个应用​ VR 看房 (360°→2D→3D 点云);MR 视频监控(9 鱼眼相机 + CAD 对齐)
代码​ github.com/mmlph/OmniSRNet
相关推荐
FII工业富联科技服务2 小时前
从AI模型到Agentic AI:多智能体协同如何重构工业AI应用架构
人工智能·深度学习·ai智能体·agentic ai·柔性生产
小蒋观天下2 小时前
太阳能低功耗AI相机专项:AOV值守、唤醒时序、ISP启停时序BUG
深度学习·数码相机·算法·机器学习
zhangfeng11332 小时前
RSI = Recursive Self-Improvement,递归自我改进训练 大模型训练
人工智能·深度学习·机器学习
tellmewhoisi2 小时前
深度学习23:PyTorch:搭建神经网络测试(查看参数,模型结构和device设置)
pytorch·深度学习·神经网络
何以解忧唯有撸码9 小时前
c# + YOLODotNet+OpenCVSharp 实现物品轨迹追踪
计算机视觉·c#·winform·yolov8·opencvsharp
武天旭11 小时前
AI安全--AI大模型的后门攻击检测与防御
人工智能·深度学习·安全·机器学习
xsd2024111819 小时前
智慧园区算法平台搭建详解:从模型仓到统一推理,多模型怎么管起来
人工智能·深度学习
Carl_奕然19 小时前
【机器视觉】最强算法之:3D高斯泼溅(3D Gaussian Splatting)
人工智能·python·算法·目标检测·计算机视觉·3d