Threshold

Threshold[data]

通过将接近零的值替换为零,对 data 进行阈值处理.

Threshold[data,tspec]

使用阈值规范 tspecdata 进行阈值处理.

Threshold[image,]

image 中较小的值替换为零.

Threshold[sound,]

sound 中较小的值替换为零.

更多信息

  • 阈值处理是一种数学分割运算,用于将特定区域中的值设置为零,有时也会减小区域外的值.
  • Threshold 适用于任何阶的数据数组,以及二维和三维图像.
  • Threshold[data] 等同于 Threshold[data,{"Hard",10-10}].
  • 阈值规范 tspec 的格式可以为 {tfun,pars}.
  • 可能的 tfun 名称和选项包括:
  • 可用的阈值处理函数 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; 1/(delta r)sgn(x) (delta+delta r-delta p  r) (TemplateBox[{x}, Abs]-delta+delta p 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;
    {"LargestValues",k}保持最大的 k 数据点
  • 在所有情况下 delta 被假设为一个正数或用一个阈值函数 tfunc 来计算 delta. 每个 tfunc[data] 应返回一个正数.
  • "Firm" 的参数条件是 r 是正实数,p 是 0 到 1 之间的实数.
  • "SmoothGarrote" 的参数条件是 n 为正的机器整数.
  • 可使用以下方法自动计算阈值 delta
  • {"BlackFraction",b}将占所有像素比例为 b 的部分像素变为黑色
    "Cluster"聚类方差最大化(大津-Otsu 算法)
    "Entropy"直方图熵最小化(Kapur 方法)
    "Mean"使用均值作为阈值
    "Median"使用中位数像素级作为阈值
    "MinimumError"KittlerIllingworth 最小误差阈值方法

范例

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

基本范例  (3)

将非常接近零的元素舍为零:

将绝对值小于 3/2 的元素归零:

保留 3 个最大绝对值:

图像阈值:

范围  (14)

Data  (7)

通过将接近零的值替代为零,设置 data 阈值:

将绝对值小于 3/2 的元素归零:

阈值化一个二维数组:

阈值化一个复数值列表:

阈值化灰度图像:

显示结果的直方图:

阈值化一幅彩色图像:

注意,阈值化分别发生在每个通道上:

在三维图像上执行聚类阈值:

阈值规范  (7)

"Hard" 阈值化用 0 替代绝对值低于 的数据值:

"Soft" 阈值化将低于阈值 的数据值设为 0;其他按 减少:

"Firm" 阈值化是 "Hard""Soft" 阈值化的折衷:

"PiecewiseGarrote" 阈值化类似于 "Firm",但是使用单个参数:

"SmoothGarrote" 阈值化:

"Hyperbola" 阈值化:

"LargestValues" 阈值化保留具有最大绝对值的 个样本:

属性和关系  (7)

"Hard" 阈值化将绝对值低于某个阈值 的所有数据值设为 0:

变换阈值 的值:

"Hard" 阈值化类似于 Chop

"Soft" 阈值化执行的是压缩操作:

变换阈值 的值:

"Firm" 阈值化是 "Hard""Soft" 阈值化的一个折衷:

"Firm" 阈值化具有比 "Hard" 阈值化更小的方差:

当极限 β->"Firm" 阈值化执行的是 "Soft" 阈值化:

当极限 β->η"Firm" 阈值化执行的是 "Hard" 阈值化:

"PiecewiseGarrote" 阈值化:

这类似于 "Firm" 阈值化,好处在于只有一个参数 delta

变换阈值 的值:

"SmoothGarrote" 阈值化:

当极限 n"SmoothGarrote" 变成 "Hard" 阈值化:

变换阈值 的值和指数值

"Hyperbola" 阈值化:

"LargestValues" 阈值化:

可能存在的问题  (1)

当使用 {"LargestValues",k},如果数据元素重复,可能返回多于 个非零元素:

枚举所有可能的结果:

Wolfram Research (2010),Threshold,Wolfram 语言函数,https://reference.wolfram.com/language/ref/Threshold.html (更新于 2012 年).

文本

Wolfram Research (2010),Threshold,Wolfram 语言函数,https://reference.wolfram.com/language/ref/Threshold.html (更新于 2012 年).

CMS

Wolfram 语言. 2010. "Threshold." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2012. https://reference.wolfram.com/language/ref/Threshold.html.

APA

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

BibTeX

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

BibLaTeX

@online{reference.wolfram_2024_threshold, organization={Wolfram Research}, title={Threshold}, year={2012}, url={https://reference.wolfram.com/language/ref/Threshold.html}, note=[Accessed: 22-November-2024 ]}