Automating Emotion Recognition for Music

CSEF · 2014 Mathematics & Software

Overview

Objectives/Goals Finding the right songs to use in a video is a tedious process, as one must manually listen and evaluate many possible songs to determine whether they express the right moods that fit the video. An easy-to-use tool for video producers to analyze the emotional content of songs, search for them, and visualize moods within them is presented in this project. Methods/Materials We assessed two primary approaches for determining the mood of the song: lyrics analysis and audio analysis. For lyrics analysis, a custom algorithm that looks for specific keywords from the ANEW dataset was implemented in Java and tested. For audio analysis, moods were determined by a classifier created with the WEKA machine learning toolkit, along with a ground truth dataset for the classifier to be built upon. Features of the audio were extracted using jAudio and correlated with the manually classified mood we gave the song to form the ground truth. Several classifiers that WEKA supports, such as Support Vector Machine and Naïve Bayes, were tested before we selected a specific one to use. The results of the song mood analysis are then stored in an Oracle database, which can be searched with a graphical tool. Results Between lyrics and audio analysis, we found that our audio analyzer using Naive Bayes was the most effective. The accuracy of whole song audio analysis, as determined by 10-fold cross validation, was around 80%. Compared to manually analyzing and finding songs, our software automatically classifies songs by the moods that they express, helps video producers find songs quickly, and allows users to immediately see the moods throughout a song. Conclusions/Discussion The primary engineering goal has been met. Further work could be done to improve the accuracy of the lyrics analysis. With lyrics and audio analysis combined, an even more accurate classifier can be made.

Summary statement

We created a prototype music analyzer that enables video producers to classify music according to emotional content, search for music, and visualize the emotions in order to determine if it suits the emotional context of a video.

Help received

Mitchell#s dad taught us about relational databases and some Java programming. He offered suggestions when we had difficulties, but we ultimately made the final call on any decision.

Competition history

  • CSEF 2014 Mathematics & Software · Entry S1418

Resources

Related projects

Closest projects by meaning, across every fair and year in the corpus.

Browse more like this

Source: California Science & Engineering Fair public projects

Save projects to your library

Sign in with Google to keep track of projects you find interesting, organized into folders. An account also raises your daily allowance for “Has this been done?”, and lets you create a key for the MCP server with a much higher limit than anonymous use. Browsing stays public.

Continue with Google