>> "C major" chordName("C", "E", "G"-6ren">
gpt4 book ai didi

algorithm - 基于文本、字符串的和弦识别算法?

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:41:11 26 4
gpt4 key购买 nike

我正在寻找将字符串表示的音符作为输入并生成和弦名称作为输出的算法。

例如:

chordName("C", "E", "G")
>>> "C major"
chordName("C", "E", "G", "B")
>>> "C major 7"
chordName("A", "C", "E")
>>> "A minor"

最佳答案

自鸣得意(即,我是库的首席开发人员,当然有偏见),但使用 music21 ( http://web.mit.edu/music21/) 您可以:

>>> from music21 import chord
>>> chord.Chord(['C','E','G']).pitchedCommonName
'C-major triad'
>>> chord.Chord(['C','E','G','B']).pitchedCommonName
'C-major seventh chord'

或者更晦涩的东西...

>>> chord.Chord(['C','C#','D','E','F#']).pitchedCommonName
'D-tritone-expanding pentachord'

Chord 的完整文档 (http://web.mit.edu/music21/doc/moduleReference/moduleChord.html) 将帮助您了解如何以您想要的格式准确输出文本。

关于algorithm - 基于文本、字符串的和弦识别算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17955486/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com