给定输入序列,通过一个FIR线性滤波器,权系数是

n时刻,FIR滤波器的输出:

n时刻滤波器期望的输出是,期望响应与实际的输出的差值为:

随着输入的变化,要让滤波器实际输出逼近期望响应,需要求解新的滤波器抽头系数,求解过程是一个基于统计优化问题的数学求解。

该数学问题有两种方法进行阐述

通过正交性原理推导最优解需满足的条件

如果假定,都是复数,

求偏导得

多维梯度向量

上面是考虑了复数权系数和复数随即信号的推倒过程,更加简单的推导是

求偏导的

等于0时,取得最优值。

也就是正交时,实际输出与期望响应更加接近

取最优值时,正交,构成一个直角三角形,是斜边,是直角边,最小时接近

维纳-霍夫方程

取得最优解时,

的自相关函数定义为

的互相关函数定义为

上面的方程可以写为

是维纳滤波器的最优系数,上面的方程叫做维纳霍夫方程。

通过误差性能曲面推导最优解需满足的条件

上式成立的条件是抽头输入与期望响应联合平稳,此时代价函数是关于权系数的二次函数

可以把看作是一个M阶的碗状曲面,对求J的梯度向量可得

得到维纳霍夫方程

维纳霍夫方程的矩阵形式求解

的自相关矩阵

工程上求解维纳霍夫方程不是直接求输入抽头自相关矩阵的逆矩阵,而是通过递归的方法求系数

参考《自适应滤波器原理》第五版 Simon Haykin著

维纳滤波、维纳霍夫方程及矩阵形式相关推荐

  1. 霍夫变换(Hough Transform):霍夫变化在图像处理以及点云处理中的直线检测应用

    霍夫变换(Hough Transfrom)是图像处理中的一种特征提取技术,它通过一种投票算法检测具有特定形状的物体,该过程在一个参数空间中通过计算累计结果的局部最大值得到一个符合该特定形状的集合作为霍 ...

  2. 霍夫直线检测python_opencv+python 霍夫直线检测

    参考:https://blog.csdn.net/fengjiexyb/article/details/78075888 霍夫变换(Hough Transform)是图像处理中的一种特征提取技术,它通 ...

  3. OpenCV霍夫变换:霍夫线变换,霍夫圆变换合辑

    本篇文章中,我们一起探讨了OpenCV中霍夫变换相关的知识点,以及了解了OpenCV中实现霍夫线变换的HoughLines.HoughLinesP函数的使用方法,实现霍夫圆变换的HoughCircle ...

  4. OpenCV3图像处理——霍夫曼变换直线检测

    前言 1.直线检测在好多实现应用中能用到到,我之前做过扫描件检测时用直线检测来处理判断页面是否水平,还有在辅助驾驶中的车道偏离预警系统也有过应用. 2.我的编程环境是Windows 7 64位,IDE ...

  5. OpenCV3学习(6.2)——霍夫(Hough)变换:霍夫线变换HoughLine,霍夫圆变换HoughCircles

    霍夫变换是图像处理中从图像中识别几何形状的基本方法之一,应用很广泛,也有很多改进算法.主要用来从图像中分离出具有某种相同特征的几何形状(如,直线,圆等).最基本的霍夫变换是从黑白图像中检测直线(线段) ...

  6. 8.霍夫变换:线条——霍夫的效果、噪声对霍夫的影响、霍夫拓展_5

    目录 霍夫的效果 噪声对霍夫的影响 霍夫拓展 本环节结束 霍夫的效果 这里我将给你们展示一个Hough运行在真实图像上的例子来告诉你们它做得好和做得不好. 这是一张美国足球场的照片: 这是美式足球,你 ...

  7. 8.霍夫变换:线条——基本的霍夫变换算法、霍夫变换的复杂性、霍夫例子_3

    目录 基本的霍夫变换算法 霍夫变换的复杂性 霍夫例子 基本的霍夫变换算法 说到算法,我们来看一下: 我们将使用直线的极坐标参数化,极坐标表示. 还有一种叫Hough累加器(数组)的东西,它只是用来表示 ...

  8. 【OpenCV新手教程之十四】OpenCV霍夫变换:霍夫线变换,霍夫圆变换合辑

    本系列文章由@浅墨_毛星云 出品,转载请注明出处. 文章链接: http://blog.csdn.net/poem_qianmo/article/details/26977557 作者:毛星云(浅墨) ...

  9. OpenCV3之——霍夫变换(霍夫线变换和霍夫圆变换)

    霍夫变换 本文章参考@浅墨_毛星云的博客.转载请注明出处. 参考链接: http://blog.csdn.net/poem_qianmo/article/details/26977557 写作当前博文 ...

最新文章

  1. SAP MM MM17里不能修改物料主数据'Purchasing Value Key'字段值?
  2. Java向MySQL数据库插入时间类型Date数据时需要注意的问题
  3. grep与sed批量处理多个文件中的字符串的方法
  4. redis/分布式文件存储系统/数据库 存储session,解决负载均衡集群中session不一致问题...
  5. 【半译】扩展shutdown超时设置以保证IHostedService正常关闭
  6. php yii框架连接数据库,Yii 框架使用数据库(databases)的方法示例
  7. 从 XML 到 XPath
  8. 3月11日Linux课程笔记
  9. JVM优化之压缩普通对象指针(CompressedOops)与压缩类指针(CompressedClassPointers)
  10. Fiddler+夜神模拟器+xposed+justTrustMe手机抖音抓包
  11. DAY64 Django基础1
  12. 使用Git上传本地项目到GitHub
  13. python飞机大战实验报告心得_飞机大战实训报告
  14. 洛谷——P2706 巧克力
  15. vscode 登陆leetcode 报错:Accessing non-existent property ‘padLevels‘ of module
  16. 云服务器系统设计,云服务器 用户系统设计
  17. 远程Debug远端服务器JVM配置
  18. Camera2 打开相机预览界面
  19. 成人用品的UML建模
  20. unity基础学习之法线贴图

热门文章

  1. c# messageBox.show()应用
  2. 若依Ruoyi-Vue生成代码使用
  3. 【论文复现】MDCSpell: A Multi-task Detector-Corrector Framework for Chinese Spelling Correction论文复现
  4. 恶搞((TGS“极品”展))警告:危险!慎入
  5. 解决Xcode模拟器attaching卡死问题
  6. java猜数字游戏_java猜数字游戏
  7. 正在蔓延的人工智能民族主义与国家化趋势
  8. 2023年美赛D题思路/2023年美国大学生数学建模D题思路
  9. Andriod Studio如何修改APP软件名和头像
  10. Redis学习总结(1)——Redis内存数据库详细教程