abstract on beat detection project

23
BMS COLLEGE OF ENGINEERING (Department of Electronics and Communication) Record Report on DSP ARCHITECTURE FIC: Mrs. RADHA R.C Department of ECE Team Members: 1

Upload: smirti123

Post on 23-Nov-2015

17 views

Category:

Documents


0 download

DESCRIPTION

its an abstract

TRANSCRIPT

BMS COLLEGE OF ENGINEERING (Department of Electronics and Communication)

Record Report on DSP ARCHITECTURE

FIC: Mrs. RADHA R.C Department of ECE

Team Members: SHAIK MUBARAK USN: 1BM11EC105NEHA TAYALUSN: 1BM11EC066SMIRTI DWIBEDI USN: 1BM11EC120

ACKNOWLEDGEMENT

We place on record and warmly acknowledge the continuous encouragement, invaluable supervision, timely suggestions and inspired guidance offered by our guide RADHA R.C. Associate Professor, Department of Electronics and Communication Engineering, BMS College of Engineering, Bangalore, in bringing this report to a successful completion.

We are grateful to Prof.Dr. D.Seshachalam , Head of the Department of Electronics and Communication Engineering, for permitting us to make use of the facilities available in the department to carry out the project successfully. Last but not the least we express our sincere thanks to all of our friends who have patiently extended all sorts of help for accomplishing this undertaking. Finally we extend our gratefulness to one and all who are directly or indirectly involved in the successful completion of this project work.

ABSTRACT ON BEAT DETECTION PROJECT

This mini-project implements a beat detection scheme using the onboard LEDs. Music visualization is a continuously progressing area in audio processing, not only for analysis of music but also for entertainment visualization purposes. The scheme is based on the idea that the drum is the most energy-rich component of the music. In this project, the beat of the music is the drum pattern or bass line of the piece of music.

The incoming music signal is continuously sampled at 8Khz(with a 4KHz antialiasing filter on the codec) and stored in the buffer. The buffer has 4000 points and is decomposed into 20 chunks, each chunk consisting of 200 points. The signal energy of a smaller portion of the buffer- a chunk of the larger buffer-consisting of the most recently collected samples is compared to the signal energy of the entire buffer. When this portion of the signal has a significantly higher than the rest of the signal, it is considered to be a beat.

Table of ContentsINTRODUCTION5THEORETICAL BACKGROUND.(6-9)IMPLEMENTATION(10-11)RESULT(12-13)APPLICATIONS(14-15)CONCLUSION16FUTURE ENHANCEMENT......17BIBLIOGRAPHY18INTRODUCTION

Simulating a physical phenomena which obeys to known mathematical equations is, with a number of approximation, always feasible. But, what about the more abstract concepts, such as feelings, which do not follow any law? The simple things we can feel are often the hardest things to capture in a program. Beat detection follows this rule: feeling the beat of a song comes naturally to humans or animals. Indeed it is only a feeling one gets when listening to a melody, a feeling which makes us dance in rhythm or hit a table with hands on the melody beats. Therefore, through this program we learn to compute beat detection in a machine that can only compute logical operations. Here, we use algorithms that manage to approximate, more or less accurately, this beat detection.

In signal analysis, beat detection is using computer software or computer hardware to detect the beat of a musical score. There are many methods available and beat detection is always a tradeoff between accuracy and speed. Beat detectors are common in music visualization software such as some media player plugins.

THEORETICAL BACKGROUND

The human listening system determines the rhythm of music by detecting a pseudo-periodical succession of beats. The signal that is intercepted by the ear contains certain energy; this energy is converted to electrical signal, which brain intercepts. Obviously, the more energy the sound transports, the louder the sound will seem. But a sound will be heard as beat only if his energy is largely superior to the sounds energy history, that is to say that if the brain detects a brutal variation in sound energy. Therefore if the ear intercepts a monotonous sound with sometimes big energy peaks it will detect beats, however, if you play a continuous loud sound we will not perceive any beats. Thus the beats are big variations of sound energy. We are using Sound Energy Peak model to do the analysis.

A First Analysis:

In this model we will detect sound energy of the signal and comparing it to the instant sound energy.

Lets say we are working in stereo mode with two lists of values: a(n) and b(n). a(n) contains the list of sound amplitude values captured every Te seconds for the left channel, b(n) the list of sound amplitude values captured every Te second for the right channel. So we want to compute the instant energy and the average energy of the signal. The instant energy will in fact be the energy contained in 1024 samples(1024 values of a(n) and b(n),1024 samples represent about 5 hundreds of second which is pretty much instant. The average energy should not be computed on the entire song, some songs have both intense passages and more calm parts.

The instant energy must be compared to the nearby average energy, for example if a song has an intense ending, the energy contained in this ending shouldnt influence the beat detection at the beginning. We detect a beat only when the energy is superior to a local energy average. Thus we will compute the average on say: 44032 samples which is about 1 second of song to detect beat. This 1 second time(44032 samples) is what we called the human ear persistence model; it is a compromise between being to big and taking into account too far away from energies, and being too small and becoming too close to the instant energy to make a valuable comparison.

Some Direct Optimizations:

In this optimized method, the algorithm can be optimized by keeping the energy values computed on 1024 samples in history instead of the samples themselves, so that we dont have to compute the average energy on the 44100 samples buffer (B) but on the instant energies history we will call (E). This sound energy history buffer (E) must correspond to approximately 1 second of music, that is to say it must contain the energy history of 44032 samples(calculated on groups of 1024) if the sample rate is 44100 samples per second. Thus E(0) will contain the newest energy computed on the newest 1024 samples, and E(42) will contain the oldest energy computed on the 1024 samples. We have 43 energy values in history, each computed on 1024 samples which makes 44032 samples energy history, which is equivalent to 1 second in real time. The count is good. The value of 1 second represents the persistence of the music energy in the human ear, it was obtain with experimentations but it may vary a little from a person to another, just adjust it.

The simple sound energy algorithm: Every 1024 samples: Compute the instant sound energy e on the 1024 new sample values taken in (an) and (bn) using the following(R1). Compute the average local energy with sound energy history buffer. Shift the sound energy history buffer(E) of 1 index to the right. We make room for the new energy value and flush the oldest. Pile in the new energy e at E(0). Compare e to c*.

IMPLEMENTATION

We have implemented the beat detection program in C code. We have and which represents the average energy of the buffer and of each chunk respectively. C is the comparison factor(sensitivity), B is the buffer, and io is the start position in the chunk buffer. N and n represent the number of points in the buffer and in the chunk, respectively, and the equation describes the actual beat logic that is:

beat={true (e)>(E).C } {false otherwise}

To fine-tune this method, the following can be adjusted:1. The length N of the larger buffer(the total signal being compared against )2. The length n of the chunks(the instantaneous signal) 3. The sensitivity C of the energy comparison. Values for C ranging from 0.5 to 2 were tested and we found 1.3 to be suitable for most type of music.

Result

After running the program, we saw the output on the LEDS.We found that for various BPM rates the LEDS were blinking at a different rate.

When we gave input as 120 BPM music we found that the LEDS were blinking at a faster rate. We found that since in one second it has 2 beats per second so the LEDS were blinking at a faster rate.

120 BPM RATE MUSIC SIGNAL

Similarly, for 60 BPM rate music we found that LEDs blinking at slow rate. Here, there is 1 beat per second and 1 Hz frequency hence the LEDS blink at a slower rate.

60 BPM MUSIC SIGNAL

APPLICATIONS

Analysis of QRS Detection Algorithm for Cardiac AbnormalitiesAUTOMATIC assessment of Cardiac Vascular Diseases (CVD) for patients has been a long time research; the cardiovascular disease is one of the leading causes of death around the world. The cause of CVD are due to the variations in the heart rate or irregularities and are characterized by the Electrocardiogram (ECG also known as EKG, abbreviated from the German Electrocardiogram) beats or patterns [1], [2]. The ECG signal is a representation of the bioelectrical activity of the heart representing the cyclical contraction and relaxation of the human heart muscles. To acquire the signal, ECG devices with varying number of electrodes (3 12) can be used. Multi lead systems exceeding 12 and up to 120 electrodes are also available [3]. Accurate detection of the ECG beats is the key requirement for detecting CVD.

ESTIMATING TEMPO, SWING AND BEAT LOCATIONS IN AUDIO RECORDINGS:

Beat detection is used to synchronize MIDI instruments or effects to audio signals. Beat detection can also help in the usually tedious process of manipulating audio material in audio editing software.

ECG Beat Detection Using Filter Banks:

We have designed a multirate digital signal pro- cessing algorithm to detect heartbeats in the electrocardiogram (ECG). The algorithm incorporates a filter bank (FB) which decomposes the ECG into subbands with uniform frequency bandwidths. The FB-based algorithm enables independent time and frequency analysis to be performed on a signal. Features computed from a set of the subbands and a heuristic detection strategy are used to fuse decisions from multiple one-channel beat detection algorithms. The overall beat detection algorithm has a sensitivity of 99.59% and a positive predictivity of 99.56% against the MIT/BIH database. Furthermore this is a real-time algorithm since its beat detection latency is minimal. The FB- based beat detection algorithm also inherently lends itself to a computationally efficient structure since the detection logic oper- ates at the subband rate. The FB-based structure is potentially useful for performing multiple ECG processing tasks using one set of preprocessing filters.

CONCLUSION

Beat detection is a way of detecting beats in a music signal, which we show on the LEDS. We used DSK board to analyze the different BPM rates input signal. Beats are detected according to the energy of the sampled input music signal. The higher the energy of the sampled input the faster the beat is detected. Beat detection helps in various audio applications and medical equipment. We found that for various BPM rates the LEDS were blinking at different rates. This project is very useful for medical purposes like in ECG where we actually detect the beat of the person. Also, applicable in music industries to determine the tempo, beat and swing of the music.

FUTURE ENHANCEMENTS

Our project is technically not perfect. Whenever, a beat was detected the LEDS blinked but when the music was stopped the LEDS didnt stop blinking. It basically arises because we have flash memory in the DSK board. So, in future we can encounter this problem and use in various other applications.

BIBLIOGRAPHY

1.www.flipcode.com

2.www.priceton.edu

3.Ruplh Chasing, Donald Reay, Digital Signal Processing application with the TMS320C613 and TMS320C6416 DSK

1