文件帮助中心文件
深度学习短时傅里叶变换
[Yr,yi] = dlstft(x)
[Yr,yi] = dlstft(x,fs)
[YR,Yi] = DLSTFT(x,TS)
年,易建联]= dlstft (___,名称,价值)
[Yr,yi,f,t] = dlstft(___)
例子
[yr.那义) = dlstft (X)返回深度学习短时傅里叶变换(STFT)X。dlstft.需要深入学习工具箱™。
[yr.那义) = dlstft (X)
yr.
义
X
dlstft.
[yr.那义) = dlstft (X那FS.)返回深度学习的stft假设X抽样率是多少FS.。
[yr.那义) = dlstft (X那FS.)
FS.
[yr.那义) = dlstft (X那TS.)返回深度学习的stft假设X采样采样时间TS.。
[yr.那义) = dlstft (X那TS.)
TS.
[yr.那义) = dlstft (___那名称,价值)使用名称值参数指定其他选项。选项包括光谱窗口和FFT长度。这些参数可以添加到任何先前的输入语法中。例如,'dataformat','cbt'指定数据格式X作为认知行为治疗。
[yr.那义) = dlstft (___那名称,价值)
名称,价值
'dataformat','cbt'
认知行为治疗
[yr.那义那F那T.) = dlstft (___)返回频率F和时代T.在哪个深度学习STFT的计算。
[yr.那义那F那T.) = dlstft (___)
F
T.
全部收缩
此示例使用:
生成以600 Hz采样的信号2秒。信号由具有正弦变化频率内容的啁啾组成。
FS = 6E2;T = 0:1 / FS:2;X = VCO(SIN(2 * PI * T),[0.1 0.4] * FS,FS);
将信号存储在未格式化的深度学习阵列中。计算信号的短时傅里叶变换。将采样时间输入为a期间标量。(或者,将采样率作为数字标量输入。)指定输入数组是'CTB'格式。
期间
'CTB'
dlx = dlarray (x);(年,咦,f t) = dlstft (dlx,秒(1 / fs),'datomformat'那'CTB');
将输出转换为数字数组。计算短时傅里叶变换的幅度,并将其显示为瀑布图。
Yr =提取物(Yr);yi =提取物(yi);f =提取数据(f);t =秒(t);斧头= newplot;瀑布(斧头,F,T,挤压(斜角(YR,Yi))')Ax.xdir ='撤销';查看(30,45)ylabel('时间'')Xlabel('频率(Hz)')Zlabel('震级')
生成A. 3. × 160. ( × 1 ) 阵列包含一批三通道,160样本正弦信号。标准化的正弦频率是 π / 4. rad /样品, π / 2 rad /样品,和 3. π / 4. Rad /样品。将信号保存为一个dlarray.,按顺序指定尺寸。dlarray.将数组维数排列为'CBT'深入学习网络预期的形状。显示阵列尺寸大小。
dlarray.
'CBT'
x = dlarray(cos(pi。*(1:3)'/ 4 *(0:159)),'CTB');[nchan,nbtch,nsamp] = size(x)
nchan = 3.
NBTCH = 1
nsamp = 160.
计算信号的深度学习短时傅里叶变换。指定64样本矩形窗口和FFT长度为1024。
[Re,IM,F,T] = DLSTFT(X,'窗户',etcrwin(64),'fftlength',1024);
dlstft.计算变换沿着'T'尺寸。输出阵列在'scbt'格式。这'尺寸对应于短时傅里叶变换中的频率。
'T'
'scbt'
'
从深度学习阵列中提取数据。
Re =挤压(提取物(RE));IM =挤压(提取数据(IM));f =提取数据(f);t =提取数据(t);
计算短时傅里叶变换的幅度。为瀑布图中的每个通道分别绘制幅度。
z = abs(re + 1j * im);为了kj = 1:nchan子图(nchan,1,kj)瀑布(f / pi,t,挤压(z(:,kj,:)')查看(30,45)结尾Xlabel('频率(\ times \ pi rad / sample)')ylabel('样品')
输入数组,指定为未格式化dlarray.(深度学习工具箱),格式化dlarray.在'CBT'格式或数字数组。如果X是一个无格式化的人dlarray.或数字数组,您必须指定'datomformat'作为一些排列'CBT'。
'datomformat'
例子:dlarray(cos(pi ./ [4; 2] *(0:159)),'CTB')和dlarray(cos(pi ./ [4; 2] *(0:159))','tcb')两者都指定了一个批量观察了两个通道正弦曲线'CBT'格式。
dlarray(cos(pi ./ [4; 2] *(0:159)),'CTB')
dlarray(cos(pi ./ [4; 2] *(0:159))','tcb')
采样率,指定为正数字标量。
采样时间,指定为期间标量。指定TS.相当于设置采样率FS.= 1 /TS.。
例子:秒(1)是A.期间标量表示连续信号样本之间的1秒钟差异。
秒(1)
指定可选的逗号分离对名称,价值论点。名称是参数名称和价值是相应的价值。名称必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen。
名称
价值
name1,value1,...,namen,valuen
'窗口',汉明(100),'overtaplencth',50,'fftlength',128
输入的数据格式,指定为字符向量或字符串标量。此参数仅在此处有效X是不可格式化的。
此参数中的每个字符必须是其中一个标签:
C- 渠道
C
B.- 批量观察
B.
T.- 时间
这dlstft.功能接受任何排列'CBT'。您可以在每个最多的一个中指定C那B., 和T.标签。
参数的每个元素都标记了匹配的维度X。如果论证不在列出的订单中('C'其次是'B'等等),然后dlstft.隐含地允许参数和数据以匹配顺序,但不改变如何存储数据。
'C'
'B'
例子:'CBT'
'窗户'
HANN(128,'定期')
光谱窗口,指定为向量。如果未指定窗口或将其指定为空,则该函数使用Hann窗口长度为128.'窗户'必须大于或等于2。
有关可用窗口的列表,请参阅视窗。
例子:汉恩(N + 1)和(1-cos(2 * pi *(0:n)'/ n))/ 2两者都指定了长度的HANN窗口N+ 1。
汉恩(N + 1)
(1-cos(2 * pi *(0:n)'/ n))/ 2
N
数据类型:双倍的|单身的
双倍的
单身的
'overlaplencth'
75%
重叠样本的数量,指定为小于长度的非负整数'窗户'。如果你省略'overlaplencth'或将其指定为空,设置为小于窗口长度的最大整数,这是默认HANN窗口的96个样本。
'fftlength'
128.
DFT点数,指定为正整数。该值必须大于或等于窗口长度。如果输入信号的长度小于DFT长度,则数据将用零填充。
短时傅里叶变换,返回两种格式化dlarray.(深度学习工具箱)对象。yr.包含变换的真实部分。义包含变换的虚部。
如果X是一个格式化的dlarray.那yr.和义是'scbt'格式化dlarray.对象。这'尺寸对应于短时傅里叶变换中的频率。
如果X是一个无格式化的人dlarray.或者一个数字数组,yr.和义是未格式化的dlarray.对象。维度顺序yr.和义是'scbt'。
如果没有指定时间信息,则STFT在奈奎斯特范围内计算[0,π]如果'fftlength'甚至和结束[0,π)如果'fftlength'是奇数。如果指定时间信息,则间隔为[0,FS./ 2]和[0,FS./ 2)分别在哪里FS.是有效的采样率。
深入学习STFT计算的频率,作为一个返回dlarray.目的。
如果输入阵列不包含时间信息,则频率位于RAD /样本的归一化单元。
如果输入阵列包含时间信息,则F包含Hz中表达的频率。
深入学习STFT计算的时间,作为一个返回dlarray.对象或A.期间大批。
如果您未指定时间信息,那么T.包含样品号。
如果您指定了采样率,那么T.包含以秒为单位的时间值。
如果您指定了一个样本时间,那么T.是A.期间阵列具有相同的时间格式为X。
此功能完全支持GPU阵列。万博1manbetx有关更多信息,请参阅在GPU上运行matlab函数(并行计算工具箱)。
istft.|st|stftmag2sig|dlarray.(深度学习工具箱)
istft.
st
stftmag2sig
您有此示例的修改版本。您是否希望使用您的编辑打开此示例?
您单击了与此MATLAB命令对应的链接:
在MATLAB命令窗口中输入它来运行命令。Web浏览器不支持MATLAB命令。万博1manbetx
选择一个网站,以便在可用的地方进行翻译的内容,并查看本地活动和优惠。根据您的位置,我们建议您选择:。
您还可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。
联系您当地的办公室