mindspore.dataset.transforms

通用

此模块用于通用数据增强,其中一部分增强操作是用C++实现的,具有较好的高性能,另一部分是基于Python实现,使用了NumPy模块作为支持。

在API示例中,常用的模块导入方法如下:

import mindspore.dataset as ds
import mindspore.dataset.transforms as transforms

注意:旧的API导入方式已经过时且会逐步废弃,因此推荐使用上面的方式,但目前仍可按以下方式导入:

from mindspore.dataset.transforms import c_transforms
from mindspore.dataset.transforms import py_transforms

更多详情请参考 通用数据变换

常用数据处理术语说明如下:

  • TensorOperation,所有C++实现的数据处理操作的基类。

  • PyTensorOperation,所有Python实现的数据处理操作的基类。

变换

mindspore.dataset.transforms.Compose

将多个数据增强操作组合使用。

mindspore.dataset.transforms.Concatenate

在Tensor的某一个轴上进行元素拼接,目前仅支持拼接形状为1D的Tensor。

mindspore.dataset.transforms.Duplicate

将输入的数据列复制得到新的数据列,每次仅可以输入1个数据列进行复制。

mindspore.dataset.transforms.Fill

将Tensor的所有元素都赋值为指定的值。

mindspore.dataset.transforms.Mask

用给条件判断输入Tensor的内容,并返回一个掩码Tensor。

mindspore.dataset.transforms.OneHot

将Tensor进行OneHot编码。

mindspore.dataset.transforms.PadEnd

对输入Tensor进行填充,要求 pad_shape 与输入Tensor的维度保持一致。

mindspore.dataset.transforms.RandomApply

指定一组数据增强处理及其被应用的概率,在运算时按概率随机应用其中的增强处理。

mindspore.dataset.transforms.RandomChoice

在一组数据增强中随机选择部分增强处理进行应用。

mindspore.dataset.transforms.RandomOrder

给一个数据增强的列表,随机打乱数据增强处理的顺序。

mindspore.dataset.transforms.Slice

使用给定的slices,对Tensor进行切片操作。

mindspore.dataset.transforms.TypeCast

将输入的Tensor转换为指定的数据类型。

mindspore.dataset.transforms.Unique

对输入张量进行唯一运算,每次只支持对一个数据列进行变换。

工具

mindspore.dataset.transforms.Relational

关系操作符。

视觉

此模块用于图像数据增强,其中有一部分增强是基于C++ OpenCV实现的,具有较好的性能,而另一部分是基于Python Pillow实现的。

API样例中常用的导入模块如下:

import mindspore.dataset as ds
import mindspore.dataset.vision as vision
import mindspore.dataset.vision.utils as utils

注意:旧的API导入方式已经过时且会逐步废弃,因此推荐使用上面的方式,但目前仍可按以下方式导入:

import mindspore.dataset.vision.c_transforms as c_vision
import mindspore.dataset.vision.py_transforms as py_vision
from mindspore.dataset.transforms import c_transforms

更多详情请参考 视觉数据变换

常用数据处理术语说明如下:

  • TensorOperation,所有C++实现的数据处理操作的基类。

  • PyTensorOperation,所有Python实现的数据处理操作的基类。

数据增强操作可以放入数据处理Pipeline中执行,也可以Eager模式执行:

  • Pipeline模式一般用于处理数据集,示例可参考 数据处理Pipeline介绍

  • Eager模式一般用于零散样本,图像预处理举例如下:

    import numpy as np
    import mindspore.dataset.vision as vision
    from PIL import Image,ImageFont,ImageDraw
    
    # 画圆形
    img = Image.new("RGB", (300, 300), (255, 255, 255))
    draw = ImageDraw.Draw(img)
    draw.ellipse(((0, 0), (100, 100)), fill=(255, 0, 0), outline=(255, 0, 0), width=5)
    img.save("./1.jpg")
    with open("./1.jpg", "rb") as f:
        data = f.read()
    
    data_decoded = vision.Decode()(data)
    data_croped = vision.RandomCrop(size=(250, 250))(data_decoded)
    data_resized = vision.Resize(size=(224, 224))(data_croped)
    data_normalized = vision.Normalize(mean=[0.485 * 255, 0.456 * 255, 0.406 * 255],
                                       std=[0.229 * 255, 0.224 * 255, 0.225 * 255])(data_resized)
    data_hwc2chw = vision.HWC2CHW()(data_normalized)
    print("data: {}, shape: {}".format(data_hwc2chw, data_hwc2chw.shape), flush=True)
    

变换

mindspore.dataset.vision.AdjustBrightness

调整输入图像的亮度。

mindspore.dataset.vision.AdjustContrast

调整输入图像的对比度。

mindspore.dataset.vision.AdjustGamma

对输入图像应用伽马校正。

mindspore.dataset.vision.AdjustHue

调整输入图像的色调。

mindspore.dataset.vision.AdjustSaturation

调整输入图像的饱和度。

mindspore.dataset.vision.AdjustSharpness

调整输入图像的锐度。

mindspore.dataset.vision.Affine

对输入图像进行仿射变换,保持图像中心不动。

mindspore.dataset.vision.AutoAugment

应用AutoAugment数据增强方法,基于论文 AutoAugment: Learning Augmentation Strategies from Data

mindspore.dataset.vision.AutoContrast

在输入图像上应用自动对比度。

mindspore.dataset.vision.BoundingBoxAugment

对图像的随机标注边界框区域,应用给定的图像变换处理。

mindspore.dataset.vision.CenterCrop

对输入图像应用中心区域裁剪。

mindspore.dataset.vision.ConvertColor

更改图像的色彩空间。

mindspore.dataset.vision.Crop

在输入图像上裁剪出指定区域。

mindspore.dataset.vision.CutMixBatch

对输入批次的图像和标注应用剪切混合转换。

mindspore.dataset.vision.CutOut

从输入图像数组中随机裁剪出给定数量的正方形区域。

mindspore.dataset.vision.Decode

将输入的压缩图像解码为RGB格式。

mindspore.dataset.vision.Equalize

对输入图像进行直方图均衡化。

mindspore.dataset.vision.Erase

使用指定的值擦除输入图像。

mindspore.dataset.vision.FiveCrop

在输入PIL图像的中心与四个角处分别裁剪指定尺寸大小的子图。

mindspore.dataset.vision.GaussianBlur

使用指定的高斯核对输入图像进行模糊处理。

mindspore.dataset.vision.Grayscale

将输入PIL图像转换为灰度图。

mindspore.dataset.vision.HorizontalFlip

水平翻转输入图像。

mindspore.dataset.vision.HsvToRgb

将输入的HSV格式numpy.ndarray图像转换为RGB格式。

mindspore.dataset.vision.HWC2CHW

将输入图像的shape从 <H, W, C> 转换为 <C, H, W>。

mindspore.dataset.vision.Invert

在 RGB 模式下对输入图像应用像素反转。

mindspore.dataset.vision.LinearTransformation

使用指定的变换方阵和均值向量对输入numpy.ndarray图像进行线性变换。

mindspore.dataset.vision.MixUp

随机混合一批输入的numpy.ndarray图像及其标签。

mindspore.dataset.vision.MixUpBatch

对输入批次的图像和标注应用混合转换。

mindspore.dataset.vision.Normalize

根据均值和标准差对输入图像进行归一化。

mindspore.dataset.vision.NormalizePad

根据均值和标准差对输入图像进行归一化,然后填充一个全零的额外通道。

mindspore.dataset.vision.Pad

填充图像。

mindspore.dataset.vision.PadToSize

将图像填充到固定大小。

mindspore.dataset.vision.Perspective

对输入图像进行透视变换。

mindspore.dataset.vision.Posterize

减少图像的颜色通道的比特位数,使图像变得高对比度和颜色鲜艳,类似于海报或印刷品的效果。

mindspore.dataset.vision.RandAugment

对输入图像应用RandAugment数据增强方法。

mindspore.dataset.vision.RandomAdjustSharpness

以给定的概率随机调整输入图像的锐度。

mindspore.dataset.vision.RandomAffine

对输入图像应用随机仿射变换。

mindspore.dataset.vision.RandomAutoContrast

以给定的概率自动调整图像的对比度。

mindspore.dataset.vision.RandomColor

随机调整输入图像的颜色。

mindspore.dataset.vision.RandomColorAdjust

随机调整输入图像的亮度、对比度、饱和度和色调。

mindspore.dataset.vision.RandomCrop

对输入图像进行随机区域的裁剪。

mindspore.dataset.vision.RandomCropDecodeResize

"裁剪"、"解码"和"调整尺寸大小"的组合处理。

mindspore.dataset.vision.RandomCropWithBBox

在输入图像的随机位置进行裁剪并相应地调整边界框。

mindspore.dataset.vision.RandomEqualize

以给定的概率随机对输入图像进行直方图均衡化。

mindspore.dataset.vision.RandomErasing

按照指定的概率擦除输入numpy.ndarray图像上随机矩形区域内的像素。

mindspore.dataset.vision.RandomGrayscale

按照指定的概率将输入PIL图像转换为灰度图。

mindspore.dataset.vision.RandomHorizontalFlip

对输入图像按给定的概率进行水平随机翻转。

mindspore.dataset.vision.RandomHorizontalFlipWithBBox

对输入图像按给定的概率进行水平随机翻转并相应地调整边界框。

mindspore.dataset.vision.RandomInvert

以给定的概率随机反转图像的颜色。

mindspore.dataset.vision.RandomLighting

将AlexNet PCA的噪声添加到图像中。

mindspore.dataset.vision.RandomPerspective

按照指定的概率对输入PIL图像进行透视变换。

mindspore.dataset.vision.RandomPosterize

随机减少图像的颜色通道的比特位数,使图像变得高对比度和颜色鲜艳。

mindspore.dataset.vision.RandomResizedCrop

对输入图像进行随机裁剪,并使用指定的 mindspore.dataset.vision.Inter 插值方式去调整为指定的尺寸大小。

mindspore.dataset.vision.RandomResizedCropWithBBox

对输入图像进行随机裁剪且随机调整纵横比,并将处理后的图像调整为指定的尺寸大小,并相应地调整边界框。

mindspore.dataset.vision.RandomResize

对输入图像使用随机选择的 mindspore.dataset.vision.Inter 插值方式去调整它的尺寸大小。

mindspore.dataset.vision.RandomResizeWithBBox

对输入图像使用随机选择的 mindspore.dataset.vision.Inter 插值方式去调整它的尺寸大小,并相应地调整边界框的尺寸大小。

mindspore.dataset.vision.RandomRotation

在指定的角度范围内,随机旋转输入图像。

mindspore.dataset.vision.RandomSelectSubpolicy

从策略列表中随机选择一个子策略以应用于输入图像。

mindspore.dataset.vision.RandomSharpness

在固定或随机的范围调整输入图像的锐度。

mindspore.dataset.vision.RandomSolarize

从给定阈值范围内随机选择一个子范围,对位于给定子范围内的像素,将其像素值设置为(255 - 原本像素值)。

mindspore.dataset.vision.RandomVerticalFlip

以给定的概率对输入图像在垂直方向进行随机翻转。

mindspore.dataset.vision.RandomVerticalFlipWithBBox

以给定的概率对输入图像和边界框在垂直方向进行随机翻转。

mindspore.dataset.vision.Rescale

基于给定的缩放和平移因子调整图像的像素大小。

mindspore.dataset.vision.Resize

对输入图像使用给定的 mindspore.dataset.vision.Inter 插值方式去调整为给定的尺寸大小。

mindspore.dataset.vision.ResizedCrop

裁切输入图像的指定区域并放缩到指定尺寸大小。

mindspore.dataset.vision.ResizeWithBBox

将输入图像调整为给定的尺寸大小并相应地调整边界框的大小。

mindspore.dataset.vision.RgbToHsv

将输入的RGB格式numpy.ndarray图像转换为HSV格式。

mindspore.dataset.vision.Rotate

将输入图像旋转指定的度数。

mindspore.dataset.vision.SlicePatches

在水平和垂直方向上将Tensor切片为多个块。

mindspore.dataset.vision.Solarize

通过反转阈值内的所有像素值,对输入图像进行曝光。

mindspore.dataset.vision.TenCrop

在输入PIL图像的中心与四个角处分别裁剪指定尺寸大小的子图,并将其翻转图一并返回。

mindspore.dataset.vision.ToNumpy

将输入PIL图像转换为numpy.ndarray图像。

mindspore.dataset.vision.ToPIL

将已解码的numpy.ndarray图像转换为PIL图像。

mindspore.dataset.vision.ToTensor

将输入PIL图像或numpy.ndarray图像转换为指定类型的numpy.ndarray图像,图像的像素值范围将从[0, 255]放缩为[0.0, 1.0],shape将从<H, W, C>调整为<C, H, W>。

mindspore.dataset.vision.ToType

将输入转换为指定的MindSpore数据类型或NumPy数据类型。

mindspore.dataset.vision.TrivialAugmentWide

对输入图像应用TrivialAugmentWide数据增强方法。

mindspore.dataset.vision.UniformAugment

从指定序列中均匀采样一批数据处理操作,并按顺序随机执行,即采样出的操作也可能不被执行。

mindspore.dataset.vision.VerticalFlip

对输入图像进行垂直翻转。

工具

mindspore.dataset.vision.AutoAugmentPolicy

不同数据集的自动增强策略。

mindspore.dataset.vision.Border

边界填充方式枚举类。

mindspore.dataset.vision.ConvertMode

图像色彩空间转换模式枚举类。

mindspore.dataset.vision.ImageBatchFormat

图像批处理输出格式枚举类。

mindspore.dataset.vision.ImageReadMode

图像文件读取方式枚举类。

mindspore.dataset.vision.Inter

图像插值方式枚举类。

mindspore.dataset.vision.SliceMode

Tensor切片方式枚举类。

mindspore.dataset.vision.encode_jpeg

将输入的图像编码为JPEG数据。

mindspore.dataset.vision.encode_png

将输入的图像编码为PNG数据。

mindspore.dataset.vision.get_image_num_channels

获取输入图像通道数。

mindspore.dataset.vision.get_image_size

获取输入图像的大小为[高度, 宽度]。

mindspore.dataset.vision.read_file

以二进制模式读取文件。

mindspore.dataset.vision.read_image

读取图像文件并解码为3通道RGB彩色数据或灰度数据。

mindspore.dataset.vision.write_file

使用二进制模式将一维uint8类型数据数组写到文件。

mindspore.dataset.vision.write_jpeg

将图像数据保存为JPEG文件。

mindspore.dataset.vision.write_png

将图像数据保存为PNG文件。

文本

此模块用于文本数据增强,包括 transformsutils 两个子模块。

transforms 是一个高性能文本数据增强模块,支持常见的文本数据增强处理。

utils 提供了一些文本处理的工具方法。

在API示例中,常用的模块导入方法如下:

import mindspore.dataset as ds
from mindspore.dataset import text

更多详情请参考 文本数据变换

常用数据处理术语说明如下:

  • TensorOperation,所有C++实现的数据处理操作的基类。

  • TextTensorOperation,所有文本数据处理操作的基类,派生自TensorOperation。

数据增强操作可以放入数据处理Pipeline中执行,也可以Eager模式执行:

  • Pipeline模式一般用于处理数据集,示例可参考 数据处理Pipeline介绍

  • Eager模式一般用于零散样本,文本预处理举例如下:

    from mindspore.dataset import text
    from mindspore.dataset.text import NormalizeForm
    
    # 构造词汇表
    vocab_list = {"床": 1, "前": 2, "明": 3, "月": 4, "光": 5, "疑": 6,
                  "是": 7, "地": 8, "上": 9, "霜": 10, "举": 11, "头": 12,
                  "望": 13, "低": 14, "思": 15, "故": 16, "乡": 17, "繁": 18,
                  "體": 19, "字": 20, "嘿": 21, "哈": 22, "大": 23, "笑": 24,
                  "嘻": 25, "UNK": 26}
    vocab = text.Vocab.from_dict(vocab_list)
    tokenizer_op = text.BertTokenizer(vocab=vocab, suffix_indicator='##', max_bytes_per_token=100,
                                      unknown_token='[UNK]', lower_case=False, keep_whitespace=False,
                                      normalization_form=NormalizeForm.NONE, preserve_unused_token=True,
                                      with_offsets=False)
    # 分词
    tokens = tokenizer_op("床前明月光,疑是地上霜,举头望明月,低头思故乡。")
    print("token: {}".format(tokens), flush=True)
    
    # 根据单词查找id
    ids = vocab.tokens_to_ids(tokens)
    print("token to id: {}".format(ids), flush=True)
    
    # 根据id查找单词
    tokens_from_ids = vocab.ids_to_tokens([15, 3, 7])
    print("token to id: {}".format(tokens_from_ids), flush=True)
    

变换

接口名

概述

说明

mindspore.dataset.text.AddToken

将分词(token)添加到序列的开头或结尾处。

mindspore.dataset.text.BasicTokenizer

按照指定规则对输入的UTF-8编码字符串进行分词。

Windows平台尚不支持 BasicTokenizer

mindspore.dataset.text.BertTokenizer

使用Bert分词器对字符串进行分词。

Windows平台尚不支持 BertTokenizer

mindspore.dataset.text.CaseFold

将UTF-8编码字符串中的字符规范化为小写,相比 str.lower 支持更多字符。

Windows平台尚不支持 CaseFold

mindspore.dataset.text.FilterWikipediaXML

将Wikipedia XML格式转储过滤为仅由小写字母(a-z,从A-Z转换而来)和空格(从不连续)组成的“干净”文本。

Windows平台尚不支持 FilterWikipediaXML

mindspore.dataset.text.JiebaTokenizer

使用Jieba分词器对中文字符串进行分词。

必须保证隐式马尔科夫模型分词(HMMSEgment)和最大概率法分词(MPSegment)所使用的词典文件的完整性

mindspore.dataset.text.Lookup

根据词表,将分词标记(token)映射到其索引值(id)。

mindspore.dataset.text.Ngram

从1-D的字符串生成N-gram。

mindspore.dataset.text.NormalizeUTF8

对UTF-8编码的字符串进行规范化处理。

Windows平台尚不支持 NormalizeUTF8

mindspore.dataset.text.PythonTokenizer

使用用户自定义的分词器对输入字符串进行分词。

mindspore.dataset.text.RegexReplace

根据正则表达式对UTF-8编码格式的字符串内容进行正则替换。

Windows平台尚不支持 RegexReplace

mindspore.dataset.text.RegexTokenizer

根据正则表达式对字符串进行分词。

Windows平台尚不支持 RegexTokenizer

mindspore.dataset.text.SentencePieceTokenizer

使用SentencePiece分词器对字符串进行分词。

mindspore.dataset.text.SlidingWindow

在输入数据的某个维度上进行滑窗切分处理,当前仅支持处理1-D的Tensor。

mindspore.dataset.text.ToNumber

将字符串的每个元素转换为数字。

mindspore.dataset.text.ToVectors

根据输入向量表查找向量中的tokens。

mindspore.dataset.text.Truncate

截断输入序列,使其不超过最大长度。

mindspore.dataset.text.TruncateSequencePair

截断一对 1-D 字符串的内容,使其总长度小于给定长度。

mindspore.dataset.text.UnicodeCharTokenizer

使用Unicode分词器将字符串分词为Unicode字符。

mindspore.dataset.text.UnicodeScriptTokenizer

使用UnicodeScript分词器对UTF-8编码的字符串进行分词。

Windows平台尚不支持 UnicodeScriptTokenizer

mindspore.dataset.text.WhitespaceTokenizer

基于ICU4C定义的空白字符(' ', '\\t', '\\r', '\\n')对输入的UTF-8字符串进行分词。

Windows平台尚不支持 WhitespaceTokenizer

mindspore.dataset.text.WordpieceTokenizer

将输入的字符串切分为子词。

工具

接口名

概述

说明

mindspore.dataset.text.CharNGram

CharNGram对象,用于将 tokens 映射到预训练的向量中。

mindspore.dataset.text.FastText

用于将tokens映射到向量的FastText对象。

mindspore.dataset.text.GloVe

用于将tokens映射到向量的GloVe对象。

mindspore.dataset.text.JiebaMode

mindspore.dataset.text.JiebaTokenizer 的枚举值。

mindspore.dataset.text.NormalizeForm

Unicode规范化模式 枚举类。

mindspore.dataset.text.SentencePieceModel

SentencePiece分词方法的枚举类。

mindspore.dataset.text.SentencePieceVocab

用于执行分词的SentencePiece对象。

mindspore.dataset.text.SPieceTokenizerLoadType

mindspore.dataset.text.SentencePieceTokenizer 加载类型的枚举值。

mindspore.dataset.text.SPieceTokenizerOutType

mindspore.dataset.text.SentencePieceTokenizer 输出类型的枚举值。

mindspore.dataset.text.Vectors

用于将tokens映射到向量的Vectors对象。

mindspore.dataset.text.Vocab

用于查找单词的Vocab对象。

mindspore.dataset.text.to_bytes

基于 encoding 字符集对每个元素进行编码,将 string 的NumPy数组转换为 bytes 的数组。

mindspore.dataset.text.to_str

基于 encoding 字符集对每个元素进行解码,借此将 bytes 的NumPy数组转换为 string 的数组。

音频

此模块用于音频数据增强,包括 transformsutils 两个子模块。 transforms 是一个高性能音频数据增强模块,支持常见的音频数据增强操作。 utils 提供了一些音频处理的工具方法。

API样例中常用的导入模块如下:

import mindspore.dataset as ds
import mindspore.dataset.audio as audio

常用数据处理术语说明如下:

  • TensorOperation,所有C++实现的数据处理操作的基类。

  • AudioTensorOperation,所有音频数据处理操作的基类,派生自TensorOperation。

数据增强操作可以放入数据处理Pipeline中执行,也可以Eager模式执行:

  • Pipeline模式一般用于处理数据集,示例可参考 数据处理Pipeline介绍

  • Eager模式一般用于零散样本,音频预处理举例如下:

    import numpy as np
    import mindspore.dataset.audio as audio
    from mindspore.dataset.audio import ResampleMethod
    
    # 音频输入
    waveform = np.random.random([1, 30])
    
    # 增强操作
    resample_op = audio.Resample(orig_freq=48000, new_freq=16000,
                                 resample_method=ResampleMethod.SINC_INTERPOLATION,
                                 lowpass_filter_width=6, rolloff=0.99, beta=None)
    waveform_resampled = resample_op(waveform)
    print("waveform reampled: {}".format(waveform_resampled), flush=True)
    

变换

mindspore.dataset.audio.AllpassBiquad

给音频波形施加双极点全通滤波器,其中心频率和带宽由入参指定。

mindspore.dataset.audio.AmplitudeToDB

将输入音频从振幅/功率标度转换为分贝标度。

mindspore.dataset.audio.Angle

计算复数序列的角度。

mindspore.dataset.audio.BandBiquad

给音频波形施加双极点带通滤波器。

mindspore.dataset.audio.BandpassBiquad

给音频波形施加双极点巴特沃斯(Butterworth)带通滤波器。

mindspore.dataset.audio.BandrejectBiquad

给音频波形施加双极点巴特沃斯(Butterworth)带阻滤波器。

mindspore.dataset.audio.BassBiquad

给音频波形施加低音控制效果,即双极点低频搁架滤波器。

mindspore.dataset.audio.Biquad

给音频波形施加双二阶滤波器。

mindspore.dataset.audio.ComplexNorm

计算复数序列的范数。

mindspore.dataset.audio.ComputeDeltas

计算频谱的delta系数,也叫差分系数。

mindspore.dataset.audio.Contrast

给音频波形施加对比度增强效果。

mindspore.dataset.audio.DBToAmplitude

将音频波形从分贝转换为功率或振幅。

mindspore.dataset.audio.DCShift

对输入音频波形施加直流移位。

mindspore.dataset.audio.DeemphBiquad

给音频波形施加CD(IEC 60908)去重音(一种高音衰减搁置滤波器)效果。

mindspore.dataset.audio.DetectPitchFrequency

检测音调频率。

mindspore.dataset.audio.Dither

通过消除非线性截断失真,来抖动增加存储在特定位深的音频的动态感知范围。

mindspore.dataset.audio.EqualizerBiquad

给音频波形施加双二次均衡器滤波器。

mindspore.dataset.audio.Fade

向波形添加淡入和/或淡出。

mindspore.dataset.audio.Filtfilt

对音频波形施加正反向IIR滤波。

mindspore.dataset.audio.Flanger

给音频施加镶边效果。

mindspore.dataset.audio.FrequencyMasking

给音频波形施加频域掩码。

mindspore.dataset.audio.Gain

放大或衰减整个音频波形。

mindspore.dataset.audio.GriffinLim

使用Griffin-Lim算法从线性幅度频谱图中计算信号波形。

mindspore.dataset.audio.HighpassBiquad

给音频波形上施加双二阶高通滤波器。

mindspore.dataset.audio.InverseMelScale

使用转换矩阵从梅尔频率STFT求解普通频率的STFT。

mindspore.dataset.audio.InverseSpectrogram

计算输入频谱的反向频谱,以恢复原始音频信号。

mindspore.dataset.audio.LFCC

计算音频信号的线性频率倒谱系数。

mindspore.dataset.audio.LFilter

根据指定的差分方程施加IIR滤波器。

mindspore.dataset.audio.LowpassBiquad

给音频波形施加双极点低通滤波器。

mindspore.dataset.audio.Magphase

将shape为(..., 2)的复值光谱图分离,输出幅度和相位。

mindspore.dataset.audio.MaskAlongAxis

对音频波形应用掩码。

mindspore.dataset.audio.MaskAlongAxisIID

对音频波形沿 axis 轴应用掩码。

mindspore.dataset.audio.MelScale

将普通STFT转换为梅尔尺度的STFT。

mindspore.dataset.audio.MelSpectrogram

计算原始音频信号的梅尔频谱。

mindspore.dataset.audio.MFCC

计算音频信号的梅尔频率倒谱系数。

mindspore.dataset.audio.MuLawDecoding

解码mu-law编码的信号,参考 mu-law算法

mindspore.dataset.audio.MuLawEncoding

基于mu-law压缩的信号编码。

mindspore.dataset.audio.Overdrive

给音频波形施加过载效果。

mindspore.dataset.audio.Phaser

给音频波形施加相位效果。

mindspore.dataset.audio.PhaseVocoder

对给定的STFT频谱,在不改变音高的情况下以一定比率进行加速。

mindspore.dataset.audio.Resample

将信号从一个频率重采样至另一个频率。

mindspore.dataset.audio.PitchShift

将波形的音调移动 n_steps 步长。

mindspore.dataset.audio.RiaaBiquad

对输入音频波形施加RIAA均衡。

mindspore.dataset.audio.SlidingWindowCmn

对每个话语应用滑动窗口倒谱均值(和可选方差)归一化。

mindspore.dataset.audio.SpectralCentroid

计算每个通道沿时间轴的频谱中心。

mindspore.dataset.audio.Spectrogram

从音频信号创建其频谱。

mindspore.dataset.audio.TimeMasking

给音频波形施加时域掩码。

mindspore.dataset.audio.TimeStretch

以给定的比例拉伸音频短时傅里叶(Short Time Fourier Transform, STFT)频谱的时域,但不改变音频的音高。

mindspore.dataset.audio.TrebleBiquad

给音频波形施加高音音调控制效果。

mindspore.dataset.audio.Vad

语音活动检测器。

mindspore.dataset.audio.Vol

调整波形的音量。

工具

mindspore.dataset.audio.BorderType

填充模式。

mindspore.dataset.audio.DensityFunction

密度函数类型。

mindspore.dataset.audio.FadeShape

淡入淡出形状。

mindspore.dataset.audio.GainType

增益类型。

mindspore.dataset.audio.Interpolation

音频波形的插值模式。

mindspore.dataset.audio.MelType

梅尔标度实现类型。

mindspore.dataset.audio.Modulation

调制类型。

mindspore.dataset.audio.NormMode

标准化模式。

mindspore.dataset.audio.NormType

标准化类型。

mindspore.dataset.audio.ResampleMethod

重采样方法。

mindspore.dataset.audio.ScaleType

音频标度枚举类。

mindspore.dataset.audio.WindowType

窗函数类型。

mindspore.dataset.audio.create_dct

创建一个shape为( n_mels , n_mfcc )的DCT变换矩阵,并根据范数进行标准化。

mindspore.dataset.audio.linear_fbanks

创建一个线性三角滤波器组。

mindspore.dataset.audio.melscale_fbanks

创建频率变换矩阵。