问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

matlab中给信号加入白噪声,如何利用傅里叶变换去噪

发布网友 发布时间:2022-05-24 10:41

我来回答

3个回答

热心网友 时间:2023-10-11 00:47

小波的阈值去噪效果比较好。可以调用wden函数,比较简单

本题中前面改一下比较直观,可以把原始信号输出来subplot(2,2,1)后面去噪信号subplot(2,2,2)频谱图subplot(2,2,3)后面可加程序

xd=wden(x,'rigrsure','s','sln',5,'sym8');
subplot(2,2,4);plot(xd);
title('去噪信号');
err=x-xd;

函数wden的调用格式有以下两种:
(1)[XD,CXD,LXD]=wden(X,TPTR,SORH,SCAL,N,'wname')
(2)[XD,CXD,LXD]=wden(C,L,TPTR,SORH,SCAL,N,'wname')
函数wden用于一维信号的自动消噪。X为原始信号,[C,L]为信号的小波分解,N为小波分解的层数。
THR为阈值选择规则:
*TPTR='rigrsure',自适应阈值选择使用Stein的无偏风险估计原理。
*TPTR='heursure',使用启发式阈值选择。
*TPTR='sqtwolog',阈值等于sqrt(2*log(length(X))).
*TPTR='minimaxi',用极大极小原理选择阈值。
SORH是软阈值或硬阈值的选择(分别对应's'和'h')。
SCAL指所使用的阈值是否需要重新调整,包含下面三种:
*SCAL='one' 不调整;
*SCAL='sln' 根据第一层的系数进行噪声层的估计来调整阈值。
*SCAL='mln' 根据不同的噪声估计来调整阈值。
XD为消噪后的信号,[CXD,LXD]为消噪后信号的小波分解结构。

热心网友 时间:2023-10-11 00:48

总体思路:设定筛选条件,将数组中符合条件的元素筛选出来(可以筛选出元素值也可以筛选出元素对应的下标),然后将元素值赋值给另外一个数组的元素

参考代码:

clc
clear all
close all

x = randi(10, 1, 5); % 原始数据
disp('x=');
disp(x);

y1 = -1 * ones(1, length(x)); % 存储筛选出的结果,并初始化成不可能出现的结果
%-- 筛选符合条件的元素下标,并将对应元素存到y1 --%
ix = find(x>=3); % 例如,筛选出原始数据中大于3的元素的下标
if(isempty(ix))
disp('x的元素均不符合条件');
else
y1(1:length(ix)) = x(ix); % 将符合条件的元素存到y1中
y1( find(y1==-1) ) = []; % 剩余元素删除
disp('y1=');
disp(y1);
end
%----------------------------------------------%

y2 = -1 * ones(1, length(x)); % 存储筛选出的结果,并初始化成不可能出现的结果
%-- 筛选符合条件的元素值,并存入y2 --%
for i=1:length(x)
if(x(i)>=3) % 逐个检测x的元素是否符合条件,把符合条件的元素值赋值给y2
y2(i) = x(i);
end
end
y2( find(y2==-1) ) = []; % 剩余元素删除
disp('y2=');
disp(y2);
%----------------------------------%
输出结果

x=
7 1 9 10 7

y1=
7 9 10 7

y2=
7 9 10 7

热心网友 时间:2023-10-11 00:48

山科同跟张老师上小波分析的路过
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
胜达这款车百公里油耗多少? 胜达节能油加盟办厂可靠吗是不是骗子 河南洛阳胜达就是骗子,我把钱交了也不来人了,他们一个老总说了爱咋办... 胜达油是个骗局吗 胜达节能油是什么? 叩解度关于叩解的论述 湿重跟湿重有关的打浆磨片 戴尔XPS M1330-950重要参数 如果到别的单位去面试的话 如果人家问起为什么会选择这家公司而离开另外... 学生会被两个部门同时面试怎么办 利用线性预测去除图像椒盐噪声用matlab实现 如何用matlab编写噪声功率谱的程序 柏林噪声函数通过matlab实现并画出图像问题。 用matlab实现噪声估计 提取HH的系数 噪声估计的方法 建行app上看不到定期存款怎么回事 建行柜台上,拿手机号码可以查定期一本通嘛 梨子药用历史记载 什么是Inside 什么是Inside inside有内向的意思吗? inside有内向的意思吗? inside什么意思 轮胎上的INSIDE是什么意思 in和inside词性、意思、例句分别是 轮胎上的INSIDE是什么意思? Inside 是什么意思 in和inside有什么区别? 英语单词inside什么意思? word里的表格怎么设置行高 用MATLAB设计线性相关的FFT算法,加进噪声 怎么通过matlab计算信噪比 kawai ku-A3和鲍德温x5哪个好 卡瓦依钢琴KUA3多少钱 卡瓦依kua3怎么样 请问卡哇伊KU-A3价格23000怎么样? 卡哇伊钢琴kuA3和海伦文德隆Z6哪个更好 KAWAI KU-A3多高的,是什么时候推出的产品 卡瓦依A3钢琴怎么样 雅马哈钢琴丫z122和卡瓦依kua3哪个好 王焱 水果凉粉怎么做如何做好吃 致青春2原来你还在这里续集是什么 致青春电视剧会有第二部吗 致青春2,大约什么时候上映? 致青春2上映时间 致青春2张小北 致青春2是谁主演的 讲述了什么故事 求助java大佬,mybatis返回collection问题。 Mybatis里java数据类型与数据库数据类型之间转换是不是比较重要 mybatis如何调用返回游标形式的结果集存储过程,java层如何把cursor转换为list呢?有代码吗?麻烦贴一下