4.3.2-点云基于统计的异常值去除

  • 介绍
  • 代码详情
  • 处理结果
  • 代码链接

介绍

统计离群值删除过程更加精细。 首先,对于每个点,计算到其K个邻居的平均距离。 然后,如果我们假设结果是具有均值μ和标准偏差σ的正态(高斯)分布,则可以认为删除所有均值距离不在全局均值加偏差范围之内的点是安全的。 基本上,它对相邻点之间的距离进行统计分析,并修剪所有不被视为“正常”的部分(您可以使用算法的参数定义什么是“正常”)。

代码详情

#include <pcl/io/pcd_io.h>
#include <pcl/filters/statistical_outlier_removal.h>
#include <iostream>
#include <pcl/filters/filter.h>
#include <pcl/visualization/cloud_viewer.h>
int
main(int argc, char** argv)
{// Objects for storing the point clouds.pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);pcl::PointCloud<pcl::PointXYZ>::Ptr filteredCloud(new pcl::PointCloud<pcl::PointXYZ>);// Read a PCD file from disk.if (pcl::io::loadPCDFile<pcl::PointXYZ>(argv[1], *cloud) != 0){return -1;}/*std::vector<int> mapping;pcl::removeNaNFromPointCloud(*cloud, *cloud, mapping);*/// Filter object.pcl::StatisticalOutlierRemoval<pcl::PointXYZ> filter;filter.setInputCloud(cloud);// Set number of neighbors to consider to 50.filter.setMeanK(50);// Set standard deviation multiplier to 1.// Points with a distance larger than 1 standard deviation of the mean distance will be outliers.filter.setStddevMulThresh(1.0);filter.filter(*filteredCloud);pcl::io::savePCDFileASCII("statistical_qutlier_remove.pcd", *filteredCloud);cout<<"cloud"<<cloud->points.size()<<"filteredCloud"<<filteredCloud->points.size()<<endl;pcl::visualization::PCLVisualizer *p = new pcl::visualization::PCLVisualizer(argc, argv, "example");int vp_1, vp_2;p->setBackgroundColor(0, 0, 0);p->createViewPort(0.0, 0, 0.5, 1.0, vp_1);p->createViewPort(0.5, 0, 1.0, 1.0, vp_2);p->removePointCloud("source");p->removePointCloud("target");pcl::visualization::PointCloudColorHandlerCustom<pcl::PointXYZ>   cloud_tgt_h(cloud, 0, 255, 0);pcl::visualization::PointCloudColorHandlerCustom<pcl::PointXYZ> cloud_src_h(filteredCloud, 255, 0, 0);p->addPointCloud(cloud, cloud_tgt_h, "target", vp_1);p->addPointCloud(filteredCloud, cloud_src_h, "source", vp_2);p->setPointCloudRenderingProperties(pcl::visualization::PCL_VISUALIZER_POINT_SIZE, 3, "target");p->setPointCloudRenderingProperties(pcl::visualization::PCL_VISUALIZER_POINT_SIZE, 3, "source");p->spin();p->removePointCloud("source");p->removePointCloud("target");
}

处理结果

代码链接

代码链接:https://github.com/DoubleYuanL/PCL_Tutorial2-4.3.2-Statistical.git

PCL_Tutorial2-4.3.2-点云基于统计的异常值去除相关推荐

  1. 技术干货| 阿里云基于Hudi构建Lakehouse实践探索

    简介:阿里云高级技术专家王烨(萌豆)在Apache Hudi 与 Apache Pulsar 联合 Meetup 杭州站上的演讲整理稿件,本议题介绍了阿里云如何使用 Hudi 和 OSS 对象存储构建 ...

  2. 技术干货| 阿里云基于Hudi构建Lakehouse实践探索「内附干货PPT下载渠道」

    简介: 阿里云高级技术专家王烨(萌豆)在Apache Hudi 与 Apache Pulsar 联合 Meetup 杭州站上的演讲整理稿件,本议题介绍了阿里云如何使用 Hudi 和 OSS 对象存储构 ...

  3. kaggle信用卡欺诈看异常检测算法——无监督的方法包括: 基于统计的技术,如BACON *离群检测 多变量异常值检测 基于聚类的技术;监督方法: 神经网络 SVM 逻辑回归...

    使用google翻译自:https://software.seek.intel.com/dealing-with-outliers 数据分析中的一项具有挑战性但非常重要的任务是处理异常值.我们通常将异 ...

  4. 拍乐云基于AV1的实时视频系统技术实践

    点击上方"LiveVideoStack"关注我们 实时视频系统对于时延的要求极高,视频编码器必须满足实时性的要求.新一代视频标准AV1相比主流H.264在Rate-distorta ...

  5. 华为云基于云原生媒体网络,又出重磅新品

    摘要:华为云TechWave云原生媒体服务专题日上,华为云媒体服务产品部云视频总监陆振宇发表演讲<云原生媒体网络,升级传统,赋能未来>,分享了为什么要重构媒体网络,基于华为云的云原生技术构 ...

  6. 3d激光雷达开发(基于统计滤波)

    [ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 基于统计方法的滤波其实是比较好理解的.也就是说,在一个局部范围内,选择距离最近的几十个点,要求他 ...

  7. 《中国人工智能学会通讯》——6.16 基于统计的推理方法

    6.16 基于统计的推理方法 前面提到,知识图谱中基于统计的推理方法一般指关系机器学习方法,一个比较好的综述论文可以参考文献 [17].下面介绍一些典型的方法. 实体关系学习方法 实体关系学习的目的是 ...

  8. 基于统计学习---面向新闻的发生地与提及地检测

    基于统计学习---面向新闻的发生地与提及地检测 一.摘要 二.流程 2.1- 数据构建及数据预处理 2.2- 全国5级地址实体二叉树 2.3- 命名实体识别相关算法 2.4- 新闻中特征信息分析 2. ...

  9. 中文分词算法——基于统计的分词

    1.基于统计的分词(无字典分词) 主要思想:上下文中,相邻的字同时出现的次数越多,就越可能构成一个词.因此字与字相邻出现的概率或频率能较好的反映词的可信度. 主要统计模型为:N元文法模型(N-gram ...

最新文章

  1. php v9 分页静态,PHPCMS V9自定义栏目伪静态实现方法(列表页/分页/内容页)
  2. aspx写入mysql_Asp.net用户登陆数据库验证与注册写入数据库
  3. 服务器2016修改时间,服务器时间错误
  4. Git : 每一行命令都算数
  5. sql日期处理(出自邹建的book)
  6. jvm gc监控分析常用命令
  7. windows下mysql备份
  8. windows7网购火车票全解析
  9. Google earth
  10. 狼羽:视频营销是今年营销增长渠道重中之重
  11. log4j2的异步使用及添加自定义参数
  12. python中seek函数_Python seek()函数
  13. 计算机辅助设计基础试题,CAD基础知识自测题
  14. Android 蓝牙系统打开蓝牙源码分析(一)--- 全网最详细
  15. Matlab将图例添加到图
  16. 2022年登高架设考试练习题及在线模拟考试
  17. 让每个人都拥有富足的人生,GSN重新定义社交经济
  18. 另类数字剖析车王轨迹 舒马赫的16年F1赛车人生
  19. 51nod 1301 集合异或和
  20. 基于西门子S7-1500的大型焊接机全套程序,使用博图V14打开(带全部注释,需要源程序的可以加微信x241602)...

热门文章

  1. (10/300)二阶线性微分方程的解的性质和结构(二)
  2. 目录服务器的互联网协议是,各个网络协议汇总(01)
  3. 其他机器的访问mysql_解决MySQL其他机器连接不上的问题
  4. C语言求字符串的长度
  5. 佛说爱情一:佛前的三支蜡烛
  6. excel对一列筛选对另一列求和:SUMIF、SUMIFS函数
  7. Linux下基于SDL库贪吃蛇游戏
  8. 黎明觉醒火种测试服务器维护,黎明觉醒3月25日开启火种测试
  9. 普中科技单片机HC6800-EM3 V3.0资料下载
  10. Java进击框架:Spring(一)