windows使用openSMILE提取音频特征详细示例及批量处理音频

openSMILE的下载与使用

1. 安装openSMILE:在官网https://github.com/audeering/opensmile/releases/tag/v3.0.0下载压缩包到本地;

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EbSnMX7L-1624763725559)(C:\Users\GuanLi\Desktop\openSMILE使用教程\1.JPG)]

官网底部DOWNLOADopen’SMILE

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-mTpMWSRc-1624763725562)(C:\Users\GuanLi\Desktop\openSMILE使用教程\2.JPG)]

选择对应压缩包下载,如opensmile-3.0-win-x.zip

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nC300kyf-1624763725565)(C:\Users\GuanLi\Desktop\openSMILE使用教程\3.JPG)]

  1. 解压到本地(解压即可使用),安装目录路径记为install_dir,解压后文件如下;

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zNiJdAie-1624763725569)(C:\Users\GuanLi\Desktop\openSMILE使用教程\4.JPG)]

  2. 提取音频特征需要到代码保存文件夹的bin文件夹下执行命令,在终端将路径调至该路径下

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-depHFDix-1624763725570)(C:\Users\GuanLi\Desktop\openSMILE使用教程\5.JPG)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VvOQt0Qf-1624763725571)(C:\Users\GuanLi\Desktop\openSMILE使用教程\6.JPG)]

  3. 在该路径下执行命令SMILExtract -h查看openSMILE是否可用,一般均可以正常使用;

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-f1hCG8FY-1624763725572)(C:\Users\GuanLi\Desktop\openSMILE使用教程\7.JPG)]

  4. 在bin目录路径下,通过终端提取特征的命令为SMILExtract -C config_path -I input_audio_path -O ouput_path

    其中:

    • -C配置需要提取的音频特征集合路径config_path,在解压文件的config目录下;

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SGgwkJyP-1624763725573)(C:\Users\GuanLi\Desktop\openSMILE使用教程\8.JPG)]

      例如选择GeMAPS特征集

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LWo1vgdM-1624763725574)(C:\Users\GuanLi\Desktop\openSMILE使用教程\9.JPG)]

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VXy3YYH8-1624763725575)(C:\Users\GuanLi\AppData\Roaming\Typora\typora-user-images\1624762443968.png)]

    • -I配置输入音频的路径input_audio_path;

      例如音频example.wav

    • -O配置提取的音频特征保存路径output_path,保存为txt格式;

  5. 结合示例完整提取命令为:

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2lXkg88u-1624763725575)(C:\Users\GuanLi\Desktop\openSMILE使用教程\11.JPG)]

  6. 提取的特征保存在feature.txt文件中;

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-24loyHAt-1624763725576)(C:\Users\GuanLi\Desktop\openSMILE使用教程\12.JPG)]

以上是使用openSMILE提取音频特征的完整示例;但是大多情况下,我们需要处理大量的音频文件,则需要openSMILE可以批量化的处理音频;下面介绍如何通过python调用openSMILE工具批量处理音频文件。

python调用openSMILE批量处理音频文件

使用openSMILE批量处理音频文件即通过python调用终端执行处理命令,即将上述命令在python(或其他编程语言)中循环执行;

如音频文件列表

import os
audio_list = [audio1.wav, audio2.wav, ..., audion.wav]
for audio in audio_list:
    cmd_exe = 'cd ./bin && SMILExtract -C ./config/gemaps/v01a/GeMAPSv01a.conf -I '+ audio +' -O ' + output_file
    os.system(cmd_exe)

cmd_exe即为提取特征的命令,在这里通过python去执行而已。在循环处理音频的时候,输出的特征文件名要随着音频不同而改变,否则将会覆盖掉。
批量提取的时候,最好将特征与音频文件对应命名,单独保存到一个文件夹下,便于后续使用和分析。

  • 7
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值