滤波算法
来源:互联网 发布:开票软件初始密码 编辑:程序博客网 时间:2024/05/10 05:48
/**//// <summary>
/// 限副滤波
/// </summary>
/// <param name="OldValue"></param>
/// <param name="NewValue"></param>
/// <param name="ThresholdValue"></param>
/// <returns></returns>
public float DoFilter(float OldValue,float NewValue,float ThresholdValue)
...{
if ( ( NewValue - OldValue > ThresholdValue ) || ( OldValue - NewValue > ThresholdValue ) )
return OldValue;
else
return NewValue;
}
/**//// <summary>
/// 中位值滤波法
/// </summary>
/// <param name="Values"></param>
/// <param name="Count"></param>
/// <returns></returns>
public float DoFilter(float[] Values,int Count)
...{
for (int j=0;j<Count-1;j++)
...{
for (int i=0;i<Count-j;i++)
...{
if ( Values[i]>Values[i+1] )
...{
float temp = Values[i];
Values[i] = Values[i+1];
Values[i+1] = temp;
}
}
}
return Values[(Count-1)/2];
}
/**//// <summary>
/// 中位值平均滤波法(又称防脉冲干扰平均滤波法)
/// </summary>
/// <param name="Values"></param>
/// <param name="Count"></param>
/// <returns></returns>
public float DoFilter(float[] Values,int Count)
...{
for (int j=0;j<Count-1;j++)
...{
for (int i=0;i<Count-j;i++)
...{
if ( Values[i]>Values[i+1] )
...{
float temp = Values[i];
Values[i] = Values[i+1];
Values[i+1] = temp;
}
}
}
float sum=0;
for(int i=1;i<Count-1;i++)
sum += Values[i];
return sum/(Count-2);
}
/**//// <summary>
/// 一阶滞后滤波法 为加快程序处理速度假定基数为100,ThresholdValue=0~100
/// </summary>
/// <param name="OldValue"></param>
/// <param name="NewValue"></param>
/// <param name="ThresholdValue"></param>
/// <returns></returns>
public float DoFilter(float OldValue,float NewValue,float ThresholdValue)
...{
return (100-ThresholdValue)*OldValue + ThresholdValue*NewValue;
}
/**//// <summary>
/// 加权递推平均滤波法 coe数组为加权系数表,存在程序存储区。
/// </summary>
/// <param name="Values"></param>
/// <param name="Count"></param>
/// <returns></returns>
public float DoFilter(float[] Values,int Count)
...{
float[] coe = ...{1,2,3,4,5,6,7,8,9,10,11,12};
float sum_coe = 1+2+3+4+5+6+7+8+9+10+11+12;
float sum=0;
for (int i=0;i<Count;i++)
sum += Values[i]*coe[i];
return sum/sum_coe;
}
/// 限副滤波
/// </summary>
/// <param name="OldValue"></param>
/// <param name="NewValue"></param>
/// <param name="ThresholdValue"></param>
/// <returns></returns>
public float DoFilter(float OldValue,float NewValue,float ThresholdValue)
...{
if ( ( NewValue - OldValue > ThresholdValue ) || ( OldValue - NewValue > ThresholdValue ) )
return OldValue;
else
return NewValue;
}
/**//// <summary>
/// 中位值滤波法
/// </summary>
/// <param name="Values"></param>
/// <param name="Count"></param>
/// <returns></returns>
public float DoFilter(float[] Values,int Count)
...{
for (int j=0;j<Count-1;j++)
...{
for (int i=0;i<Count-j;i++)
...{
if ( Values[i]>Values[i+1] )
...{
float temp = Values[i];
Values[i] = Values[i+1];
Values[i+1] = temp;
}
}
}
return Values[(Count-1)/2];
}
/**//// <summary>
/// 中位值平均滤波法(又称防脉冲干扰平均滤波法)
/// </summary>
/// <param name="Values"></param>
/// <param name="Count"></param>
/// <returns></returns>
public float DoFilter(float[] Values,int Count)
...{
for (int j=0;j<Count-1;j++)
...{
for (int i=0;i<Count-j;i++)
...{
if ( Values[i]>Values[i+1] )
...{
float temp = Values[i];
Values[i] = Values[i+1];
Values[i+1] = temp;
}
}
}
float sum=0;
for(int i=1;i<Count-1;i++)
sum += Values[i];
return sum/(Count-2);
}
/**//// <summary>
/// 一阶滞后滤波法 为加快程序处理速度假定基数为100,ThresholdValue=0~100
/// </summary>
/// <param name="OldValue"></param>
/// <param name="NewValue"></param>
/// <param name="ThresholdValue"></param>
/// <returns></returns>
public float DoFilter(float OldValue,float NewValue,float ThresholdValue)
...{
return (100-ThresholdValue)*OldValue + ThresholdValue*NewValue;
}
/**//// <summary>
/// 加权递推平均滤波法 coe数组为加权系数表,存在程序存储区。
/// </summary>
/// <param name="Values"></param>
/// <param name="Count"></param>
/// <returns></returns>
public float DoFilter(float[] Values,int Count)
...{
float[] coe = ...{1,2,3,4,5,6,7,8,9,10,11,12};
float sum_coe = 1+2+3+4+5+6+7+8+9+10+11+12;
float sum=0;
for (int i=0;i<Count;i++)
sum += Values[i]*coe[i];
return sum/sum_coe;
}
- 滤波算法
- 滤波算法
- 滤波算法
- 滤波算法
- 滤波算法
- 滤波算法
- 图像滤波算法
- 常用滤波算法搜集
- 常用滤波算法
- 单片机 滤波算法
- 常用滤波算法搜集
- osea滤波算法
- 滤波算法比较
- 经典的滤波算法
- 中值滤波算法
- 常用滤波算法
- 卡尔曼滤波算法
- Kalman 滤波算法导论
- 帮助文件的调用
- htop - Linux下的进程查看器
- [转载]在VC中调用DLL文件
- Session 对象
- 用JSP操作Cookie
- 滤波算法
- word中不能设置首字下沉的一个原因
- 移动通信的发展史
- 在VB中注册控件
- 在梦中也不想见到你
- JSF入个门及强项
- Spring的核心机制实例详细介绍--依赖注入简介
- 14个常见的CSS技巧及常见问题
- 从项目的角度看Hibenate的不足,项目是否要用Hibernate,请慎重。