FPGA实现图像滤波(中值滤波、均值滤波、极值滤波)

  • 前言
  • 一、滤波原理
  • 二、FPGA上Verilog实现步骤
    • 1.图像周围填0
    • 2.数据延迟
    • 3.数据处理
  • 总结

前言

首先介绍滤波原理,再附上verilog实现思路


一、滤波原理

滤波的原理网上介绍很多,简单的滤波有很多,中值滤波,均值滤波,极值滤波,原理差不多,本次使用的滤波器是3×3,同时图像边缘填0。
1、均值滤波,是图像处理中最常用的手段。值滤波是用每个像素和它周围像素计算出来的平均值替换自己。

2、中值滤波也是消除图像噪声最常见的手段之一,特别是消除椒盐噪声,中值滤波的效果要比均值滤波更好。中值滤波是跟均值滤波唯一不同是,不是用均值来替换中心每个像素,而是将周围像素和中心像素排序以后,取中值。

3、最大最小值滤波是一种比较保守的图像处理手段,与中值滤波类似,首先要排序周围像素和中心像素值,然后将中心像素值与最小和最大像素值比较,如果比最小值小,则替换中心像素为最小值,如果中心像素比最大值大,则替换中心像素为最大值。

二、FPGA上Verilog实现步骤

1.图像周围填0

在对图像应用滤波器进行过滤时,边界问题是一个需要处理的问题。对图像的边界做扩展,在扩展边界中填充0,对于边长为2k+1的方形滤波器,扩展的边界大小为k,若原来的图像为[m, n],则扩展后图像变为[m+2k, n+2k]。

举例:即将800×480的图像首先扩展成802×482
将此前帧有效vsync信号中有数据有效de信号进行扩展。原有的de有480行,800个脉宽,扩展成482行,802个脉宽。

2.数据延迟

将对应的数据data进行延迟,data1相对于data延一拍,data2相对于data延两拍,data3相对于data延迟一行,……,data8相对于data延迟两行。

3.数据处理

中值滤波:
第一步: 分别求出 3 行中同一行的最大值、 最小值、 中间值
设 max_h1 为第一行的最大值, min_h1 为第一行的最小值, mid_h1 为第一
行的中间值。
同理有 max_h2, mid_h2, min_h2, max_h3, mid_h3, min_h3。
第二步: 3 行的最大值、 最小值、 中间值进行比较
max_h1, m2ax_h2, max_h3 这 3 个值比较, 得到这 3 个值的最小值 min_max。
mid_h1, mid_h2, mid_h3 这 3 个值比较, 得到这 3 个值的中间值 mid_mid。
min_h1, min_h2, min_h3 这 3 个值比较, 得到这 3 个值的最大值 max_min。
第三步: 得到 3x3 矩阵的中间值
将第二步得到的 min_max, mid_mid, max_min 进行比较, 得到的中间值,
即该 3x3 矩阵的中间值。
极值滤波:
同理:
第一步: 分别求出 3 行中同一行的最大值、 最小值、 中间值
设 max_h1 为第一行的最大值, min_h1 为第一行的最小值, mid_h1 为第一
行的中间值。
同理有 max_h2, mid_h2, min_h2, max_h3, mid_h3, min_h3。
第二步: 3 行的最大值、 最大值、 最大值进行比较max_h1, m2ax_h2, max_h3 这 3 个值比较, 得到这 3 个值的最大值 max_zong。
均值滤波:
同理:
将9组数据进行求和再求平均。

总结

本章将fpga实现各类滤波进行思路整理

FPGA图像处理_中值滤波、均值滤波、极值滤波相关推荐

  1. 一维中值、均值、高斯滤波的MATLBA实现

    中值滤波的代码: x=0:2047; a=load('data.txt'); %运行时data.txt文件要放到当前目录(current directory)中 n=5; % n为模板长度,值可以改变 ...

  2. [学习opencv]高斯、中值、均值、双边滤波

    以前的时候,为了过滤图像中的一些噪点,学过一些简单的滤波,比如中值滤波,均值滤波,也是自己实现的. 在opencv中有现成的函数可以调用,实现滤波的操作. 函数的原型如下: CVAPI(void) c ...

  3. matlab mean 滤波,中值和均值滤波---matlab实现(Median and mean filter ---matlab implementation).doc...

    中值和均值滤波---matlab实现(Median and mean filter ---matlab implementation) 中值和均值滤波---matlab实现(Median and me ...

  4. 图像处理技术之三:降噪处理(中值、均值、最大值、最小值滤波、图像噪声)

    图像噪声的成因分类与常见图像去噪算法简介 1.图像噪声的成因 图像在生成和传输过程中常常因受到各种噪声的干扰和影响而是图像降质,这对后续图像的处理和图像视觉效应将产生不利影响.噪声种类很多,比如:电噪 ...

  5. 图像处理:中值滤波均值滤波

    转自:openCV之中值滤波&均值滤波(及代码实现):https://blog.csdn.net/weixin_37720172/article/details/72627543  在开始我们 ...

  6. python手写均值滤波锐化_中值滤波,均值滤波,锐化滤波原理

    1 北京理工大学珠海学院实验报告 ZHUHAI CAMPAUS OF BEIJING INSTITUTE OF TECHNOLOGY 班级 学号 姓名 指导教师 成绩 实验题目 实验时间 1. 题目概 ...

  7. 滤波算法、中值和均值滤波区别

    滤波算法:  这里所讲的算法都是针对图像空间的滤波算法,其中模板,可以理解为图像形态学中的结构元素,是用来选取图像中的那些像素点被用来操作的.空间滤波根据其功能划分为平滑滤波和锐化滤波.平滑滤波:能减 ...

  8. 【FPGA教程案例44】图像案例4——基于FPGA的图像中值滤波verilog实现,通过MATLAB进行辅助验证

    FPGA教程目录 MATLAB教程目录 -------------------------------------------------------------------------------- ...

  9. 基于FPGA的图像中值滤波原理与实现

    图像中值滤波的FPGA实现 项目简述 中值滤波器原理 中值滤波器的实现 测试模块的代码 仿真结果 下板结果 总结 项目简述 中值滤波器在去除尖端噪声中非常重要,是信号处理中最长用到的滤波器.图像中的一 ...

最新文章

  1. native2ascii用法
  2. 在 SQL Server 2K 中实现 大小写敏感的查询条件(WHERE ...),类似 Access(VB) 的 StrComp 函数...
  3. 洛谷U4727小L的二叉树[树转序列 LIS]
  4. python爬虫如何从一个页面进入另一个页面-爬虫入门(一)——如何打开一个网页...
  5. CodeForces - 833B The Bakery
  6. Jenkins中连接Git仓库时提示:error: The requested URL returned error: 401 Unauthorized while accessing
  7. html jwt权限控制,SpringBoot+SpringSecurity+JWT实RESTfulAPI权限控制
  8. R语言绘制流程图(一)
  9. 百度地图InfoWindow弹窗圆角
  10. 【IoT】产品模型:基于 ARM 的音视频采集与传输系统
  11. sketchup生成面域插件_适用于Revit / SketchUp / Rhino / ArchiCAD插件最新版
  12. 别死写代码,这 25 条比涨工资都重要
  13. PLSQL入门与精通(第56章:用PLSQL读写文件)
  14. 水波纹 android,Android特效之水波纹的实现
  15. 联想昭阳K22连不上远程桌面
  16. 关于PWM,SPWM,SVPWM的整理
  17. 踔厉奋发,笃行不怠——2022年度引迈信息年终总结
  18. hashmap中的key是有序的么_HashMap是无序的
  19. 我爬取了杭州的数据分析招聘岗位(内附原始数据)
  20. 没有html的电视怎么连电脑,电脑怎么连接电视 详细步骤【图文】

热门文章

  1. PC端兼容问题--配置浏览器内核
  2. ▷Scratch课堂丨在Scratch上制作植物大战僵尸游戏
  3. 字节跳动蚂蚁金服百度SRE社招面经
  4. seekbar自定义android,Android自定义SeekBar实现视频播放进度条
  5. web渗透测试学习路径图
  6. 【Git】OpenSSL SSL_read: Connection was aborted, errno 10053
  7. jQuery获得当前元素id
  8. 历代Android开机动画,回顾Windows历代版本开机画面:XP最经典
  9. 关于单片机上的BOOT0和BOOT1
  10. 具有超能力的对话式机器人性能如何? #Chatsonic AI