mindspore.dataset.audio.Dither
- class mindspore.dataset.audio.Dither(density_function=DensityFunction.TPDF, noise_shaping=False)[源代码]
- 通过消除非线性截断失真,来抖动增加存储在特定位深的音频的动态感知范围。 - 参数:
- density_function ( - DensityFunction, 可选) - 连续随机变量的密度函数。 可为- DensityFunction.TPDF(三角概率密度函数)、- DensityFunction.RPDF(矩形概率密度函数) 或- DensityFunction.GPDF(高斯概率密度函数)。默认值:- DensityFunction.TPDF。
- noise_shaping (bool, 可选) - 是否通过滤波操作,来消除频谱能量的量化误差。默认值: - False。
 
- 异常:
- TypeError - 当 density_function 的类型不为 - mindspore.dataset.audio.DensityFunction。
- TypeError - 当 noise_shaping 的类型不为bool。 
- RuntimeError - 当输入音频的shape不为<…, time>。 
 
- 支持平台:
- CPU
 - 样例: - >>> import numpy as np >>> import mindspore.dataset as ds >>> import mindspore.dataset.audio as audio >>> >>> # Use the transform in dataset pipeline mode >>> waveform = np.random.random([5, 16]) # 5 samples >>> numpy_slices_dataset = ds.NumpySlicesDataset(data=waveform, column_names=["audio"]) >>> transforms = [audio.Dither()] >>> numpy_slices_dataset = numpy_slices_dataset.map(operations=transforms, input_columns=["audio"]) >>> for item in numpy_slices_dataset.create_dict_iterator(num_epochs=1, output_numpy=True): ... print(item["audio"].shape, item["audio"].dtype) ... break (16,) float64 >>> >>> # Use the transform in eager mode >>> waveform = np.random.random([16]) # 1 sample >>> output = audio.Dither()(waveform) >>> print(output.shape, output.dtype) (16,) float64 - 教程样例: