16
Helin Wang & Tian Wang 4.21.2011 Guitar Chord Recognition

guitar chord detection

  • Upload
    helinw

  • View
    255

  • Download
    9

Embed Size (px)

Citation preview

Page 1: guitar chord detection

Helin Wang & Tian Wang

4.21.2011

Guitar Chord Recognition

Page 2: guitar chord detection

Outline Problem Description

Different approaches

Mixture Component analysis

Principal Component Analysis

Page 3: guitar chord detection

Part 1: Problem

Description A guitar chord is a

collection of tones usually

sounded together at once.

Page 4: guitar chord detection

In time domain, the strength of sound decays as the time goes by.

C

B7

Page 5: guitar chord detection

In frequency domain, a chord has its fundamental frequency and integer multiple of fundamental frequency.

Different musical instruments has different weights of fundamental frequency and integer multiple frequencies. Timbers are discriminated these combinations.

Page 6: guitar chord detection

Part 2: Different

ApproachesData gathering and format

Tool: Wavepad. Record a chord. And save it in WAV format in 2sec.

Matlab read WAV file and generate a 1xn matrix, each number in the

matrix represents the sound’s strength in corresponding time.

Page 7: guitar chord detection

Approach 1 & 2

Preprocessing

Page 8: guitar chord detection

Why use…

-Band pass filter: guitar produce sound frequency

between ~15Hz - ~5000Hz.

-Guassian Smoothing: Required because we need

tolerance to the existance of guitar tuning error,

measurement error, computational error.

Page 9: guitar chord detection

Eigenface picture also holds the Locally Continuous property.

Importance of smoothing

Page 10: guitar chord detection

Approach 1: Mixture Component analysis

L*C = test

- L is formed by the 10000x1 chord feature vectors of different chord.

We used 8 chords: A B7 C D E F G G7.

L = [A; B7; C; D; E; F; G; G7]; (10000x8).

- C is the coefficient matrix. (8x1)

- test is chord feature vector to be tested(10000x1).

From equation:

Test is mixed by L with different percentage (c).

Page 11: guitar chord detection

Approach 1: Mixture Component analysis

Least square solution:

C = inv(L'*L)*L'*test

We choose the biggest c_m.

Quality factor Q = c_m/sum(abs(C)) .

When Q > threshold, test data is

one of the chord in our database.

Page 12: guitar chord detection

Approach 2: Principal Component Analysis

• Everything is same with eigenface analysis. Input is also

large dimension a vector.

Page 13: guitar chord detection

Compare

Principal Component Analysis

With

Mixture Component Analysis:

In our content,

PCA does a better job in determining if test data is one of the chord in our database.

MCA does better in recognition.

Page 14: guitar chord detection

Result5 test data for each chord, 40 test data in all.

Page 15: guitar chord detection

DrawbackDatabase is 1 sample for 1 chord, high error.

RemedyUse LDA or multi dimension Guassian pdf. (their database can be n samples for 1 chord).

Page 16: guitar chord detection

CERLAB