完整的实验报告下载链接https://download.csdn.net/download/LIsaWinLee/14884404

一、实验原理

自适应滤波器由参数可调的数字滤波器和自适应算法两部分组成。 自适应滤波与维纳滤波、卡尔曼滤波最大的区别在于,自适应滤波在输出与滤波系统之间存在有反馈通道,根据某一时刻滤波器的输出与期望信号的误差调整滤波器的系数,从而实现滤波器系数的动态调整,实现最优滤波。

1.1 信号模型

自适应滤波的目的仍然是从观测信号中提取真实准确的期望信号,因此涉及到的信号有:1)期望信号 d(n)

2)输入信号 x(n)=d(n)+v(n)

3)输出信号 y(n)

1.2 算法原理

一个M阶滤波器,系数为w(m),则输出为:y(n)=Σw(m)x(n-m) m=0…M,写成矩阵形式:y(j)=WT(j)*X(j),n时刻的输出误差为: e(j)=d(j)-y(j)= d(j)- WT(j)*X(j),

定义目标函数为 E[e(j)^2],则有:J(j)=E[e(j)^2]= E[(d(j)- WT(j)*X(j))^2]。

当上述误差达到最小时,即实现最优滤波,这种目标函数确定的为最小方差自适应滤波。对于目标函数J(j),需要求得使其取到最小值对应的W,这里使用梯度下降法进行最优化:W(j+1)=W(j)+1/2*μ(-▽J(j))

▽J(j)=-2E[X(j)*( d(j)- WT(j)*X(j))]= -2E[X(j)e(j)]

W(j+1)=W(j)+μE[X(j)e(j)]

其中-2X(j)e(j)称为瞬时梯度,因为瞬时梯度是真实梯度的无偏估计,这里可以使用瞬时梯度代替真实梯度。W(j+1)=W(j)+μX(j)e(j)

由此,可以得到自适应滤波最佳系数的迭代公式。

二、实验内容

设计一个自适应滤波器,结合一定应用,对语音、图像、视频等某种对象进行处理。

三、实验过程及结果

此次实验拟对图像进行去噪操作,实现灰度图像复原。

3.1 准备含噪声图像

准备一张彩色图像,首先将彩色图像转化为灰度图像,代码操作如图3.1所示。

图3.1 彩色图转化为灰度图的代码句式

接着在原始图像上人为加入均值为0、标准差为0.1的高斯噪声,以供后续使用,效果展示如图3.2。

图3.2 产生含噪声图像效果

3.2 自适应滤波器去噪

选择窗口大小为9*9的自适应滤波器进行滤波处理,结果如图3.3所示。

图3.3 自适应滤波器滤波后的效果

通过对比,自适应滤波器处理后的图像明显比噪声图像清晰很多,界限也相对分明,效果显著。若将滤波后图像与原图像相比,随有处理不到位的地方,但几乎接近原图,效果显著。

四、总结与展望

通过实验实现自适应滤波器对图像去噪的处理,达到图像复原的效果。进一步体会到了自适应滤波器的原理,通过不断地缩小误差,以寻求最优化。此次实验较为简单,后续还可以尝试自适应滤波器对语音、视频等的处理,并添加一些如LMS等的算法,以求得更好结果。

五、附录

5.1 产生噪声图像的程序

function [gImg] = addGaussianNoise(avg,std)img1=imread('E:\matlab\work\suijishuzixinhaochuli\colorful.jpg');img=rgb2gray(img1);[imgH,imgW]=size(img);% 产生和图像维度相同的噪声,叠加到图像上gImg=uint8((double(img)/255+avg+std*randn(imgH,imgW))*255);figure();subplot(2,2,1);imshow(img),title('原始图像');subplot(2,2,2);imshow(gImg),title('均值为'+string(avg)+'标准差为'+string(std)+'的高斯噪声图像');

5.2 自适应滤波器图像复原的程序

function []=adaptFilter(fsize)% 获取均值为0,标准差为0.1的高斯噪声图像gImg = double(addGaussianNoise(0,0.1));[imgH,imgW]=size(gImg);gNewImg = gImg;% 根据滤波器尺寸计算半长if mod(fsize,2)flength = (fsize-1)/2;elseflength = fsize/2;endfor i=1+flength:imgH-flengthfor j=1+flength:imgW-flengthgTemp = gImg(i-flength:i+flength,j-flength:j+flength);avg = mean(gTemp(:));v = var(gTemp(:));gNewImg(i,j)=gImg(i,j)-255*255*0.01/v*(gImg(i,j)-avg);endendgImg = uint8(gImg);gNewImg=uint8(gNewImg);subplot(2,2,3); imshow(gImg),title('高斯噪声图像');subplot(2,2,4); imshow(gNewImg),title('自适应滤波器(窗口大小为' + string(fsize) + ')处理后图像'); end

随机数字信号处理实验报告二——自适应滤波MATLAB相关推荐

  1. matlab fft谱分析实验报告,数字信号处理实验报告-FFT算法的MATLAB实现.doc

    数字信号处理实验报告-FFT算法的MATLAB实现.doc 数字信号处理 实验报告实验二FFT算法的MATLAB实现一.实验目的通过本实验的学习,掌握离散傅立叶变换的理论,特别是FFT的基本算法以及其 ...

  2. 随机数字信号处理实验报告一——维纳滤波和卡尔曼滤波

    完整的实验报告下载连接https://download.csdn.net/download/LIsaWinLee/14884356 一.实验原理 卡尔曼滤波和维纳滤波都是最小均方误差为准则的线性估计器 ...

  3. 随机数字信号处理实验报告三——Levinson和Burg递推法MATLAB实现

    完整的实验报告下载连接https://download.csdn.net/download/LIsaWinLee/14884452 一.实验原理 随机信号的功率谱密度用来描述信号的能量特征随频率的变化 ...

  4. matlab数字信号处理实验报告,数字信号处理实验报告一 离散信号及其MATLAB实验...

    数字信号处理 离散信号及其MATLAB实验 南昌航空大学实验报告 2012 年 04 月 06 日 课程名称: 数字信号处理 实验名称: 离散信号及其MATLAB实现 班级: 090423班 学号: ...

  5. matlab数字信号处理实验报告,【实验设计论文】Matlab的数字信号处理课程实验设计(共3490字)...

    摘要:本文设计了一个基于Matlab的"数字信号处理"课程综合性实验.该实验把"数字信号处理"课程中的许多离散的知识点串接了起来,包括采样.量化.滤波器设计.滤 ...

  6. matlab数字信号处理实验报告,数字信号处理实验报告(Matlab与数字信号处理基础).doc...

    西华大学实验报告(理工类) 开课学院及实验室:电气信息学院 6A-205实验时间 :年月日学 生 姓 名学号成 绩学生所在学院电气信息学院年级/专业/班课 程 名 称数字信号处理课 程 代 码实验项目 ...

  7. 信号加白噪声分贝matlab程序,数字信号处理 实验报告.doc

    PAGE 1 1.DFT在信号频谱分析中的应用 1.1设计目的 (1) 熟悉DFT的性质. (2) 加深理解信号频谱的概念及性质. (3)了解高密度谱与高分辨率频谱的区别. 1.2设计任务与要求 (1 ...

  8. 随机数字信号处理期末大报告——基于卡尔曼滤波的自由落体运动目标跟踪MATLAB实现

    完整的实验报告下载随机数字信号处理期末大报告-基于卡尔曼滤波的自由落体运动目标跟踪.docx-机器学习文档类资源-CSDN下载 ​​​​​​ 程序包及所需数据下载 target tracking us ...

  9. Matlab验证dtft共轭性质,数字信号处理实验4重点.docx

    深 圳 大 学 实 验 报 告 课程名称: 数字信号处理实验 实验项目名称: 实验4 学院: 信息工程学院 专业: 电子信息工程 指导教师: 陈佳义 报告人: 学号: 班级: 实验时间: 11.12 ...

最新文章

  1. SIFT特征点匹配中KD-tree与Ransac算法的使用
  2. 常考数据结构与算法:最长公共子串
  3. 北师计算机应用基础离线作业2,[北京师范大学]18秋《计算机应用基础(专科)》 离线作业2...
  4. stdout和stderr标准输出的区别
  5. 《虚拟化和云计算》实验报告——MININET实践SDN
  6. 【蓝桥杯Java_C组·从零开始卷】第六节(一)、Java常用数学函数
  7. 赶快使用Q-Dir软件,使您的文件夹操作更加高效
  8. DevNet网站上线
  9. Resin的安全性ip限制
  10. python面试总结(五)内存管理与MYSQL引擎选择
  11. 编程语言之问:何时该借用,何时该创造?
  12. 微软旗下Maluuba推出看图问答数据集,想让AI看懂图表
  13. 【Java程序设计】JDBC与数据库访问
  14. 【心得】Web设计师应参考的技术
  15. SQL Server 2014 软件安装教程
  16. plc编程语言有几种?plc常用的编程语言
  17. linux 3g拨号,中兴MF637U 3G 联通 linux 拨号
  18. 关于ajax同步状态及sucess,complete的顺序的理解
  19. data在c语言中的作用,data是什么意思
  20. python汇率兑换双向_汇率兑换—python第一课

热门文章

  1. Android高德地图开发详解
  2. 如何写好宣传软文?软文推广对企业有什么帮助?
  3. 使用FRP远程访问TP-LINK路由器管理页面
  4. 视觉神经网络模型优秀开源工作:PyTorch Image Models(timm)库
  5. 怒赞!FACEBOOK内部高效工作PPT指南
  6. 网络管理必备工具软件精解(Windows版)---转载及个人见解
  7. 远瞻资本胡明烈:大疆十一年,每一步都踩在汪滔的计划中
  8. 电子墨水标签_购买电子墨水打字机不会提高您的工作效率; 只有纪律会
  9. html5程序设计 ppt,HTML5 程序设计第4章.ppt
  10. 淘宝叠猫猫瓜分3亿红包赚猫币自动生成脚本(无需安装其他软件),附每天最大限度的领取最多数量的喵币方法