基于正态分布的多元离群点的检测方法(项目需要对点云离群点检测)的C++实现

基于异常点检测算法(一)概率统计的原理地址是https://blog.csdn.net/yangziluomu/article/details/73528080

下面是用C++实现了基于正态分布的多元离群点的检测方法

/*-------------------------------------
1.基于正态分布的点云离群点检测算法
2.作者:pcb
3.日期:2018.10.3
--------------------------------------*/
//定义3D点的结构体
struct Point3D
{
	float x;
	float y;
	float z;
};
/*----------------------------
*功能:采用高斯分布的方法进行离群点的判别
*-----------------------------
*输入:InputPointCloud(Piont3D的原始点云数据)
*输出:OutPointCloud(除去离群点之后的Point3D结构的点云数据)
*/
void GaussianDistribution_OutlierDetection(vector &InputPointCloud, vector&OutPointCloud)
{
	//均值
	double X_Ave = 0;     
	double Y_Ave = 0; 
	double Z_Ave = 0;
	
	//方差
	double X_Var = 0;      
	double Y_Var = 0;
	double Z_Var = 0;
	
	//求均值
	for (int i = 0; i 

你可能感兴趣的:(PCL,高斯分布,离群点检测)