Development of a system to perceive emotion in music

Design team members: Maneesh Gupta and Mark Korhonen

Supervisor: Dr. M. E. Jernigan


The ability to detect emotion in music has many educational and practical benefits. According to Leonard Meyer (1956) and other pioneer psychologists, it is theoretically possible to detect the emotion (invoked feelings that are temporary and evanescent) in music if these emotions are contained entirely within the context of the music itself. By building on the research of these psychologists, it is possible to construct the high level design of a software system that will be able to display emotions contained in a song.

Project description

The goal of this project is to create a system that perceives emotion in music. In order to create this system, a detailed, low level design must be based on the research of psychologists. This system uses a combination of intrinsic musical traits (tempo, rhythm, pitch variation, etc.) and listener expectation (by means of a neural network used to predict the upcoming notes) to plot an emotion in an assumed modeled emotion space. The end result will be a Windows ™ application which allows the user to select an input MIDI file and then, after processing, displays to the user various emotions as the song plays.

Design methodology

This project is broken down into a series of phases. There is a research phase where music psychology and previous research is examined to develop a deep understanding with the problem. The next phase is the high level design where the problem is broken into several modules that can work together to perceive the emotion in music. After determining what the modules are and what they need to do, each module is designed. For this project, there are five modules in the system. These modules process inputs, learn patterns in music, appraise the music, perform comparisons and output emotions.

At the start of the new year, the implementation phase will be reached. The modules will be implemented and tested before they are integrated together as a system. The final phase of the project is the evaluation of the system. This will involve psychological tests that are used to verify the effectiveness of the system.