WaveletThreshold

WaveletThreshold[dwd]

DiscreteWaveletData 对象 dwd 中对细节小波系数求阈值.

WaveletThreshold[dwd,tspec]

使用阈值指标 tspec 对系数求阈值.

WaveletThreshold[dwd,tspec,wind]

对由小波索引 wind 给出的小波系数求阈值.

更多信息

  • WaveletThreshold[dwd] 等效于 WaveletThreshold[dwd,"Universal"].
  • WaveletThreshold[dwd,tspec,wind] 表明对哪个小波系数求阈值,使用与 DiscreteWaveletData 一样的索引规范.
  • 默认情况下,在每个精细度层上求阈值.
  • 阈值指标 tspec 的形式为:tfun, {tfun,pars}.
  • 可能的 tfun 名称和选项包括:
  • {"Hard",δ}0 TemplateBox[{x}, Abs]<=delta; x TemplateBox[{x}, Abs]>delta
    {"Soft",δ} 0 TemplateBox[{x}, Abs]<=delta; sgn(x) (TemplateBox[{x}, Abs]-delta) TemplateBox[{x}, Abs]>delta;
    {"Firm",δ,r,p} 0 TemplateBox[{x}, Abs]<=delta-delta p r; (sgn(x) (delta+delta r-delta p r) (TemplateBox[{x}, Abs]-delta+delta p r))/(delta r) delta-delta p r<TemplateBox[{x}, Abs]<=delta+delta (-p) r+delta r; x TemplateBox[{x}, Abs]>delta+delta (-p) r+delta r;
    {"PiecewiseGarrote",δ}0 TemplateBox[{x}, Abs]<=delta; x-(delta^2)/x TemplateBox[{x}, Abs]>delta
    {"SmoothGarrote",δ,n}
    {"Hyperbola",delta} 0 TemplateBox[{x}, Abs]<=delta; sgn(x) sqrt(x^2-delta^2) TemplateBox[{x}, Abs]>delta;
    {"LargestCoefficients",k}保持最大的 k 系数
  • 在所有情况下, 假设为正数或用阈值函数 tfunc 计算 . 每个 tfunc[coefi,windi] 应该返回一个正数.
  • "Firm" 的参数条件为 是正实数, 是0和1间的正实数.
  • "SmoothGarrotte" 的参数条件是 为正实数.
  • 阈值 可以用以下方法自动进行计算:
  • Automatic"Universal" 阈值
    {"FDR",α}在显著性级别 α 上的错误发现率
    "GCV"最小化广义交叉验证函数
    "GCVLevel"每一级执行的"GCV"
    "SURE"Stein 的无偏风险估计
    "SUREHybrid""SURE""Universal" 阈值的组合
    "SURELevel"每一级执行的"SURE"
    "Universal"Donoho 和 Johnstone 的通用阈值
    "UniversalLevel"每一级执行的"Universal"
  • {"FDR",α} 的参数条件为:α 是位于0到1之间的数. "FDR" 默认等价于 {"FDR",0.05}.
  • 可以使用以下简短的 tspec 形式:
  • "FDR"{"Soft",{"FDR",0.05}}
    "GCV"{"Soft","GCV"}
    "GCVLevel"{"Soft","GCVLevel"}
    "SURE"{"Hard","SURE"}
    "SURELevel"{"Hard","SURELevel"}
    "SUREShrink"{"Soft","SURE"}
    "Universal"{"Hard","Universal"}
    "UniversalLevel"{"Hard","UniversalLevel"}
    "VisuShrink"{"Soft","Universal"}
    "VisuShrinkLevel"{"Soft","UniversalLevel"}

范例

打开所有单元关闭所有单元

基本范例  (2)

噪声数据的 DiscreteWaveletTransform

通过对小波系数求阈值,平滑数据:

比较原始的和平滑的数据:

去除彩色图像的噪声:

对小波系数求阈值:

使用 InverseWaveletTransform 合成平滑图像,与原始图像相比较:

范围  (12)

基本用途  (4)

WaveletThreshold 操作于一个 DiscreteWaveletData 对象:

结果是一个表示阈值系数的新的 DiscreteWaveletData 对象:

指定阈值方法:

使用指定的阈值函数:

也指定如何选择阈值:

逆变换并比较:

可视化在小波系数上产生的效果:

使用 WaveletListPlot 进行比较:

在指定的小波索引上执行阈值:

默认情况下,只有对细节系数求阈值:

使用 Automatic 对逆变换中的系数求阈值:

使用 All 所有系数求阈值:

使用 {wind1,wind2,} 全面控制对哪个系数求阈值:

比较由此生成的系数:

阈值方法  (8)

使用自动阈值方法平滑噪声数据:

比较所有命名的自动阈值的方法 tspec

选择指定的阈值函数 tfun 来应用:

使用具有自动选择阈值的阈值系数重建数据:

使用命名方法自动计算阈值

在使用各种阈值选择方法 "Soft" 阈值后,重建数据:

使用指定的数值阈值

最佳平滑发生在阈值 ,它类似于噪声的比例:

使用一个函数来计算阈值

对所有低于标准偏差的系数求阈值:

绘制系数值范围为-0.5到0.5的阈值函数 tfun 的效应:

在每个精细度上分别对在不同尺度上变动的数据求阈值:

每个级别选择不同的阈值的不同方法:

比较为各级选择一个阈值的方法:

通过指定函数和小波索引计算 来求阈值:

对所有低于标准偏差的细节系数求阈值:

推广和延伸  (1)

使用 FindThreshold 计算阈值:

指定阈值函数来计算与级别相关的阈值:

应用  (8)

自动降噪  (2)

简化自动平滑的数据处理管道:

降噪一维数据:

降噪二维数据:

添加标准偏差为 σ 的正态分布噪声:

比较自动平滑不同噪声级别的有效性:

图像效果  (1)

对图像的指定分量求阈值:

仅仅对水平和垂直细节系数 {___,1|2} 求强阈值:

比较系数:

逆变换图像主要有对角线特征:

基准阈值方法  (2)

绘制由具有自动阈值的不同阈值函数 tfun 减去的噪声:

从原始数据中减去平滑数据(给出噪声模型):

比较平滑噪声数据时自动阈值方法的性能:

使用 SNR (信噪比)和峰值 SNR 分贝 (dB) 量化性能:

通过应用阈值方法 th 于细节系数 {___,1} 平滑数据:

比较所有命名的自动阈值方法;值越大越好:

绘制平滑数据和完美的无噪数据:

计算阈值  (3)

"Universal" 阈值:

执行 LiftingWaveletTransform

使用第一精细度 {1} 的细节系数计算平均绝对偏差:

计算通用阈值 并执行一个 "Hard" 阈值:

使用 WaveletThreshold 计算 "Universal" 阈值:

计算阈值:

"SURE" 阈值:

执行 LiftingWaveletTransform

计算 "SURE" 阈值

使用 WaveletThreshold 计算 "SURE" 阈值:

计算阈值:

"FDR" 阈值:

执行 LiftingWaveletTransform

估计噪声水平:

对于各个小波系数 ,求其双边

根据尺寸 排序. 求 ,其中 为显著性水平:

计算阈值:

使用 WaveletThreshold 计算 "FDR" 阈值:

比较阈值:

属性和关系  (9)

对于小的阈值 ,阈值函数接近于 Identity

"Hard" 阈值类似于 Chop

绝对值低于阈值 的数据值被设为0:

"Soft" 阈值执行压缩操作:

低于某个阈值 的数据值被设为0;高于 的数据值被 收缩

"Firm" 阈值:

参数 () 控制 Firm 阈值插值在 0Identity 间的范围. 参数 () 控制位于 间的 ,默认情况下,

的不同设置:

的不同设置:

的不同设置:

"Firm" 阈值是 "Hard""Soft" 阈值的折中:

"Firm" 阈值比 "Hard" 阈值具有更小的均匀偏差:

在极限 时,"Firm" 阈值执行 "Soft" 阈值:

在极限 时,"Firm" 阈值执行 "Hard" 阈值:

"PiecewiseGarrote" 阈值:

这个类似于具有单个参数 优势的 "Firm" 阈值:

"SmoothGarotte" 阈值:

在极限 "SmoothGarotte" 成为 "Hard" 阈值:

"Hyperbola" 阈值:

使用 WaveletMapIndexed 执行 "Hard" 阈值:

可能存在的问题  (3)

使用具有 "GCV" 阈值的 "Hard" 阈值函数:

噪声系数可以通过 "Hard" 阈值:

"Soft" 阈值函数压缩这些寄生峰值:

噪声估计根据第一层的细节系数计算:

如果估计的噪声水平为 0,将生成一则警告信息:

WaveletThreshold 不适用于非数值小波系数:

Wolfram Research (2010),WaveletThreshold,Wolfram 语言函数,https://reference.wolfram.com/language/ref/WaveletThreshold.html.

文本

Wolfram Research (2010),WaveletThreshold,Wolfram 语言函数,https://reference.wolfram.com/language/ref/WaveletThreshold.html.

CMS

Wolfram 语言. 2010. "WaveletThreshold." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/WaveletThreshold.html.

APA

Wolfram 语言. (2010). WaveletThreshold. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/WaveletThreshold.html 年

BibTeX

@misc{reference.wolfram_2024_waveletthreshold, author="Wolfram Research", title="{WaveletThreshold}", year="2010", howpublished="\url{https://reference.wolfram.com/language/ref/WaveletThreshold.html}", note=[Accessed: 05-November-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_waveletthreshold, organization={Wolfram Research}, title={WaveletThreshold}, year={2010}, url={https://reference.wolfram.com/language/ref/WaveletThreshold.html}, note=[Accessed: 05-November-2024 ]}