Abstract
Human can easily recognize the main melody of a piece of music, especially of a song with singing voice, because pitch of singing voice usually represents the main melody of a song. However, it is not as easy for a computer to automatically detect the singing pitch from a song, because the background music acts as an interfering signal to the singing voice. In this thesis we propose a method that is composed of a series of spectrum analysis algorithms. Most of the existing algorithms focus on enhancing singing voice while reducing the background music so that the accuracy of singing pitch extraction can be improved. But these methods tend to yield incorrect pitch values near both endpoints of singing voice and sound segments with fast-varying frequencies. We therefore reverse the time axis of the song signal and overlap it with the original signal to find the segments that have unreliable pitch values. This method is assisted with another singing pitch extraction method incorporating hidden Markov models. A voting mechanism is adopted to justify and correct the unreliable pitch values. Experimental results show that the proposed method yields a better performance than the original baseline system in terms of raw pitch accuracy.