V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
baojunz
V2EX  ›  程序员

再次请教关于音乐评分的问题

  •  
  •   baojunz · 3 天前 · 762 次点击



    (一)先说一下需求背景:

    1.图中上面部分是原始音符的频谱,也就是标准音

    2.图中下面部分,黄色渐变的线条,则对应频谱中标准音做发出的声音(哆( Do )、来( Re )、咪( Mi )、发( Fa )、嗦( Sol )、啦( La )、西( Ti )、哆( Do ))

    3.图中下面部分,蓝色线条,则代表的是实时录制的人声

    4.x 轴代表的是时间,y 轴代表的是音符 hz



    (二)我们现在评分的方案

    评分由三个部分组成:

    1.音高:假设目前人声发出的声音赫兹是 200 赫兹,而标准音符的赫兹为 100hz ,则不得分(在对应时间段内,人声所发出的赫兹数越接近标准赫兹数,得分越高。同时已考虑上下加减 50 范围)

    2.唱名:人声所发出的声音是否符合标准声,比如在第 3 秒人声发出的是 咪( Mi ),而标准音发出的是西( Ti )则不得分 [该部分目前没有找到合适的评分工具,用的阿里的声音汉字识别,识别的也不准]

    4.节奏:假设标准音的 第一秒是 哆( Do )且持续两秒,第三秒是 来( Re ),且持续三秒。也就是两个标准音一个持续了两秒,一个持续了三秒。一共五秒。需要判断人声是否是在第二秒结束,第三秒开始,进行了正确的音符切换(越接近切换的标准时间,得分越高,同时已考虑前后加减 1000 毫秒) [目前没有找到好的方案,采用的是对应时间内音频赫兹来匹配是否符合对应时间内的音频]



    (三)我们在实际评分遇到的问题:

    1.音高,唱名,节奏的评分计算规则,是否有成熟的算法。或者付费 api 。



    可在话题下追问、讨论,在此提前感谢各位佬!

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   977 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 22:14 · PVG 06:14 · LAX 15:14 · JFK 18:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.