Thursday, April 22, 2010

Gestures and patterns analysis/recognition

Beside researching existing projects for computer-aided improvisation/accompaniment, I was thinking about some concepts regarding how my system will behave getting certain input (sound)m that is how could musical gestures recognition work.

Today in class brainstorming with Juan and Stelios clarified and directed my considerations into a more narrow and more realistic area.

Things, that I need to take care of anyway involve phrase recognition, pitch and loudness analysis, as well as some kind of rhythm structure examination. Phrase recognition would involve onset detection as well as timing information analysis, but may end up being triggered manually (e.g. foot switch). It's not crucial to make it happen automatically at that point. Inside each phrase elements mentioned above (pitch, loudness, rhythm) would of course change... Initially I was thinking about some kind of envelope extraction for their values, but that seems to be too complicated for further manipulation at this point. Thus I want to end up with single "meta" parameter for each of those element, for example: high pitches or low pitches, big pitch deviation or small pitch deviation (more static structure), faster or slower rhythm etc.

Beside thinking about using envelopes for presenting these parameters across given phrase, I was thinking about really fancy idea (I know, fancy ideas have serious potential being useless) of some kind of machine learning system. It would analyze and juxtapose actually played phrase with the one played right before, and with the one that computer played/generated right before. That way system would develop a database of more common and less common "responses" or relationships between phrases. However effective implementation of such mechanism would probably involve neural networks... and thus is beyond the scope of this 10-week project. Beside the problem of machine learning mechanisms there is a question: how would computer interpret those data? Especially that transformation of the input material only is considered at this point (no synthesis). Possible answer is that such data could be used to create actually synthesized and more autonomous system response. But that's an idea to be saved for much later I believe.

No comments:

Post a Comment