V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
829939
V2EX  ›  程序员

这个小项目,上周被国外 AI 新闻网站报道,前些天又上了 github 热榜

  •  
  •   829939 ·
    LiweiDong · 2023-03-27 10:29:27 +08:00 · 17709 次点击
    这是一个创建于 586 天前的主题,其中的信息可能已经有所发展或是发生改变。

    疫情期间在校花了几个月时间,写了这个小项目,是关于音频特征提取和分析的,自己是 AI 专业研究音频的,但受限于对音频特征的理解,做研究时总感觉缺乏“底料”,所以当做是学习练手做了这个小东西。

    因为是学习练手的小项目,放 github 上面后就没有太多跟进了,后来看到国内几个有名的 github 项目周报博主,想着提下 issure ,如果被收录发表的话,得到些关注获得一些 star 也是很开心的,没想到一个也没收录发表,issure 都是被忽略跳过的。

    想想有些灰心,做的这个小项目本身有些偏,和前后端领域都不怎么沾边,和当前大火的 chatGPT 各种业务项目也比不了,不被收录发表也是正常的。

    本来想着这个小项目能有几十个 star 就很满足的,没想到除了同学的几个 star 之外一个关注都没有,灰心丧气之时,上周竟然被国外一个 AI 新闻网站报道,带来了一些流量增加 200+star ,虽然相比 github 上一些爆火、优质的项目不值得一提,但相比之前几个 star 的情况好大多了,这是相关的文章:
    https://www.marktechpost.com/2023/03/24/meet-audioflux-a-deep-learning-library-for-audio-and-music-analysis-feature-extraction/

    mark 当时还是首页报道,赶快截了图

    前些天又上 github trending ,这估计纯属运气好,但持续时间并不长,又增加了一小波流量带来 100+star github

    这是当时的榜单,几乎都是 chatGPT 相关或其它大作的项目,我这个小项目显得有些格格不入,赶紧截图了

    最后看了一些关注用户,几乎大部分都是国外的,各领域都有,一些用户质量非常高,做深度学习相关的偏多。 希望国内感兴趣的能关注支持一下,如果能参与加入进来一起做好这个开源小项目更好。
    项目地址: https://github.com/libAudioFlux/audioFlux

    122 条回复    2023-03-29 15:14:44 +08:00
    1  2  
    sunnysab
        1
    sunnysab  
       2023-03-27 10:33:00 +08:00 via Android
    star 了,祝项目越来越好!
    hyhnm
        2
    hyhnm  
       2023-03-27 10:35:03 +08:00   ❤️ 1
    README.md 赏心悦目,star
    Lirika
        3
    Lirika  
       2023-03-27 10:35:52 +08:00
    你们的英语水平真好,羡慕
    xbcslzy
        4
    xbcslzy  
       2023-03-27 10:40:12 +08:00
    牛啊 marktechpost 是一个位于加利福尼亚州的人工智能新闻平台,拥有超过 150 万人工智能专业人士 /开发人员的社区,这是推特上的介绍。
    sarvatathagata
        5
    sarvatathagata  
       2023-03-27 10:41:29 +08:00
    @Lirika 指“提下 issure”?
    xbcslzy
        6
    xbcslzy  
       2023-03-27 10:43:51 +08:00   ❤️ 1
    marktechpost 发布机器学习、深度学习相关的最新更新,追踪全球高校和企业研究机构的最新 AI 成果,楼主这个“小项目”能被 marktechpost 发布,说明一些方面非常优秀了。
    829939
        7
    829939  
    OP
       2023-03-27 10:48:20 +08:00
    @xbcslzy 国内高校优质项目不少,我这个估计应该排不上。
    Lirika
        8
    Lirika  
       2023-03-27 10:48:43 +08:00
    @sarvatathagata #5 readme ,以及文档,看着真专业,还以为是个国外的开源项目
    xbcslzy
        9
    xbcslzy  
       2023-03-27 10:51:47 +08:00
    @829939 看了下项目关注的一些人,国外高校研究生,深度学习相关研发的人不少,这些都是 marktechpost 过来的?
    fanjk
        10
    fanjk  
       2023-03-27 10:56:49 +08:00
    @829939 这个项目我好像在 reddit 网站深度学习板块首页看到过,当时就觉得不错,AI 接入音乐分析肯定是未来的趋势,国外有些比较火的和你这个库有点像,比如 chordu ,chordify 等等。加油,先介入就有机会定义标准,支持国产
    829939
        11
    829939  
    OP
       2023-03-27 10:56:58 +08:00
    @Lirika 英语一般,做研发查资料、写论文用的多些,习惯就好
    829939
        12
    829939  
    OP
       2023-03-27 10:57:31 +08:00
    @xbcslzy 应该是,这个网站过来的量占大部分
    yaozeyuan93
        13
    yaozeyuan93  
       2023-03-27 11:00:25 +08:00
    酷炫, 加油加油
    collinmehle
        14
    collinmehle  
       2023-03-27 11:12:00 +08:00
    marktechpost 这个网站挺专业的啊,第一次接触,干货满满的。
    arrhenius
        15
    arrhenius  
       2023-03-27 11:12:28 +08:00
    真帅,第 668 个 star 是我的,哈哈哈
    829939
        16
    829939  
    OP
       2023-03-27 11:15:27 +08:00
    @arrhenius 666 感谢老铁
    829939
        17
    829939  
    OP
       2023-03-27 11:16:26 +08:00
    @collinmehle 是的,marktechpost 挺专业的,不少项目都有 github 开源,是学习找项目的好地方。
    Yafun
        18
    Yafun  
       2023-03-27 11:22:47 +08:00
    好耶 我是第 676 个 star
    829939
        19
    829939  
    OP
       2023-03-27 11:25:31 +08:00
    @fanjk 大佬分析的非常有道理,GPT-4 已支持插件系统,预示着又一个“苹果商店”生态即将崛起,将对各行业都会产生深远影响,这里面机会非常多.
    ppxiale
        20
    ppxiale  
       2023-03-27 11:31:47 +08:00
    现在看,marktechpost 网站 Deep Learning 板块首页还有
    ppxiale
        21
    ppxiale  
       2023-03-27 11:51:31 +08:00   ❤️ 1
    大致看了下项目,很好奇是哪些周报博主?对这个“小项目”有些眼拙啊
    collinmehle
        22
    collinmehle  
       2023-03-27 11:59:51 +08:00
    @ppxiale 我已经关注过,虽然水平一般,但眼不拙
    fanjk
        23
    fanjk  
       2023-03-27 12:02:32 +08:00
    @ppxiale 已 star,眼不拙
    zhengwu119
        24
    zhengwu119  
       2023-03-27 12:09:19 +08:00 via iPhone
    怎么样才能上 github 热榜,传授下经验☺️
    829939
        25
    829939  
    OP
       2023-03-27 12:14:59 +08:00
    @zhengwu119 我这边真的没有什么经验,能上估计全靠运气。
    ppxiale
        26
    ppxiale  
       2023-03-27 12:46:48 +08:00
    @829939 我认为 ChatGPT 出来之后,文本方面的只能才算是一个突破,音频处理、视频处理目前都还是未知领域,相信在不久的将来,语音和视频方面也能够有这种产品出来 ,非常看好这个行业前途,楼主加油。
    airqj
        27
    airqj  
       2023-03-27 12:50:28 +08:00
    跟[pyAudioAnalysis]( https://github.com/tyiannak/pyAudioAnalysis)
    相对有什么独到之处吗
    829939
        28
    829939  
    OP
       2023-03-27 13:33:37 +08:00 via iPhone
    @ppxiale 感谢
    1. 支持的功能比 pyAudioAnalysis 要多一些,支持数十种时频分析变换方法和数百种对应的时域、频域特征组合。
    2. 性能高效,核心大部分 C 实现,基于不同平台 FFT 硬件加速,方便大规模数据特征提取。
    3. 跨平台,支持移动端音频流实时计算,release 的时候已发布 android ,iOS 平台相关 so 库
    governcoco
        29
    governcoco  
       2023-03-27 13:35:09 +08:00
    想请问一下楼主我的一些讲座文件想要做语音增强去噪音有什么办法吗?
    829939
        30
    829939  
    OP
       2023-03-27 13:35:32 +08:00 via iPhone
    @airqj
    1. 支持的功能比 pyAudioAnalysis 要多一些,支持数十种时频分析变换方法和数百种对应的时域、频域特征组合。
    2. 性能高效,核心大部分 C 实现,基于不同平台 FFT 硬件加速,方便大规模数据特征提取。
    3. 跨平台,支持移动端音频流实时计算,release 的时候已发布 android ,iOS 平台相关 so 库
    829939
        31
    829939  
    OP
       2023-03-27 13:59:58 +08:00   ❤️ 4
    @governcoco

    降噪的方法有很多,传统数字信号领域有很多方式,
    1. 最简单的一种方式是高通滤波器,你讲课的语音估计低频白噪占一部分,最好再加上 weight-A 计权,有助于提升语音降噪后的质量,当然在不同场景下噪声分布情况,可选择成熟的自适应滤波器也有很多如维纳滤波、卡尔曼等等;
    2. 谱减法,这种方法需要估算下噪声的功率谱情况,频域上直接操作,某些场景下效果要好很多;
    3. 深度学习相关,这种方式目前发的 paper 不少,语音增强和去噪方面取得了显著的进展,用常见 CNN 或 LSTM 等其他常用网络模型训练,需要对大量数据打标或生成相关场景下不同样本增强数据

    大概这么多,希望对你有帮助
    airqj
        32
    airqj  
       2023-03-27 14:05:43 +08:00
    @829939 不错 支持
    已 star🐶
    liufish
        33
    liufish  
       2023-03-27 14:13:12 +08:00
    @829939 这个就叫做专业.jpg 👈
    829939
        34
    829939  
    OP
       2023-03-27 14:15:48 +08:00
    @liufish 感谢大佬认可
    yzbythesea
        35
    yzbythesea  
       2023-03-27 14:34:31 +08:00
    你的个人主页差点让我直接拔电源了 lol
    StanWang
        36
    StanWang  
       2023-03-27 14:38:33 +08:00
    这个项目和 librosa 有什么不同?
    StanWang
        37
    StanWang  
       2023-03-27 14:39:49 +08:00
    已 watch star
    829939
        38
    829939  
    OP
       2023-03-27 14:45:52 +08:00
    @yzbythesea 哈哈 FBI Warning
    602120734
        39
    602120734  
       2023-03-27 15:01:35 +08:00
    @zhengwu119 搞一个 awesome 或 ChatGPT 其他领域相关的包装,估计这段时间上的几率大一些
    829939
        40
    829939  
    OP
       2023-03-27 15:04:17 +08:00
    @StanWang 感谢支持。

    首先,librosa 是一个非常好的音频特征库。很多做相关研究的也在用 librosa 做测试。

    audioFlux 和 librosa 的区别在于:
    1. audioFlux 更适合系统化和多维护特征提取与组合,可以灵活适用于各种研究和分析。
    2. audioFlux 更高性能,核心部分全部使用 C 实现。使用 FFT 加速,更适合大规模数据的特征提取。( librosa 全部使用 python 实现)
    3. audioFlux 支持移动端,并满足移动端音频流的实时计算。

    因为我在做移动端音频 MIR 相关的业务,所以特征提取的操作必须满足跨平台和高性能。

    对于模型训练,当时我用 librosa 的方法提取 CQT 相关的特征,处理 10000 个样本数据需要 3 个小时时间!!真的太慢了。

    性能比较也再 README 里提到了。在服务器和移动端分别做的测试-如下图




    再次感谢支持和关注,有兴趣可以加入到项目里一起做贡献。
    airqj
        41
    airqj  
       2023-03-27 15:13:46 +08:00
    @829939 要是能直接支持 wasm 就好了
    829939
        42
    829939  
    OP
       2023-03-27 15:23:31 +08:00
    @airqj 好想法,目前开源项目 Emscripten 支持把 C/C++编译成 WebAssembly ,我的项目核心部分都是 C 实现的,和系统平台无关,理论上更容易用 Emscripten 编译,不知道 web audio 领域应用场景如何,有感兴趣的大佬可以指导参与一起开发!
    justwkj07
        43
    justwkj07  
       2023-03-27 15:34:10 +08:00
    大佬呀
    airqj
        44
    airqj  
       2023-03-27 15:36:19 +08:00
    @829939 现在不都能边缘计算就边缘计算了嘛
    之前用 libaubio 做了特征提取,onnx 音频分类的模型,用起来感觉还不错
    bs10081
        45
    bs10081  
       2023-03-27 15:47:28 +08:00
    已 Star 🌟
    829939
        46
    829939  
    OP
       2023-03-27 15:50:22 +08:00
    @justwkj07 感兴趣而已,学的这个专业领域,接触相关信息较多一些。
    829939
        47
    829939  
    OP
       2023-03-27 15:58:09 +08:00
    @airqj “现在不都能边缘计算就边缘计算了嘛” ,这个理念非常好

    aubio 也是音频领域比较知名的一个库,应该是 QueenMary 大学 C4DM 小组的作品,Chris Cannam 是这个领域的大神,我老师就读的这个大神的博士,他领导的 qm-dsp 是一个系统的 C 框架,可惜关注度不高, aubio 算是其一个简化版,,却打出一定名声,相应的 aubio 功能要简化很多,易用的命令行 API 确实方便很多人上手
    829939
        48
    829939  
    OP
       2023-03-27 15:58:27 +08:00
    @bs10081 感谢支持!
    airqj
        49
    airqj  
       2023-03-27 16:44:34 +08:00
    @829939 是的 aubio 的命令行工具配合 shell 用起来是在是太爽了
    兄弟你也可以考虑出一个命令行工具
    829939
        50
    829939  
    OP
       2023-03-27 16:57:16 +08:00
    @airqj 感谢建议,这个可以有,确实很爽,规划近期推出名强大的命令行工具,到时候使用上多提意见!
    airqj
        51
    airqj  
       2023-03-27 17:00:10 +08:00
    @829939 做好了记得 @我 🐶
    findex
        52
    findex  
       2023-03-27 17:07:56 +08:00
    支持一下
    829939
        53
    829939  
    OP
       2023-03-27 17:10:57 +08:00
    @airqj 必须的 ,老铁 666
    829939
        54
    829939  
    OP
       2023-03-27 17:13:35 +08:00
    @findex 感谢支持!
    gniviliving
        55
    gniviliving  
       2023-03-27 17:16:11 +08:00
    @Yafun #18 我是第 800 个 star
    StanWang
        56
    StanWang  
       2023-03-27 17:21:17 +08:00
    @829939 收到,感谢详细分析
    idlewater
        57
    idlewater  
       2023-03-27 17:26:21 +08:00
    挺好的
    829939
        58
    829939  
    OP
       2023-03-27 17:36:30 +08:00
    @gniviliving 幸运数字,非常感谢支持
    829939
        59
    829939  
    OP
       2023-03-27 17:37:16 +08:00
    @idlewater 大佬前端项目挺好的,已关注,支持优秀原创项目!
    whistle
        60
    whistle  
       2023-03-27 17:56:22 +08:00
    我是做移动端的,看文档只有 Python 的,能否出个 Android 端 JNI 接口和文档?
    829939
        61
    829939  
    OP
       2023-03-27 18:11:06 +08:00
    @whistle 项目 Release 中有 Android 端的 so 库,但 Android jni 这块我不熟,我会加入到项目后续计划里面,有兴趣意向的同学可以加入进来一起完善 Android jni 这块
    hzzheyang
        62
    hzzheyang  
       2023-03-27 18:15:25 +08:00 via iPhone
    非常好的项目,建议可以提供下中文文档支持,对国内开发者会更友好一些,也更易于国内推广
    olderwang
        63
    olderwang  
       2023-03-27 18:31:20 +08:00
    研究研究,librosa 还没看明白,急需中文文档支持下
    829939
        64
    829939  
    OP
       2023-03-27 18:31:28 +08:00
    @hzzheyang 非常好的建议,最近正在做这个事情
    829939
        65
    829939  
    OP
       2023-03-27 19:09:26 +08:00 via iPhone
    @olderwang 收到,中文文档尽快上线。
    hzzheyang
        66
    hzzheyang  
       2023-03-27 19:23:23 +08:00 via iPhone
    @829939 大佬 666
    olderwang
        67
    olderwang  
       2023-03-27 19:40:26 +08:00
    @829939 期待,这段时间我先搞 demo 测测
    chatWell1
        68
    chatWell1  
       2023-03-27 22:14:17 +08:00
    OC 和 C 不太熟悉,iOS swift 能支持吗?
    829939
        69
    829939  
    OP
       2023-03-27 22:36:26 +08:00 via iPhone
    @chatWell1 swift 语言不熟悉,有熟悉这块和 C 桥接的同事可以推荐加入进来一起完善 iOS 端 swift 的支持。
    VVValent
        70
    VVValent  
       2023-03-27 22:53:41 +08:00
    虽然不太懂,但是你好棒!
    butterls
        71
    butterls  
       2023-03-27 23:54:21 +08:00 via Android
    @829939 音频到振动的特征转换有什么思路吗,最近准备做音频特征提取转成振动波形驱动马达,librosa 确实没法上嵌入式设备,正好在找 C 库。 音乐类有明显统计特征的还好一点,对于纯声音这种一直没什么好思路
    qoras
        72
    qoras  
       2023-03-28 00:16:16 +08:00
    恭喜!!
    davidqw
        73
    davidqw  
       2023-03-28 00:32:38 +08:00
    不错不错,已 star
    Chihaya0824
        74
    Chihaya0824  
       2023-03-28 07:42:39 +08:00
    Star 了,readme 真好看
    ixinshang
        75
    ixinshang  
       2023-03-28 09:00:02 +08:00
    国内几个有名的 github 项目周报博

    方便说出来一下不 或者我等下去你的主页翻一下
    whistle
        76
    whistle  
       2023-03-28 09:05:35 +08:00
    @829939 👍
    829939
        77
    829939  
    OP
       2023-03-28 09:38:32 +08:00 via iPhone
    @butterls 我没太理解你表达的技术描述,能说下业务需求或再次解释下吗
    829939
        78
    829939  
    OP
       2023-03-28 09:41:28 +08:00 via iPhone
    @davidqw
    @Chihaya0824 非常感谢!
    829939
        79
    829939  
    OP
       2023-03-28 09:45:38 +08:00 via iPhone
    @ixinshang HellGitHub 是一个不错的项目周报,每月都会不间断分享开源项目,运营的非常好,国内流量应该不少。前端一个什么峰,也有一个不错的开源周报,应该流量也不少,前些天看论坛帖子不是说一个大佬的前端项目被他开过光后,引来了不少的关注。

    两个都是非常不错的开源周报,后面我多多努力,希望能得到他们的收录发表。
    chatWell1
        80
    chatWell1  
       2023-03-28 09:46:01 +08:00
    @829939 一定向这块的朋友推荐
    dark009
        81
    dark009  
       2023-03-28 10:01:26 +08:00
    我想做一个吉他调音器的功能,不知道这个项目是否支持?
    stonepy
        82
    stonepy  
       2023-03-28 10:10:29 +08:00
    请教下大佬,要做一个类似识别语音“上、下、左、右”这种固定几个语音指令的识别,我该如何入手?
    829939
        83
    829939  
    OP
       2023-03-28 10:16:13 +08:00 via iPhone
    @dark009
    完全没问题,项目中 MIR 模块中有几个不同 pitch 侦测的算法,根据你的业务情况做多做下测试调参,结合上层业务情况的优化应该能出一个不错的效果。
    829939
        84
    829939  
    OP
       2023-03-28 10:17:19 +08:00 via iPhone
    @stonepy
    这个业务属于 ASR 领域孤立词识别,可以用 i-vector 相关技术,基于 PCA 的特征向量比对也可以尝试,还可以拿 MFCC 、mel 频谱这些特征,作为 CNN 和 RNN 网络进行训练分类,当然前面的这些特征合理归一化后也可以尝试打标签走网络分类训练,希望这些对你有所启发和帮助。
    stonepy
        85
    stonepy  
       2023-03-28 10:21:22 +08:00
    @829939 感谢大佬给思路,我去尝试一下,有问题再向大佬请教~
    xbcslzy
        86
    xbcslzy  
       2023-03-28 10:45:42 +08:00
    @829939 大佬了解拇指琴这个乐器吗,想做一个这个乐器的调音器,目前试了一些开源的算法效果都不理想,有哪些建议?
    829939
        87
    829939  
    OP
       2023-03-28 10:50:09 +08:00
    @xbcslzy 不太了解这个乐器,请问都用了开源哪些算法,这个乐器的音域大概多少?
    CMLab
        88
    CMLab  
       2023-03-28 10:51:32 +08:00
    @829939 能否出一个 C 语言 command line 版本,一些业务上会非常方便?
    heywin
        89
    heywin  
       2023-03-28 10:57:32 +08:00   ❤️ 1
    二话不说直接 star 助你一臂之力
    829939
        90
    829939  
    OP
       2023-03-28 11:06:02 +08:00
    @CMLab 感谢建议,上面己有用户提出过,规划近期推出强大的命令行工具版本。
    829939
        91
    829939  
    OP
       2023-03-28 11:08:00 +08:00
    @heywin 就喜欢哥们这样的爽快人 真帅
    CMLab
        92
    CMLab  
       2023-03-28 11:08:53 +08:00
    @829939 非常期待,出来后论坛里可以发个消息
    YZZS
        93
    YZZS  
       2023-03-28 11:14:39 +08:00
    支持一下大佬
    602120734
        94
    602120734  
       2023-03-28 11:43:37 +08:00
    支持下大佬,pip 安装试了下,效果可以的,就是好像清华节点还没有最新版本的包?我安装的还是 0.1.3 版本
    829939
        95
    829939  
    OP
       2023-03-28 11:59:56 +08:00
    @602120734 清华镜像目前看起来同步的比较慢,请先使用官方源或者阿里镜像。
    butterls
        96
    butterls  
       2023-03-28 12:58:26 +08:00 via Android
    @829939 需求简单说是希望通过音频数据生成基础触感数据,然后驱动马达振动特定幅度频率

    音频数据我现在是简单做了二分
    1. 音乐类相对有规律,而且现有的节拍检测等方法有理论支撑,相对生成的振动效果比较好,但是对于节奏不明显的和声部分就会比较拉胯(这时候振动有点类似驱动了一个特殊的喇叭声道,但是和声分量即使设定阈值过滤一直振会很抢戏,主要还是缺少特点意义的检测,而且也不是所有音乐都很有节奏感)

    2. 对于普通的声音,比如游戏场景中的随机枪声,按钮模拟,脚步等等这类的规律性不强的音频生成振动纹理,单纯用能量特征检测处理出来就很奇怪,相比音乐类,匹配出来的的振感就很差

    因为对音频特征提取这部分确实了解的不深,所以想问问看大佬对这种非规律音频特征处理有没有什么思路,另外就是音频感知范围和振动区间( 50-500HZ )差异还是蛮大,直接做两种信号的范围映射后再处理是不是会更奇怪
    829939
        97
    829939  
    OP
       2023-03-28 14:00:58 +08:00 via iPhone
    @butterls 1. “希望通过音频数据生成基础触感数据”,音频有很多特征数据可以驱动马达,如果要求是特定强度的频率震动跟随音乐鼓点的话,端点和当前范围内功率谱就可以, 是否类似音乐播放可视化震动这种效果?

    2. “非规律音频” 有很多,如你所说枪声,脚步这些的区分,时域上典型的有包络,频域上有频谱、mfcc 等,如果短时突变信号多的话,可以用 CWT ,至于如何映射,这个具体和你的业务测试情况相关了,可以尝试常见的 mel/bark/erb 这些听觉刻度模型映射测验小效果。
    dark009
        98
    dark009  
       2023-03-28 14:04:24 +08:00
    @829939 谢谢帮忙分析,已 star
    beneo
        99
    beneo  
       2023-03-28 14:09:04 +08:00
    readme 里面的图怎么画的啊
    stanwanng
        100
    stanwanng  
       2023-03-28 14:14:48 +08:00
    ECG(人体心电图)信号进行分类,大致有三种类型数据,NSR(正常),ARR(失长)、CHF(衰竭)这三种,这块做深度学习训练分类的话用什么特征作为输入好?不知道 ECG 信号是否同样可用你项目中 audio 的特征?
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   986 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 20:17 · PVG 04:17 · LAX 13:17 · JFK 16:17
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.