位置:51电子网 » 技术资料 » 初学园地

中值滤波模块设计思路

发布时间:2008/11/25 0:00:00 访问次数:814

  中值滤波的含义

  中值滤波是滤波算法中非常重要的一种,在实际单片机系统巾,采用中值滤波对输入信号进行处理十分适用,尤其对输入的窄脉冲干扰的抑制作用非常明显。

  中值滤波算法是把输入信号进行连续″次采样后,从大到小排序,选取其中间值作为输出信号。一般来讲,由于单片机系统的处埤速度不快,n值不能选得太大。另外,刀值也不能选得太小,当然这与系统采样时间有关,如果系统采样的时问月朋比较长,则可以将n选为3或者5 如果系统的采样时间比较短,则可以将″选为11或者13,或者主设置得更大,当然要根据系统的各个参数进行综合选定。

  算法功能模块

  在本实例中实现的是n为3的中值滤波算法.首先对模拟输入信号的进行采集,然后对其进行排序,排序后再选取其中间值作为输出.具体的功能模块有如下几个部分:

  · 对模拟输入的a/d量化:

  · 计数器模块;

  · 16位数据大小的比较;

  · 排序的实现。

  中值滤波要在一定的时间内对输入信号进行连续地采样,然后取几次采样值的中间值。中值滤波对于脉冲干扰有很好的抑制作用。另外,中值滤波的实现也很简单,利于读者掌握和使用。在工程实践中,刀的取值取决于系统的参数,除了上面提到的采样时间和处理速度外,还应该给系统的其他功能留下足够的处理时间。总之,n的取值要综合系统的各项指标来决定。

  本实例将对ra0端口的模拟输入进行3次连续采样,再将其中间值求出,作为结果输出。

  系统先将3个采样值存储到ad1、ad2、ad3这3个变量中(adi由两个8位变量组成,分别为adil和adih),然后对ad1和ad2进行排序,将大的值存储到ad1中,将小的值存储到ad2中;再对ad2和ad3进行排序,将大的值存储到ad2,将小的值存储到ad3;最后对ad1和ad2进行排序,将大的值存储到ad1中,将小的值存储到ad2中,这样就完成了3个变量的排序操作。排序操作完成后,将ad2存储到outh、outl中再输出。

  欢迎转载,信息来自维库电子市场网(www.dzsc.com)



  中值滤波的含义

  中值滤波是滤波算法中非常重要的一种,在实际单片机系统巾,采用中值滤波对输入信号进行处理十分适用,尤其对输入的窄脉冲干扰的抑制作用非常明显。

  中值滤波算法是把输入信号进行连续″次采样后,从大到小排序,选取其中间值作为输出信号。一般来讲,由于单片机系统的处埤速度不快,n值不能选得太大。另外,刀值也不能选得太小,当然这与系统采样时间有关,如果系统采样的时问月朋比较长,则可以将n选为3或者5 如果系统的采样时间比较短,则可以将″选为11或者13,或者主设置得更大,当然要根据系统的各个参数进行综合选定。

  算法功能模块

  在本实例中实现的是n为3的中值滤波算法.首先对模拟输入信号的进行采集,然后对其进行排序,排序后再选取其中间值作为输出.具体的功能模块有如下几个部分:

  · 对模拟输入的a/d量化:

  · 计数器模块;

  · 16位数据大小的比较;

  · 排序的实现。

  中值滤波要在一定的时间内对输入信号进行连续地采样,然后取几次采样值的中间值。中值滤波对于脉冲干扰有很好的抑制作用。另外,中值滤波的实现也很简单,利于读者掌握和使用。在工程实践中,刀的取值取决于系统的参数,除了上面提到的采样时间和处理速度外,还应该给系统的其他功能留下足够的处理时间。总之,n的取值要综合系统的各项指标来决定。

  本实例将对ra0端口的模拟输入进行3次连续采样,再将其中间值求出,作为结果输出。

  系统先将3个采样值存储到ad1、ad2、ad3这3个变量中(adi由两个8位变量组成,分别为adil和adih),然后对ad1和ad2进行排序,将大的值存储到ad1中,将小的值存储到ad2中;再对ad2和ad3进行排序,将大的值存储到ad2,将小的值存储到ad3;最后对ad1和ad2进行排序,将大的值存储到ad1中,将小的值存储到ad2中,这样就完成了3个变量的排序操作。排序操作完成后,将ad2存储到outh、outl中再输出。

  欢迎转载,信息来自维库电子市场网(www.dzsc.com)



相关IC型号

热门点击

 

推荐技术资料

FU-19推挽功放制作
    FU-19是国产大功率发射双四极功率电二管,EPL20... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!