声强和能量及其praat操作

2024-03-08 04:04
文章标签 操作 能量 praat 声强

本文主要是介绍声强和能量及其praat操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

强度、声压、能量、功率

这是我们在电学和声学等领域较常见到的词汇,但有时候可能会搞混淆,所以再整理一下。

强度(intensity)

强度,也叫做声强(Sound intensity)。《声学基础》中对于声强的定义是:通过垂直于声传播方向的单位面积上的平均声能量流(简称声能,能量),也叫平均声能量流密度。

在这里插入图片描述
声波的声强为:Ia=∫PmVat/T(0、T区间);式中T为周期的整数倍,或比周期大得多的时间;Pm为瞬时声压;Va为瞬时质点速度在指定方向的分量。在自由平面波和球面波的情况下,设有效声压为p,传播速度为c,媒质密度为ρ0,则在传播方向的声强为:I=p2/ρ0c。

声场中某点的声强是,单位时间内该点通过与声传播方向垂直的单位面积的声能量的平均值。
在这里插入图片描述
基本单位:J/m²s=W/m²(瓦特/米²)
在这里插入图片描述

强度,单位是每秒每平方厘米的ergs:
在这里插入图片描述
其中:p表示压力,单位为(dyn/cm2);u表示质点速度,单位为(cm/s);c表示传播速度,单位为(cm/s);ρ表示介质密度,单位为(g/cm3);乘积 ρc 被称为介质的声阻抗。

praat中intensity:

sound:To intensity…

设置:

  • Pitch floor (Hz):信号中的最小周期频率。如果你把它设置得太高,最终会得到一个音调同步的强度调制。如果你把它设置得太低,你的强度轮廓可能会出现模糊,所以如果你想要一个清晰的轮廓,你应该把它设置得尽可能高。
  • Time step (s):所得强度轮廓的时间步长。如果将其设置为0,则时间步长计算为有效窗口长度的四分之一,即 0.8 / pitchFloor。

Intensity对象表示线性间隔时间点 ti = t1 + (i -1) dt处的强度轮廓,其值为dB SPL,即dB相对于2·10-5 pascal,这是1000 Hz正弦波的标准听觉阈值。
一个IntensityTier对象表示一个带有时间戳的强度轮廓,也就是说,它包含一系列(时间,强度)点。强度值以dB为单位。

Intro 6.2. Configuring the intensity contour
 通过Intensity settings…在“强度”菜单中,您可以控制强度轮廓的计算方式和显示方式。

  • 观测范围:通过更改这两个数字,可以设置垂直刻度。标准设置是从50到100 dB,但如果您对背景噪声的功率感兴趣,您可能希望将其设置为0到100 dB的范围。
  • 平均法:如果您进行时间选择(而不是在单个时间设置游标),则会通过平均法计算强度。强度轮廓左侧或右侧的绿色数字表示选择中的平均强度。当你从强度菜单中选择获得强度时,你会得到相同的值。你可以选择强度的三种平均方法中的任何一种:Get mean… 或选择为选择median value。
  • 音高最小值(pitch floor):强度曲线是平滑的,因为你通常不希望强度曲线在一个基音周期内随着强度变化而上下波动。为了避免这种音高同步变化,每个时间点的强度是许多相邻时间点的加权平均值。加权是由一个高斯(双凯撒)窗口,其持续时间是由音调下限值确定。想要看到比平时更多的细节,提高音调下限值;为了得到比平时更平滑的效果,则降低音调下限值。
  • 是否减去平均压强?许多麦克风、麦克风前置放大器或录音系统中的其他组件可以给气压增加一个恒定水平(直流偏置)。你可以在波形中安静的位置看到这一点,那里的平均压力不为零,背景噪声在某个非零值附近波动。你通常不会想要认真对待这个恒定压力,也就是说,强度曲线通常不应该考虑这个恒定压力水平所提供的能量。如果打开减去平均压力开关(其标准设置也打开),则通过首先减去该点周围的平均压力,然后应用高斯窗来计算时间点的强度值。

Sound: Get intensity (dB)
空气中声音的强度定义为
在这里插入图片描述
式中x(t)为声压,单位为Pa(帕斯卡),t为声音持续时间,P0 = 2·10-5 Pa为听觉阈压。

同时列出音高和强度值:
你可以用高时间分辨率创建单独的音高和强度轮廓,然后进行插值。在下面的示例中,通过插值时间分辨率为0.001秒的曲线,以0.01秒的步长获得音高和强度值。

脚本:

    sound = selected ("Sound")tmin = Get start timetmax = Get end timeTo Pitch: 0.001, 75, 300Rename: "pitch"selectObject: soundTo Intensity: 75, 0.001Rename: "intensity"writeInfoLine: "Here are the results:"for i to (tmax-tmin)/0.01time = tmin + i * 0.01selectObject: "Pitch pitch"pitch = Get value at time: time, "Hertz", "linear"selectObject: "Intensity intensity"intensity = Get value at time: time, "cubic"appendInfoLine: fixed$ (time, 2), " ", fixed$ (pitch, 3), " ", fixed$ (intensity, 3)endfor

音高轮廓(蓝);强度(绿)
在这里插入图片描述

能量(Energy)

也叫作声能(acoustic energy)(电声词典)声源发射出的总能量,单位为瓦。
声波是机械波的一种,其实质是能量的传递过程。
声能密度(sound energy density):声能密度是单位体积的声能量。表达式为D=p2/ρ0c2,声能密度的瞬时值、极大值、峰值分别称为“瞬时声能密度”、“极大声能密度”、“峰值声能密度”。平均声能密度必须注明是某一时刻的空间平均还是在某一点的时间平均,以免混淆。

声能密度E:
在这里插入图片描述
其中:p表示声压,单位为达因每平方厘米【1达因/平方厘米(dyn/cm2)=0.1帕(Pa)】;ρ表示密度,单位为克每立方厘米;c表示声速,单位为厘米每秒。

praat中的energy

Sound: Get energy…
选择一个声音,在“查询”子菜单中选择Get energy。Praat将所选声音的能量(在您要求的时间间隔内)写入信息窗口。若声幅单位为Pa (Pascal),则能量单位为Pa2·s。
在这里插入图片描述

设置:
Time range (s):时间范围(t1, t2)。超出此范围的值将被忽略。如果t1不小于t2,则考虑声音的整个时域。

定义:
能量定义为
在这里插入图片描述
其中x(t)是声音的振幅。对于立体声来说,定义为
在这里插入图片描述
其中x(t)和y(t)是两个通道;这个定义是对通道进行平均(而不是求和),从而确保如果你将单声道声音转换为立体声,能量将保持不变。
对于空气中的声能,用焦耳/平方米表示:
在这里插入图片描述
其中x(t)为声压,单位为Pa(帕斯卡),ρ为空气密度(apx. 1.14 kg/m3), c为空气中的声速(apx. 353 m/s)。

空气中声音的功率定义为:
在这里插入图片描述
其中x(t)是声压,单位是Pa(帕斯卡),ρ是空气密度(apx. 1.14 kg/m3), c是声音在空气中的传播速度(apx. 353 m/s), T是声音的持续时间。

实现样例:
在Praat中,声音仅在有限的时间点上被定义,并且间隔均匀。例如,一个采样频率为10kHz的3秒长的声音,即被定义在30,000个时间点上,通常(例如,当你用create Sound from formula创建声音时)位于0.00005、0.00015、0.00025……2.99975, 2.99985和2.99995秒。Praat看待这个问题的简单方法是,第一个样本以0.00005秒为中心,该样本的振幅(x1)表示t在0到0.00010秒之间的x(t)。同样,第二个样本以0.00015秒为中心,但可以说是从0.00010到0.00020秒,第30,000个样本也是最后一个样本以2.99995秒为中心,其振幅(x30000)表示2.99990到3.00000秒之间的所有时间。因此,这个示例声音x(t)在0到3秒之间的所有时间都是定义的,但在0秒之前或3秒之后是未定义的。
因此,该例子声音的能量为:
在这里插入图片描述
我们将其近似为所有30000个样本的和:
在这里插入图片描述
其中Δti为第i个样本的持续时间,即每个样本0.0001秒。

现在考虑一下,如果我们想知道t1 = 0.00013和t2 = 0.00054秒之间的能量呢。声音的第一个样本完全落在这个音程之外;第二个样本的70%落在区间内,即0.00013秒到0.00020秒的部分;第三、四、五样本均落在区间内;第6个样本的40%落在区间内,即0.00050到0.00054秒的部分(注意,第6个样本的中心在0.00055秒,甚至在区间之外)。那么能量是:
在这里插入图片描述
其中Δt3 = Δt4 = Δt5 = 0.0001秒,但Δt2只有0.00007秒(即第二个样本位于t1和t2之间的部分),Δt6只有0.00004秒(即第六个样本位于t1和t2之间的部分)。
这种对平方信号积分的方法(从技术上讲,是对一个划分[从t1到t2的区间]的黎曼和,它在除边缘以外的任何地方都是正则的,并且在除边缘以外的任何地方都有中心标记)确保了结果是t1和t2的连续函数,即t1或t2的很小变化只会导致计算能量的很小变化(相反,简单地对中心位于t1和t2之间的所有样本进行求和,将导致每当t1或t2穿过样本中心时计算的能量突然跳跃,这将是非物理行为,因此不是Praat会有的行为)。

这篇关于声强和能量及其praat操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/785916

相关文章

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

Linux链表操作方式

《Linux链表操作方式》:本文主要介绍Linux链表操作方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、链表基础概念与内核链表优势二、内核链表结构与宏解析三、内核链表的优点四、用户态链表示例五、双向循环链表在内核中的实现优势六、典型应用场景七、调试技巧与

Java Multimap实现类与操作的具体示例

《JavaMultimap实现类与操作的具体示例》Multimap出现在Google的Guava库中,它为Java提供了更加灵活的集合操作,:本文主要介绍JavaMultimap实现类与操作的... 目录一、Multimap 概述Multimap 主要特点:二、Multimap 实现类1. ListMult

Python中文件读取操作漏洞深度解析与防护指南

《Python中文件读取操作漏洞深度解析与防护指南》在Web应用开发中,文件操作是最基础也最危险的功能之一,这篇文章将全面剖析Python环境中常见的文件读取漏洞类型,成因及防护方案,感兴趣的小伙伴可... 目录引言一、静态资源处理中的路径穿越漏洞1.1 典型漏洞场景1.2 os.path.join()的陷

Python使用Code2flow将代码转化为流程图的操作教程

《Python使用Code2flow将代码转化为流程图的操作教程》Code2flow是一款开源工具,能够将代码自动转换为流程图,该工具对于代码审查、调试和理解大型代码库非常有用,在这篇博客中,我们将深... 目录引言1nVflRA、为什么选择 Code2flow?2、安装 Code2flow3、基本功能演示

Python中OpenCV与Matplotlib的图像操作入门指南

《Python中OpenCV与Matplotlib的图像操作入门指南》:本文主要介绍Python中OpenCV与Matplotlib的图像操作指南,本文通过实例代码给大家介绍的非常详细,对大家的学... 目录一、环境准备二、图像的基本操作1. 图像读取、显示与保存 使用OpenCV操作2. 像素级操作3.

python操作redis基础

《python操作redis基础》Redis(RemoteDictionaryServer)是一个开源的、基于内存的键值对(Key-Value)存储系统,它通常用作数据库、缓存和消息代理,这篇文章... 目录1. Redis 简介2. 前提条件3. 安装 python Redis 客户端库4. 连接到 Re

Java Stream.reduce()方法操作实际案例讲解

《JavaStream.reduce()方法操作实际案例讲解》reduce是JavaStreamAPI中的一个核心操作,用于将流中的元素组合起来产生单个结果,:本文主要介绍JavaStream.... 目录一、reduce的基本概念1. 什么是reduce操作2. reduce方法的三种形式二、reduce

MySQL表空间结构详解表空间到段页操作

《MySQL表空间结构详解表空间到段页操作》在MySQL架构和存储引擎专题中介绍了使用不同存储引擎创建表时生成的表空间数据文件,在本章节主要介绍使用InnoDB存储引擎创建表时生成的表空间数据文件,对... 目录️‍一、什么是表空间结构1.1 表空间与表空间文件的关系是什么?️‍二、用户数据在表空间中是怎么

Python对PDF书签进行添加,修改提取和删除操作

《Python对PDF书签进行添加,修改提取和删除操作》PDF书签是PDF文件中的导航工具,通常包含一个标题和一个跳转位置,本教程将详细介绍如何使用Python对PDF文件中的书签进行操作... 目录简介使用工具python 向 PDF 添加书签添加书签添加嵌套书签Python 修改 PDF 书签Pytho