当前位置: 首页 > news >正文

Praat之基频分析

Praat之基频分析

测量基频F0的方法

  • 自相关 Autocorrelation(易出现pitch-halving\pitch-double)
  • 窄带谱图 Narrowband spectrogram(第一谐波就是基频)
  • 倒谱分析 Cepstral analysis
  • 测量声门波 glottal pluse(通过波形,f=1/T)

具体方法就不展开讲了,看我的其他博客。

波形直观理解:

下图我选了0.03s的浊音音频,可以看到是短时周期的,那么基频就是1s内有多少个这样的周期。

在这里插入图片描述

比如这个正弦信号,1秒有2个相同波形,所以基频是2Hz。
在这里插入图片描述

注:自相关的错误,还得后面三种方法再检查一下。

基频测量

加载一条语音,直接 view&edit
在这里插入图片描述
右边就是基频值范围。左边是频谱值范围。

看某一时刻的基频值:
选move cursor to
在这里插入图片描述
然后 pitch–>get pitch

选 pitch——pitch settings

在这里插入图片描述
1.基频范围,默认是75到500Hz,我这是段男声,为了看看的清楚,就设置到了30-300Hz。
如果有病人的声音,可以把范围调低。
有时候praat算出来的有假值,如下图红色圈出的那段。设置合理的范围有助于去掉假值。

在这里插入图片描述
2.Unit:基频单位。除了Hz还有对数,mel等
3.计算方法:如果只是研究语调,就用autocorrelation,如果是要看发声是沙哑还是怎么的,就用cross-correlation.
4.Drawing method:计算出来的基频是画成一条平滑线curve,还是点speckles,还是计算机自动选择automatic。

选 pitch——Advanced pitch settings

在这里插入图片描述
1.View range:你想要看到的范围
2.very accurate可以点或不点
3. 其他的值如果只是做声调分析,就不要改了。Vocing threshold就是超过这个阈值就是有基频浊音,没超过就是清音,他就不会计算基频值。要是研究某些病理语音就需要改。一般值为0.45,0.25

假如这里我设0.25试试:
如红色部分本来没基频,变成有了。所以设回0.45
在这里插入图片描述
人的声音的基频值一般是连续的,声带振动不会大起大降,比如上图右部分,就是错的基频值。

选 pitch——get pitch
选中一段,再get pitch,就是这一段的平均基频值。要只选某个时间点,那就是这一点的基频值。

在这里插入图片描述

选某个时间点时,因为基频是某段时间算一个值,如0.01s,所以这一个时间点praat会用interpolated算法等算一个值。
在这里插入图片描述

选 pitch——extract visible pitch curve

然后在主页面,就会出现一个pitch untiled。选中后点view&edit

在这里插入图片描述
可以看到,praat在计算基频时,在一个时间段会得出很多个候选值,会选择相关系数最大的,就是桃红色的选定值。

要是有错误的地方,如下图:
选中区域,selection–>Unvoice。就没了
在这里插入图片描述

主页面的pitch untiled。选择sound,
就可以以次基频生成不同的声音,有脉冲的pluse,有正弦的sin,有hum
在这里插入图片描述

主页的query:
在这里插入图片描述

如上图点击get time step,得到:
在这里插入图片描述
说明每隔0.0083秒,计算一个基频值。
还有能计算基频的最大最小值,均值,方差等等。

主页的Analyses periodicity–>To pitch
在这里插入图片描述
time step就是每隔多少秒计算一个基频,比如刚才的0.0083s,可以自己设置,想要基频的点少点,就设置大点。

主页的Analyse:
选 PonitProcess untitled
在这里插入图片描述

然后和声音一起选中,view&edit
在这里插入图片描述
就是计算出来的pulses。

主页的convert:
选Down to PitchTier
在这里插入图片描述

得到 PitchTier untitled。

在这里插入图片描述
做语音合成的时候,可以用到这个修改基频,选Point里的add point at cursor,就可以加点。
在这里插入图片描述

声调

1.什么时候基频开始?
只考虑声调的话,有些人建议从第二个竖直条的基频算起,如果考虑辅音对声调的影响,第一个基频值也很重要哦。
在这里插入图片描述
2.什么时候基频结束?
看第二共振峰开始变的不清晰,说明韵母结束了,就算基频结束
看波形图的能量显著下降了
在这里插入图片描述

声调后面突然的拐弯上升等,这都是要去掉的。掐头去尾。
声调的载荷单位就是韵腹+韵尾

3.计算声调的斜率slope:
如降调,得到这段基频的起点和终点值,除以这段的时间。

选中一段后,选pitch–> pitch listing。
保存为excel里。记得吧时长记下来。
在这里插入图片描述

相关文章:

Praat之基频分析

Praat之基频分析 测量基频F0的方法 自相关 Autocorrelation(易出现pitch-halving\pitch-double)窄带谱图 Narrowband spectrogram(第一谐波就是基频)倒谱分析 Cepstral analysis测量声门波 glottal pluse(通过波形&a…...

乡村企业门户网站

技术:Java、JSP等摘要:随着时代的发展,电脑与Internet已经进入我们的生活。信息时代的来临,知识经济的扩张,网站已越来越靠近我们的生活。据CNNIC报告显示,中国上网用户有6800万。通过Internet来经营运作一…...

Deploy Workshop|DIY部署环境,让OceanBase跑起来

2023 年 3 月 25 日,我们将在北京开启首次 OceanBase 开发者大会,与开发者共同探讨单机分布式、云原生、HTAP 等数据库前沿趋势,分享全新的产品 Roadmap,交流场景探索和最佳实践,此外,OceanBase 开源技术全…...

【CPP】定义一个类

一:当实现一个类的时候,编译器都做了什么 前言:当我们实现一个类的时候,编译器为我们做了什么;在对类进行操作的时候,有哪些特殊的成员函数可以帮助我们更好的操纵类; class A {A();//默认构造…...

谷歌广告投放步骤流程是什么?一文带你全方位了解实操细节

谷歌,大家都不陌生吧,一个人们很常用的搜索引擎。而谷歌还可以打广告,即谷歌广告,那这跟跨境电商有什么关心呢?东哥告诉大家,关系大了去了,毕竟如果用户搜索与我们相关的关键词,就有…...

TypeScript 怎么去查找类型定义的?

TypeScript 怎么去查找类型定义的?类型文件分类第三方库的类型自定义类型结论类型文件分类 我们项目中的类型文件分为两种:一类是第三方库的类型,一类是在项目中的自定义类型。 第三方库的类型 (1)Jquery&#xff1…...

NPM包管理器

文章目录一、NPM包管理器1、简介2、安装NPM3、使用npm管理项目3.1项目初始化3.2修改npm镜像3.3 npm install命令的使用3.4其它命令一、NPM包管理器 1、简介 什么是NPM NPM全称Node Package Manager,是Node.js包管理工具,是全球最大的模块生态系统&…...

IT英语记录

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言1、Classification2、Logistic Regression3、网络相关3.1 WAN(Wide Area Network)、LAN(Local Area Network)网络…...

SRS4.0 源码分析- RTC模块相关类

前言 本文介绍SRS4.0涉及RTC模块的C类,主要包括RTC Server和Session相关的。 SrsGoApiRtcPlay 处理webrtc client的播放请求,解析client的offer,并且生成server的answer,并且为这次请求创建一个session。SrsRtcServer 监听udp端…...

数位DP

数位dp的题目一般会问&#xff0c;某个区间内&#xff0c;满足某种性质的数的个数。 利用前缀和&#xff0c;比如求区间[l,r]中的个数&#xff0c;转化成求[0,r]的个数 [0,l-1]的个数。利用树的结构来考虑&#xff08;按位分类讨论&#xff09; 1081. 度的数量 #include<…...

剑指offer(一)-链表

&#xff08;一&#xff09;找出链表的环的入口结点 JZ23 链表中环的入口结点 中等 通过率&#xff1a;36.78% 时间限制&#xff1a;1秒 空间限制&#xff1a;64M 知识点链表哈希双指针 描述 给一个长度为n链表&#xff0c;若其中包含环&#xff0c;请找出该链表的环的入口结点…...

CDH大数据平台入门篇之搭建与部署

一、CDH介绍 1.CDH 是一个强大的商业版数据中心管理工具 提供了各种能够快速稳定运行的数据计算框架&#xff0c;如Spark&#xff1b; 使用Apache Impala做为对HDFS、HBase的高性能SQL查询引擎&#xff1b; 使用Hive数据仓库工具帮助用户分析数据&#xff1b; 提供CM安装HBas…...

Spark Join

Spark Join关联形式内关联外关联左外关联右外关联全外关联左半/逆关联关联机制NLJSMJHJ分发模式Join 选择等值 Join不等值 JoinJoin 按照关联形式&#xff08;Join Types&#xff09;划分 : 内关联、外关联、左关联、右关联 Join 按实现机制划分 : NLJ (Nested Loop Join) 、S…...

数字的转化规则?

数字的转化规则&#xff1f;js将字符串转换为数字的方式有哪些&#xff1f;1. 使用 parseInt()2. 使用 Number()3. 使用一元运算符 ()4.使用parseFloat()5. 使用 Math.floor()和Math.ceil()6.乘以数字7. 双波浪号 (~~) 运算符其它值到数字的转化规则1.Undefined 类型2.Null 类型…...

MySQL面试题-锁相关

目录 1.MySQL 锁的类型有哪些呢&#xff1f; 2.如何使用全局锁 3.如果要全库只读&#xff0c;为什么不使用set global readonlytrue的方式&#xff1f; 4.表级锁和行级锁有什么区别&#xff1f; 5.行级锁的使用有什么注意事项&#xff1f; 6.InnoDB 有哪几类行锁&#xff…...

Windows 终端编译 C代码

E:\My_SoftWare\Window gcc\windowbianji\mingw64\bin 此电脑--》属性--》系统--》高级系统设置--》环境变量--》Path--》新建--》粘贴路径 E:\My_SoftWare\Window gcc\windowbianji\mingw64\bin 打开命令终端 E: 回车 dir 显示所有文件 cd E:\My_SoftWare\Window gcc\C_co…...

SpringCloud:Feign的使用及配置

目录 Feign的使用及配置 1、Feign替代RestTemplate 2、使用Fegin步骤 3、自定义配置 4、Feign使用优化 5、Feign的最佳实践方式 Feign的使用及配置 1、Feign替代RestTemplate RestTemplate方式远程调用的问题 问题&#xff1a; 1、代码可读性差&#xff0c;编程体验不同…...

Parquet学习与使用之BloomFilter的应用

写在前面 最近在自己做自定义的OLAP系统&#xff0c;文件格式上用的是Parquet&#xff0c;但是发现Parquet各个API的示例代码很少。所以就打算把这个系列的文章写一下。 1. Parquet的Filter Parquet的过滤支持两大类&#xff0c;一类是基于Footer中的元数据进行RowGroup级别…...

95%置信区间计算-理解

机器学习中做多次试验后&#xff0c;需要计算指标的95%置信区间。 假设做了10次试验&#xff0c;计算得出的某指标分别为{x1,…,x10} 其均值为μ(x1...x10)/10\mu(x1 ... x10)/10μ(x1...x10)/10 方差σ∑(xi−μ)2/10\sigma\sum(x_i -\mu)^2/10σ∑(xi​−μ)2/10 95%置信…...

深度学习pytorch实战三:VGG16图像分类篇自建数据集图像分类三类

1.自建数据集与划分训练集与测试集 2.模型相关知识 3.model.py——定义AlexNet网络模型 4.train.py——加载数据集并训练&#xff0c;训练集计算损失值loss&#xff0c;测试集计算accuracy&#xff0c;保存训练好的网络参数 5.predict.py——利用训练好的网络参数后&#xff0c…...

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...

K8S认证|CKS题库+答案| 11. AppArmor

目录 11. AppArmor 免费获取并激活 CKA_v1.31_模拟系统 题目 开始操作&#xff1a; 1&#xff09;、切换集群 2&#xff09;、切换节点 3&#xff09;、切换到 apparmor 的目录 4&#xff09;、执行 apparmor 策略模块 5&#xff09;、修改 pod 文件 6&#xff09;、…...

java 实现excel文件转pdf | 无水印 | 无限制

文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...

LeetCode - 394. 字符串解码

题目 394. 字符串解码 - 力扣&#xff08;LeetCode&#xff09; 思路 使用两个栈&#xff1a;一个存储重复次数&#xff0c;一个存储字符串 遍历输入字符串&#xff1a; 数字处理&#xff1a;遇到数字时&#xff0c;累积计算重复次数左括号处理&#xff1a;保存当前状态&a…...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

JDK 17 新特性

#JDK 17 新特性 /**************** 文本块 *****************/ python/scala中早就支持&#xff0c;不稀奇 String json “”" { “name”: “Java”, “version”: 17 } “”"; /**************** Switch 语句 -> 表达式 *****************/ 挺好的&#xff…...

使用SSE解决获取状态不一致问题

使用SSE解决获取状态不一致问题 1. 问题描述2. SSE介绍2.1 SSE 的工作原理2.2 SSE 的事件格式规范2.3 SSE与其他技术对比2.4 SSE 的优缺点 3. 实战代码 1. 问题描述 目前做的一个功能是上传多个文件&#xff0c;这个上传文件是整体功能的一部分&#xff0c;文件在上传的过程中…...

前端调试HTTP状态码

1xx&#xff08;信息类状态码&#xff09; 这类状态码表示临时响应&#xff0c;需要客户端继续处理请求。 100 Continue 服务器已收到请求的初始部分&#xff0c;客户端应继续发送剩余部分。 2xx&#xff08;成功类状态码&#xff09; 表示请求已成功被服务器接收、理解并处…...

Java后端检查空条件查询

通过抛出运行异常&#xff1a;throw new RuntimeException("请输入查询条件&#xff01;");BranchWarehouseServiceImpl.java // 查询试剂交易&#xff08;入库/出库&#xff09;记录Overridepublic List<BranchWarehouseTransactions> queryForReagent(Branch…...

深入浅出WebGL:在浏览器中解锁3D世界的魔法钥匙

WebGL&#xff1a;在浏览器中解锁3D世界的魔法钥匙 引言&#xff1a;网页的边界正在消失 在数字化浪潮的推动下&#xff0c;网页早已不再是静态信息的展示窗口。如今&#xff0c;我们可以在浏览器中体验逼真的3D游戏、交互式数据可视化、虚拟实验室&#xff0c;甚至沉浸式的V…...