我有一个数据库,其中包含一个视频流。我想从图像和MFCC音频计算LBP特征,对于视频中的每一个帧,我都有一些注释。注释与视频帧和视频的时间内联。因此,我想映射从注释到mfcc结果的时间。我知道sample_rate = 44100
from python_speech_features import mfcc
from python_speech_features import logfbank
import scipy.io.wavfile as wav
audio_file = "sample.wav"
(rate,sig) = wav.read(audio_file)
mfcc_feat = mfcc(sig,rate)
print len(sig) # 2130912
print len(mfcc_feat) # 4831首先,为什么mfcc的长度的结果是4831,以及如何在注释中以秒为单位映射它?视频的总持续时间是48秒。除了19-29秒的窗口外,视频的注释都是0,在哪里是1。如何从mfcc的结果中找到窗口(19-29)中的样本?
发布于 2017-11-29 14:54:16
跑
mfcc_feat.shape你应该得到(4831,13)。13是您的MFCC长度(默认numcep为13)。4831是窗户。默认的winstep是10毫秒,这与声音文件的持续时间相匹配。若要到达对应于19-29秒的窗口,只需切片即可。
mfcc_feat[1900:2900,:]记住,你不能听MFCC。它只是表示0.025秒的音频片段( winlen参数的默认值)。
如果你想进入音频本身,它是
sig[time_beg_in_sec*rate:time_end_in_sec*rate]https://stackoverflow.com/questions/47512800
复制相似问题