0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

求一种中值滤波器的设计方案

冬至子 来源:玩儿转FPGA 作者:材哥 2023-06-28 11:34 次阅读

作用

消除输入信号的“突变”脉冲,如下图:

图片

中值滤波原理

连续采样N次(N取奇数),把N次采样值按大小排列,取中间值为本次有效值。

下面以3次中值滤波原理为例说明原理:输入数据里面a3点为毛刺,b3点是由a1 a2 a3三个点排序得出的,由于a3>a2>=a1,所以,b3=a2或者a1,这样中间的毛刺信号就没了。

图片

图1 3次采样中值滤波示例

优点

能有效克服因偶然因素引起的波动干扰,对温度、液位的变化缓慢的被测参数有良好的滤波效果。

代码设计

以3次采样中值滤波器为例,设计方案如图2所示。源码和仿真测试代码链接:

缓存用寄存器打拍实现,比较需要任意两两比较,所以比较次数为C n ^2^次,选择输出在比较完成以后,进行简单排序,确定中间值输出。其中比较麻烦的是后面两步,比较次数和排序随着中值滤波规模的变大而变大,是二次增长。

图片

图2 中值滤波器方案

代码详解

很多小伙伴反应吗,最多到上一步方案设计就难以往下走了,不知道代码怎么设计。为了让大家学会怎么设计代码,这里给大家提供代码含义解释和设计思路解释。

图片

根据图2,首先写缓存器,din是输入端口。代码如下:

图片

比较部分为了简便,我们用一个bit位代表某两两比较的结果,比如com[2]=1就代表din_buf[0]大于din_buf[2],反之din_buf[0]小于din_buf[2]。这样用3bit的线就可以保留比较结果了。wire类型的代表线,assign代表将结果引到某根线上,所以比较结果输出到comp[*]没有经过任何时钟,延时是纯粹的组合逻辑延时。代码如下:

图片

排序筛选的部分由于只有3个比较所以直接用枚举法,全部列出来处理。注释部分表示了排序结果,根据排序结果选择将哪个缓冲器输出即可。代码如下:

图片

仿真测试

仿真测试文件和代码在同一个文件夹下,欢迎下载。第二行周期波形是输入波形,带有一个正尖峰和一个负尖峰,经过中值滤波后如第三行所示,毛刺都没了。

图片

**图3 ** 中值滤波结果

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 滤波器
    +关注

    关注

    158

    文章

    7332

    浏览量

    174813
  • 寄存器
    +关注

    关注

    30

    文章

    5036

    浏览量

    117762
  • 缓冲器
    +关注

    关注

    6

    文章

    1578

    浏览量

    44888
收藏 人收藏

    评论

    相关推荐

    请教一种可识别未受污染点的中值/均值滤波matlab程序

    小弟最近需要学习一种关于灰度图像去噪的改进算法,它需要在原始的中值滤波或者均值滤波器上加以改进,达到这样的要求:1.判断图像中哪些点是受污染的点2.若受污染,则用简单的
    发表于 03-30 17:06

    请问如何实现改进的中值滤波器的设计?

    如何实现改进的中值滤波器的设计?中值滤波的基本原理是什么?中值滤波的改进算法是什么?如何实现
    发表于 04-14 06:54

    基于Stratix II EP2S60改进中值滤波器的设计及实现,不看肯定后悔

    设计方案采用了一种改进的快速中值滤波算法,成功地在Altera公司的高性能Stratix II EP2S60上实现整个数字红外图像滤波,在
    发表于 04-23 06:00

    一种基于FPGA分布式算法的滤波器设计的实现方案

    分布式的滤波器算法是什么?一种基于FPGA分布式算法的滤波器设计实现
    发表于 04-29 07:13

    一种基于FPGA的HDLC协议控制设计方案

    一种基于FPGA的HDLC协议控制设计方案
    发表于 04-30 06:53

    一种嵌入式PLC微处理设计方案

    一种基于FPGA芯片的嵌入式PLC处理设计方案
    发表于 05-06 08:24

    一种基于FPGA的永磁同步电机控制设计方案

    一种基于FPGA的永磁同步电机控制设计方案
    发表于 05-08 07:02

    一种智能物品清点系统的设计方案

    一种智能物品清点系统的设计方案
    发表于 05-20 07:29

    一种新型WCDMA直放站PA的设计方案

    一种新型WCDMA直放站PA的设计方案
    发表于 05-26 06:14

    大佬分享一种小型通信系统的设计方案

    大佬分享一种小型通信系统的设计方案
    发表于 05-28 06:13

    一种陶瓷扬声系统的放大器设计方案

    一种陶瓷扬声系统的放大器设计方案
    发表于 06-04 07:10

    一种基于openmv竞速小车的设计方案

    一种基于openmv竞速小车的设计方案
    发表于 03-01 07:16

    图像处理基础自适应中值滤波器(基于OpenCV实现)

    本文主要介绍了自适应的中值滤波器,并基于OpenCV实现了该滤波器,并且将自适应的中值滤波器和常规的中值
    的头像 发表于 03-05 17:02 1.1w次阅读
    图像处理基础自适应<b class='flag-5'>中值</b><b class='flag-5'>滤波器</b>(基于OpenCV实现)

    图像加窗中值滤波算法的研究分析

    提出了一种实用的图像滤波算法,即图像加窗中值滤波算法。在分析经典中值滤波算法基础上,给出了加窗
    发表于 11-30 11:11 4次下载
    图像加窗<b class='flag-5'>中值</b><b class='flag-5'>滤波</b>算法的研究分析

    简易LC滤波器设计方案

    简易LC滤波器设计方案
    发表于 06-22 10:01 67次下载