热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

【论文阅读】PAIRWISELINKAGEFORPOINTCLOUDSEGMENTATIONISPRSluxiaohu

目录PAIRWISELINKAGEFORPOINTCLOUDSEGMENTATION1.INTRODUCTIONclustersegmentObjectivesandMotivat


目录

  • PAIRWISE LINKAGE FOR POINT CLOUD SEGMENTATION
    • 1. INTRODUCTION
      • cluster
      • segment
      • Objectives and Motivation
    • 2. PAIRWISE LINKAGE
      • CutoffDistance:截止距离的选取
      • Density:密度的计算
      • Pairwise Linkage:建立linkage关系,保存聚类中心点
      • Hierarchical Clustering:分层聚类
      • ClusterMerging:
    • 3. P-LINKAGE FOR POINT CLOUD SEGMENTATION
      • Normal Estimation
      • Linkage Building
      • Slice Creating
      • Slice Merging
    • 4. EXPERIMENTAL RESULTS
    • 5. CONCLUSION


PAIRWISE LINKAGE FOR POINT CLOUD SEGMENTATION

Xiaohu Lu, Jian Yao∗, Jinge Tu, Kai Li, Li Li, Yahui Liu
School ofRemote Sensing and Information Engineering, Wuhan University, Wuhan, Hubei, P.R. China (xiaohu.lu,jian.yao,kaili,li.li,liuyahui)@whu.edu.cn http://cvrs.whu.edu.cn/

Commission III, WG III/2




1. INTRODUCTION


cluster

两大类:partitioning和hierarchical

partitioning

The partitioning clustering algorithms usually classify each data point to different clusters via a certain similarity measurement

1、k-means:参数来指定聚类的数目

2、CLARANS

3、mean-shift: k-means的改进,不需要参数

hierarchical

The hierarchical methods usually create a hierarchical decomposition of a dataset by iteratively splitting the dataset into smaller subsets until each subset consists of only one object

1、single-linkage

2、its variants


segment

three main categories: edge/border based, region growing based and hybrid

edge/border based

region growing

hybrid approaches


Objectives and Motivation

1、P-Linkage Clustering:

develop a simple, efficient point cloud segmentation algorithm

2、Point Cloud Segmentation:

employing the clustering algorithm on point cloud segmentation.


2. PAIRWISE LINKAGE


CutoffDistance:截止距离的选取

image-20200705120216291

只有距离小于这个d才会被认为是neighbor

其中,For each data point pi, the distance between pi and its closest neighbor is recorded in Dcn。

where scale is a customized parameter which means the cutoff distance dc is scale times the value of the median value of the set Dcn.


Density:密度的计算

image-20200705120823493


Pairwise Linkage:建立linkage关系,保存聚类中心点

image-20200705121834341


Hierarchical Clustering:分层聚类

image-20200705122919212

image-20200705123040739

image-20200705123051451


ClusterMerging:

判据:average densities of the adjacent points

如果两个cluster中的average densities of the adjacent points满足:image-20200705124149713

则合并两个cluster

总的算法流程:
image-20200705142241191
对每一个点,在其邻域内寻找比它本身特征(这里是密度)大的点,如果有,那么讲这个点记为CNP,并将CNP-p之间的linkage保存到Table中;如果在其邻域内没有比他自身特征好的点,那么这个点就记为聚类中心。最后在聚类中心的集合中,根据Table找每一个聚类中心对应的点集合


3. P-LINKAGE FOR POINT CLOUD SEGMENTATION

image-20200705144925338

将cluster算法应用到点云分割上面,和2维数据有三点不同:

1、使用KNN找k个最近的邻域点,而不是固定的距离的近邻点

2、使用点的平面度作为特征值

3、两个点之间的距离为他们法线方向的偏差


Normal Estimation

选取K个最近邻点,使用前K/2个进行PCA估计法向量;

使用Maximum Consistency with Minimum Distance (MCMD) algorithm (Nurunnabi et al., 2015)算法寻找inliers,其方法是:对这个p计算其邻域的K个点到估计的平面的距离N_OD,然后计算这些数据的MAD,进而计算出Rz_SCORE:

image-20200705153037857

最后对每一给点p,得到法线,平面度,一致性集合CS§


Linkage Building

对每一个p在其CS中选取比他平坦并且距离p最近的点作为CNP(pi),如果这个CNP(pi)存在那么创建一个linkage,并且保存在一个table T;如果这个点不存在并且当前点p的平坦度小于这个阈值:

image-20200705161331416

那么p就是cluster center,并插入到list中。


Slice Creating

通过对cluster center中的点在Table中查找,形成初始的clusters,然后对每一个cluster,通过一个类似于RANSAC的平面拟合的方式(MCS method proposed by (Nurunnabi et al., 2015)),迭代求得每一个cluster的最优的plane,然后通过MCMD outlier removal得到内点(也就是Consistent Set (CS)),这样对于每一个slice S_p,我们就获得了normal n(Sp),flatness λ(Sp),Consistent Set CS(Sp)。


Slice Merging

1、search for the adjacent slices for each one

满足下式,则为adjacent slice

image-20200705170247102

2、如果相邻的slice满足下面的公式:

image-20200705170355896

那么合并。


4. EXPERIMENTAL RESULTS

高斯分布的二维数据

image-20200705180134106

image-20200705180207381

image-20200705180222523

image-20200705180252828

image-20200705180316281

image-20200705180329072


5. CONCLUSION

提出层次聚类方法P-linkage;将该算法应用到点云分割,可以处理通过不同场景捕获的大量数据点。


推荐阅读
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 本文介绍了Python爬虫技术基础篇面向对象高级编程(中)中的多重继承概念。通过继承,子类可以扩展父类的功能。文章以动物类层次的设计为例,讨论了按照不同分类方式设计类层次的复杂性和多重继承的优势。最后给出了哺乳动物和鸟类的设计示例,以及能跑、能飞、宠物类和非宠物类的增加对类数量的影响。 ... [详细]
  • 第四章高阶函数(参数传递、高阶函数、lambda表达式)(python进阶)的讲解和应用
    本文主要讲解了第四章高阶函数(参数传递、高阶函数、lambda表达式)的相关知识,包括函数参数传递机制和赋值机制、引用传递的概念和应用、默认参数的定义和使用等内容。同时介绍了高阶函数和lambda表达式的概念,并给出了一些实例代码进行演示。对于想要进一步提升python编程能力的读者来说,本文将是一个不错的学习资料。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文介绍了C++中省略号类型和参数个数不确定函数参数的使用方法,并提供了一个范例。通过宏定义的方式,可以方便地处理不定参数的情况。文章中给出了具体的代码实现,并对代码进行了解释和说明。这对于需要处理不定参数的情况的程序员来说,是一个很有用的参考资料。 ... [详细]
  • 本文介绍了一种划分和计数油田地块的方法。根据给定的条件,通过遍历和DFS算法,将符合条件的地块标记为不符合条件的地块,并进行计数。同时,还介绍了如何判断点是否在给定范围内的方法。 ... [详细]
  • 本文介绍了Oracle数据库中tnsnames.ora文件的作用和配置方法。tnsnames.ora文件在数据库启动过程中会被读取,用于解析LOCAL_LISTENER,并且与侦听无关。文章还提供了配置LOCAL_LISTENER和1522端口的示例,并展示了listener.ora文件的内容。 ... [详细]
  • 本文讨论了在openwrt-17.01版本中,mt7628设备上初始化启动时eth0的mac地址总是随机生成的问题。每次随机生成的eth0的mac地址都会写到/sys/class/net/eth0/address目录下,而openwrt-17.01原版的SDK会根据随机生成的eth0的mac地址再生成eth0.1、eth0.2等,生成后的mac地址会保存在/etc/config/network下。 ... [详细]
  • Redis底层数据结构之压缩列表的介绍及实现原理
    本文介绍了Redis底层数据结构之压缩列表的概念、实现原理以及使用场景。压缩列表是Redis为了节约内存而开发的一种顺序数据结构,由特殊编码的连续内存块组成。文章详细解释了压缩列表的构成和各个属性的含义,以及如何通过指针来计算表尾节点的地址。压缩列表适用于列表键和哈希键中只包含少量小整数值和短字符串的情况。通过使用压缩列表,可以有效减少内存占用,提升Redis的性能。 ... [详细]
author-avatar
痴情被撕碎的阳光
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有