维纳滤波的详细讲解(同为小白,相互取暖)
1 简介
本文主要目的是回顾和巩固维纳滤波的基础和应用。
1.1 对象
一维音频信号,带高斯随机噪声。
1.2 约定
期望信号/纯净信号序列: x(n)
噪声信号序列: v(n)
带噪信号序列: y(n)
序列长度: L
维纳滤波器阶数:M
1.3 假设
信号是平稳的:也就是说在过去的一段时间和现在的一段时间内,纯净信号和噪声的均值、方差等信息是不变的,这是利用过去信息估计现在信息的基础。
期望信号与噪声是不相关的:期望信号就是理想中的纯净信号。
信号都是零均值的:这有利于计算方差。
2 基础知识
2.1 自相关向量ryy的元素是如何计算的?
ryy的元素ryy(i)是向量y的自相关函数的第i个值。ryy(i)=sum(y[i]*y[i])/L;当i=0时,ryy(0)就是y的方差。利用matlab库函数的实现方法:
ryy_ =xcorr(y,M,'biased'); %这句话计算出来的互相关函数值是2L-1个,关于L对称,M是阶数,也即是相关向量的长度
ryy =ryy_ (L+1:end); % 这里从M+1开始,是因为matlab起始序列号是1,而不是0
2.2 自相关矩阵Ryy是怎么得到的?
得到了自相关向量Ryy就可以构建出来了,利用toeplitz函数即可:
Ryy=toeplitz(ryy);
2.3 互相关向量怎么得到?
自相关都得到了,互相关就是在计算相关函数的时候,第二个变量换成其他变量。
ryx =xcorr(y,x,M,'biased');
3 维纳滤波
核心思想是滤波后的信号与纯净信号的均方误差最小:
这就是维纳意义下均方误差最小的FIR滤波器。
x是未知的,因此上述滤波器是不可得到的。
而噪声的自相关向量我们可以预估。
利用假设,ryx=ryy-rvv。
所以,估计的时刻k的输出就用hw和y来计算得到:
循环使用即可得到所有的输出估计信号。
这一步可以利用matlab的filter函数完成:
filter(h,1,y)
维纳滤波的详细讲解(同为小白,相互取暖)相关推荐
- new bing申请与试用详细讲解(纯小白适用,免加速器)
背景 作为一个纯小白想要申请与使用newbing,有一定难度,换了一台新电脑,给大家演示我在使用过程中的流程. 与ChatGPT相比,更加实时,内容还有来源和出处,New Bing单次对话次数从6次增 ...
- 未来网络发展的趋势——IPv6详细讲解与基本配置
实验目的: 1. 掌握IPv6的基本工作原理: 2. 区别IPv6和IPv4有什么区别: 3. 掌握IPv6的一些新的特征: 4. 掌握IPv6的发展进程和部署情况: 实验拓扑: 实验步骤: 一. ...
- 内存超频时序怎么调_电脑内存条专业科普,内存选购、内存品牌、内存安装、内存时序体质、内存超频频率详细讲解...
有很多兄弟经常问,什么牌子的内存条好啊?我用PS.剪辑软件需要多大内存条?内存条怎么超频啊? 所以,今天我们来详细讲解一下内存条. 一.什么是内存条? 内存条又叫随机存取存储器(英文缩写RAM),是与 ...
- mybatis-plus超详细讲解
(6条消息) mybatis-plus超详细讲解_zdsg45的博客-CSDN博客_mybatis-plushttps://blog.csdn.net/zdsg45/article/details/1 ...
- 硬件:详细讲解台式电脑上的常用的几个接口!
详细讲解台式电脑上的常用的几个接口! I/O接口部分 下图所有的接口,也是我们机箱后面的接口,统称为:I/O接口. 键鼠PS/2 PS/2接口是I/O接口中比较常见的一种接口,用来连接键盘和鼠标,二者 ...
- Redis最详细讲解
Redis最详细讲解 原文地址 本文脑图 redis基本数据结构 本文脑图 前言 Redis核心对象 String类型 int SDS SDS与c语言字符串对比 String类型应用 Hash类型 字 ...
- 软工导第一节课 计算机软件工程学作一个简短的概述,回顾计算机系统发展简史 软件工程的基本原理和方法有概括的本质的认识,详细讲解生命周期相关知识讲解8种典型的软件过程模型
文章目录 软件危机 软件的定义 软件危机典型表现 产生软件危机的原因 消除软件危机的方法 软件工程 什么是软件工程 软件工程的本质特征 软件工程的基本原理 软件工程方法学 传统方法学 面向对象方法学 ...
- vue-trtc多人视频开发(从零开始)-有手就行篇-最详细讲解
大家花个几分钟把帖子详细看完 新手也能做直播集成开发!一步到位 相信小编 最效率最省力最通透的文档! 甚至直接可以copy使用的哦!!但是记得给小编一个赞吧 孩子天天熬夜加班 还写博客确实不容易 ...
- pyhton GUI编程之Tkinter详细讲解二
文章目录 Tkinter详细讲解 pyhton GUI编程之Tkinter详细讲解二 4. 组件用法 4.1 文本输入和输出相关控件 4.1.1 Lable标签 4.1.2 Message消息 4.1 ...
最新文章
- Java数据结构与算法(第二章数组)
- 小猿圈零基础怎样学好java?
- Spring框架中的设计模式(四)
- 利用矩阵的n次方求图的连通性
- 微型计算机在温室管理中的应用初探,文献综述-测控051-陈杰.doc
- django给mysql配主从_django中的mysql主从读写分离:一、配置mysql主从分离
- 路由复用器--gorilla/mux
- 实战爬虫-爬取红袖添香并存入数据库
- java爬虫入门--用jsoup爬取汽车之家的新闻
- Spring : spring基于xml配置Bean
- 错乱的 Windows 10
- 无线接口配置 DHCP配置
- 偏微分方程数值解法python_Python数值计算----------求解简单的偏微分方程
- 基于RRT算法的路径规划
- 串口服务器485转以太网
- 中公计算机类考试题库,计算机考试题库:计算机考试模拟练习题(194)
- managed DLL 和 normal DLL
- 电子发票电子化报销入账归档 给区块链领域带来了什么样的机遇
- Android Things 开发入门
- JAVA的向上转型与向下转型(二)
热门文章
- 【从理论到代码】旋转矩阵与欧拉角 一
- cmd移动文件到另一个文件夹_Java 如何获得一个文件或文件夹的大小
- 用计算机得到圣诞树,圣诞树、标签系统和计算思维
- c语言第二章网上作业答案,c语言第二章课后习题答案
- 编译原理论文_我的第一篇论文
- 全局中断_【安全圈】微软更新造成Office 365等多个在线服务中断!
- 使用说明_无线投屏器使用说明教程
- html中的rem做响应式,使用rem制作响应式网站
- 前端怎么自我介绍_未雨绸缪,小米前端实习面经
- 微型计算机基本原理与应用pdf,微型计算机原理和应用.PDF