# 比较与torchaudio.transforms.AmplitudeToDB的差异 [![查看源文件](https://mindspore-website.obs.cn-north-4.myhuaweicloud.com/website-images/master/resource/_static/logo_source.svg)](https://gitee.com/mindspore/docs/blob/master/docs/mindspore/source_zh_cn/note/api_mapping/pytorch_diff/AmplitudeToDB.md) ## torchaudio.transforms.AmplitudeToDB ```python class torchaudio.transforms.AmplitudeToDB(stype: str = 'power', top_db: Optional[float] = None) ``` 更多内容详见[torchaudio.transforms.AmplitudeToDB](https://pytorch.org/audio/0.8.0/transforms.html#torchaudio.transforms.AmplitudeToDB.html)。 ## mindspore.dataset.audio.AmplitudeToDB ```python class mindspore.dataset.audio.AmplitudeToDB(stype=ScaleType.POWER, ref_value=1.0, amin=1e-10, top_db=80.0) ``` 更多内容详见[mindspore.dataset.audio.AmplitudeToDB](https://mindspore.cn/docs/zh-CN/master/api_python/dataset_audio/mindspore.dataset.audio.AmplitudeToDB.html#mindspore.dataset.audio.AmplitudeToDB)。 ## 差异对比 PyTorch:将输入音频从振幅/功率标度转换为分贝标度。 MindSpore:将输入音频从振幅/功率标度转换为分贝标度,支持指定波形取值下界和分贝系数计算参考值。 | 分类 | 子类 |PyTorch | MindSpore | 差异 | | --- | --- | --- | --- |--- | |参数 | 参数1 | stype | stype | - | | | 参数2 | top_db | top_db | 默认值不同 | | | 参数3 | - | ref_value | 分贝系数计算参考值,PyTorch固定使用1e-10 | | | 参数4 | - | amin | 波形取值下界,PyTorch固定使用1.0 | ## 代码示例 ```python import numpy as np fake_input = np.array([[[[-0.2197528, 0.3821656]]], [[[0.57418776, 0.46741104]]], [[[0.76986176, -0.5793846]]]]).astype(np.float32) # PyTorch import torch import torchaudio.transforms as T transformer = T.AmplitudeToDB(stype="power", top_db=80.) torch_result = transformer(torch.from_numpy(fake_input)) print(torch_result) # Out: tensor([[[[-84.1775, -4.1775]]], # [[[ -2.4095, -3.3030]]], # [[[ -1.1359, -81.1359]]]]) # MindSpore import mindspore.dataset.audio as audio transformer = audio.AmplitudeToDB(stype=audio.ScaleType.POWER, top_db=80., ref_value=1.0, amin=1e-10) ms_result = transformer(fake_input) print(ms_result) # Out: [[[[-84.17748 -4.177484 ]]] # [[[ -2.4094608 -3.3030105]]] # [[[ -1.1358725 -81.13587 ]]]] ```