一、获取代码方式

获取代码方式1:
完整代码已上传我的资源:【数字信号去噪】基于matlab中值滤波+奇异值分解(SVD)数字信号降噪【含Matlab源码 1021期】

获取代码方式2:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。

备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);

二、简介

基于SVD(奇异值分解)的去噪声技术属于子空间算法的一种。简单的来说我们希望将带噪信号向量空间分解为分别由纯净信号主导和噪声信号主导的两个子空间,然后通过简单地去除落在“噪声空间”中的带噪信号向量分量来估计纯净信号。要将带噪信号向量空间分解为“信号子空间”和“噪声子空间”,可以采用线性代数中的正交矩阵分解技术,特别是奇异值分解(SVD)和特征值分解(EVD)。





三、部分源代码

%------------------------------中值滤波------------------------------
% 首先通过中值滤波对原数据进行处理
clear all;close all;clc;load data.mat
figure(1);
orig=Data(5000:9000)';
L=length(orig);
plot(1:L,orig);             %原始数据
N=2:12;
Y1=zeros(length(N),L);
Var=zeros(length(N),L);
mse=zeros(1,length(N));
for i=1:length(N)    %通过计算均方误差判断中值滤波的阶数最优值Y1(i,:)=medfilt1(orig,N(i));Var(i,:)=(Y1(i,:)-orig).^2;mse(i)=sum(Var(i,:));
end
clear i;
mse_best=min(mse);
n_best=N(find(mse==mse_best));
x1_best=Y1(find(N==n_best),:);%----------------------奇异值分解的相关操作-----------------------------
%首先是映射到相空间
% 相空间矩阵行数
%m=floor(L/2);   % 最佳维数基本在P=N/2处的一个邻域内产生,并且在此邻域所取的维数值的降噪效果比较理想,而且能满足工程要求。% 因此,重构矩阵的结构可以根据振动信号长度N来确定,工程应用中可以取P=N/2。
% 相空间间隔: 通过对时间序列计算自相关函数,取其小于某值域最下值(一般取0.1)
% r_k=autocorr(orig,length(orig)-1);
% m_k=find(r_k<0.1);
tao=2;
m=floor((L+tao)/(tao+1));
n=L+tao-m*tao;
%n=L+1-m;
y=zeros(1,n);
X=zeros(m,n);
% for i=1:m
%    y=x1_best(i:n+i-1);
%    X(i,:)=y;
% end
for i=1:my=x1_best(1+(i-1)*tao:n+(i-1)*tao); X(i,:)=y;
end
clear i;
%矩阵的奇异值分解
[U,S,V] = svd(X);
sv = diag(S);
newSv=sv;
[a,b] = size(S);
%startPosToZero=18;    % 重构阶次(其确定较难)
%------------重构阶次的确定方法-奇异值能力差分谱法---------------------
% for i=1:length(sv)-1
%     pho(i)=(sv(i)^2-sv(i+1)^2)/(max(sv)^2-min(sv)^2);
% end
% figure(2)
% plot(pho);
startPosToZero=11;
newSv(startPosToZero:end) = 0;
newS = [diag(newSv),zeros(a,b-a)];
newX = U*newS*V';  % 重构相空间矩阵%降噪后的恢复

四、运行结果


四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 沈再阳.精通MATLAB信号处理[M].清华大学出版社,2015.
[2]高宝建,彭进业,王琳,潘建寿.信号与系统——使用MATLAB分析与实现[M].清华大学出版社,2020.
[3]王文光,魏少明,任欣.信号处理与系统分析的MATLAB实现[M].电子工业出版社,2018.

【数字信号去噪】基于matlab中值滤波+奇异值分解(SVD)数字信号降噪【含Matlab源码 1021期】相关推荐

  1. 【Matlab生物电信号】生物电信号仿真【含GUI源码 684期】

    一.代码运行视频(哔哩哔哩) [Matlab生物电信号]生物电信号仿真[含GUI源码 684期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]董兵,超于毅,李 ...

  2. 【Matlab语音分析】语音信号分析【含GUI源码 1718期】

    一.代码运行视频(哔哩哔哩) [Matlab语音分析]语音信号分析[含GUI源码 1718期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]韩纪庆,张磊,郑铁 ...

  3. 【Matlab身份证识别】身份证号码识别【含GUI源码 014期】

    一.代码运行视频(哔哩哔哩) [Matlab身份证识别]身份证号码识别[含GUI源码 014期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MAT ...

  4. 【Matlab车牌识别】停车计费系统【含GUI源码 735期】

    一.代码运行视频(哔哩哔哩) [Matlab车牌识别]停车计费系统[含GUI源码 735期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MATLA ...

  5. 【Matlab水果识别】自助水果超市【含GUI源码 594期】

    一.代码运行视频(哔哩哔哩) [Matlab水果识别]自助水果超市[含GUI源码 594期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]倪云峰,叶健,樊娇娇 ...

  6. 【细胞分割】中值滤波+分水岭法细胞计数【含Matlab源码 640期】

    ⛄一.图像分割简介 理论知识参考:[基础教程]基于matlab图像处理图像分割[含Matlab源码 191期] ⛄二.部分源代码 clear; close all; %---------------- ...

  7. matlab中值滤波法算法,基于MATLAB中值滤波算法的优化与实现

    总第238期2014年第4期 舰 船 电 子 工 程 Ship Electronic Engineering Vol.34No.437 基于 MATLAB中值滤波算法的优化与实现* 赵建春 刘力源 ( ...

  8. 【图像去噪】基于matlab GUI butterworth+中值+维纳+小波图像去噪【含Matlab源码 520期】

    ⛄一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[图像去噪]基于matlab GUI butterworth+中值+维纳+小波图像去噪[含Matlab源码 520期] 获取代码方式2: ...

  9. 3 3中值滤波 matlab,MATLAB中值滤波在灰度图像处理中的应用研究和仿真(3)

    MATLAB中值滤波在灰度图像处理中的应用研究和仿真(3) 时间:2016-11-30 21:28来源:毕业论文 3.2 中值滤波的仿真 3.2.1 中值滤波仿真函数介绍 MATLAB能够支持多种图像 ...

  10. FPGA中值滤波实现并Modelsim仿真,与MATLAB中值滤波进行对比

    文章目录 一.中值滤波算法 二.FPGA实现中值滤波 2.1 3*3窗口的生成 2.2 排序模块 2.3中值滤波模块 2.4 整体RTL图 三.modeslim仿真 四.matlab中值滤波 五.效果 ...

最新文章

  1. USACO / Stamps(DP)
  2. python基础代码-Python基础(代码)
  3. linux monitor模式,ubuntu14.04 安装linux-802.11n csitool Monitor模式
  4. Road Construction
  5. autojs调用java识字_autojs实现抽象类的继承
  6. XEIM|XEIM企业即时通讯
  7. lvs基本概念、调度方法、ipvsadm命令及nat模型示例
  8. BZOJ 2708 [Violet 1]木偶 DP
  9. jQuery插件开发之windowScroll
  10. c++11 类中关于default、explict、implicit、noexcept、final的详解
  11. OpenStack互操作性认证 为何有UnitedStack?
  12. Python安装pyqt4
  13. 《具体数学》部分习题解答3
  14. 【Amoeba】amoeba实现mysql读写分离
  15. ADC模数转换器 动态范围,精确度bit和分辨率最低辨别电压多少V
  16. lanyu 激活idea
  17. 为什么SEM竞价推广效果越来越差?
  18. 作为一个才刚刚开始学习java的小白 居然显示码龄3年??每天吃饭点菜成为了一个难题 然后今天简单写了一个随机菜单
  19. 浏览器中的画中画(Picture-in-Picture)模式及其 API
  20. 概率统计——概率论与数理统计

热门文章

  1. 作为软件工程师,如何进行知识管理
  2. java中session对象及其常用方法
  3. linux系统学习(常用命令)
  4. 数据源Display方法
  5. 190707每日一句,一堂重要的人生之课Let it go, 穷则变变则通
  6. 190216每日一句
  7. 181010词霸扇贝有道每日一句
  8. Atitit避免出现空指针异常解决方案
  9. atitit.人脸识别的应用场景and使用最佳实践 java .net php
  10. atitit.XML类库选型及object 对象bean 跟json转换方案