前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >音频算法之我思

音频算法之我思

原创
作者头像
cpuimage
发布于 2018-10-23 16:14:41
发布于 2018-10-23 16:14:41
1.9K0
举报
文章被收录于专栏:算法+算法+

很长一段时间,扎根在音频领域,各种玩耍。

渐渐上了轨道。

一切的一切仅仅因为相信自己能做好,也必须做好。

不懂就去查,去问,去找资料,去找视频。

渐渐的,我开始懂了,也慢慢有了系统性的理解。

随后经常能发散思维。

最近,

在自动增益,

音频降噪,

语速检测,

相位谱重建各个算法之间穿梭。

慢慢有所产出,有所突破。

特别是在音频降噪领域,

不能算质的飞跃,

但是确实摸到了一些规律。

而写完相位谱重建算法之后,

我也突发奇想,

相位谱既然能通过高斯分布的思路进行重建,

那是不是可以说明,

高斯分布可以用来作为音频算法的信号标准化,归一化。

这是一个值得去研究的方向,

音频信号的高斯归一化。

前面面试了一家公司的时候,

提到说音频通过能量谱可以重建相位谱,

那面试官好像认定我是傻子,

就好像觉得我是在胡扯一样。

真的懒得解释,

实操是验证真理的唯一标准。

而语速检测,

其实有点类似音乐的节拍检测,

只不过一定要去除空白帧,

因为空白从另一个角度来说,

可以认为是停顿,或者说换气。

所以语速检测的思路也可以基本确认。

而自动增益方面,

找资料的时候发现一个神奇的标准,EBU R128,

这里就不科普展开了,感兴趣的可以维基一下。

这个算法在FFMPEG里面有很详细的实现,

抠出来算法代码,直接应用,

效果不要太好。

近期,终于回到广东,

在南京接受了太多的负能量,回来之后真的有获得新生的感觉。

世界顿时和平。

相对于深度学习而言,

我还是比较坚持采用传统算法去实现降噪增益等处理,

原因也很简单,音频时效性特别重要。

采用深度学习很多时候要做大量的工作才能保证时效性了,

从软件,硬件的角度来说,音频不比图像好处理。

自然挑战也多了起来,

不过庆幸的是,

在傻逼一样的坚持之后,

不采用深度学习方案的音频降噪,

终于达到近乎可以商用的程度了。

当然最近也在思考算法的下一步优化方案。

继续验证思路,继续改良。

这里放出linux系统下的可执行文件,供大家评测。

下载地址:https://files.cnblogs.com/files/cpuimage/denoise.zip

解压后采用命令行: ./denoise sample.wav 

执行后生成降噪后的文件sample_out.wav

现在是自适应降噪强度,

降噪后自动做增益,

后续计划加上降噪的强度控制。

噪声样本自行寻觅,

比较好找。就不提供了。

在音频这条路上,

如果我走偏了,大家记得把我拉回来。

当然若有其他相关问题或者需求也可以邮件联系俺探讨。

邮箱地址是:  gaozhihan@vip.qq.com

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
轻松玩转Python文件操作:移动、删除
在处理计算机文件时,经常需要执行如移动和删除等基本操作。Python提供了一些内置的库来帮助完成这些任务,其中最常用的就是os模块和shutil模块。这两个模块包含了许多与文件和目录操作相关的函数。
木头左
2024/06/10
1790
轻松玩转Python文件操作:移动、删除
在处理计算机文件时,经常需要执行如移动和删除等基本操作。Python提供了一些内置的库来帮助完成这些任务,其中最常用的就是os模块和shutil模块。这两个模块包含了许多与文件和目录操作相关的函数。
木头左
2024/06/23
1460
python 如何删除文件夹下的所有文件和子文件夹?
上面代码删除的时候,如果想保留我们文件夹以及子文件夹,仅仅只删除文件,可以去掉这句
上海-悠悠
2024/03/25
1.1K0
python 如何删除文件夹下的所有文件和子文件夹?
Python超详细基础文件操作(详解版)
with 语句是一种上下文管理器,当它的代码块执行完毕时,会自动关闭文件。这是推荐的方式,因为它确保文件在使用完毕后被正确关闭,即使发生异常也能保证关闭。
Python兴趣圈
2023/12/30
5900
Python超详细基础文件操作(详解版)
[780]python删除一个文件或文件夹
os.remove() 方法用于删除指定路径的文件。如果指定的路径是一个目录,将抛出OSError。这时需用用os.rmdir()来删除。
周小董
2020/03/28
1.5K0
图解python | 文件与目录操作
教程地址:http://www.showmeai.tech/tutorials/56
ShowMeAI
2022/02/23
1K0
图解python | 文件与目录操作
一文搞定Python操作文件和目录
文件和目录操作是很常见的功能,这里做个简单的总结,包括注意事项和实际的实现代码,基本日常开发都够用了
AntDream
2019/08/15
5870
用python删除文件_python运行另一个py文件
一、三种删除方法 二、删除失败情况 PermissionError: [WinError 5] 拒绝访问 2.1 给python权限 2.2 删除改为更名 一、三种删除方法 python删除文件和文件夹主要用到os模块和shutil模块,针对文件夹和文件的删除,有几种情况,直接上代码:
全栈程序员站长
2022/11/17
2.3K0
用python删除文件_python运行另一个py文件
Python文件路径操作汇总
在Python编程过程中,我们常常有这样的需求,需要获取某一个文件目录下的所有文件,或获取文件目录下的所有指定后缀名的文件,亦或要求获取该文件所在的文件夹,还有可能需要替换文件名,删除文件夹。针对这些问题,本文系统总结了这些方法,以供大家参考。
python数据可视化之路
2023/02/23
2.1K0
Python文件路径操作汇总
python os模块 --- 操作系统接口模块
1.OS模块下的常见函数 # os模块 # os.sep:取代操作系统特定的路径分隔符 # os.getcwd:得到当前工作目录,即当前python脚本工作的目录路径。 # os.getenv()和os.putenv:分别用来读取和设置环境变量 # os.listdir():返回指定目录下的所有文件和目录名 # os.remove(file):删除一个文件 # os.stat(file):获得文件属性 # os.mkdir(name):创建目录 # os.rmdir(name):删除目录 # os.exit
诡途
2020/10/16
6110
零代码编程:用ChatGPT来批量删除特定文件
一个文件夹中有很多个文件重复了,重复的文件中都含有“(1)”这样的字符,需要把所有这些文件批量删除掉。
AIGC部落
2024/06/24
1070
零代码编程:用ChatGPT来批量删除特定文件
python文件和目录操作方法大全(含实例)
一、python中对文件、文件夹操作时经常用到的os模块和shutil模块常用方法。
菲宇
2019/06/13
3.8K0
python 删除文件、清空目录的方法总
os.remove() 方法用于删除指定路径的文件。如果指定的路径是一个目录,将抛出OSError。
py3study
2020/01/03
12.1K0
Python 中删除文件夹下文件的方法详解
在编写和维护 Python 脚本时,经常会遇到需要删除文件夹中特定文件的情况。Python 提供了多种方法来实现这一目标,本文将介绍几种常用的方法,以及它们的优缺点和适用场景。
霍格沃兹测试开发Muller老师
2024/04/26
2610
Python 中删除文件夹下文件的方法详解
Python 中删除文件夹下文件的方法详解
在编写和维护 Python 脚本时,经常会遇到需要删除文件夹中特定文件的情况。Python 提供了多种方法来实现这一目标,本文将介绍几种常用的方法,以及它们的优缺点和适用场景。
霍格沃兹测试开发Muller老师
2024/04/23
8550
python如何快速删除文件
简介:故事的起因是这样的,我使用ffmpeg,剪视频,但是这个视频,最后生成了数千张图片,我自己手动的删除实在是太不方便了,于是我就想到了这个方式。
GeekLiHua
2025/01/21
1300
python如何快速删除文件
把这个灭霸关进电脑里!一键随机消灭硬盘的一半文件!
复联 4 已经上映了,不知道小伙伴们都有没有买首映的电影票啊,随着复联的热度增加,各种各样的段子层出不清,我今天就在网上看到这么一个段子:
AiTechYun
2019/05/13
1.3K0
python强制删除文件夹_python删除文件夹下的文件保留但清空子文件夹
listdir = os.listdir(filepath) # 获取文件和子文件夹
全栈程序员站长
2022/08/30
4.6K0
Python文件夹与文件的操作
###Python文件夹与文件的操作 最近频繁的与文件操作打交道,这块比较弱,在百度上找到一篇比较不错的文章,这是原文的传送门 有关文件夹与文件的查找,删除等功能在os模块中实现,使用时需要导入这个模块: import os ####一、获取当前目录 s = os.getwd() s中保存的就是当前的目录(即文件夹) 下面是一个例子:将abc.py放在A文件夹,不管A放置在硬盘的哪个位置,都可以在A文件夹内生成一个新的文件夹。且文件夹的名字跟据时间自动生成: import os import time fi
xiangzhihong
2018/01/26
1.4K0
基础必备 | Python处理文件系统的10种方法
【导读】在编写一些Python程序的时候,我们常常需要与文件系统进行交互。在本文中,营长为大家整理了10个常用的相关命令,涉及查看信息、更改信息、删除文件等,并提供了相应的终端命令,帮助大家更高效地对文件系统及其中的文件内容进行操作。
AI科技大本营
2019/06/10
1.8K0
基础必备 | Python处理文件系统的10种方法
推荐阅读
相关推荐
轻松玩转Python文件操作:移动、删除
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档