Pembangunan Metode Codebook untuk Identifikasi Chord Gitar dengan Teknik Ekstraksi Ciri MFCC

PEMBANGUNAN METODE CODEBOOK UNTUK
IDENTIFIKASI CHORD GITAR DENGAN
TEKNIK EKSTRAKSI CIRI MFCC

ARMEN MARTA

DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2013

PERNYATAAN MENGENAI SKRIPSI DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA
Dengan ini saya menyatakan bahwa skripsi berjudul Pembangunan Metode
Codebook untuk Identifikasi Chord Gitar Dengan Teknik Ekstraksi Ciri MFCC
adalah benar karya saya dengan arahan dari komisi pembimbing dan belum
diajukan dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber
informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak
diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam
Daftar Pustaka di bagian akhir skripsi ini.

Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut
Pertanian Bogor.
Bogor, September 2013
Armen Marta
NIM G64104029

ABSTRAK
ARMEN MARTA. Pembangunan Metode Codebook untuk Identifikasi Chord
Gitar Dengan Teknik Ekstraksi Ciri MFCC. Dibimbing oleh AGUS BUONO.
Berbagai jenis chord dapat dimainkan pada alat musik gitar. Namun,
pengenalan chord gitar secara manual sulit dilakukan. Penelitian ini
mengembangkan sistem identifikasi chord pada gitar yang menggunakan metode
codebook, MFCC, dan K-means clustering. Codebook digunakan sebagai metode
pengenalan pola untuk identifikasi jenis chord gitar, sedangkan MFCC digunakan
sebagai metode ekstraksi ciri. Parameter yang digunakan dalam proses MFCC
adalah jumlah koefisien cepstral, overlap, dan time frame, sedangkan parameter
yang digunakan dalam K-Means adalah jumlah cluster. Penelitian ini
menggunakan 1440 data suara gitar yang dibagi ke dalam 72 kelas, sehingga
masing-masing kelas mempunyai 20 data suara gitar. Hasil penelitian
menunjukkan bahwa akurasi maksimum yang didapat adalah 99.72% pada jumlah

koefisien cepstral 26, overlap 0.4, time frame 30 ms, dan jumlah cluster 5.
Kata kunci: Chord, Codebook, Gitar, K-Means, MFCC

ABSTRACT
ARMEN MARTA. Development of Codebook Method for the Identification of
Guitar Chord with MFCC Feature Extraction Techniques. Supervised by AGUS
BUONO.
Various types of chords can be produced by a guitar instrument. However, it
is difficult to recognize a guitar chord manually. This research develops a system
to recognize a chord on the guitar using codebook, MFCC, and K-means
clustering. The codebook is used as the pattern recognition method for
identification of guitar sound, while MFCC is used as a method of feature
extraction. The parameters used in the process of MFCC are the number of
cepstral coefficients, overlap, and the time frame, while the parameter used in the
process of K-means clustering is the number of cluster. This research used 1440
guitar sound data that are divided into 72 class, so that each class has 20 guitar
sound data. The results showed that the maximum accuracy obtained is 99.72%
when the number of cepstral coefficients are 26, overlap value is 0.4, time frame
is 30 ms, and the number of cluster is 5.
Keywords: Chord, Codebook, Guitar, K-Means, MFCC


PEMBANGUNAN METODE CODEBOOK UNTUK
IDENTIFIKASI CHORD GITAR DENGAN
TEKNIK EKSTRAKSI CIRI MFCC

ARMEN MARTA

Skripsi
sebagai salah satu syarat untuk memperoleh gelar
Sarjana Ilmu Komputer
pada
Departemen Ilmu Komputer

DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2013

Penguji:

1 Karlisa Priandana, ST, MEng
2 Mushthofa, SKom, MSc

Judul Skripsi : Pembangunan Metode Codebook untuk Identifikasi Chord Gitar
dengan Teknik Ekstraksi Ciri MFCC
Nama
: Armen Marta
NIM
: G64104029

Disetujui oleh

Dr Ir Agus Buono, MSi, MKom.
Pembimbing

Diketahui oleh

Dr Ir Agus Buono, MSi, MKom.
Ketua Departemen


Tanggal Lulus:

PRAKATA
Puji dan syukur penulis panjatkan kepada Allah subhanahu wa ta’ala atas
segala karunia-Nya sehingga karya ilmiah ini berhasil diselesaikan. Tema yang
dipilih dalam penelitian yang dilaksanakan sejak bulan September 2012 ini ialah
bahasa alami, dengan judul Pembangunan Metode Codebook untuk Identifikasi
Chord Gitar dengan Teknik Ekstraksi Ciri MFCC.
Terima kasih penulis ucapkan kepada Bapak Dr Ir Agus Buono, MSi
MKom selaku pembimbing. Terima kasih penulis ucapkan kepada Bapak
Mushthofa dan Ibu Karlisa selaku penguji. Terima kasih kepada Toni Haryono,
Yosi Handayani, dan Arviani Rizki yang telah membantu penulis untuk
mengumpulkan data dan memberikan masukan. Terima kasih juga penulis
ucapkan kepada ayah, ibu, serta keluarga, atas segala doa dan kasih sayangnya.
Semoga karya ilmiah ini bermanfaat.

Bogor, September 2013
Armen Marta

DAFTAR ISI

DAFTAR TABEL

vi

DAFTAR GAMBAR

vi

DAFTAR LAMPIRAN

vi

PENDAHULUAN

1

Latar Belakang

1


Perumusan Masalah

1

Tujuan Penelitian

1

Manfaat Penelitian

2

Ruang Lingkup Penelitian

2

METODE PENELETIAN

2


Perekaman Chord

3

Data latih dan data uji

5

Praproses

5

Ekstraksi Ciri dengan MFCC

5

Pengenalan Pola dengan Codebook

7


Pengujian

9

Lingkungan Pengembangan Sistem

9

HASIL DAN PENGUJIAN

9

Perekaman Chord

9

Ekstraksi Ciri dengan MFCC

9


Pemodelan Codebook

10

Hasil Pengujian

10

Tampilan Program

12

Analisis Kesalahan

13

DAFTAR PUSTAKA

15


RIWAYAT HIDUP

15

DAFTAR TABEL
1
2

Daftar chord gitar yang digunakan
Hasil pengujian nilai k bersasarkan koefisien cepstral

4
10

DAFTAR GAMBAR
1
2
3
4
5
6
7
8
9

Tahapan transformasi sinyal suara menjadi informasi (Buono 2009)
Diagram proses pengenalan chord gitar
Proses penghapusan silent dan normalisasi suara
Diagram alur MFCC (Buono 2009)
Ilustrasi sebaran codebook
Diagram batang pengujian nilai k bersasarkan koefisien cepstral
Akurasi chord tertinggi dan terdendah
Tampilan program awal
Tampilan program hasil data yang diuji

3
4
5
6
8
11
11
12
13

PENDAHULUAN

Latar Belakang
Orang awam ataupun orang yang sudah terbiasa bermain gitar sering
kesulitan untuk mengenali sebuah nada. Hal ini disebabkan oleh sifat manusia
yang cenderung subjektif dalam mengenali nada. Manusia butuh banyak latihan
dan pemahaman tentang gitar untuk mengenali nada tersebut.
Salah satu solusi yang dapat dilakukan untuk mengenali nada yaitu dengan
menggunakan komputer. Hal ini dapat berjalan karena sifat komputer yang
objektif dan konsisten terhadap tugas yang diberikan. Pada alat musik gitar, ada
sebuah istilah yang dikenal dengan chord. Chord direpresentasikan sama seperti
nada yaitu dengan huruf. Huruf-huruf tersebut ialah : C, D, E, F, G, A, dan B.
Tangga nada adalah susunan nada-nada dengan sistem jarak tertentu di sepanjang
kesatuan enam jarak nada atau oktaf (Solapung 1991). Chord dapat menghasilkan
bunyi yang harmonis. Bunyi harmonis tersebut bergantung pada struktur
penyusunnya. Penelitian ini mencoba membuat sistem otomatis untuk identifikasi
chord gitar.
Penelitian sebelumnya yang dilakukan oleh Wisnudisastra (2009),
menggunakan metode codebook dan teknik mel-frequency cepstrum coefficient
(MFCC) dalam mengenali sebuah chord. Metode dan teknik ini menghasilkan
rataan akurasi sebesar 91% untuk percobaan menggunakan 13 koefisien cepstral
dan 96% untuk percobaan menggunakan 26 koefisien cepstral.
Pada penelitian ini, peneliti akan menggunakan metode codebook dan
ekstraksi ciri MFCC. Dalam pengenalan suara, MFCC dapat merepresentasikan
sinyal lebih baik dibandingkan dengan linear prediction cepstrum coeffficient
(LPCC) dan teknik lainnya (Buono 2009). Metode LPCC memiliki keunggulan
dalam hal komputasi yang lebih sederhana, namun tingkat akurasinya tidak sebaik
MFCC. Penelitian ini akan menggunakan data chord gitar sebanyak 72 jenis
chord dengan tuning gitar mengikuti standar yang telah ditentukan.

Perumusan Masalah
Data Gitar direkam untuk dilakukan pelatihan data dan pengujian data.
Dengan dilakukan pelatihan dan pengujian data, bagaimana komputer dapat
mengidentifikasi suara gitar dari data yang sudah direkam atau dari rekaman
langsung pada gitar.

Tujuan Penelitian
Tujuan dari penelitian ini adalah menerapkan metode codebook untuk
mengenali chord pada alat musik gitar dan juga mengimplementasikan teknik
ekstraksi ciri MFCC.

2
Manfaat Penelitian
Manfaat dari penelitian ini adalah memudahkan pengguna untuk
menentukan chord tertentu, dan membantu pengguna awam dalam pembelajaran
chord pada gitar.

Ruang Lingkup Penelitian

1
2
3

Ruang lingkup penelitian ini adalah:
Chord yang dikenali berjumlah 72 jenis.
Chord dimainkan dengan cara dipukul serentak dari atas ke bawah.
Suara chord yang dikenali dimainkan menggunakan jenis gitar dengan senar
string.

METODE PENELETIAN
Komputer dikenal dapat memproses sinyal digital. Sinyal suara merupakan
sinyal waktu kontinyu atau dikenal dengan sinyal analog. Agar sinyal suara dapat
diproses oleh sistem komputer, maka diperlukan suatu cara untuk mengonversi
sinyal analog menjadi sinyal digital. Pengolahan sinyal analog menjadi sinyal
digital dapat dilakukan melalui dua tahap, yaitu sampling dan kuantisasi (Jurafsky
2007).
Terdapat beberapa tahap agar komputer dapat memproses suara pembicara
menjadi suatu informasi. Tahapan tersebut terdiri dari digitalisasi sinyal analog,
pembacaan sinyal, ekstraksi ciri, dan pengenalan pola, seperti yang disajikan pada
Gambar 1.
Sampling adalah proses pengambilan nilai setiap jangka waktu tertentu.
Nilai ini menyatakan amplitudo volume suara pada saat itu. Hasilnya adalah
sebuah vektor yang menyatakan nilai-nilai hasil sampling. Panjang vektor data ini
tergantung pada panjang atau lamanya suara yang didigitalisasikan serta sampling
rate yang digunakan pada proses digitalisasinya. Banyaknya sample yang diambil
tiap detiknya disebut sampling rate. Sampling rate yang biasa digunakan adalah
8000 Hz dan 16000 Hz (Jurafsky & Martin 2000). Hubungan antara panjang
vektor data yang dihasilkan dengan sampling rate dan panjangnya data suara yang
digitalisasikan dapat dinyatakan secara sederhana sebagai berikut:
S = Fs * T
S = jumlah sample
Fs = sampling rate yang digunakan (Hertz)
T = panjang suara (detik)
Proses selanjutnya adalah kuantisasi, yaitu menyimpan nilai amplitudo ini
ke dalam representasi nilai 8 bit atau 16 bit (Jurafsky & Martin 2000).
Setelah melakukan proses kuantisasi, sinyal suara digital memroses
pembacaan sinyal disetiap frame dengan lebar frame tertentu yang saling tumpang
tindih. Proses ini dikenal dengan proses frame blocking. Barisan frame berisi
informasi yang lengkap dari sebuah sinyal suara. Ekstraksi ciri dilakukan untuk

3
setiap frame sehingga didapatkan vektor ciri. Pengenalan pola dilakukan untuk
setiap vektor ciri sehingga diperoleh informasi yang diinginkan.

Gambar 1 Tahapan transformasi sinyal suara menjadi informasi (Buono 2009)
Sistem pengenalan chord gitar dibuat dengan menggunakan perangkat lunak
MATLAB R2008b. Penelitian ini dikembangkan dengan metode yang terdiri atas
beberapa tahap, yaitu: Pengambilan data, preprocessing, pemodelan codebook,
dan pengujian. Alur metode dapat dilihat pada Gambar 2

Perekaman Chord
Data yang digunakan adalah suara 72 jenis chord gitar yang dimainkan
dengan cara dipukul serentak dari atas ke bawah dan direkam masing-masing
sebanyak 20 kali pengulangan. Setiap chord memiliki 20 data suara. Chord
merupakan satuan nada-nada yang dibunyikan secara serentak yang berfungsi
sebagai pengiring dalam lagu maupun permainan musik (Hendro 2004). Chord
direpresentasikan sama seperti nada yaitu dengan huruf. Nada merupakan suatu
simbol atau bunyi yang menjadi dasar dalam susunan musik. Nada terbagi atas
tujuh nada alami yang telah dibakukan. Setiap nada diberi simbol dengan huruf,
yaitu: C, D, E, F, G, A, dan B. setiap huruf mempunyai nama sebagai berikut:
C=Do, D=Re, E=Mi, F=Fa, G=Sol, A=La, B=Si. Masing-masing chord yang
dipakai terlihat pada Tabel 1

4
Table 1 Daftar chord gitar yang digunakan
Chord Dasar
C
C#
D
D#
E
F
F#
G
G#
A
A#
B

Jenis Chord
C, C6, C7, Cm, Cm6, Cm7
C#, C#6, C#7, C#m, C#m6
D, D6, D7, Dm, Dm6, Dm7
D#, D#6, D#7, D#m, D#m6
E, E6, E7, Em, Em6, Em7
F, F6, F7, Fm, Fm6, Fm7,
F#, F#6, F#7, F#m, F#m6, F#m7
G, G6, G7, Gm, Gm6, Gm7
G#, G#6, G#7, G#m, G#m6, G#m7
A, A6, A7, Am, Am6, Am7
A#, A#6, A#7, A#m, A#m6, A#m7
B, B6, B7, Bm, Bm6, Bm7

Data direkam langsung dengan gitar melalui microphone menggunakan
software Matlab selama 2 detik. Proses perekaman dilakukan ditempat yang
hening agar data yang didapat menjadi lebih baik dan sedikit noise. Sampling rate
yang digunakan untuk merekam masing-masing chord yaitu 11000 Hz.

Mulai

Perekaman
Chord

Data Latih

Data Uji

Praproses

Praproses

MFCC

MFCC

Codebook

Pengujian

Hasil

Selesai

Gambar 2 Diagram proses pengenalan chord gitar

5
Data latih dan data uji
Sebuah chord direkam sebanyak 20 kali. Chord yang digunakan pada
penelitian ini berjumlah sebanyak 72 jenis. Sehingga total rekaman keseluruhan
chord yaitu sebanyak 1440 rekaman. Masing-masing chord dibagi menjadi data
latih dan data uji, dengan proporsi data latih : data uji sebesar 75%:25%.

Praproses
Tahapan praproses terdiri dari normalisasi suara dan penghapusan silent.
Data suara perlu dinormalisasi terlebih dahulu, karena data suara memiliki nilai
range amplitude yang berbeda. Normalisasi dilakukan dengan cara membagi
setiap nilai dengan nilai maksimum pada data masing-masing suara. Tujuannya
agar didapat range nilai amplitude suara yang sama. Tahapan selanjutnya pada
praproses yaitu penghapusan silent. Penghapusan silent berfungsi untuk
menghapus bagian suara diam yang terdapat pada awal perekaman suara dan
akhir perekaman suara. Proses dapat terlihat pada Gambar 3.

Sebelum praproses

Sesudah praproses

Gambar 3 Proses penghapusan silence dan normalisasi suara

Ekstraksi Ciri dengan MFCC
MFCC merupakan cara yang sering digunakan untuk pemrosesan suara,
karena dianggap cukup baik dalam mempresentasikan ciri sebuah sinyal. Cara
kerja MFCC didasarkan atas pendengaran manusia. Tahapan-tahapan alur MFCC
dapat dilihat pada Gambar 4.
Berdasarkan Gambar 4, sinyal dibaca dari frame ke frame dengan nilai
overlap tertentu, kemudian dilakukan windowing untuk setiap frame. Setelah itu,
transformasi Fourier dilakukan untuk mengubah dimensi suara dari domain waktu
ke domain frekuensi. Dari hasil transformasi Fourier, spectrum mel dihitung
menggunakan sejumlah filter yang dibentuk untuk mengikuti persepsi sistem
pendengaran manusia yang bersifat linear. Proses ini dikenal dengan Mel
Frequency Wrapping. Koefisien MFCC merupakan hasil transformasi Cosinus
dari spectrum mel tersebut dan dipilih koefisien cepstral. Transformasi Cosinus
berfungsi untuk mengembalikan dari domain frekuensi ke domain waktu.

6

Sinyal Suara
Frame ke t
O = O1 + O2 + …,Ot , … , OT



Windowing (Do 1994):
yt (n)=xt (n)* w (n), 0 ≤ n ≤ N-1
w(n) = 0.54 – 0.46 cos (2πn/(N-1))
= hasil � � � � pada frame ke dalam domain waktu
N = jumlah sampel pada setiap frame, n = frame ke-…
W = formula hamming window, � ( ) = nilai data ke n
Fast Fourier Transform (FFT) (Do 1994):
N-1

xk e-2πjki/N

Xn =
k=0

Xk =nilai-nilai sampel yang akan diproses pada domain frekuensi
Xn =magnitude frekuensi
N = jumlah data pada domain frekuensi, j=bilangan imajiner, k = N/2 + 1, i = n x t
Mel Frequency Wrapping (Nilsson dan Ejnarsson 2002): mel(f) = 2595 log (1 + f / 700)
dari sini diperoleh M filter, dan dihitung spektrum Mel:
�� =

�10

−1

=0



�� ( ) , � = 1,2,3, … ,

�� (k) = nilai filter segitiga ke i, X k =nilai data ke k hasil proses FFT
M = jumlah filter, N = banyaknya data
Cepstrum Coefficients : Discrete Cosine Transform (Do 1994)
M

Cj =
i=0

Xi cos⁡ j(i-1)2

π
M

Cj =nilai koefisien C ke j,j = jumlah koefisien cepstral
M = jumlah filter ,Xi =hasil Mel Frequency Wrapping pada frekuensi ke i,
i = jumlah wrapping

Gambar 4 Diagram Alur MFCC (Buono 2009)

Frame Blocking
Pada proses ini, sinyal suara dibagi menjadi beberapa frame. Setiap frame
memilki N sample yang direpresentasikan dalam bentuk verktor. Frame-frame
yang bersebelahan akan saling tumpang tindih (overlap). Hal ini dilakukan agar
tidak ada sedikitpun sinyal yang hilang (deletion). Pada penelitian ini, akan
digunakan time frame 30 ms, overlap 40% dan coefisien cepstral sebesar 13 dan
26.

7
Windowing
Sinyal analog yang sudah diubah menjadi sinyal digital dibaca frame demi
frame dan pada setiap frame-nya dilakukan windowing dengan fungsi window
tertentu. Proses windowing bertujuan untuk meminimalisasi ketidakberlanjutan
sinyal pada awal dan akhir setiap frame (Do 1994). Dengan pertimbangan
kesederhanaan formula dan nilai kinerja window, maka penggunaan window
Hamming cukup beralasan (Buono 2009).
Transformasi Fourier
Analisis Fourier muncul dari paper yang ditulis oleh Jean Baptiste Joseph
Fourier (1768-1830) yang di-review oleh Joseph Louise Louis Lagrange (17361813) dan Pierre Simon de Laplace (1749-1827). Analisis ini merupakan suatu
teknik matematika untuk mendekomposisi sinyal menjadi sinyal-sinyal sinusoidal.
Untuk dapat melihat perbedaan sinyal suara yang berbeda-beda, harus dilihat dari
domain frekuensi karena kalau dilihat dari domain waktu perbedaanya sulit
terlihat. Untuk itu, sinyal suara yang berada pada domain waktu diubah ke domain
frekuensi dengan Fast Fourier Transform (FFT). Dengan algoritme FFT,
kompleksitas menjadi rendah (Buono 2009). Dengan alasan inilah maka pada
penelitian ini, transformasi Fourier yang digunakan adalah algoritme FFT.
Mel Frequency Wrapping
Persepsi manusia terhadap frekuensi sinyal suara tidak berupa skala linier.
Oleh karena itu, untuk setiap nada dengan frekuensi aktual f (dalam Hertz) tinggi
subjektifnya diukur dengan skala mel (Melody). Skala mel-frequency adalah selang
linear untuk frekuensi di bawah 1000Hz dan selang logaritmik untuk frekuensi di
atas 1000Hz (Do 1994).
Transformasi Kosinus (Discrete Cosine Transform)
Langkah terakhir yaitu mengonversikan log mel spectrum ke domain waktu.
Hasilnya disebut mel frequency cepstrum coefficients. Representasi cepstral
spectrum suara merupakan representasi property spectral local yang baik dari
suatu sinyal untuk analisis frame. Mel spectrum coefficients dan logaritmanya
berupa bilangan riil sehingga dapat dikonversikan ke domain waktu dengan
menggunakan Discrete Cosine Transform (DCT).

Pengenalan Pola dengan Codebook
Codebook adalah sekumpulan titik (vektor) yang mewakili distribusi suara
dari individu maupun objek tertentu dalam ruang suara. Titik-titik pada codebook
disebut codeword. Codebook merupakan cetakan yang dihasilkan suara setelah
melalui proses training. Dalam pengenalan suara, masing-masing suara yang akan
dikenali harus dibuat codebook-nya. Codebook dibentuk dengan cara membentuk
cluster semua vektor ciri yang dijadikan sebagai training set dengan
menggunakan algortime clustering. Algoritme clustering yang akan dipakai
adalah algoritme K-means. Gambar 5 merupakan ilustrasi sebaran data suara di
sekitar codebook.

8

Gambar 5 Ilustrasi sebaran codebook
Langkah pertama yang dilakukan oleh algoritma ini adalah menentukan Kinitial centroid, dengan K adalah parameter spesifik yang ditentukan user, yang
merupakan jumlah cluster yang diinginkan. Setiap titik atau objek kemudian
ditempatkan pada centroid terdekat. Kumpulan titik atau objek pada tiap centroid
disebut cluster. Kemudian langkah penempatan objek dan perubahan centroid
diulangi sampai tidak ada objek yang berpindah cluster.
Setiap suara yang masuk, akan dihitung jaraknya dengan codebook setiap
kelas. Kemudian jarak setiap sinyal suara ke codebook dihitung sebagai jumlah
jarak setiap frame sinyal suara tersebut ke setiap codeword yang ada pada
codebook. Kemudian dipilih codeword dengan jarak minimum. Setelah itu, setiap
sinyal suara yang masuk akan diidentifikasi berdasarkan jumlah dari jarak
minimum tersebut. Penghitungan jarak dilakukan dengan menggunakan jarak
euclid yang didefinisikan sebagai berikut (Buono dan Kusumoputro, 2007):
D

(xi - yi )2

deuclidean (x,y) =
i=1

x dan y adalah vektor yang ada sepanjang vector dimension (D).
Jika dalam sinyal suara input O terdapat T frame dan codewordk merupakan
masing-masing codeword yang ada pada codebook, jarak sinyal input dengan
codebook dapat dirumuskan:
T

jarak O,codebook =

min⁡[d(Ob codewordk )]
t=1

9
Pengujian
Proses pengujian dilakukan dengan membandingkan data yang diuji
dengan chord yang teridentifikasi dari 72 chord yang ada. Sistem otomatis akan
mengklasifikasi chord ke kelas yang sesuai. Proses pengklasifikasian tesebut
dilakukan dengan cara menghitung total jarak minimal dari setiap frame pada
MFCC data uji dengan codebook data latih yang dibuat. Persentase tingkat
akurasi dihitung dengan fungsi berikut:
hasil =

jumlah chord yang benar
X 100%
jumlah chord yang diuji

Lingkungan Pengembangan Sistem
Lingkungan pengembangan adalah kumpulan fasilitas yang diperlukan
dalam melaksanakan penelitian, baik berupa perangkat keras maupun perangkat
lunak. Pada penelitian ini lingkungan pengembangan yang digunakan adalah
sebagai berikut:
 Perangkat lunak: Windows 7 Home Premium, Matlab R2008b
 Perangkat keras: AMD Turion™ X2 Ultra Dual-Core Mobile ZM-80 2.1 GHz
dan 4 GB RAM

HASIL DAN PENGUJIAN
Perekaman Chord
Pada penelitian ini chord direkam langsung menggunakan perangkat lunak
Matlab selama 2 detik dan disimpan ke dalam file wav. Jumlah data chord gitar
yang direkam berjumlah 1440 data. Data tersebut di bagi ke dalam 72 jenis chord
dan direkam masing-masingnya sebanyak 20 kali.

Ekstraksi Ciri dengan MFCC
Pada penilitian ini proses MFCC menggunakan fungsi pada auditory
toolbox Matlab. Fungsi MFCC tersebut didapat dari Buono (2012). Setiap data
gitar yang telah direkam akan dilakukan ekstraksi ciri MFCC. Parameter yang
digunakan yaitu sampling rate, time frame, overlap, dan cepstral coefficient.
Peneltian ini menggunakan sampling rate sebesar 11000Hz selama dua detik, time
frame sebesar 30ms, overlap sebesar 40%, dan cepstral coefficient sebesar 13
dan 26. Tingkat akurasi penelitian ini didapat dari ketiga koefision tersebut.

10
Pemodelan Codebook
Pada penelitian ini dilakukan pemodelan codebook dengan menggabungkan
setiap data latih pada masing-masing jenis chord. Data yang digunakan
merupakan data latih yang diperoleh dari tahap MFCC. Setelah itu dilakukan
proses clustering dengan menggunakan K-means. Data yang sudah diklasterkan
merupakan gabungan koefisien dari setiap data latih. penelitian ini menggunakan
nilai k 3, 5, 8, 10, 12, 14, dan 16.

Hasil Pengujian
Pada hasil pengujian dilakukan percobaan dengan nilai k 3, 5, 8, 10, 12, 14,
dan 16. Masing-masing percobaan dengan nilai k tertentu dilakukan dua pengujian
menggunakan koefisien cepstral (koef) sebesar 13 dan 26. Parameter lain yang
digunakan pada pengujian ini yaitu time frame sebesar 30 ms, overlap sebesar 0.4,
dan proporsi latih sebanyak 15 data. Kasus percobaan tersebut akan diambil ratarata akurasinya untuk mengetahui hasil akhir yang didapat dari metode codebook.

Pengujian Akurasi bersasarkan Nilai K dan Jumlah Koefisien Cepstral
Pada Tabel 3, rata-rata akurasi tertinggi nilai k berdasarkan koefisien
cepstral terjadi pada nilai k 8, 12, dan 14 dengan rata-rata 98.89%, dan akurasi
terendah terjadi pada nilai k 3 dengan rata-rata 96.39%.
Table 2 Hasil pengujian nilai k bersasarkan koefisien cepstral
Coef
coef 13
coef 26
rata K

K
3
5
8
10
12
14
16
93.61% 95.83% 98.06% 97.22% 98.06% 98.06% 97.50%
99.17% 99.72% 99.72% 99.72% 99.72% 99.72% 99.72%
96.39% 97.78% 98.89% 98.47% 98.89% 98.89% 98.61%

Diagram batang pada Gambar 6 menunjukan bahwa setiap nilai K, akurasi
koefisien 13 selalu lebih kecil dari koefisien 26. Rentang terkecil akurasi antar
koefisien yaitu sebesar 1.66% terjadi pada saat nilai k 8, 12, dan 14, sedangkan
rentang terbesar akurasi antar koefisien yaitu sebesar 5.51% pada saat nilai k 3.
Rentang akurasi untuk nilai k 5, 10, dan 16 antar koefisien masing-masing sebesar
3.89%, 2.5%, dan 2.22%.

11
100.00%
99.00%
98.00%

Akurasi

97.00%
96.00%
95.00%
94.00%

coef 13

93.00%

coef 26

92.00%
91.00%
90.00%
3

5

8

10

12

14

16

Nilai K

Gambar 6 Diagram batang pengujian nilai k bersasarkan koefisien cepstral
Terlihat pada hasil pengujian nilai k berdasarkan koefisien cepstral bahwa
dengan nilai k yang semakin besar cenderung mampu menghasilkan akurasi yang
lebih baik. Hal ini terjadi karena data yang digunakan pada penelitian ini mungkin
lebih sesuai dengan nilai k yang lebih besar. Hanya saja dalam segi waktu proses
akan memakan waktu yang lebih lama.
Gambar 7 menunjukan perbandingan akurasi tertinggi dan akurasi terendah
hasil chord yang diperoleh. terlihat bahwa chord B6 merupakan chord yang
paling kecil akurasinya yaitu sebesar 0%. rata-rata akurasi terendah pada masingmasing nilai k terjadi pada chord A.

Gambar 7 Akurasi chord tertinggi dan terendah

12
Parameter yang mempengaruhi tingkat akurasi pada penelitian ini yaitu
jumlah koefisien cepstral. semakin besar jumlah koefisien cepstral, semakin
tinggi tingkat akurasinya, sedangkan nilai k tidak terlalu berpengaruh. Oleh karena
itu, pengidentifikasian selanjutnya untuk mengenali chord disarankan
menggunakan koefisien 26 dan menggunakan nilai k 5, karena nilai k 5
merupakan nilai k terkecil dengan tingkat akurasi tertinggi. Tujuannya agar
pengenalan chord dengan K lebih kecil menjadi lebih cepat.

Tampilan Program
Tampilan program yang dibuat pada penelitian ini dapat dilihat pada
Gambar 8. Terlihat bahwa terdapat beberapa tombol yang mempunyai fungsi
masing-masing. Tombol browse berfungsi sebagai tombol untuk memilih chord
yang akan diuji, dengan data yang diuji berupa file WAV. Program juga dapat
melakukan pengujian langsung dengan cara menekan tombol record untuk
merekam suara gitar, dan memutar hasil rekaman dengan menekan tombol play.
Tombol recognition berfungsi untuk memproses suara yang diuji dan
menampilkan hasilnya.

Gambar 8 Tampilan program awal
Pada tampilan program juga terdapat field untuk menampilkan plot suara
yang akan diuji. Selain itu juga terdapat dua combobox untuk memilih jumlah
koefisien cepstral dan jumlah k-cluster. Pada Gambar 9 merupakan tampilan
program hasil yang didapat dari salah satu data suara yang diuji.

13

Gambar 9 Tampilan program hasil data yang diuji
Pada Gambar 9 terdapat beberapa field yang menampilkan hasil empat
chord terdekat masing-masing field berupa nama chord dan nilai yang terdeteksi.
Nilai yang paling kecil merupakan nilai hasil chord yang paling mendekati.

Analisis Kesalahan
Terlihat dari hasil pengujian diatas bahwa pengenalan chord gitar
menggunakan metode codebook dengan koefisien 26 dan nilai k 5, 8, 10, 12, 14,
dan 16 mampu menghasilkan hasil rata- rata akurasi yang paling baik. Nilai k
tersebut merupakan nilai k yang sudah stabil karena hanya terjadi satu kesalahan
dalam pengenalan chord yang sama, yaitu chord Dis, sedangkan pada chord lain
sistem mampu mengenali chord dengan baik. Lampiran 1 merupakan confusion
matrik kesalahan dalam pengenalan chord pada koefisien 26 dengan nilai k 5, 8,
10, 12, 14, dan 16.
Pada Lampiran 1 terjadi kesalahan pengenalan chord pada chord Dis. Disini
terlihat bahwa chord Dis dikenali sebagai chord Dis7. Hal ini terjadi karena chord
tersebut mungkin kurang baik dalam segi perekaman, sehingga menyebabkan ada
salah satu chord yang diuji salah terdeteksi.
Akurasi yang kurang baik terjadi karena beberapa faktor, diantaranya yaitu
banyak noise yang terjadi saat merekam, kesalahan memainkan chord saat
merekam sehingga chord yang dihasilkan kurang bagus, dan kesalahan susunan
chord saat merekam.

14

SIMPULAN DAN SARAN
Simpulan
Penelitian ini sudah selesai diterapkan dengan menggunakan metode
codebook dan ekstraksi ciri MFCC. Penelitian ini menunjukkan bahwa parameter
jumlah koefisien sangat mempengaruhi akurasi sistem. Semakin besar jumlah
koefisien maka akurasi semakin tinggi. Hasil yang didapat untuk pengenalan
chord gitar menghasilkan rata-rata akurasi sebesar 99.64% untuk koefisien 26 dan
96.90% untuk koefisien 13. Terlihat perbedaan akurasi sebesar 2.74% antara
koefisien 26 dan koefisien 13. Akurasi tertinggi pada koefisien 26 terjadi pada
saat nilai k 5, 8, 10, 12, 14, dan 16 sebesar 99.72%.

Saran
Penelitian ini memungkinkan untuk dikembangkan lebih baik lagi, saran
untuk pengembangan selanjutnya ialah:
1 Menambahkan data jenis chord gitar dengan lengkap.
2 Menggunakan parameter time frame dan overlap yang berbeda untuk
membandingkan akurasi yang dihasilkan.
3 Melakukan percobaan dengan metode pengenalan suara yang lain.

15

DAFTAR PUSTAKA
Buono A. 2009. Representasi nilai HOS dan model MFCC sebagai ekstraksi ciri
pada sistem identifikasi pembicara di lingkungan ber-noise menggunakan
HMM [disertasi]. Depok (ID): Universitas Indonesia
Buono A, Kusumoputro B. 2007. Pengembangan model HMM berbasis
maksimum lokal menggunakan jarak Eucliduntuk sistem identifikasi
pembicara. Di dalam: Prosiding pada Workshop NACSIIT; 2007 Jan 29-30;
Depok (ID). hlm 52.
Do MN. 1994. Digital signal processing mini-project: an automatic recognition
system. Laussane (CH): Federal Institute of Technology.
Hendro. 2004. Panduan Praktis Improvisasi Gitar. Jakarta (ID): Puspa Swara.
Jurafsky D, Martin JH. 2007. Speech and Language Processing An Introduction
to Natural Language Processing, Computational Linguistic, and Specch
Recognition. New Jersey (US): Prentice Hall.
Nilsson M, Ejnarsson M. 2002. Speech recognition using hidden markov model:
performance evaluation in noisy environment [tesis]. Karlskrona (SE):
Blekinge Institute of Technology.
Solapung, Kaye A. 1991. Gitar Tunggal. Jakarta (ID): PT Intermasa.
Wisnudisastra E. 2011. Pengenalan chord pada alat musik gitar menggunakan
codebook dengan teknik ekstraksi ciri MFCC [skripsi]. Bogor (ID): Institut
Pertanian Bogor.

16

Lampiran 1 Confusion matrik kesalahan dalam pengenalan chord pada koefisien
26 dengan nilai k 5, 8, 10, 12, 14, dan 16
Chord
A
A6
A7
Am
Am6
Am7
A#
A#6
A#7
A#m
A#m6
A#m7

A
5
0
0
0
0
0
0
0
0
0
0
0

A6
0
5
0
0
0
0
0
0
0
0
0
0

A7
0
0
5
0
0
0
0
0
0
0
0
0

Am
0
0
0
5
0
0
0
0
0
0
0
0

Am6
0
0
0
0
5
0
0
0
0
0
0
0

Am7
0
0
0
0
0
5
0
0
0
0
0
0

A#
0
0
0
0
0
0
5
0
0
0
0
0

A#6
0
0
0
0
0
0
0
5
0
0
0
0

A#7
0
0
0
0
0
0
0
0
5
0
0
0

A#m
0
0
0
0
0
0
0
0
0
5
0
0

A#m6
0
0
0
0
0
0
0
0
0
0
5
0

A#m7
0
0
0
0
0
0
0
0
0
0
0
5

Chord
B
B6
B7
Bm
Bm6
Bm7
C
C6
C7
Cm
Cm6
Cm7

B
5
0
0
0
0
0
0
0
0
0
0
0

B6
0
5
0
0
0
0
0
0
0
0
0
0

B7
0
0
5
0
0
0
0
0
0
0
0
0

Bm
0
0
0
5
0
0
0
0
0
0
0
0

Bm6
0
0
0
0
5
0
0
0
0
0
0
0

Bm7
0
0
0
0
0
5
0
0
0
0
0
0

C
0
0
0
0
0
0
5
0
0
0
0
0

C6
0
0
0
0
0
0
0
5
0
0
0
0

C7
0
0
0
0
0
0
0
0
5
0
0
0

Cm
0
0
0
0
0
0
0
0
0
5
0
0

Cm6
0
0
0
0
0
0
0
0
0
0
5
0

Cm7
0
0
0
0
0
0
0
0
0
0
0
5

Chord
C#
C#6
C#7
C#m
C#m6
C#m7
D
D6
D7
Dm
Dm6
Dm7

C#
5
0
0
0
0
0
0
0
0
0
0
0

C#6
0
5
0
0
0
0
0
0
0
0
0
0

C#7
0
0
5
0
0
0
0
0
0
0
0
0

C#m
0
0
0
5
0
0
0
0
0
0
0
0

C#m6
0
0
0
0
5
0
0
0
0
0
0
0

C#m7
0
0
0
0
0
5
0
0
0
0
0
0

D
0
0
0
0
0
0
5
0
0
0
0
0

D6
0
0
0
0
0
0
0
5
0
0
0
0

D7
0
0
0
0
0
0
0
0
5
0
0
0

Dm
0
0
0
0
0
0
0
0
0
5
0
0

Dm6
0
0
0
0
0
0
0
0
0
0
5
0

Dm7
0
0
0
0
0
0
0
0
0
0
0
5

17

Lampiran 1 (lanjutan)
Chord
D#
D#6
D#7
D#m
D#m6
D#m7
E
E6
E7
Em
Em6
Em7

D#
4
0
0
0
0
0
0
0
0
0
0
0

D#6
0
5
0
0
0
0
0
0
0
0
0
0

D#7
1
0
5
0
0
0
0
0
0
0
0
0

D#m
0
0
0
5
0
0
0
0
0
0
0
0

D#m6
0
0
0
0
5
0
0
0
0
0
0
0

D#m7
0
0
0
0
0
5
0
0
0
0
0
0

E
0
0
0
0
0
0
5
0
0
0
0
0

E6
0
0
0
0
0
0
0
5
0
0
0
0

E7
0
0
0
0
0
0
0
0
5
0
0
0

Em
0
0
0
0
0
0
0
0
0
5
0
0

Em6
0
0
0
0
0
0
0
0
0
0
5
0

Em7
0
0
0
0
0
0
0
0
0
0
0
5

Chord
F
F6
F7
Fm
Fm6
Fm7
F#
F#6
F#7
F#m
F#m6
F#m7

F
5
0
0
0
0
0
0
0
0
0
0
0

F6
0
5
0
0
0
0
0
0
0
0
0
0

F7
0
0
5
0
0
0
0
0
0
0
0
0

Fm
0
0
0
5
0
0
0
0
0
0
0
0

Fm6
0
0
0
0
5
0
0
0
0
0
0
0

Fm7
0
0
0
0
0
5
0
0
0
0
0
0

F#
0
0
0
0
0
0
5
0
0
0
0
0

F#6
0
0
0
0
0
0
0
5
0
0
0
0

F#7
0
0
0
0
0
0
0
0
5
0
0
0

F#m
0
0
0
0
0
0
0
0
0
5
0
0

F#m6
0
0
0
0
0
0
0
0
0
0
5
0

F#m7
0
0
0
0
0
0
0
0
0
0
0
5

Chord
G
G6
G7
Gm
Gm6
Gm7
G#
G#6
G#7
G#m
G#m6
G#m7

G
5
0
0
0
0
0
0
0
0
0
0
0

G6
0
5
0
0
0
0
0
0
0
0
0
0

G7
0
0
5
0
0
0
0
0
0
0
0
0

Gm
0
0
0
5
0
0
0
0
0
0
0
0

Gm6
0
0
0
0
5
0
0
0
0
0
0
0

Gm7
0
0
0
0
0
5
0
0
0
0
0
0

G#
0
0
0
0
0
0
5
0
0
0
0
0

G#6
0
0
0
0
0
0
0
5
0
0
0
0

G#7
0
0
0
0
0
0
0
0
5
0
0
0

G#m
0
0
0
0
0
0
0
0
0
5
0
0

G#m6
0
0
0
0
0
0
0
0
0
0
5
0

G#m7
0
0
0
0
0
0
0
0
0
0
0
5

18

RIWAYAT HIDUP

Penulis lahir pada tanggal 28 Oktober 1989 di Lubuk Alung. Penulis adalah
putra kedua dari empat bersaudara pasangan Abu Bakar dan Marnis. Penulis
sekolah di SMA Negeri 1 Lubuk Alung, dan lulus pada tahun 2007. Setelah lulus
dari sekolah menengah, penulis diterima sebagai salah satu mahasiswa di Institut
Pertanian Bogor melalui jalur PMDK. Kegiatan penulis selama kuliah di IPB
yaitu kuliah dan belajar dengan sungguh-sungguh. Selain itu, penulis juga aktif di
berbagai kegiatan diluar perkuliahan. Diantaranya ikut dalam Ikatan Pelajar
Mahasiswa Minang (IPMM) dan aktif dalam kegiatan sosial antar pendukung
sepakbola dimana penulis merupakan salah satu member dari BIGREDS (fans
club Liverpool di Indonesia) regional Bogor. Selain itu, penulis juga merupakan
mahasiswa yang aktif dalam kegiatan olah raga, diantaranya sepakbola, futsal,
basket, dan badminton.