从点云到网格(一)综述

2024-03-25 00:38
文章标签 综述 网格 从点 云到

本文主要是介绍从点云到网格(一)综述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在计算机图形学中,网格是一种非常基本的表示方法。随着近些年三维表面重建和Dense SLAM的兴起,从海量的三维点云数据生成单一的网格的方法得到了大量的应用。特别是在AR中,因为交互的需要,网格生成算法经常是一个必选项。
由于工作中正好涉及到一些这方面的应用,因此想简单介绍一下这方面的知识。以下仅讨论三维情形。
本文很多内容来源于Matthew Bolitho的博士论文1。这位仁兄现在在NVidia做Director of Architecture。

算法的输入输出

网格生成算法的输入一般为三维点云,输出为三维网格。输入的点云一般为若干个点云的集合。输出的网格一般为单一的网格。

输入的点云一般有如下几种形式:
- 只包含三维坐标的点云
  P={p1,...,pN}P={p1,...,pN}
- 包含三维坐标和法向量的点云
  P={(p1,n1),...,(pn,nN)}P={(p1,n1),...,(pn,nN)}
- 深度图
  2D 网格R∈RN×MR∈RN×M,实际上包含了三维坐标,表面法向量和邻域信息。

输入的点云一般面临着下面几个问题,如下图所示:

- 点云噪声

  每个点云都会带有噪声,噪声有可能和物体表面光学性质、物体深度、传感器性能等都有关系。

- 点云匹配误差

  三维重建中需要将不同帧得到的点云估计其在世界坐标系下的位姿,会引入一定的位置误差。

- 点云分布

  分布的不均匀性体现在(1)每个小点云在不同的方向上分布是不均匀的(虽然传感器上看是均匀的)如上图3位置,(2)不同的点云匹配在一起时,不同位置的点云密度是不一样的,如上图2位置。

- 缺失数据

  扫描中如果碰到不易成像的部位(比如不可见、反光等等),那么这部分的数据是缺失的,即点云是不完整的。如上图1位置所示。

对算法的要求

一般而言,我们对于输出的网格有一定的要求。除了网格密度和精度以外,我们还希望算法

  • 对点云噪声有一定的冗余度。
  • 能够重建出曲率变化比较大的曲面。
  • 能够处理大数据量,算法时间和空间复杂度不会太高。
  • 重建出的网格中包含尽可能少的异常三角片,比如三角片交错在一起、表面法向量不连续或不一致、同一个位置附近出现多层三角片等。

这些要求也构成了算法的难点。

一般方法

网格生成算法可以分为离散方法和连续方法两大类。离散方法利用某些空间划分方法,直接从点云数据生成网格。连续方法利用点云去拟合某类分布函数,得到表面的函数表示,然后生成网格。总结见下图。

下面简单介绍一下两种重建思想,都是基于连续方法的。

有符号距离函数(signed distance function)

定义SS是待重建的曲面,F:R3−>RF:R3−>R,其中F(x)F(x)定义为xx到SS中的距离最近的点的距离。如果xx在SS外面,则距离为正,反之为负。那么,
S={x:F(x)=0}S={x:F(x)=0} 
典型的方法有VRIP(Volumetric Range Image Processing)。下图是实际应用中通过VRIP生成的F(x)F(x)的一个切面。
图中F(x)F(x)的值被灰度取代后,实际上S={x:F(x)=128}S={x:F(x)=128}

指示函数(indicator function)

对于一个给定的物体MM,定义指示函数
χM(x)=1 if x∈M and χM(x)=0 if x∉MχM(x)=1 if x∈M and χM(x)=0 if x∉M 
那么S=∂MS=∂M。
因此把重构SS的问题转换为重构χMχM的问题。而利用Stokes公式,可以将点云及其法向量(χMχM的表面信息)和χMχM联系起来。
典型的方法是FFT重建和Poisson重建。下图是Poisson重建方法的原理图。

后续会分别介绍一下VRIP和Poisson,以及他们在SLAM中的应用。


  1. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.210.9637&rep=rep1&type=pdf↩

转载请注明作者和出处(http://www.cnblogs.com/luyb),未经允许请勿用于商业用途。 COPYRIGHT@CNBLOGS.COM/LUYB 联系方式:luyanbin7 at gmail.com

这篇关于从点云到网格(一)综述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/843321

相关文章

kaggle竞赛宝典 | Mamba模型综述!

本文来源公众号“kaggle竞赛宝典”,仅用于学术分享,侵权删,干货满满。 原文链接:Mamba模型综述! 型语言模型(LLMs),成为深度学习的基石。尽管取得了令人瞩目的成就,Transformers仍面临固有的局限性,尤其是在推理时,由于注意力计算的平方复杂度,导致推理过程耗时较长。 最近,一种名为Mamba的新型架构应运而生,其灵感源自经典的状态空间模型,成为构建基础模型的有力替代方案

AI文献综述神器,有这一款就够了!

我是娜姐 @迪娜学姐 ,一个SCI医学期刊编辑,探索用AI工具提效论文写作和发表。 当前的AI辅助文献综述的工具有很多,如果说功能最强大的,娜姐无疑要推SciSpace了。 SciSpace利用强大的AI算法,理解并建立研究论文之间的联系,可以大大提升文献综述的质量和效率。并且其功能还在不断更新和完善。        1 强大的语义搜索功能 传统的关键词搜索可能会遗漏相关文献,Sc

”CSS 网格“二维布局系统(补充)——WEB开发系列32

CSS 网格布局是一种二维布局系统,用于网页设计。通过使用网格,你可以将内容以行和列的形式进行排列。此外,网格布局还能够简便地实现一些复杂的布局结构。 一、什么是网格布局? CSS网格布局是一种二维布局系统,它允许我们创建复杂的网页布局,既可以处理行也可以处理列。与传统的布局方法不同,网格布局将网页分成多个可控的区域,这些区域可以任意排列、对齐和调整大小。网格布局使得创建灵活且响应

css——网格布局

名词解释 div{$}*9+tab键,快捷生成   记首字母gtc  网格布局:display: grid;        grid-template-columns: 100px 100px 100px;        grid-template-rows: 100px 100px 100px; (父元素) <!DOCTYPE html><html lang="en"

20180108文献综述书写感悟

在写文献综述理清各章节脉络的时候,发现了以下几个问题,共勉之。 1、资源对接问题:章节应该明确标注出处,来源,例如(from 百度/某篇文章链接),不写,则默认为原创。 以方便下一个接着写的同学清晰了解资料来源。 2、质量低:上任对发展史做了整理,但并没有输出成原创性文字,重新阅读加大理解成本,并且思路不新不全局不清晰,需要重新绘之。

Netty源码解析4-Handler综述

Netty中的Handler简介 Handler在Netty中,占据着非常重要的地位。Handler与Servlet中的filter很像,通过Handler可以完成通讯报文的解码编码、拦截指定的报文、 统一对日志错误进行处理、统一对请求进行计数、控制Handler执行与否。一句话,没有它做不到的只有你想不到的 Netty中的所有handler都实现自ChannelHandler接口。按照输入

如何快速写文献综述

真实参考文献的AI论文生成器:AIPaperDone - AI 万字论文生成 在本文中,你将学习如何为不同的学术领域撰写文献综述。 请注意: 文献综述并不是关于小说或诗歌等文学作品的。当我们说"文献",我们指的是某个领域的"研究"。撰写文献综述意味着收集你主题的关键资料,对它们进行概述,并分析它们之间的关系。 以下是如何快速完成的方法。 什么是文献综述? 文献综述是一篇学术论

Data Mesh,数据网格的道与术

周末的时候,看到有群友讨论关于 Data Mesh 的话题。这个名词我在2020年初的时候听到过一次,当时感觉就是一个概念,看的糊里糊涂,没有当回事。最近突然又被推上了话题风口,所以静下心来看了一下相关的论文和介绍。 在讨论 Data Mesh 之前,首先要给大家介绍一下 Service Mesh。 Service Mesh 公认的定义,是用以处理服务与服务之间通信的专用基础设施层。更本质的理

图像数据到网格数据-3——Cuberille算法

前言   这是本博客网格生成算法系列的第三篇,第一篇里面介绍了最为流行的MarchingCubes算法,第二篇中使用新三角形表来对MC算法进行了简化改进,形成了SMC算法。而这篇将介绍一种新的不同与MC算法思路的新网格生成算法,叫做Cuberille法,这种算法的思想相比MC算法要简单,更加易于实现。   体素立方体模型   根据第一篇的介绍,我们知道MC算法的基本模型是把组成三

哈希表的应用-浅析顶点聚簇网格简化算法的实现

前言   本篇接顶点去重那一篇,继续使用哈希表来实现网格算法。这次介绍的是一种比较简单的网格简化算法,叫做顶点聚簇。   网格简化   为了介绍这个算法,首先说明一下网格简化算法。随着计算机绘图在现代科技领域中的广泛应用, 计算机图形在现代制造业中发挥着重要的作用。计算机图形学中对模型的要求更加精密, 也更加复杂, 生成的面片数也更加庞大, 庞大的数据量必然对计算机的计算能力提出