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.
Réponses:
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:
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:
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 ,
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;)
la source