免费AI数据标注工具-音频标注软件

 最近疫情比较严重,大家有没有发现有一个AI应用有点起死回生的感觉了,当然不是图片识别的应用场景了,例如口罩识别、无接触体温检测等等已经火爆的一塌糊涂了,如果有对口罩遮挡识别的小伙伴可以看我的另一篇文章【AI实战】口罩佩戴检查。而是电话机器人,由于19年出国家出台了比较严的整治电话骚扰的政策,导致外呼、回访、电话销售等等行业的需求意愿急剧下降,由于疫情反而让这种可以解决劳动密集型的电话客服的电话机器人悄然有回暖了。   

      所以今天就跟大家语音标注的内容,目前阶段的语音识别在通用场景上的准确率已经很高了,有些特殊场景因为传统头部公司的实际需求也在不断的落地,所以好多场景的语音相关需求已经从仅仅的识别需求提升到角色识别、情感识别等了。这篇文章介绍一款非常好用的线下语音处理分析软件--Praat。

      Praat语音学软件,原名Praat:doing phonetics by computer,通常简称Praat,是一款跨平台的多功能语音学专业软件,主要用于对数字化的语音信号进行分析、标注、处理及合成等实验,同时生成各种语图和报表。

     首先介绍一下Praat都可以做哪些事情,然后再结合数据标注本身来介绍一下其功能特点。不管是做语音识别的小伙伴还是做标注的小伙伴都可以学习一下,非常好用。

 一.Praat可以做哪些事情?

        1.频谱分析

        2.基频分析

        3.强度分析

        4.共振峰分析

        5.语音标注

        6.语音参数调整和合成

        7.提前语音数据

        8.语音数据的统计分析

      是不是非常牛?这篇文章主要是要介绍标注语音时的工具使用,所以呢这里只介绍第五部分语音标注。然后其他的部分后面再单独写文章和大家交流。

 二.利用Praat做语音标注和切音

        1.利用Praat做语音标注工作

        为了方便大家使用,本文中使用的软件是Praat的汉化版,如果有小伙伴需要的话可以在公众号留言分享给大家。

 注:这里提示一下,软件会有很多快捷键,可以在使用的时候方便大家进行标注。

        2.利用Praat工具进行切音工作

        因为Praat工具非常友好,可以进行编写脚本程序,在很大程度上扩展其功能,在这里给大家讲解一下利用Praat做切音的工作。 

        切音脚本:

form dialogue
    comment 请输入源声音文件和标注文件所在目录:
    text openpath /Users/wangzhenzhen/Desktop/test/todo
    comment 请输入切分后声音保存目录:
    text savepath /Users/wangzhenzhen/Desktop/test/over
    comment 请输入标记所在层级及标记内容:
    positive tier_number 1
    sentence mark_string
    comment 请输入数字位数:
    positive limit 4
    comment 生成一个文件名列表
    text saveTXTpath /Users/wangzhenzhen/Desktop/test/out.txt
endform



if right$(openpath$,1) <> "/"
    openpath$ = openpath$ + "/"
endif
if right$(savepath$,1) <> "/"
    savepath$ = savepath$ + "/"
endif


deleteFile: saveTXTpath$
Create Strings as file list: "fileList", openpath$ + "*.wav"
numofFiles = Get number of strings


for i from 1 to numofFiles
    selectObject: "Strings fileList"
    fileName$ = Get string: i
    order = 1
    Read from file: openpath$ + fileName$


    nameOfFile$ = selected$("Sound")
    textgridNameOfFile$ = nameOfFile$ + ".TextGrid"
    Read from file: openpath$ + textgridNameOfFile$


    numOfIntervals = Get number of intervals: tier_number

    for j from 1 to numOfIntervals
        selectObject: "TextGrid " + nameOfFile$
        startTime = Get start point: tier_number, j
        endTime = Get end point: tier_number, j
        labelOfInterval$ = Get label of interval: tier_number, j
        if (labelOfInterval$ = mark_string$ and mark_string$ <> "") or (labelOfInterval$ <> "" and mark_string$ = "")
            #####将范围根据标的情况前后分别扩大0.3秒
            startTime1 = startTime - 0.3
            endTime1 = endTime + 0.3
            Extract part: startTime1, endTime1, "no"
            selectObject: "Sound " + nameOfFile$
            Extract part: startTime1, endTime1, "rectangular", 1, "no"

            ## 这一段得到一个序号的前面填充0的N位整齐数字
            temp = order
            ii = 0
            repeat
                temp = temp div 10
                ii = ii + 1
            until temp = 0
            sumtemp = limit - ii
            mark$ = ""
            for jjj from 1 to sumtemp
                mark$ = mark$ + "0"
            endfor
            mark$ = mark$ + string$(order)
            ##
            selectObject: "Sound " + nameOfFile$ + "_part"
            Save as WAV file: savepath$ + nameOfFile$ + "_" + mark$ + ".wav"
            selectObject: "Sound " + nameOfFile$ + "_part"
            Remove
            selectObject: "TextGrid " + nameOfFile$ + "_part"
            Remove
            order = order + 1            
        endif
    endfor
    selectObject: "TextGrid " + nameOfFile$
    Remove
    selectObject: "Sound " + nameOfFile$
    Remove
    
endfor
select Strings fileList
Remove

 

        以上就是Praat在数据标注过程中比较重要的两个应用,后面如果大家感兴趣的话,会对Praat的其他功能进行介绍,当然如果有小伙伴需要软件或者脚本也欢迎大家留言获取。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI数据标注猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值