赞
踩
audioSet 是2017年发布的音频事件数据集。
sound Classification借用了tensorflow中的音频处理模块,利用原始语音信号,提取原始特征->embedding features->利用youtube-8m中的模型,对audioSet中527个样本做分类。因此,这篇博客讲解的还是如何对audioSet数据集做分类。
注意:tensorflow官网同样给出了音频处理模块,只是给audio数据,得到embedding后的128维度特征,该特征经过了pca以及量化的处理,但是没有给出分类的操作。
name,绝对路径,指的是从python xx.py路径中xx的路径
. 相对路径,值得从这个文件开始的路径
from audio import params 其中audio是一个子文件夹,里面有个params.py的文件,这是绝对路径
# Convert to mono.
if len(data.shape) > 1:
data = np.mean(data, axis=1)
# Resample to the rate assumed by VGGish.
if sample_rate != params.SAMPLE_RATE:
data = resampy.resample(data, sample_rate, params.SAMPLE_RATE)
def _get_features(self, examples_batch):
sess = self._vggish_sess
features_tensor = sess.graph.get_tensor_by_name(
params.VGGISH_INPUT_TENSOR_NAME)
embedding_tensor = sess.graph.get_tensor_by_name(
params.VGGISH_OUTPUT_TENSOR_NAME)
[embedding_batch] = sess.run(
[embedding_tensor],
feed_dict={features_tensor: examples_batch}
) # [3, 128]
postprocessed_batch = np.dot(
self._pca_matrix, (embedding_batch.T - self._pca_means)
).T # [3, 128] using pca transformation
# different from orginal methods, which does not have quanlify
return postprocessed_batch
用于做分类的_youtube_sess,没有给出模型结构,只提供了代码。处理的时候,先补成了300s的时长,不够的加0。然后拿去分类。
音频数据采集,采用Capture。不停的采集数据,可以用在麦克风实时采集数据并处理上面
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。