MelWeightMatrix

MelWeightMatrix - 17

版本

  • 名称: MelWeightMatrix (GitHub)

  • : main

  • 自版本: 17

  • 函数: False

  • 支持级别: SupportType.COMMON

  • 形状推断: True

此版本的运算符已在版本 17中提供。

摘要

生成一个 MelWeightMatrix,它可以用于根据梅尔尺度上的 [lower_edge_hertz, upper_edge_hertz] 范围,将包含线性采样频率频谱(来自 DFT 或 STFT)的张量重新加权为 num_mel_bins 个频率信息。此函数根据以下公式用赫兹单位的频率来定义梅尔尺度

mel(f) = 2595 * log10(1 + f/700)

在返回的矩阵中,所有三角形(滤波器组)的峰值都为 1.0。

返回的 MelWeightMatrix 可用于右乘形状为 [frames, num_spectrogram_bins] 的线性尺度频谱值(例如 STFT 幅度)的频谱图 S,以生成形状为 [frames, num_mel_bins] 的“梅尔频谱图” M。

属性

  • output_datatype - INT (默认值为 '1')

    输出张量的數據類型。嚴格必須是 TensorProto 中 DataType 枚舉中的一個值,其值對應於 T3。默認值为 1 = FLOAT。

输入

  • num_mel_bins (异构) - T1

    梅尔频谱中的频带数量。

  • dft_length (异构) - T1

    原始 DFT 的大小。原始 DFT 的大小用于推断单边 DFT 的大小,该大小被理解为 floor(dft_length/2) + 1,即频谱图仅包含非冗余 DFT 仓。

  • sample_rate (异构) - T1

    用于创建频谱图的输入信号的每秒样本数。用于找出与每个频谱图仓相对应的频率,这决定了它们如何映射到梅尔尺度。

  • lower_edge_hertz (异构) - T2

    要包含在梅尔频谱中的频率的下限。这对应于最低三角频带的下边缘。

  • upper_edge_hertz (异构) - T2

    最高频率频带的期望上边缘。

输出

  • output (异构) - T3

    梅尔权重矩阵。输出的形状为: [floor(dft_length/2) + 1][num_mel_bins]。

类型约束

  • T1 in ( tensor(int32), tensor(int64) )

    约束为整数张量。

  • T2 in ( tensor(bfloat16), tensor(double), tensor(float), tensor(float16) )

    约束为浮点张量

  • T3 in ( tensor(bfloat16), tensor(double), tensor(float), tensor(float16), tensor(int16), tensor(int32), tensor(int64), tensor(int8), tensor(uint16), tensor(uint32), tensor(uint64), tensor(uint8) )

    约束为任何数值类型。