Reconnaître les fonctions mathématiques dans les chansons


12

Je suis nouveau sur DSP et je viens de découvrir ce StackExchange, donc excuses si ce n'est pas le bon endroit pour poser cette question.

Existe-t-il une ressource qui décrit les genres en termes plus mathématiques? Par exemple, si j'ai effectué une FFT sur le signal de cette section de la chanson (2:09 si le lien ne démarre pas là), y a-t-il un moyen pour moi de pouvoir détecter que cette section a ce type approximatif du son? Des sons comme celui-ci suivent-ils une fonction mathématique avec laquelle je peux comparer? http://www.youtube.com/watch?v=SFu2DfPDGeU&feature=player_detailpage#t=130s (le lien commence à jouer le son immédiatement)

Est-ce le seul moyen d'utiliser des techniques d'apprentissage supervisé ou existe-t-il une approche différente (qui, de préférence, ne nécessite pas de supervision)?

Merci pour tout conseil.


Vous pouvez utiliser une FFT pour détecter un rythme de batterie par rapport à une flûte, mais pas pour détecter le genre. Des trucs très locaux sur le son, bien sûr, mais pas le caractère musical du fichier total.
endolith

Est-il possible de reconnaître la "rugosité" du son? Est-ce là que les MFCC entrent en jeu?
XSL

Réponses:


10

Je pense que la distinction que vous recherchez ressemble plus à empirique vs théorique (par opposition à supervisé vs non supervisé), mais je peux me tromper à ce sujet. En d'autres termes, l'idéal serait d'avoir une définition théorique de divers genres, plutôt que juste un tas de données opaques qui peuvent être utilisées pour classer une chanson [sans aucune compréhension réelle].

Cependant, pour la classification générale des genres, vous êtes probablement coincé au moins avec une formation à partir d'exemples, même si ce n'est que pour créer les définitions des genres en premier lieu. En ce qui concerne votre exemple, considérez la fréquence à laquelle les gens se disputeront [sur YouTube] pour savoir si une piste donnée est vraiment dubstep (par exemple, n'importe quelle piste qui est plus dubby et moins bancale , même si le genre a commencé sans aucune véritable oscillation). Les gens définissent les genres au fil du temps à l'aide d'exemples, il est donc raisonnable de s'attendre à ce que les algorithmes qui reproduisent ce comportement nécessitent également quelques exemples. La façon dont les gens décrivent les genres est presque comme un vecteur de fonctionnalité de toute façon - ils posent une liste de questions sur la chanson (par exemple, est-elle plus cassante ou bancale? Y a-t-il beaucoup de sous-basse? Quelle est la durée? Quel est le tempo? Y a-t-il une voix? etc.).

Bien sûr, vous pourrez peut-être choisir une liste de fonctionnalités qui fournissent également une compréhension intuitive du genre. Une fonctionnalité comme "Dynamic Range" est quelque chose qu'une personne peut également détecter à l'oreille, mais quelque chose comme "Time Domain Zero Crossings" ne serait pas très intuitif - même si cela fonctionne bien pour la classification. Le document suivant présente plusieurs fonctionnalités qui pourraient vous intéresser:

George Tzanetakis, Perry R. Cook: Classification des genres musicaux des signaux audio. Transactions IEEE sur le traitement de la parole et de l'audio 10 (5): lien 293-302 (2002) .

Pour mesurer la rugosité, la rugosité psychoacoustique serait un bon point de départ, mais il pourrait ne pas être suffisant de faire la distinction entre les pistes dubstep et les pistes électro, par exemple. Pour des distinctions plus fines, une chose à examiner est la reconnaissance du timbre . La thèse suivante présente un aperçu décent des techniques:

TH Park, «Vers une reconnaissance automatique du timbre des instruments de musique», Ph.D. dissertation, Princeton University, NJ, 2004. lien .

Il existe également un modèle lié à la rugosité perceptuelle dans Timbre, Tuning, Spectrum et Scale qui est utilisé pour construire des échelles personnalisées pour des timbres arbitraires. L'idée est que les harmoniques qui sont très proches les unes des autres produisent des fréquences de battement qui sont perçues comme une dissonance. Paraphraser des annexes F et E ,

Lorsque est un spectre avec des partiels aux fréquences , la dissonance intrinsèque [en supposant des amplitudes unitaires] estf 1 , f 2 , . . . , f nFf1,f2,...,fn

DF=1/2 i=1n j=1n d(|fifj|min(fi,fj))

d(x)=e3.5xe5.75x

est un modèle de la courbe Plomp-Levelt .

Il est utilisé pour mesurer à quel point un accord donné est agréable par rapport à un timbre (en minimisant la dissonance). Je ne sais pas si la rugosité de la variété psychoacoustique ou la dissonance intrinsèque seraient très fructueuses pour vos propres besoins, mais elles peuvent être utiles en combinaison avec d'autres mesures.

Vous aurez probablement plus de chance de classer les timbres mathématiquement que les genres. Par exemple, les chaînes ont même et harmoniques impaires, mais une clarinette ne comporte que des harmoniques impaires (voir ondes en dents de scie , onde carrée ). Le wobble Dubstep a tendance à être effectué avec des filtres pilotés par LFO (filtres passe-bas et / ou formant), donc quelque chose comme Spectral Flux (voir [Tzanetakis], ci-dessus) pourrait être un bon point de départ en tant que fonctionnalité. Cependant, je doute que quelqu'un ait encore étudié la classification mathématique de l'oscillation;)


2
Excellente réponse du datageist. Je suggérerais également isophonics.net/QMVampPlugins si vous recherchez plus d'informations et une plate-forme de développement avec le code source
Dan Barry

@Dan Cela a l'air génial, merci pour ce lien.
datageist

J'ai trouvé un créneau à étudier! : D Merci pour la réponse brillante et les liens. Cela m'a orienté dans une direction plutôt que d'utiliser sans but Google.
XSL

Heureux d'aider :)
datageist
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.