麦克风相关知识——图后续处理

这篇文章重点介绍几种实用的波束形成算法(delaysum,delaysub,一阶差分自适应BF)原理及实现效果,再简单介绍一些知名品牌助听器中的BF方案;

1.易实现的BF算法介绍

1.1 delaysum

延时相加和延时相减是最基本的BF处理方式,他们的原理和实现方式也很简单:一路信号延时后与另一路信号进行相加(delaysum)或相减(delaysub),其处理流程示意图如下(以相减为例):

延时相减流程

对delaysum来说,中低频信号不衰减,高频信号衰减约3dB;其输入和输出对比如下(上声道为一路输入信号,下声道为delaysum的输出信号;左边为目标方向的信号,右边为抑制方向的信号;两个麦克风间距为1cm):

delaysum的输入与输出(时域)

delaysum的输入与输出(频域)

从下面频谱的图中可以看到背景颜色更深,因此delaysum能够消除掉一部分环境底噪(3dB左右),能够实实在在提高信噪比。

理论上的delaysum是无失真的,从下面的3D极性图可以更清晰、全面地看到delaysum的效果:主瓣为0°方向,此时对该方向上的信号增益为0dB不衰减;在特定频率处凹陷较深,即衰减更多;

delaysum的3D极性图

对delaysum的评价:虽然易于实现,操作简单,但是限于麦克风数量和间距的限制,delaysum往往收效甚微;换句话说就是“没什么错误,但也没什么作用”。

那么如何提高delaysum的性能呢?

对于delaysum来说,麦克风数量越多,麦克风之间间距在一定范围内越大,delaysum的效果越好(理论上每增加一个麦克风,delaysum将会增加3dB的受益),因此BF算法的设计和硬件结构设计(阵列阵形、朝向等)密切相关

delaysum性能麦克风数量和间距如下图所示,越往右麦克风数量越多;越往下麦克风间距越大,紫色表示增益低,黄色表示增益高(最大0dB即不衰减),右下角的指向性效果(方向和抑制深度)越明显:

delaysum性能和麦克风数量与间距的关系

需要注意的是,麦克风间距不能无限增加,要使得阵列信号保持一定相关性的条件下,适当增加间距。

1.2 delaysub

delaysub即将一路信号延时后和另一路相减,其输入和输出对比如下(上声道为一路输入信号,下声道为delaysub的输出信号;左边为目标方向的信号,右边为抑制方向的信号;两个麦克风间距为1cm):

delaysub的输入与输出(时域)

delaysub的输入与输出(频域)

delaysub的效果是无论哪个方向的信号,都在低频(0~1KHz)有较大的衰减,虽然这让BF具有明显的方向性拾音效果,但牺牲了目标方向上语音清晰度和可懂度,尤其是500~1000Hz的语音信号会受到影响;因此可以考虑在delaysub的基础上对低频进行适当补偿,在方向性效果和清晰度之间进行取舍;

参考文末的第一篇论文后,给出一个针对delaysub的低频补偿滤波器:

输出信号补偿前后的频响如下(蓝色为未补偿的频响,红色为补偿后的频响):

https://pic2.zhimg.com/80/v2-3af3a55e40e8f59a4d64d3aab30fc0c1_1440w.webp

delaysub输出信号补偿前后的频响

1.3 双麦自适应差分BF

参考文末的最后一篇论文,给出一种自适应双麦BF算法流程图:

自适应差分BF流程

其主要思想是:两路信号分别进行delaysub,形成两路新的信号

(这两路信号的极性图为下图中的两个心形);再通过方位估计的算法,自适应地调整信号合成比例 

这一参数,这样就能自动控制两个完全相反极性的信号在合成中的比例,从而能够自适应调整波束的增强方向。

文章中同时论证了如何更好地选取 

 

两个心形极性图的合成

那么不同的合成比例参数 

,就会合成得到不同的极性图:

不同β参数合成后得到的极性图

无论是delaysum,delaysub还是自适应BF,都要对信号进行延时,但如何对信号进行时延?在DSP、FPGA等数字系统中如何实现整数时延和分数时延? 参考之后的一篇文章(先占坑):“延时滤波器的实现”。

最后,还要补充一点:对多数BF算来说,对信号的后滤波处理往往是必不可少的,原因在于:

声音的方向性和频率有关,频率越高,方向性越强,辐射角度越小。语音是宽带信号60Hz~8kHz均有语音信息,如下图所示,不同频率信号的辐射角不一样,对波束宽度不随频率改变的波束方法(delaysum),波束后的信号频率成分会发生较大差异,从而影响语音的音质。大多BF主瓣宽度有限,因此,为了使波束在全频带上具有较强的适用性和鲁棒性,通常会对低频带和高频带做额外的处理。

不同频率的声波辐射指向特性示意图

低频是全向性的该如何处理呢,就是与波束指向性有什么关联呢???见下面3.2的部分。

3.助听器及芯片厂商的波束形成方案概览

助听器算法是信号处理中较为小众的领域,其明显的特点之一是算力、体积有限,不仅要求助听器芯片维持极低的时延(15ms内)和功耗,同时还要求算法有不俗的表现:

3.1 Resound

Resound实现自适应波束形成:在目标语音出现时能够使波束变窄,实现自动聚焦和抑制背景噪声;

https://picx.zhimg.com/v2-de81d9cd525d102f4da8edad9e68bd4f.jpg?source=25ab7b06

00:13

Resound较早的方向性算法中采用了分频处理方向性的思路:将输入信号分为高低频带分别进行方向性处理,同时可以实时调整高低频带的界限阈值:

Resound的分频方向性

同时,在上位机上还可以手动调节波束宽度等参数:

https://pic4.zhimg.com/80/v2-22b19f39fb9365400194526cfd57a62b_1440w.jpg

手动设置波束增强方向

3.2 Phonak

Phonak的方向性算法方案思路也是类似的:将两路输入信号分别进行分频,得到低频,中频,高频信号;再通过调整时延,实现特定频带的增强或抑制。这样不仅能够在获得方向性增益的同时抑制背景噪声,又能够保留中低频的语音:

https://pic4.zhimg.com/80/v2-6a374a77e75e27ba69e79f46de536e33_1440w.jpg

Phonak的方向性算法方案

3.3 Oticon

Oticon采用了MVDR的BF方案:利用双麦信号进行分析后,利用估计出的声源方位,动态调整降噪算法的参数:

https://pic2.zhimg.com/80/v2-ac5ca3dbd72c3bf88b3f35e36ef9ac1d_1440w.jpg

Oticon的BF方案流程

Oticon既有固定BF,也有自适应的BF方案:

https://pic2.zhimg.com/80/v2-c25f370594d0c40497bd819168cbaa51_1440w.jpg

Oticon的固定(左)和自适应BF(右)方案

很多助听器算法是通过定制化硬件来实现的,例如各类硬件加速器(FFT、卷积、LMS、统计器等)和DSP处理器等,这样的软硬件协同处理能够极大地提高数据处理的效率,实现更低的功耗和时延。

针对BF算法的测试方案,可以参考我的下一篇文章“波束形成(三)”,主要分享实际测试过程和开发中遇到的各种各样的坑。

参考资料:

《First order differential microphone arrays for automotive applications》

波束形成(三):测试

目录

收起

1.BF算法极性图的几种测试方案

1.1 方案一:Fonix8000测试仪器+静音箱

1.2 方案二:步进转台+静音房

1.3 方案三:多声源+静音房

2. 开发与测试中遇到的坑

2.1 混响导致BF性能急剧下降

2.2 多麦阵形的影响:

2.3 麦克风器件一致性的影响

2.4 测试时遮挡

3.拓展知识:指向性麦克风

这篇文章介绍BF的测试方案,这部分内容在网上的介绍比较少,作者结合了个人的实践经历和目前已有的测试方案来简单阐述;除此之外,还会介绍一些开发和测试中的坑,能够帮助读者少走一些弯路。

1.BF算法极性图的几种测试方案

几种BF测试方案有一些共同特点:

BF的测试环境都尽可能在静音房/隔音箱的环境中,减少外界噪声的干扰,改善混响情况;

1.1 方案一:Fonix8000测试仪器+静音箱

下图为Fonix 8000测试仪器,专用于助听器等可穿戴音频设备的电声测试:

https://pic3.zhimg.com/80/v2-133f68ded3583caa11a68c38e853250a_1440w.webp

隔音箱测试极性图整体

以测试一个带BF算法的耳背式(BTE)助听器为例,下图为助听器被固定在一个可旋转的金属杆上:

在下图中,左上方向为静音箱中的扬声器,周期性地播放激励信号;每播放完一段激励信号,金属杆就旋转一定的角度,进而带动助听器旋转,如此一来就可控制输入信号在不同方向:

隔音箱中扬声器发出激励信号

测试过程中,Fonix8000软件会实时绘制极性图,同时显示待测设备在不同频率和方向上的增益等测试指标:

测试结果

1.2 方案二:步进转台+静音房

步进转台的方案大致为:

首先,将待测设备(如TWS耳机、助听器等)固定在转台上,在软件中控制人工嘴播放激励声信号和转台速度;

同时待测设备通过有线/无线的方式将响应传输至软件中,软件实时显示极性图:

转台测试极性图方案

转台测试方案的实际场景,相较于测试方案一,这种方案可以测试体积更大的设备:

转台实物图

一款双麦TWS耳机的BF测试效果如下:

测试结果

1.3 方案三:多声源+静音房

作为方案一、二的补充,以下为Onsemi较早版本的BF测试方案:是方案一和方案三的结合:

和方案一相似之处在于,在隔音箱或静音房中,有一个转动设备上固定着待测设备;

和方案三相似之处在于,在隔音箱的外面有电脑控制转动设备和激励信号,同时记录算法响应:

测试方案三示意图

测试界面如下:

测试软件界面

2. 开发与测试中遇到的坑

2.1 混响导致BF性能急剧下降

刚开始做实验时,这是一个不小的坑:

当你在混响严重的室内测试BF性能时,效果往往比你复现的论文里的效果差很多。(很多文献和资料中提出的BF算法,他们展示的BF极性图大多是理想状态下的效果,如仿真或测试是在消声室内进行的),例如同样一个BF算法,理想极性图是这样的:

https://pic4.zhimg.com/80/v2-53fed013a82a09edb49ef40ede8c33d3_1440w.webp

理想极性图

如果自己没有消声室,那么同样的BF算法,其表现往往是大打折扣的!可能导致自己反复检查在哪出错,或者哪里理解上有偏差,实际上的极性图可能是这样的:

实测极性图

实际上,产生上面这样差异有很多原因,例如混响导致存在其他声源干扰:

在不同环境则麦克风可能在不同种类的噪声场中:而不同的BF算法在不同的噪声场中性能差异较大,若要具体了解,请移步参考我的另一篇文章:

(占坑)

同时,还可能有测试存在遮挡,声源和麦克风不在同一平面,消声室尺寸和本地噪声,器件一致性问题等等。

2.2 多麦阵形的影响:

对一些小型的设备来说,阵形(麦克风间距,相对位置,角度等)的情况决定了BF算法的有没有效果;

不好的阵形设置甚至可能会产生不好的后果!

例如在下图中,目标声音是从助听器佩戴者的正前方传来,图A中两个麦克风为端射方向(end-fire,双麦延长线为目标声源方向),那么图A中的有效距离就大于图B,

在实际测试中,图A的性能和效果就比图B更好:

双麦的有效距离:A>B

2.3 麦克风器件一致性的影响

产品在实际批量生产的过程中,如果一个产品上多个麦克风器件来料的电声性能(从频响测得)出现较大差异时,BF算法往往不仅无法达到预期效果(例如方位角估计变得不准),严重的还可能导致BF的输出信号失真,从而导致BF算法的性能大幅下降!

下面是一个典型mems硅麦的频响曲线,一般都有误差范围标定:

一款mems硅麦的频响曲线

所以在测试BF算法时,要注意器件性能需尽可能保持一致。

2.4 测试时遮挡

在测试BF算法时,应尽可能避免其他物体对声源的遮挡,否则极性图可能会产生不对称(大部分测试结果是对称的)或局部的“突出”和“凹陷”;

如果在人头模型上测试单耳BF的效果,这个问题则会更为凸显,

因此有时候还需要考虑人头相关传递函数(HRFT)的影响:

人头模型中测试BF

此外,还有很多小问题可能需要被考虑:例如BF往往需要进行补偿后滤波等等;

3.拓展知识:指向性麦克风

既然BF算法的一个应用是定向拾音,那么有没有器件本身就带有指向性拾音的麦克风呢?

答案是:

下面就介绍几款指向型麦克风(主要是驻极体麦克风、硅麦):

指向性麦克风优点自然是拥有指向性拾音的功能,而无需算法进行处理,但这是一把双刃剑,既是它的优点也是它的缺点!因为这意味着它损失了全部方向的有效信息!

除此之外,指向性麦克风还有其他的劣势:价格更高,体积更大,功耗更大(相较于普通mems全向硅麦)

几款指向性硅麦及其参数分享给一些DIY玩家:

1.UB6027L-2A343-C1033

UB6027L-2A343-C1033

2.ICS-40800

ICS-40800

ICS-40800的极性图

参考链接:

《Acoustic Beamforming for Hearing Aids Using Multi Microphone Array by Designing Graphical User Interface》

1.从耳机调音说起

为什么很多耳机、音响、HiFi发烧友和试音碟常用蔡琴的歌(例如《渡口》)来试音?

开头的鼓声,能反映出低频的下潜表现,例如低频下潜深则更为震撼,有的低频比较浑浊等等。同时这首歌的人声也能表现出设备对声音的解析度情况,例如清澈细节丰富的人声则更好。。。。

归根结底,由于人的听觉神经对不同频率的主观感受不同,于是人们对于“好声音”有一套较为主流的评价标准。

人类可听到频率范围在20Hz~20KHz的各种声音。 人类言语频率包含在200~8KHz范围内。首先把声音频段分为四大段:

LF(低频):20Hz-200Hz,影响音色的混厚度和丰满度。能产生类似低音炮的声音;

MID LF(中低频):200Hz-600Hz,影响主要音色和结实度。力量感;

MID HF(中高频):600Hz-6kHz,影响音色的明亮度、清晰度,大部分语音集中在这一段;

HF(高频):6kHz-16kHz,影响音色的表现力、解析力,例如很多乐器声音集中在这一段。

https://pic4.zhimg.com/v2-ebd37a99edea75a1724abebe47e24333_r.jpg

值得注意的是,对于听力康复行业(如助听器),音质的评价标准和一般人的标准不一样,助听器中正常人觉得好的,听障患者不一定觉得好。 反之,听障患者觉得好听的声音,正常人也可能难以接受!

例如:听障患者往往高频听损严重,那么高频增益的提高会更适合听障患者,但是正常人听了会觉得刺耳;

又例如:适当提高低频增益以包含更多语音信息,是更适合听障患者的,但正常人往往难以忍受低频增益提升带来的噪声和浑浊感。

那么在调音或评价声音时,不同频率的声音有什么特点?又应当怎么调会更好听?下面记录不同频率的声音的特点供参考:

2.不同频率的声音特点

20Hz-60Hz

这段频率影响音色的空间感,这是因为乐音的基音大多在这段频率以上。这段频率是房间或厅堂的谐振频率。如果这段频率表现的充分,会使人产生一种置身于大厅之中的感受;如果这段频率缺乏,音色会变得空虚;而如果这段频率过强,会产生一种嗡嗡的低频共振的声音,严重地影响了语音的清晰度和可懂度。

60Hz-100Hz

这段频率影响声音的混厚感,是低音的基音区。如果这段频率很丰满,音色会显得厚实、混厚感强。如果这段频率不足,音色会变得无力;而如果这段频率过强,音色会出现低频共振声,有轰鸣声的感觉。

100-150Hz

这段频率影响音色的丰满度。如果这段频率成分增强,就会产生一种房间共鸣的空间感、混厚感;如果这段频率成分缺少,音色会变得单薄、苍白;如果这段频率成分过强,音色将会显得浑浊,语音的清晰度变差。20Hz~200Hz这一段会影响音色的混厚度和丰满度,例如低音炮的声音

低频增强、低音炮:

在低频如果增强了31Hz、63Hz、125Hz 这三个频率,那么重低音的效果就会比较明显:

31Hz

这个频段需要播放器材有比较好的低频下潜能力,如果没有,当然就不容易听见,这个频段主要影响底鼓的延续音(sustain),就是踩下底鼓之后嗡嗡的声音,增强这个频段可以让音乐浑厚。

63Hz

这个频段是底鼓所在的主要频段,如果单纯把这个频点增强10dB,最明显的感受就是底鼓声变得很大,甚至破了,所以增强这个频段有助于音乐更厚实。

125Hz

这就主要是贝斯的频段了,贝斯常用的音高位置的音色主要在这一频段,当然不是说这一频段只有贝斯,增强这一频段音乐会更扎实。

基本上,如果增强了上述三个频段,你想要重低音的话就有了,这里说一下遮蔽效应,简单说就是比如你把125Hz调的很大,那么靠近125Hz的、dB数小的频率就会被遮蔽,听不到了。

150Hz-300Hz

这段频率影响声音的力度,尤其是男声声音的力度。这段频率是男声声音的低频基音频率,同时也是乐音中和弦的根音频率。如果这段频率成分缺乏,音色会显得发软、发飘,语音则会变得软绵绵;如果这段频率成分过强,声音会变得生硬而不自然,且没有特色。

250Hz

这个频率的声音这个频段,如果多了则会很比较浑浊,少了声音会很干净,硬实,但它同时也是人声、弦乐、手鼓等等音色的主要共鸣点的所在频段。

300Hz-500Hz

这段频率是语音的主要音区频率。这段频率的幅度丰满,语音有力度。如果这段频率幅度不足,声音会显得空洞、不坚实;如果这段频率幅度过强,音色会变得单调,相对来说低频成分少了,高频成分也少了,语音会变成像电话中声音的音色一样,显得很单调。影响音色和结实度.

500Hz

和250Hz的感受相似,这一频段的增强会使一些铺底的合成器pad音色凸显出来,会使更多的男声凸显出来,这一频段多了还是会浑浊,稍微增加一些会使音乐有更多温暖、亲近的感觉。

500Hz-1KHz

这段频率是人声的基音频率区域,是一个重要的频率范围。如果这段频率丰满,人声的轮廓明朗,整体感好;如果这段频率幅度不足,语音会产生一种收缩感;如果这段频率过强,语音就会产生一种向前凸出的感觉,使语音产生一种提前进人人耳的听觉感受。

800Hz

这个频率幅度影响音色的力度。如果这个频率丰满,音色会显得强劲有力;如果这个频率不足,音色将会显得松弛,也就是 800Hz

以下的成分特性表现突出了,低频成分就明显;而如果这个频率过多了,则会产生喉音感。人人都有一个喉腔,人人都有一定的喉音,如果音色中的喉音成分过多了,则会失掉语音的个性、失掉音色美感。因此,音响师把这个频率称为"危险频率",要谨慎使用

1KHz

这个频段可以算作一个分水岭,大部分乐器的基频都在200—1000Hz,所以调节1000以下的频段会更多的影响音色(不是影响音量),增强这一频段会使音色更明亮。

1KHz-2KHz

这段频率范围通透感明显,顺畅感强。如果这段频率缺乏,音色则松散且音色脱节;如果这段频率过强,音色则有跳跃感。

2KHz

增强人声的可懂性,说白了听得更清楚,包括吉他贝斯的琴弦摩擦的声音,电吉他的尖刺感,两元店大喇叭里的广告,都可以让你更多的体会这一频段的特点,所以增强这一频段让音乐更清晰。

2KHz-3KHz

这段频率是影响声音明亮度最敏感的频段,如果这段频率成分丰富,则音色的明亮度会增强,如果这段频率幅度不足,则音色将会变得朦朦胧胧;而如果这段频率成分过强,音色就会显得呆板、发硬、不自然。

4KHz

这个频率的穿透力很强。人耳耳腔的谐振频率是 1~4KHz 所以人耳对这个频率也是非常敏感的。如果空虚频率成分过少,听觉能力会变差,语音显得模糊不清了。如果这个频率成分过强了,则会产生咳声的感觉,例如当收音机接收电台频率不正时,播音员常发出的咳音声。这一频段可以让声音更完整,更具细节,更多现场感,但是过多的提升也会让人觉得刺耳,听觉疲劳。

4KHz-5KHz

这段频率对乐器的表面响度有影响。如果这段频率成分幅度大了,乐器的响度就会提高;如果这段频率强度变小了,会使人听觉感到这种乐器与人耳的距离变远了;如果这段频率强度提高了,则会使人感觉乐器与人耳的距离变近了。

5KHz-6KHz

这段频率最影响语音的清晰度、可懂度。如果这段频率成分不足,则音色显得含糊不清;如果此段频率成分过强,则音色变得锋利,易使人产生听觉上的疲劳感。5KHz以上是几乎所有乐器的谐波成分,也是人耳最敏感的频段,比如把5000Hz提升6dB,有时会让人觉得整个音量被开大了一倍,如果过多的衰减则会让音乐听起来很远。

6KHz-8KHz

这段频率影响音色的明亮度,这是人耳听觉敏感的频率,影响音色清晰度。如果这段频率成分缺少,则音色会变得暗淡;如果这段频率成分过强,则音色显得齿音严重。

8KHz

这个频段比较明显的是各种镲声、弦乐摩擦琴弦的声音、还有就是齿音,比如提升该频段会放大歌手四、是、次、字一类的发音。一般很少会大幅提升这一频段。这段频率 s 音非常明显,影响音色的清晰度和透明度。如果这频率成分缺少,音色则变得平平淡淡;如果这段频率成分过多,音色则变得尖锐。

10KHz-12KHz

这是高音木管乐器的高音铜管乐器的高频泛音频段,例如长笛、双簧管、小号、短笛等高音管乐器的金属声非常强烈。如果这段频率缺乏,则音色将会失去光泽,失去个性;如果这段频率过强,则会产生尖噪,刺耳的感觉。

12KHz-16KHz

这是人耳可以听到的高频率声波,是音色最富于表现力的部分,是一些高音乐器和高音打击乐器的高频泛音频段,例如镲、铃、铃鼓、沙锤、铜刷、三角铁等打击乐器的高频泛音,可给人一种"金光四射"的感觉,强烈地表现了各种乐器的个性。如果这段频率成分不足,则音色将会会失掉色彩,失去个性;而如果这段频率成分过强,如激励器激励过强,音色会产生"毛刺"般尖噪、刺耳的高频噪声,对此频段应给予一定的适当的衰减。

16KHz

事实上这一频段确实很难分辨,如果把一首歌的16000Hz提升10dB,我一般会去听各种镲,镲会显得更亮更大声了,反之,镲声会显得小了、暗了。如果不仔细听,会感觉音乐没什么变化。

16KHz-20KHz

这段频率范围实际上对于人耳的听觉器官来说,已经听不到了,因为人耳听觉的最高频率是 15.1KHz。但是,人可以通过人体和头骨、颅骨将感受到的 16~20KHz 频率的声波传递给大脑的听觉脑区,因而感受到这个声波的存在。这段频率影响音色的韵味、色彩、感情味。如果音响系统的频率响应范围达不到这个频率范围,那么音色的韵味将会失落;而如果这段频率过强,则给人一种宇宙声的感觉,一种幻觉,一种神秘莫测的感觉,使人有一种不稳定的感觉。因为这些频率大多数是基音的不谐和音频率,所以会产生一种不安定的感受。这段频率在音色当中强度很小。但是很重要,是音色的表现力部分,也是常常被人们忽略的部分,甚至有些人根本感觉不到它的存在。

(参考杰里调试文档)

在利用 EQ均衡器(Equalizer)进行调音时,可以参考上面的对应关系使听感更好,EQ的实际应用场景:

音响、效果器等设备调音:

车载音响EQ调音:

车载音响系统的调音软件

无线蓝牙耳机APP中集成的EQ功能:

耳机的EQ功能

3.听感的后天训练

不可否认,听音和调音都需要一定的天赋,正如唱歌五音不全或者跑调的原因极有可能是不能区分声音。

推荐几个听音训练软件工具:

1.How To Listen

https://harmanhowtolisten.blogspot.com/​harmanhowtolisten.blogspot.com/

2.KLIPPEL LISTENING TEST

https://www.klippel.de/listeningtest/?v=3​www.klippel.de/listeningtest/?v=3

3.金耳朵训练APP

‎金耳朵训练​apps.apple.com/cn/app/%E9%87%91%E8%80%B3%E6%9C%B5%E8%AE%AD%E7%BB%83/id1468424396?l=pl​编辑

4.参考链接

Soomal作品 - 频率与听感的对应关系 [Soomal]​www.soomal.com/doc/10100000082.htm

杰里之音质调试篇​www.ngui.cc/zz/2135512.html?action=onClick

听音训练软件/工具 - 干脆面666 - 博客园​www.cnblogs.com/gancuimian/p/17223755.html​编辑

音乐中的低频、中频、高频部分如何定义?198 关注 · 6 回答问题

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/241197.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

边缘计算系统设计与实践:引领科技创新的新浪潮

文章目录 一、边缘计算的概念二、边缘计算的设计原则三、边缘计算的关键技术四、边缘计算的实践应用《边缘计算系统设计与实践》特色内容简介作者简介目录前言/序言本书读者对象获取方式 随着物联网、大数据和人工智能等技术的快速发展,传统的中心化计算模式已经无法…

MySQL命令行备份数据库的关键步骤

MySQL是一个广泛使用的开源关系数据库管理系统,它常用于各种规模的应用,从个人博客到大型企业级系统。在使用MySQL的过程中,数据备份是一项至关重要的任务,它能够确保在发生数据丢失或系统故障时,我们可以恢复和重新部…

JavaScript实现飘窗功能

实现飘窗功能很简单 html代码 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title…

基于yolov2深度学习网络的人员跌倒检测识别matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 YOLOv2深度学习网络 4.2 人员跌倒检测识别原理 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 clc; clear; close all; warning off; a…

2023最新软件测试面试题(带答案)

1. 请自我介绍一下(需简单清楚的表述自已的基本情况&#xff0c;在这过程中要展现出自信&#xff0c;对工作有激情&#xff0c;上进&#xff0c;好学) 面试官您好&#xff0c;我叫###&#xff0c;今年26岁&#xff0c;来自江西九江&#xff0c;就读专业是电子商务&#xff0c;毕…

【Zerotier】自建PLANET服务器内网地址连接

之前已经完成了【Zerotier】通过docker自建PLANET服务器&#xff0c;但是遇到一个问题&#xff0c;因为各种原因&#xff0c;内网里面的ZeroTier Client无法通过PLANET服务器的公网地址连接&#xff0c;愁怀了这下。在经过多方测试验证后&#xff0c;可以采取重新生成一个PLANE…

应收应付模块如何启用?

应收应付模块启动操作手册 系统平台——系统工具——系统状态控制 查看要修改的日期 财务结账到指定期限后进行联用 点击与总账联用按钮

自激活T细胞为肿瘤免疫治疗提供新思路—高分文献分享

CD28是在所有小鼠和人类T细胞上表达的共刺激受体&#xff0c;用来调节T细胞受体(TCR) 的响应。异常的CD28 信号传导是癌症、自身免疫和病毒感染中T细胞功能障碍的决定性特征之一。早期的一些研究表明CD28对CD4 T细胞更重要&#xff0c;但也有越来越多的研究者发现其对CD8 T细胞…

(反序列化)小记录

目录 [CISCN 2023 华北]ez_date 绕过MD5和sha1强相关绕过 date()绕过 payload [FSCTF 2023]ez_php [CISCN 2023 华北]ez_date <?php error_reporting(0); highlight_file(__FILE__); class date{public $a;public $b;public $file;public function __wakeup(){if(is_a…

【Pyqt5】QWidget: Must construct a QApplication before a QWidget

问题说明&#xff1a; pyqt6切换为pyqt5时&#xff0c;引用自定义类时报错&#xff0c;QWidget: Must construct a QApplication before a QWidget 解决办法 修改导入python包的导入顺序后可以正常运行 使用pyqt5时需将pyqtgraph放到pyqt5之后导入

HT4125 低压CMOS 缓冲门器件 单电源电压转换

​​亿胜盈科HT4125 是一款低压CMOS 缓冲门器件&#xff0c;可运行在针对便携式和电池设备的更宽电压范围内。 其采用了较低阀值电路来设计此输入&#xff0c;以便匹配Vcc 3.3V 时的1.8V 输入逻辑&#xff0c;并且可被用 在1.8V 至3.3V 电平上行转换器功能中。此外&#xff0c;…

如何在 Windows 7/8/10/11 中恢复已删除的文件 [7 种方式]

当文件堆积时&#xff0c;您可以删除其中一些文件以获得更多存储空间或组织良好的环境。然而&#xff0c;最糟糕的是 如果您不小心删除了运行 Windows 11、10、8、7 或 XP 的 PC 上的重要文件&#xff0c;就会发生。在这种情况下&#xff0c;您 应该看到 如何在Windows上恢复已…

【云原生kubernets】Deployment的功能与应用

一、导读 所有的 Deployment 对象都是由 Kubernetes 集群中的 DeploymentController 进行管理&#xff0c;DeploymentController 会在启动时通过 Informer 监听三种不同资源的通知&#xff0c;Pod、ReplicaSet 和 Deployment&#xff0c;这三种资源的变动都会触发 DeploymentCo…

小米路由器4A千兆版如何刷OpenWRT并使用固定地址远程访问

文章目录 前言1. 安装Python和需要的库2. 使用 OpenWRTInvasion 破解路由器3. 备份当前分区并刷入新的Breed4. 安装cpolar内网穿透4.1 注册账号4.2 下载cpolar客户端4.3 登录cpolar web ui管理界面4.4 创建公网地址 5. 固定公网地址访问 前言 OpenWRT是一个高度模块化、高度自…

UE5 - ArchvizExplorer与Map Border Collection结合 - 实现电子围栏效果

插件地址&#xff1a; https://www.unrealengine.com/marketplace/zh-CN/product/archviz-explorer https://www.unrealengine.com/marketplace/zh-CN/product/map-border-collection ArchvizExplorer扩展&#xff1a; https://download.csdn.net/download/qq_17523181/8843305…

逻辑回归原理及代码

逻辑回归原理 线性回归主要用于预测连续的数值输出&#xff0c;基于线性关系模型&#xff0c;其目标是最小化实际值和预测值之间的差异。 逻辑回归主要用于分类问题&#xff0c;尤其是二元分类&#xff0c;它预测属于某一类别的概率&#xff0c;并基于概率输出进行决策&#x…

这两个管理方法 在现货白银顺势交易中会用得上

我们常说&#xff0c;在现货白银交易中做顺势交易&#xff0c;那盈利的概率会高一些。但是这并不是说做顺势交易就肯定盈利&#xff0c;其实顺势交易也需要投资者去进行管理的&#xff0c;不要以为顺势交易入场之后就万事大吉了。那投资者该如何管理呢&#xff1f;下面我们就来…

桌面便签软件哪个好用?可以放在桌面上的便签软件使用哪个

在现代快节奏的生活中&#xff0c;我们时常感到生活与工作的节奏难以协调。繁琐的工作日程与待办任务繁杂交织&#xff0c;往往让我们束手无策&#xff0c;无法高效地进行协调与分配。 桌面便签工具成为了我们处理这些挑战的得力助手。它不仅能够随时提醒我们完成任务&#xf…

Leetcode—530.二叉搜索树的最小绝对差【简单】

2023每日刷题&#xff08;五十八&#xff09; Leetcode—530.二叉搜索树的最小绝对差 实现代码 /*** Definition for a binary tree node.* struct TreeNode {* int val;* struct TreeNode *left;* struct TreeNode *right;* };*/ void dfs(struct TreeNode* roo…

UI设计中的肌理插画是什么样的?

肌理插画本质也和扁平插画差不多&#xff0c;相较扁平插画&#xff0c;肌理插画的层次感、细节更多&#xff0c;也会更立体生动。 肌理插画风格没有描边线&#xff0c;画面轻快&#xff0c;通过色块的明暗来区分每个元素&#xff0c;有点像色彩版的素描&#xff0c;但更简单&a…