MATLAB中的阈值获取和阈值去噪(超级有用)(3)
时间:2025-02-24
时间:2025-02-24
和M必须是大于1的实数;THR是关于j的向量,THR(i)是第i层的阈值;NKEEP也是关于j的向量,NKEEP(i)是第i层的系数个数。一般压缩时ALPHA取1.5,去噪时ALPHA取3.
2.信号的阈值去噪
MATLAB中实现信号的阈值去噪的函数有wden、wdencmp、wthresh、wthcoef、wpthcoef以及wpdencmp。下面对它们的用法作简单的介绍。
(5)函数wden的调用格式有以下两种:
[XD,CXD,LXD]=wden(X,TPTR,SORH,SCAL,N,'wname')
[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' 根据第一层的系数进行噪声层的估计来调整阈值。