Pengenalan Karakteristik Suara Menggunakan Mel Frequency Cepstrum Coefficients (Mfcc) Pada Sistem Pengenalan Pembicara (Speaker Recognition Sistem)

(1)

LAMPIRAN A

Data percobaan sinyal suara (N = 256 & M = 100)

No MAKAN MINUM BELAJAR

1 2.840453 1.913651 2.609582

2 2.795348 2.520907 2.700109

3 2.892319 2.723265 2.478541

4 2.901173 2.766345 3.021578

5 2.976631 2.636196 3.152317

6 2.977265 2.569495 3.11944

7 2.835255 2.471992 2.96701

8 2.702126 2.166139 2.8838

9 2.667903 2.37794 2.793391

10 2.693286 2.290699 2.744058

11 2.513215 2.348712 2.853042

12 2.608358 2.349866 2.876067

13 2.499746 2.237009 2.854272

14 2.596726 2.113308 2.820026

15 2.679166 2.37732 2.705451

16 2.726235 2.50387 2.808625

17 2.824248 2.188089 2.695074

18 2.826509 2.420038 2.822191

19 2.943287 2.304981 2.663641

20 3.092089 2.309532 2.616372

21 3.061272 2.380734 2.51949

22 2.795571 2.405178 2.635862

23 2.494914 2.509855 2.6293

24 1.834531 2.426687 2.647008

25 2.602793 2.501755 2.621442

26 2.717969 2.417117 2.556476

27 2.6632 2.576425 2.539981

28 3.010277 2.532631 2.500684

29 2.965937 2.530375 2.58109

30 2.944868 2.56305 2.550635

31 2.929904 2.425589 2.624163

32 2.924641 2.492065 2.821891

33 3.008367 2.324717 2.903501

34 2.874513 2.325726 2.781177

35 3.045723 2.524474 2.679214

36 3.003404 2.554082 2.543216


(2)

38 3.01883 2.536029 2.550253

39 2.947809 2.437459 2.76519

40 3.015703 2.801276 2.909272

41 2.883735 2.832198 2.900184

42 2.804869 2.72857 2.77687

43 3.049127 2.801163 2.81652

44 3.074309 2.708278 2.919326

45 2.944557 2.586678 2.947231

46 2.97083 2.467131 2.929003

47 3.104349 2.668157 2.929228

48 3.137422 2.693482 2.903351

49 3.031652 2.831464 2.848655

50 3.070853 2.854678 2.65543

51 2.898006 2.901801 2.553883

52 3.008363 3.038533 2.592927

53 2.894335 3.036239 2.744685

54 2.800461 2.967859 2.861456

55 2.914787 2.907526 2.800693

56 2.921724 2.855878 2.754391

57 2.746666 2.902099 2.649201

58 2.869858 2.743736 2.877687

59 2.918968 2.689295 2.802808

60 2.834738 2.560883 2.655405

61 2.729312 2.603151 2.762717

62 2.924216 2.725129 2.804772

63 2.842529 2.755811 2.727388

64 2.909955 2.754071 2.657313

65 2.845307 2.67055 2.793663

66 2.736722 2.669645 2.610461

67 2.338206 2.685237 1.74934

68 2.213404 2.662591 2.114093

69 1.834132 2.646394

70 2.536849


(3)

Data percobaan sinya suara (N =512 & M = 100)

No MAKAN MINUM BELAJAR

1 2.417652 1.307088 2.614692

2 2.834113 2.011805 2.659611

3 2.875738 2.451596 2.687638

4 2.910484 2.671924 2.76601

5 2.905166 2.752386 3.008502

6 2.997474 2.730068 3.122108

7 3.042478 2.659891 3.158865

8 2.97684 2.587024 3.129633

9 2.856461 2.449531 3.013476

10 2.773433 2.353782 2.915551

11 2.803249 2.374441 2.852872

12 2.817944 2.374168 2.855444

13 2.775603 2.424593 2.903966

14 2.717571 2.389911 2.892631

15 2.719097 2.32663 2.853643

16 2.740099 2.437501 2.745847

17 2.688549 2.479433 2.804293

18 2.728344 2.442008 2.837052

19 2.840258 2.400159 2.800299

20 2.938741 2.410472 2.801994

21 3.042213 2.394316 2.703341

22 3.119861 2.453393 2.712127

23 3.096637 2.499426 2.720055

24 2.950268 2.544023 2.738257

25 2.700139 2.568792 2.79686

26 2.562653 2.543883 2.79565

27 1.845777 2.541541 2.764284

28 2.593832 2.595787 2.703978

29 2.632924 2.603651 2.618049

30 2.690328 2.63988 2.595512

31 2.615421 2.639887 2.667222

32 2.979913 2.61493 2.73817

33 3.028971 2.595002 2.803323

34 2.921035 2.558466 2.886289

35 2.8277 2.500555 2.933972

36 2.839039 2.529878 2.874676

37 2.869795 2.586161 2.742249

38 2.857886 2.559819 2.555518


(4)

40 2.903791 2.601003 2.820249

41 2.922616 2.574366 3.002711

42 2.947347 2.81111 3.002695

43 2.9347 2.872893 2.845798

44 2.914464 2.845121 2.694097

45 2.9054 2.833179 2.840477

46 2.838116 2.751735 2.896618

47 2.85453 2.719813 2.914824

48 2.992236 2.754662 2.928981

49 2.992183 2.827497 2.909304

50 2.958616 2.910293 2.870843

51 3.006051 2.964305 2.793797

52 3.047017 2.932127 2.633136

53 3.021923 2.921911 2.536346

54 2.983643 2.973891 2.570452

55 3.081747 3.015182 2.651861

56 3.141782 2.992125 2.548169

57 3.127255 2.913253 2.727743

58 3.06195 2.825954 2.794287

59 2.999362 2.736863 2.871807

60 2.983218 2.819447 2.927118

61 2.952901 2.851418 2.867913

62 2.908379 2.807842 2.764003

63 2.94361 2.808584 2.822985

64 2.975802 2.849461 2.827443

65 2.912278 2.825575 2.783641

66 2.881959 2.781082 2.819718

67 2.907694 2.726695 2.810947

68 2.916221 2.698149 2.683226

69 2.911262 2.726704 2.377114

70 2.89166 2.696242 2.043689

71 2.698706 2.646076 2.094911

72 2.437671 2.516844

73 2.275598 2.278424

74 2.203392 2.020993


(5)

Data percobaan sinyal suara (N = 1024 & M = 100)

No MAKAN MINUM BELAJAR

1 2.885184 1.853212 2.622375

2 2.88566 2.131529 2.697217

3 2.903052 2.367277 2.687035

4 2.920919 2.515685 2.87611

5 2.938269 2.620019 2.944194

6 2.985132 2.67077 3.028378

7 3.046271 2.685394 3.080161

8 3.068204 2.672356 3.109643

9 3.050139 2.637969 3.120376

10 3.006831 2.583748 3.109453

11 2.956947 2.513059 3.070765

12 2.9243 2.457629 3.016538

13 2.907381 2.4426 2.967546

14 2.895107 2.454459 2.948536

15 2.880822 2.476361 2.959387

16 2.872162 2.459425 2.965592

17 2.881092 2.408801 2.945218

18 2.890374 2.493447 2.900665

19 2.845918 2.529645 2.917415

20 2.829143 2.53537 2.954927

21 2.925317 2.531861 2.938257

22 2.992545 2.519712 2.88271

23 3.044977 2.497267 2.825122

24 3.088894 2.497461 2.819133

25 3.117072 2.527856 2.8422

26 3.124337 2.563841 2.864833

27 3.108108 2.597686 2.87527

28 3.045048 2.615153 2.854131

29 2.918533 2.620623 2.790031

30 2.559616 2.632028 2.722418

31 2.601426 2.643995 2.668666

32 2.497365 2.652307 2.637699

33 2.742528 2.662447 2.647191

34 2.882366 2.657136 2.680093

35 2.954667 2.643148 2.716429

36 2.968533 2.625782 2.753517

37 2.946403 2.60649 2.780523

38 2.864432 2.598124 2.806318


(6)

40 2.984984 2.610422 2.81638

41 3.008097 2.621584 2.86661

42 3.021421 2.64397 2.944993

43 3.038659 2.656914 2.960958

44 3.046446 2.711861 2.921709

45 3.043352 2.810928 2.850178

46 3.030837 2.883123 2.872045

47 3.020921 2.883099 2.780956

48 2.982451 2.831643 2.926154

49 2.940531 2.807535 2.972908

50 2.94831 2.813402 2.989361

51 2.982357 2.845284 2.950824

52 3.010544 2.895185 2.89858

53 3.027566 2.939345 2.845409

54 3.034042 2.960782 2.757368

55 3.025325 2.93333 2.661086

56 3.01108 2.925869 2.602954

57 3.007895 2.999162 2.579656

58 3.007649 2.999174 2.510872

59 3.052081 2.954499 2.667051

60 3.114653 2.858605 2.732474

61 3.09218 2.802611 2.782797

62 3.048088 2.847312 2.829583

63 2.998915 2.862304 2.87

64 2.989625 2.872552 2.899065

65 2.995658 2.869099 2.914733

66 2.993093 2.844943 2.905145

67 2.967533 2.828795 2.885462

68 2.936961 2.82277 2.876119

69 2.91229 2.80728 2.866477

70 2.897184 2.781737 2.83635

71 2.903327 2.752624 2.779181

72 2.915443 2.722256 2.687048

73 2.900583 2.683626 2.554652

74 2.843838 2.634263 2.400226

75 2.741917 2.575523 2.112265

76 2.612245 2.508651 1.972966

77 2.485159 2.418522

78 2.376863 2.286366

79 2.294793 2.198696

80 2.238969


(7)

LAMPIRAN B


(8)

(9)

LAMPIRAN C

Sintaks Program MATLAB rekaman suara

% Record your voice for 2 second.

rec0bj = audiorecorder; disp('Start speaking.') recordblocking(rec0bj, 5); disp('End of Recording.');

% Play back the recording.

play(rec0bj);

% store data in double-precision array.

myRecording = getaudiodata(rec0bj);

wavwrite(myRecording,'suaraujipertama.wav');

% plot the wavefrom.


(10)

LAMPIRAN D

Sintaks Program MATLAB pengambilan data %Data Awal Speech Continuous

[data, Fs, nbits, opts] = wavread('suaraujipertama.wav'); siz = wavread('suaraujipertama.wav','size');

%xlswrite('zero2.xlsx',data); %subplot(6, 1, 1);

figure(1); plot(data);

title('Suara Asli');

%% (1) Frame Blocking..

N = 256; % N point FFT

M = 100; % Overlapping

NN = floor(N/2+1); %N/2

nbFrames = ceil((length(data)-N)/M); Frames = zeros(nbFrames+1,N);

for i = 0:nbFrames-1

temp = data(i*M+1:i*M+N); Frames(i+1,1:N) = temp; end

% Last Frame..

temp = zeros(1,N);

lastLength = length(data)- nbFrames*M;

temp(1:lastLength) = data(nbFrames*M+1:(nbFrames*M +1 + lastLength-1));

Frames(nbFrames+1, 1:N) = temp; b = 1:N;

%subplot(6, 1, 2);

figure(2); plot(temp);

title('After Frame Blocking');

% Windowing

frameSize = size(Frames); nbFrames = frameSize(1); nbSamples = frameSize(2);

% Hamming Window

w = hamming(nbSamples);

Windows = zeros(nbFrames,nbSamples); for i = 1:nbFrames

temp = Frames(i,1:nbSamples);

Windows(i, 1:nbSamples) = w'.*temp; end

%subplot(6, 1, 3);

figure(3); plot(w);

title('After Hamming Window');

%% Fourier Transform..

ffts = fft(Windows'); fourir = ffts.*conj(ffts);

%subplot(6, 1, 4);

figure(4); plot(fourir);


(11)

%% Mel-frequency Wrapping.. % (a) Calculate Power spectrum..

PowSpecs = abs(fourir).^2; PowSpecs = PowSpecs(1:NN-1,:);

% (b) Mel filter generation

nof_c = 20; % Number of channels..

df = Fs/N; Nmax = N/2; fmax = Fs/2;

% Convert to mel scale..

melmax = 2595*log10(1+fmax/700); melinc = melmax/(nof_c+1);

melcenters = (1:nof_c).*melinc;

% Convert to frequency scale..

fcenters = 700*((10.^(melcenters./2595))-1); centerf = round(fcenters./df);

startf = [1,centerf(1:nof_c-1)]; stopf = [centerf(2:nof_c),Nmax]; W = zeros(nof_c,Nmax);

% Making filter..

for i = 1:nof_c

increment = 1.0/(centerf(i)-startf(i)); for j = startf(i):centerf(i)

W(i,j) = (j-startf(i))*increment; end

decrement = 1.0/(stopf(i)-centerf(i)); for j = centerf(i):stopf(i)

W(i,j) = (j-centerf(i))*decrement; end

end

% Normalising..

for i = 1:nof_c

W(i,:) = W(i,:)/sum(W(i,:)); end

% (c) Apply mel filters to Power spectrum coeffs..

melPowSpecs = W*PowSpecs;

% (d) MFCC calculations..

melCeps = dct(log(melPowSpecs)); melCeps(1,:) = [];

%subplot(6, 1, 5);

figure(5); plot(melCeps);

title('After MFCC');

%Cepstrum

cepstrum = rceps(melCeps);

[long,coefficient] = size(cepstrum); x = icceps(long,coefficient);

z = max(sum(abs(cepstrum))); y = round(10000*z);


(12)

plot(cepstrum);

title('After Cepstrum');

%Display

if y == 66971

%fprintf('Nilai Koefisien Sinyal Suara\n');

fprintf('SINYAL SUARA MILIK SAUDARA WINDY\n');

msgbox('SINYAL SUARA MILIK SAUDARA WINDY','Success'); elseif y == 59399

fprintf('SINYAL SUARA MILIK SAUDARA A\n');

msgbox('SINYAL SUARA MILIK SAUDARA A','Success'); elseif y == 344028

fprintf('SINYAL SUARA MILIK SAUDARA B\n');

msgbox('SINYAL SUARA MILIK SAUDARA B','Success'); elseif y == 58991

fprintf('SINYAL SUARA MILIK SAUDARA C\n');

msgbox('SINYAL SUARA MILIK SAUDARA C','Success'); elseif y == 60540

fprintf('SINYAL SUARA MILIK SAUDARA D\n');

msgbox('SINYAL SUARA MILIK SAUDARA D','Success'); elseif y == 76828

fprintf('SINYAL SUARA MILIK SAUDARA E\n');

msgbox('SINYAL SUARA MILIK SAUDARA E','Success'); end


(13)

DAFTAR PUSTAKA

[1]

Ananda A. Ardha “Penggunaan pengenal pengucap tidak berdasarkan Teks (Speaker Recognition Text-Independent) sebagai Otorasi Pengaksesan Pintu” Teknik Elektro, Fakultas Teknik, Universitas Diponegoro, 2010.

[2] DSP Mini-Project: An Automatic Speaker Recognition System

[3] Setiawan Angga, Achmad Hidayanto, R. Rizal Isnanto “Aplikasi pengenalan ucapan dengan ekstraksi Mel Frequency Cepstrum Coefficients (MFCC) melalui jaringan syaraf tiruan (JST) Learning Vektor Quantization (LVQ) untuk mengoperasikan kursor komputer”, ejournal.undip.ac.id, 2011.

[4] Mandalia Darshan, Pravin Gareta “ Speaker Recognition Using Mel Frequency Cepstrum Coefficient (MFCC) and Vector Quantization Model” Teknik Elektro, Fakultas Teknik, Universitas Nirma, 17 Mei 2011.

[5] Putra Darma, Adi Resmawan “Verifikasi Biometri suara menggunakan Metode Mel Frequency Cepstrum Coefficient (MFCC) dan Dynamic Time Warping (DTW)” Teknik Informasi, Fakultas Teknik, Universitas Udayana, 1 Juni 2011.


(14)

BAB III

PERANCANGAN SISTEM PENGENALAN PEMBICARA

3.1 Pendahuluan

Pengolahan suara adalah mempelajari sinyal suara dan cara mengolah sinyal tersebut. Sinyal biasanya diproses dalam tampilan digital yang mana nantinya pengolahan suara dapat terlihat pada interaksi pengolahan sinyal digital dan bahasa alami pemrosesan. Bahasa alami pemrosesan mencakup tentang kecerdasan buatan dan linguistik. Sinyal suara diperoleh melalui sebuah alat yang mengubah energi gelombang suara menjadi besaran - besaran listrik yang akan diteruskan dan diolah kembali menggunakan metode tertentu. Pada sistem ini sinyal suara diambil dari hasil pengumpulan data yang telah diekstrak kedalam format Extanstion xlsx. Secara keseluruhan data inilah yang akan dibangkitkan ulang untuk menghasilkan file suara dalam bentuk format dot wave. Hasil akhirnya sistem yang akan dibuat menggunakan software berbahasa MATLAB ini akan mampu membedakan setiap file suara yang telah diambil datanya.

3.2 Blok Diagram Perancangan Sistem

Pada bab ini akan dibahas mengenai cara kerja perancangan sistem secara garis besar. Hal ini dilakukan untuk mempermudah pemahaman tentang cara kerja perancangan sistem ini, karena dalam perancangan sistem pengenalan pembicara ini harus saling mendukung, dan saling mempengaruhi. Hal ini akan


(15)

mempengaruhi setiap bagian komponen utama maupun pendukung dalam saat dijalankan selama proses berlangsung.

Untuk itu diperlukan sebuah blok diagram yang akan membantu penulis dan pembaca dalam memahami sistem perancangan pengenalan pembicara secara keseluruhan. Pada Gambar 3.1 terdapat blok diagram sistem secara keseluruhan yang menjadi garis besar tentang cara kerja sistem perancangan pengenalan pembicara.

Gambar 3.1Blok diagram Perancangan sistem pengenalan pembicara

Blok diagram yang dijelaskan pada penelitian ini mencakup blok diagram mengenai perancangan sistem pengenalan pembicara. Berdasarkan gambar blok diagram diatas, fungsi kerja dari masing – masing blok, adalah sebagai berikut : 1. Suara

Suara adalah sinyal atau gelombang yang merambat dengan frekuensi dan amplitude tertentu melalui media perantara yang dihantarkannya seperti media air, udara maupun benda padat. Manusia dapat berkomunikasi dengan manusia lainnya dengan suara. Jika seseorang mendengarkan


(16)

gelombang sinus murni dimulai pada 20 Hz (20 siklus per detik atau suara terendah telinga manusia sehat dapat menerima) dan naik secara bertahap sampai 20 kHz (20.000 siklus per detik dan merupakan suara tertinggi yang bisa kita dengar). Dalam perancangan sistem ini telah ditentukan bahwa frekuensi sampling 8000 kHz berasal dari kelipatan teorema nyquist yang mengharuskan frekuensi sampling 2 kali lipat dari frekuensi sinyal suara. Pada penelitian ini besar sinyal suara sebesar 4 kHz dengan ketentuan percakapan manusia sebesar 340-3400 Hz.

2. Perangkat Pengolahan suara

Untuk perangkat perancangan sistem ini menggunakan Filter Anti Aliasing yang dapat meminimalisir munculnya sinyal baru yang berbeda dengan frekuensi sinyal aslinya. Filter yang akan digunakan adalah filter low pass chebyshev dengan rentang frekuensi yang dilewatkan dibawah 5 kHz. Dalam perancangan sistem pengenalan pembicara ini terdiri dari penguat mikrofon dan anti aliasing filter. Tahap pertama dalam proses perekaman adalah mengubah gelombang akustik suara menjadi sinyal analog menggunakan mikrofon. Sinyal analog yang masih lemah ini perlu dikuatkan. Sebagai penguat dibutuhkan IC LM567.

3. Perangkat pengirim informasi data

Perangkat pengirim informasi data merupakan perangkat yang memiliki komunikasi data serial to USB. Secara umum komunikasi serial merupakan komunikasi USART (Universal syncronus asyncronus receiver


(17)

transmitter). Perangkat ini terdapat pada fungsi khusus mikro kontroler Arduino UNO.

4. Laptop atau Komputer

Perancangan sistem pengenalan pembicara ini menggunakan laptop atau komputer. Secara umum komputer adalah sistem elektronik yang memiliki kemampuan memanipulasi data dengan cepat dan tepat serta dirancang dan diorganisasikan agar secara otomatis menerima dan menyimpan data input, memprosesnya, dan menghasilkan output dibawah pengawasan suatu langkah–langkah instruksi program yang tersimpan didalam penyimpanannya.

5. Matlab

Pada perancangan sistem ini software digunakan untuk mengolah data digital yang dikirim oleh arduino dan akan dikonversikan kembali ke sebuah file suara dalam format *wav yang kemudian akan ditampilkan dalam bentuk grafik. Matlab adalah suatu bahasa tingkat tinggi yang digunakan untuk komputasi teknik. Bahasa ini mengintegrasi proses komputasi, visualisasi, dan pemrograman dengan environment yang mudah digunakan dengan mengekspresikan masalah dan solusi kedalam notasi – notasi matematika.


(18)

6. Sistem pengenalan pembicara berbasis coding Matlab

Merupakan sistem yang dibuat menggunakan software Matlab berbentuk program pengkodingan, yang dirancang pada format m-file. Program ini berisi algoritma dan urutan struktur program yang dibuat sedemikian rupa berdasarkan algoritma pengenalan pembicara.

7. Display grafik informasi data pengolahan dan pengenalan suara

Merupakan tampilan yang dihasilkan oleh sistem setelah program dijalankan.

3.3 Algoritma sistem pengenalan pembicara

Pada perancangan sistem dibutuhkan beberapa langkah awal atau pandangan dasar yang digunakan untuk mempermudah merancang program sistem pengenalan pembicara. Salah satu alternatife adalah membuat flow-chart atau bagan alir program, dimana bagan alir merupakan bagan yang menggambarkan arus logika dari data yang akan diproses dalam suatu program dari awal sampai akhir. Bagan alir program merupakan metode yang berguna bagi seorang perancang program untuk mempersiapkan program yang rumit. Bagan alir terdiri dari simbol – simbol yang mewakili fungsi – fungsi langkah program dan garis alir ( flow lines) menunjukkan urutan dari simbol – simbol yang akan dikerjakan. Jadi, flow-chart adalah gambaran aliran data suatu program dengan menggunakan simbol – simbol suatu fungsi yang telah ditentukan. Pada Gambar 3.2 telah dirancang sebuah bagan alir yang mempermudah penulis untuk membuat program sistem pengenalan suara pembicara


(19)

Gambar 3.2 Bagan alir algoritma program perancangan sistem pengenalan pembicara.


(20)

Untuk menjelaskan secara ringkas algoritma diatas, maka dapat kita kategorikan dalam beberapa bagian sebagai berikut :

1. Matlab

Matlab (Matrix Laboratory) merupakan salah satu bahasa pemrograman yang dikembangkan oleh MathWorks. Matlab adalah sebuah bahasa pemrograman dengan unjuk kerja tinggi (high performance) untuk komputasi teknis, yang mengintegrasikan komputasi, visualisasi, dan pemrograman didalam lingkungan yang mudah penggunaannya dalam memecahkan persoalan dengan solusinya yang dinyatakan dengan notasi matematik.

Salah satu yang cukup menarik dari MatLab adalah kemudahan dan kejelasannya dalam memahami contoh dan demo serta help yang ada pada Matlab. Matlab dapat berlaku seperti bahasa pemrograman C ataupun pascal yang mempunyai struktur control program. Pemrograman dengaan Matlab memerlukan lebih dari satu baris dan dimungkinkan untuk didokumentasikan dalam m-file, control program ini digunakan untuk memperbaiki tampilan yang diinginkan. Untuk mengenal lebih dekat tentang Matlab dapat dilihat pada Gambar 3.3 yang menampilkan ruang kerja Matlab R2012a dengan berbagai tolls dan fasilitas yang disediakannya.


(21)

Gambar 3.3 Tampilan program Matlab

Sistem Matlab terdiri dari 5 bagian utama, yaitu : a. Bahasa (pemrograman) Matlab

Bagian ini adalah bahasa (pemrograman) tingkat tinggi yang menggunakan matriks/array dengan pernyataan aliran kendali program, struktur data, masukan/keluaran, dan fitur-fitur pemrograman berorientasi objek.

b. Lingkungan kerja Matlab

Bagian ini adalah sekumpulan tools dan fasilitas Matlab yang digunakan oleh pengguna atau pemrograman. Fasilitas yang dimaksudkan misalkan untuk mengelola variable didalam ruang kerja (workspace) dan melakukan impor dan ekspor data.

c. Penanganan Grafik

Bagian ini adalah sistem grafik MATLAB, termasuk perintah – perintah (program) tingkat tinggi untuk visualisasi data dimensi 2 dan dimensi 3, pengolahan citra, animasi, dan presentasi grafik.


(22)

d. Pustaka (Library) fungsi matematis MATLAB

Bagian ini adalah koleksi algoritma komputasi mulai dari fungsi dasar seperti menjumlahkan (sum), menentukan nilai sinus (sine), kosinus (cosine), dan aritmatik bilangan kompleks.

e. API (Application Program Interface)

Bagian ini adalah pustaka (Library) untuk menuliskan program dalam bahasa C dan Fortran yang berinteraksi dengan MATLAB, termasuk fasilitas untuk memanggil rutin program dari MATLAB (dynamic linking), memanggil MATLAB sebagai mesin komputasi (computation engine) dan untuk pembacaan serta penulisan MAT – files.

2. File Suara

File suara yang dijadikan inputan pada sistem ini berasal dari data yang dikirim kan oleh alat pengolahan suara analog yang disimpan dalam bentuk format file dokumen dan akan diubah kembali menjadi file suara dalam format dot wav. Wav merupakan standar format container file yang digunakan oleh Windows. Wav umumnya digunakan untuk menyimpan audio tak termampatkan, file suara yang memiliki kualitas CD, yang berukuran besar (sekitar 10 MB per menit). File wav juga dapat berisi data terkodekan dengan beraneka ragam codec untuk mengurangi ukuran file. File audio WAV dengan PCM, namun bisa terkompresi maupun tidak terkompresi. Format WAV banyak digunakan oleh handphone, sehingga popularitas bisa menyamai file MP3.


(23)

Kualitas produksi waveform audio bergantung pada sampling rate (banyaknya sampel per detik). Waveformaudio disebut juga pulse code modulator (pcm) audio. WAV merupakan standar untuk komputer berbasis Windows, namum dapat digunakan dikomputer berbasis Machitosh. Adapun file suara yang akan dijadikan sampel memiliki rentang atau pita suara sebesar 2 detik dengan satu buah pengucapan kata tertentu dengan perbedaan setiap sampel kata terdiri dari satu suara manusia. Adapun contoh file suara yang telah diambil ditunjukkan pada Gambar 3.4


(24)

Adapun file suara yang akan diinisialisasi berdasarkan file name suara yang akan diproses menjadi 4 buah variable data. Untuk lebih jelasnya sintaks program Matlab adalah sebagai berikut :

%Data Awal Speech Continuous

[data, Fs, nbits, opts] = wavread('s1.wav'); siz = wavread('s1.wav','size');

subplot(2, 1, 1); plot(data);

title('Suara Asli');

3. Frame Blocking

Pada perancangan sistem ini nilai N ditentukan atau ditetapkan berdasarkan nilai yang ditulis dalam program yang panjang nya antara 10-30 ms atau 256-1024 data.Panjang frame yang digunakan sangat mempengaruhi keberhasilan dalam analisa spectral. Di satu sisi ukuran dalam frame harus sepanjang mungkin untuk dapat menunjukkan resolusi frekuensi yang baik. Akan tetapi, di lain sisi ukuran frame juga harus cukup pendek untuk dapat menunjukkan resolusi waktu yang baik.

Dalam perancangan sistem ini sinyal suara yang kontinyu akan diblock menjadi frame sampel N, dengan frame yang berdekatan dipisahkan oleh M (M<N). Frame pertama terdiri dari N sampel, Frame kedua dimulai sampel M setelah frame yang pertama, dan melawati dari sampel N-M dan seterusnya. Proses ini berlanjut sampai semua suara dicatat dalam satu frame atau lebih. Dengan cara yang sama, frame ketiga dimulai 2M sampel setelah frame pertama (atau M sampel setelah frame kedua) dan overlap dengan N– 2M sampel. Proses ini berlanjut hingga semua sinyal suara dihitung dalam satu atau banyak frame. Nilai untuk N dan M adalah N =


(25)

256 dan M =100. Berikut ini adalah diagram blok untuk proses penentuan frame yang ditunjukkan pada Gambar 3.5 [6].

Gambar 3.5 Diagram block proses penentuan frame blocking Jadi, proses frame tersebut dilakukan secara terus-menerus hingga semua sinyal dapat terproses. Selain itu, proses ini umumnya dilakukan secara overlapping untuk setiap frame-nya. Panjang daerah overlap yang umum digunakan adalah kurang lebih 30% sampai 50% dari panjang frame. Untuk lebih jelasnya sintaks program Frame Blocking pada Matlab adalah sebagai berikut :

%% (1) Frame Blocking..

N = 256; % N point FFT M = 100; % Overlapping NN = floor(N/2+1); %N/2

nbFrames = ceil((length(data)-N)/M); Frames = zeros(nbFrames+1,N);

for i = 0:nbFrames-1

temp = data(i*M+1:i*M+N); Frames(i+1,1:N) = temp;

end

% Last Frame..

temp = zeros(1,N);

lastLength = length(data)- nbFrames*M;

temp(1:lastLength) = data(nbFrames*M+1:(nbFrames*M +1 + lastLength-1));

Frames(nbFrames+1, 1:N) = temp; b = 1:N;

subplot(2, 1, 2); plot(temp);


(26)

4. Windowing

Pada perancangan sistem pengenalan pembicara proses windowing ini bertujuan untuk mengurangi terjadinya kebocoran spectral atau aliasing yang mana merupakan suatu efek dari timbulnya sinyal baru yang memiliki frekuensi yang berbeda dengan sinyal aslinya. Efek tersebut dapat terjadi karena rendahnya jumlah sampling rate atau karena proses frame blocking yang menyebabkan sinyal menjadi discontinue.

Hamming windows digunakan pada perancangan sistem ini dikarenakan tujuan penulis untuk mengetahui seberapa besar pengaruh windowing ini terhadap sinyal analog yang akan diproses. Secara umum Fungsi ini menghasilkan sidelobe level yang tidak terlalu tinggi (kurang lebih -43 dB). Selain itu, noise yang dihasilkan pun tidak terlalu besar (kurang lebih 1.36 BINS). Untuk lebih jelas memahami mengenai sistem kerja atau pengaruh sinyal yang diakibatkan oleh Hamming window ditunjukan pada Gambar 3.6 [6].


(27)

Untuk lebih jelas, adapun script sintaks program Windowing pada Matlab adalah sebagai berikut :

% Windowing

frameSize = size(frames); nbFrames = frameSize(1); nbSamples = frameSize(2); % Hamming Window

w = hamming(nbSamples);

Windows = zeros(nbFrames,nbSamples);

for i = 1:nbFrames

temp = Frames(i,1:nbSamples);

Windows(i, 1:nbSamples) = w'.*tempt;

end

subplot(6, 1, 3); plot(w);

title('After Hamming Window');

5. FFT (fast fourier transform)

Pada perancangan sistem ini untuk mendapatkan sinyal dalam domain frekuensi dari sebuah sinyal discrete, maka digunakan salah satu metode transformasi discrete fourier transform.DFT dilakukan terhadap masing-masing frame dari sinyal yang telah di windowing. Namun, yang menjadi persoalan adalah bahwa DFT tersebut memerlukan waktu komputasi yang sangat panjang untuk data yang besar. Oleh karena itu, diperlukan suatu teknik komputasi yang efisien, baik dari sisi waktu maupun dari sisi penggunaan memori.

FFT adalah algoritma cepat untuk mengimplementasikan discrete fourier transform (DFT).FFT ini mengubah masing-masing frame N sampel dari domain waktu menjadi domain frekuensi.

Hasil transformasi ini dipengaruhi oleh beberapa parameter, yaitu sample rate sinyal suara dan FFT size. Sample rate adalah banyaknya sampel input


(28)

analog yang diambil secara digital dengan satuan Hertz (Hz). Sample rate sinyal suara berpengaruh pada besarnya jangkauan frekuensi dari koefisien hasil FFT. Jangkauan frekuensi hasil FFT adalah setengah dari sample rate sinyal suara yang ditransformasi. Artinya, apabila terdapat sinyal suara dengan sample rate 44100 Hz, maka koefisien-koefisien hasil transformasi dari sinyal suara tersebut berkisar dari 0 Hz sampai 22050 Hz. Jadi, semakin besar sample rate , maka akan semakin detail pula sampel analog yang diambil secara digital.

Sedangkan FFT size adalah panjang dari FFT yang digunakan. FFT size berpengaruh terhadap ketelitian tiap koefisien FFT. Semakin besar FFT size, maka tiap koefisien hasil FFT akan mewakili rentang frekuensi yang semakin kecil, sehingga ketelitiannya semakin tinggi. Sebaliknya apabila ukuran sampel FFT semakin kecil, maka tiap koefisien hasil FFT akan mewakili rentang frekuensi yang semakin besar, sehingga ketelitiannya semakin rendah. Adapun script program Matlab tentang FFT (fast fourier transform) adalah sebagai berikut :

%% Fourier Transform..

ffts = fft (Windows'); subplot(6, 1, 4); plot(ffts);

title('After Fourier Transform');

6. MFCC (mel frequency cepstrum coefficients)

Pada perancangan sistem ini dibutuhkan suatu metode yang mampu mengidentifikasi sinyal yang masuk. Untuk itu MFCC dipilih sebagai salah satu metode yang digunakan untuk tujuan tersebut. MFCC berasal dari tipe representasi kepstral dari klip audio yang disebut sebagai


(29)

spectrum yag berasal dari spectrum yang lain. Perbedaan antara ceptrum dan mel frequency cepsturm adalah terletak pada MFC nya, Band frekuensi diposiskan secara algoritma pada skala mel yang mendekati respon sistem pendengaran manusia, lebih dekat dari band frekuensi ruang yang diperoleh secara langsung dari FFT dan DCT. Cara ini mampu memberikan peluang yang lebih baik dalam memproses data, sebagai contonya adalah audio compression.

MFCC secara umum diperoleh sebagai berikut :

a. Mengambil perubahan Fourier dari windowing sebuah sinyal b. Pemetaan logaritma amplitude dari perolehan spectrum diatas

menuju ke skala mel, menggunakan jendela overlap berbentuk segitiga

c. Memerlukan discrete cosine transform (DCT) dari logaritma amplitude mel, hanya jika itu merupakan sebuah sinyal

d. MFCC adalah aplitudo dalam menghasilkan spectrum

Dalam metode MFCC ini dapat dijelaskan script pemrograman dalam Matlab adalah sebagai berikut :

%% Mel-frequency Wrapping.. % (a) Calculate Power spectrum.. PowSpecs = abs(ffts).^2;

PowSpecs = PowSpecs(1:NN-1,:); % (b) Mel filter generation

nof_c = 20; % Number of channels.. df = Fs/N;

Nmax = N/2; fmax = Fs/2;


(30)

% Convert to mel scale..

melmax = 2595*log10(1+fmax/700); melinc = melmax/(nof_c+1);

melcenters = (1:nof_c).*melinc; % Convert to frequency scale..

fcenters = 700*((10.^(melcenters./2595))-1); centerf = round(fcenters./df);

startf = [1,centerf(1:nof_c-1)]; stopf = [centerf(2:nof_c),Nmax]; W = zeros(nof_c,Nmax);

% Making filter..

for i = 1:nof_c

increment = 1.0/(centerf(i)-startf(i));

for j = startf(i):centerf(i)

W(i,j) = (j-startf(i))*increment;

end

decrement = 1.0/(stopf(i)-centerf(i));

for j = centerf(i):stopf(i)

W(i,j) = (j-centerf(i))*decrement;

end end

% Normalising..

for i = 1:nof_c

W(i,:) = W(i,:)/sum(W(i,:));

end

% (c) Apply mel filters to Power spectrum coeffs.. melPowSpecs = W*PowSpecs;

% (d) MFCC calculations..

melCeps = dct(log(melPowSpecs)); melCeps(1,:) = [];

subplot(6, 1, 5); plot(melCeps);

title('After MFCC');

7. Cepstrum

Pada perancangan sistem pengenalan suara ini cepstrum dikembangkan untuk penggunaan dengan sinyal ucapan, yang secara spectral mempunyai banyak puncak dan selalu memiliki jeda datar. Ketika logaritma magnitude spektrrum telah dapat diambil, puncak ini dapat


(31)

dikurangi, amplitudonya dibawa kedalam suatu skala yang dapat dipakai, dan menghasilkan suatu bentuk gelombang periodik dalam daerah frekuensi, periode berhubungan dengan frekuensi fundamental sinyal asli. Cepstrum merupakan suatu analisis spectral dengan keluaran berupa alihragam Fourier dari fungsi logaritma magnitudo spectrum gelombang masukan. Prosedur ini dikembangkan dalam percobaan untuk membuat suatu sistem tidak linier agar lebih linier. Cepstrum atau koefisien cepstral, didefenisikan sebagai balikan alihragam Fourier dari spectrum amplitude logaritmik waktu pendek. Maksud dari cepstrum sesungguhnya adalah menyederhanakan koefisien yang diperoleh dari MFCC. Hasil dari penyederhanaan inilah yang menjadi data Matriks yang digunakan untuk mengidentifikasi kepemilikan sinyal suara masukan.

Adapun script pemrograman Matlab tentang cepstrum ini adalah sebagai berikut :

%Cepstrum

cepstrum = rceps(melCeps);

[long,coefficient] = size(cepstrum); x = iccpes(long,coefficient);

z = max(sum(abs(cepstrum))); y = round(10000*z);

figure(6);


(32)

BAB IV

HASIL DAN PENGUJIAN SISTEM

4.1 Gambaran Umum pengujian Sistem Pengenalan Pembicara

Tahapan pengujian sistem perancangan ini dilakukan dengan tujuan adalah untuk mengetahui hasil dari perancangan sistem yang telah dibuat. Pada pengujian sistem ini terdiri dari beberapa tahapan, dimulai dari gambaran umum pengujian sistem pengenalan pembicara, kemudian persiapan perangkat pendukung pengujian sistem dan pengujian terhadap file suara yang akan dianalisa. Sistem yang digunakan pada aplikasi ini menitikberatkan pada pengguna. Pengguna harus melakukan pengujian terhadap file suara yang mana akan diproses untuk dapat dikenali kepilikan suara tersebut. File suara yang merupakan hasil dari kontruksi ulang yang berasal dari pengiriman data oleh sistem filter anti aliasing. Rekontruksi ulang file suara yang berasal dari data tersebut akan diubat menjadi file suara dalam format dot wave menggunakan software pemrograman Matlab. Program Matlab yang digunakan hanya berbentuk data dalam lingkungan kerja coding m-file. Adapun langkah – langkah untuk melakukan pengujian sistem ini adalah sebagai berikut :

1. Jalankan program Matlab

2. Pilih program m-file yang telah dibuat sebelumnya 3. Atur parameter N dan M pada frame blocking 4. Tentukan file suara yang akan dianalisa


(33)

6. Analisa setiap output yang ditampilkan secara grafik

7. Simpulkan apakah file suara yang dianalisa sesuai dengan file suara yang diinputkan

4.2 Persiapan Perangkat Pendukung Pengujian Sistem

Untuk melakukan pengujian sistem ini diperlukan beberapa perangkat pendukung yang digunakan untuk mempermudah pengujian sistem yang baik untuk data referensi maupun mempermudah pengujian sistem untuk proses yang diharapkan penulis. Perangkat yang dimaksud penulis dalam pengujian sistem ini tidak hanya beralat yang berupa barang tetapi berhubungan juga terhadap tempat dan waktu serta orang – orang yang membantu dalam pengujian sistem ini. Adapun beberapa perangkat yang digunakan antara lain :

1. Tempat dan Waktu

Pengujian sistem dan pengambilan data ini dilakukan pada tanggal 20 Agustus 2015 dan bertempat di Komplek Puri, Pasar 1 Tanjung Sari No. 30 Ringroad Medan.

2. Partisipasi

Partisipasi adalah orang yang ikut membantu pengujian sistem dan pengambilan data yang mana orang tersebut diambil sampel suara nya untuk dijadikan sebagai data pengujian. Jumlah orang yang ikut berpartisipasi sebanyak 6 orang yang merupakan sahabat penulis dan termasuk penulis sendiri.


(34)

3. Laptop

Dalam pengujian sistem ini digunakan Laptop bermerk HP ProBook 4421s dengan Spesifikasi Intel® Core™ i3 CPU sebagai unit pengolahan data yang dikirim oleh sistem dan sekaligus untuk menampilkan data dalam bentuk grafik.

4. Software Matlab

Matlab merupakan salah satu bahasa pemrograman dengan unjuk kerja tinggi (high performance) untuk komputasi Teknis yang mengintegrasikan komputasi visualisasi dan pemrograman didalam lingkungan yang mudah penggunaannya dalam memecahkan persoalan dengan solusi yang dinyatakan dengan notasi matematik. Pada pengujian sistem ini digunakan Matlab R2012a dengan batasan lingkungan kerja hanya pada pemrograman koding pada lingkungan ,m-file.

4.3 Pengujian Sistem terhadap file Suara

Pada pengujian ini file suara yang diambil dengan selang 2 detik dan dengan pengucapan kata “MAKAN, MINUM, dan BELAJAR,” dilakukan terhadap 1 orang, hal ini ditunjukan untuk mendapatkan perbedaan koefisien terhadap setiap pengucapan kata pada sinyal suara. Sinyal suara tersebut akan dianalisa berdasarkan nilai N dan M yang diubah – ubah sesuai dengan ketentuan tertentu. Adapun perbedaan koefisien diantara pengucapan kata tersebut ditunjukkan pada Gambar 4.1 untuk N = 256 dan M = 100.


(35)

Gambar 4.1Grafik perbandingan koefisien untuk N = 256 dan M = 100

Pada Grafik yang ditunjukkan pada Gambar 4.1, data 1 merupakan pengucapan kata “MAKAN”, data 2 merupakan pengucapan kata “MINUM”, data 3 merupakan pengucapan kata “BELAJAR”.

Berdasarkan hasil pengujian dari perbandingan koefisien sinyal suara yang telah dilakukan dapat dilihat bahwa besar nilai koefisien untuk pengucapan kata “MAKAN” bernilai mulai dari 1.8341 mv sampai 3.1374 mv dan rata – rata 2.82171 mv dengan jumlah total koefisien 69 buah. Untuk koefisien pengucapan kata “MINUM” bernilai mulai dari 1.8972 mv sampai 3.1374 mv dan nilai rata – rata 2.559138 mv dengan jumlah total koefisien 71 buah. Kemudian untuk koefisien pengucapan kata “BELAJAR” bernilai mulai dari 1.7493 mv sampai 3.1523 mv dan rata – rata 2.82171 mv dengan jumlah total koefisien 68 buah.


(36)

Pengucapan kata “MAKAN” memiliki selisih jumlah koefisien terhadap pengucapan kata “MINUM” sebesar 2 koefisien, pengucapan kata “MAKAN” terhadap koefisien pengucapan kata “BELAJAR” memiliki selisih 3 koefisien.

Pengucapan kata “MINUM” terhadap koefisien pengucapan kata “BELAJAR” memiliki selisih 3 koefisien. Sedangkan untuk perbedaan koefisien sinyal suara untuk N = 512 dan M = 100 ditunjukkan pada Gambar 4.2

Gambar 4.2 Grafik perbandingan koefisien untuk N = 512 dan M = 100

Berdasarkan hasil pengujian dari perbandingan koefisien sinyal suara yang telah dilakukan dapat dilihat bahwa besar nilai koefisien untuk pengucapan kata “MAKAN” bernilai mulai dari 1.8457 mv sampai 3.1418 mv dan rata – rata 2.835658 mv dengan jumlah total koefisien 75 buah. Untuk koefisien pengucapan kata “MINUM” bernilai mulai dari 1.3071 mv sampai 3.0152 mv dan nilai rata – rata 2.613931 mv dengan jumlah total koefisien 74 buah. Kemudian untuk


(37)

koefisien pengucapan kata “BELAJAR” bernilai mulai dari 2.0437 mv sampai 3.1589 mv dan rata – rata 2.775177 mv dengan jumlah total koefisien 71 buah.

Pengucapan kata “MAKAN” memiliki selisih jumlah koefisien terhadap pengucapan kata “MINUM” sebesar 1 koefisien, pengucapan kata “MAKAN” terhadap koefisien pengucapan kata “BELAJAR” memiliki selisih 4 koefisien.

Pengucapan kata “MINUM” terhadap koefisien pengucapan kata “BELAJAR” memiliki selisih 3 koefisien.. Sedangkan untuk perbedaan koefisien sinyal suara untuk N = 1024 dan M = 100 ditunjukkan pada Gambar 4.3

Gambar 4.3 Grafik perbandingan koefisien untuk N = 1024 dan M = 100

Berdasarkan hasil pengujian dari perbandingan koefisien sinyal suara yang telah dilakukan dapat dilihat bahwa besar nilai koefisien untuk pengucapan kata “MAKAN” bernilai mulai dari 1.8534 mv sampai 3.1243 mv dan rata – rata 2.904102 mv dengan jumlah total koefisien 81 buah. Untuk koefisien pengucapan


(38)

kata “MINUM” bernilai mulai dari 1.8532 mv sampai 2.9992 mv dan nilai rata – rata 2.652034 mv dengan jumlah total koefisien 79 buah. Kemudian untuk koefisien pengucapan kata “BELAJAR” bernilai mulai dari 1.9730 mv sampai 3.1204 mv dan rata – rata 2.665712 mv dengan jumlah total koefisien 76 buah.

Pengucapan kata “MAKAN” memiliki selisih jumlah koefisien terhadap pengucapan kata “MINUM” sebesar 2 koefisien, pengucapan kata “MAKAN” terhadap koefisien pengucapan kata “BELAJAR” memiliki selisih 5 koefisien. Pengucapan kata “MINUM” terhadap koefisien pengucapan kata “BELAJAR” memiliki selisih 3 koefisien.

Jumlah koefisien pada N = 256 dengan pengucapan kata “MAKAN” memiliki selisih sebesar 6 buah terhadap N = 512 dan selisih sebasar 12 buah terhadap N = 1024 dan selisih antara N = 512 terhadap N = 1024 sebesar 6 buah. Sedangkan untuk pengucapan kata “MINUM” memiliki selisih sebesar 3 buah terhadap N = 256 dan selisih sebesar 8 terhadap N =1024 dan selisih antara N = 512 terhadap N = 1024 sebesar 5 buah. Sedangkan untuk pengucapan kata “BELAJAR” memiliki selisih sebesar 3 buah terhadap N = 256 dan selisih sebesar 6 terhadap N = 1024 dan selisih antara N = 512 terhadap N = 1024 sebesar 5 buah.


(39)

BAB V

PENUTUP

5.1 Kesimpulan

1. Sinyal suara dapat diidentifikasi berdasarkan jumlah koefisien yang dihasilkan.

2. Rentang koefisien berbanding lurus dengan frekuensi sinyal suara walaupun berbeda sumber suara tersebut.

3. Penggunaan frame blocking yang berbeda mempengaruhi rentang dan jumlah koefisien setiap sinyal suara.

4. Pengucapan jumlah suku kata sangat mempengaruhi jumlah koefisien setiap sinyal suara.

5. Pada penelitian ini Frame Blocking dengan nilai N = 256 adalah yang terbaik untuk menganalisa karakteristik sinyal suara manusia.

5.2 Saran

1. Lebih banyak melakukan sampel sinyal suara untuk mengahasilkan nilai koefisien yang lebih baik.

2. Diharapkan Tugas Akhir ini dapat menjadi acuan untuk melakukan penelitian pada sistem pengenalan suara.

3. Diharapkan adanya kelanjutan untuk membuat penilitian sistem pengenalan suara sampai ketahap automasi.


(40)

BAB II

DASAR TEORI

2.1 Suara (Speaker)

Suara adalah sinyal atau gelombang yang merambat dengan frekuensi dan amplitudo tertentu melalui media perantara yang dihantarkannya seperti media air, udara maupun benda padat. Manusia dapat berkomunikasi dengan manusia lainnya dengan suara. Pembangkitan ucapan manusia dimulai dengan awal konsep dari gagasan yang ingin disampaikan pada pendengar. Pengucap mengubah gagasan tadi dalam struktur linguistic dengan memilih kata atau frasa yang secara tepat dapat mewakili dan membawakannya dengan tata bahasa yang dimengerti antara pengucap dan pendengar. Ucapan yang diucapkan memiliki tujuan tertentu dengan asumsi bahwa ucapan tersebut diucapkan secara benar, dapat diterima, dan dipahami oleh pendengar yang dituju.

Pembangkitan ucapan pada hakekatnya berhubungan dengan kemampuan mendengar. Sinyal ucapan dibangkitkan oleh organ vokal dan ditransmisikan melalui udara menuju telinga pendengar. Pada Gambar 2.1 diperlihatkan proses antara pengucap dengan pendengar serta mekanisme dalam produksi suara dan pemahaman suara oleh manusia [1].


(41)

Gambar 2.1 Lingkaran komunikasi Suara

Sinyal suara terjadi secara perlahan waktu variasi sinyal (disebut sebagai kuasi stasioner). Contoh dari sinyal suara yang ditunjukkan pada Gambar 2.2 dibawah. Ketika diperiksa selama periode yang cukup singkat (5 sampai 100 msec), karakteristiknya cukup stasioner. Namun, selama jangka waktu yang lama (diurutan 1/5 detik atau lebih) sinyal karakteristik dapat mengubah pantulan berbicara berbeda dengan suara yang diucapkan. Oleh karena itu, waktu singkat spectral analisis adalah cara yang paling umum untuk mengkarakteristik sinyal suara.

Gambar 2.2 Contoh sinyal suara

0 0.002 0.004 0.006 0.008 0.01 0.012 0.014 0.016 0.018 -0.5

-0.4 -0.3 -0.2 -0.1 0 0.1 0.2 0.3 0.4 0.5


(42)

Pada dasarnya banyak macam kemungkinan parameter yang mewakili sinyal suara untuk melakukan pengenalan pembicara, seperti Linear Prediksi Coding (LPC), Mel Frequency Cepstrum Coefficients (MFCC), dan lain –lain. MFCC mungkin yang paling dikenal dan paling popular, dan akan dijelaskan dalam tulisan ini.

MFCC (mel frequency cepstrum coefficients) yang didasarkan pada variasi Bandwidth yang dikenali telinga manusia dengan frekuensi, filter spasi linear pada frekuensi rendah dan logaritmik pada frekuensi tinggi telah digunakan untuk menangkap karakteristik penting dari pembicara. Hal ini dinyatakan dalam skala mel frequency, yang merupakan frekuensi linier berada dibawah 1000 Hz dan logaritmik diatas 1000 Hz [2].

2.2 Pengolahan suara

Pengolahan suara adalah suatu perkembangan teknik dan sistem yang memungkinkan komputer suatu perangkat untuk mengenali dan memahami kata – kata yang diucapkan dengan cara digitalisasi kata dan mencocokkan sinyal digital tersebut dengan suatu pola tertentu yang tersimpan dalam suatu perangkat. Kata - kata diucapkan diubah bentuknya menjadi sinyal digital dengan cara mengubah gelombang suara menjadi sekumpulan angka yang kemudian disesuaikan dengan kode – kode tertentu untuk mengidentifikasikan kata – kata tersebut, hasil dari identifikasi kata yang diucapkan dapat ditampilkan dalam bentuk tulisan atau dapat dibaca oleh perangkat teknologi sebagai sebuah komando untuk melakukan suatu pekerjaan [3].


(43)

2.2.1 Produksi Pengolahan Ucapan

Untuk dapat memahami bagaimana produksi ucapan dilakukan, maka kita perlu mengetahui bagaimana Mekanisme vocal manusia dibangun. Pada Gambar 2.3 bagian yang paling penting dari mekanisme vocal manusia adalah saluran vocal bersama dan rongga nasal, yang dimulai pada velum. Velum merupakan sebuah mekanisme seperti pintu jebakan yang digunakan untuk merumuskan bunyi nasal saat diperlukan. Ketika velum diturunkan, rongga nasal digabungkan bersama-sama dengan saluran vocal untuk merumuskan sinyal ucapan yang diinginkan. Daerah crossectional dari saluran vocal dibatasi oleh lidah, bibir, rahang dan velum dan bervariasi 0-20 cm2 [4].


(44)

2.2.2 Sifat ucapan manusia

Salah satu tolak ukur yang paling penting dari ucapan adalah frekuensi ucapan itu sendiri. Ucapan dapat dibedakan satu sama lain dengan bantuan frekuensi. Ketika frekuensi ucapan meningkat, nada ucapan menjadi tinggi dan menyakitkan. Ketika frekuensi ucapan berkurang, ucapan akan lebih dalam. Gelombang ucapan adalah gelombang yang terjadi dari getaran materi ucapan. Nilai tertinggi dari frekuensi yang manusia dapat hasilkan sekitar 10 kHz. Dan nilai terendah adalah sekitar 70 Hz.

Ini adalah nilai – nilai maksimum dan minimum. Interval frekuensi ini berubah untuk setiap orang. Dan besarnya ucapan dinyatakan dalam decibel (dB). Ucapan manusia normal memiliki Interval frekuensi 100 Hz – 3200 Hz dan besarmya antara 16 Hz dan 20 kHz. Dan 0,5 % perubahan frekuensi adalah kepekaan telinga manusia [4].

Karakteristik Pembicara :

a) Berdasarkan perbedaan panjang saluran vocal, laki-laki, perempuan, dan ucapan anak-anak yang berbeda.

b) Aksen daerah adalah perbedaan frekuensi resonansi, jangka waktu, dan nada.

c) Individu memiliki pola frekuensi resonansi dan pola durasi yang unik (memungkinkan kita untuk mengidentifikasi pembicara).


(45)

2.3 Mel Frequency Cepstrum Coefficients (MFCC)

Mel Frequency Cepstrum Coefficients (MFCC) merupakan satu metode yang banyak dipakai dalam bidang speech recognition. Metode ini digunakan untuk melakukan feature extraction, sebuah proses yang mengkonversikan sinyal suara menjadi beberapa parameter. Masukan suara biasanya direkam pada sampling rate diatas 10000 Hz. Frekuensi sampling ini dipilih untuk meminimalkan atau mengkonversi efek aliasing dari analog ke digital. Sinyal-sinyal ini dapat menangkap semua frekuensi sampai dengan 5 Hz, yang meliputi sebagian besar energi suara yang dihasilkan oleh manusia. Seperti yang telah dibahas sebelumnya, tujuan utama dari proses MFCC adalah untuk mengikuti perilaku telinga manusia. Lihat Gambar 2.4 [2].

Gambar 2.4 Block diagram proses MFCC

Keunggulan dari metode MFCC ini adalah :

a. Mampu menangkap karakteristik suara yang sangat penting bagi pengenalan suara atau dengan kata lain mampu menangkap informasi-informasi yang terkandung dalam sinyal suara.

mel cepstrum

mel spectrum frame

continuous speech

Frame Blocking

Windowing FFT spectrum

Mel-frequency Wrapping Cepstrum


(46)

b. Menghasilkan data seminimal mungkin tanpa menghilangkan informasi-informasi penting yang ada.

c. Mereplikasi organ pendengaran manusia dalam melakukan persepsi sinyal suara.

2.4 Frame Blocking

Frame Blocking adalah pembagian sinyal audio menjadi beberapa frame yang nantinya dapat memudahkan dalam perhitungan dan analisa sinyal, suatu frame terdiri dari beberapa sampel tergantung tiap berapa detik suara akan disampel dan berapa frekuensi samplingnya. Pada proses ini dilakukan pemotongan sinyal dalam slot-slot tertentu agar memenuhi syarat yaitu linear dan timeinvariant.

Dalam langkah ini sinyal suara yang kontinyu diblock menjadi frame sampel N, dengan frame yang berdekatan dipisahkan oleh M (M<N). Frame pertama terdiri dari N sampel, Frame kedua dimulai sampel M setelah frame yang pertama, dan melawati dari sampel N-M dan seterusnya. Proses ini berlanjut sampai semua suara dicatat dalam satu frame atau lebih. Nilai-nilai untuk N dan M akan berubah-rubah sesuai dengan pengujian yang akan dilakukan [5].

2.5 Windowing

Dalam melakukan pemrosesan sinyal, maka dari input yang dimasukkan akan terbentuk sinyal yang magnitudenya bervariasi pada awal maupun akhir frame. Hal tersebut menghambat pemrosesan sinyal dan menghasilkan keluaran


(47)

yang kurang akurat. Untuk itu perlu diaplikasikan suatu window penghalus pada setiap frame dengan melakukan overlapping antara satu frame dengan frame yang lain, sehingga dapat dibangkitkan suatu feature yang lebih halus sepanjang durasi waktu tersebut. Dalam proyek ini akan digunakan metode Hamming. Digunakan Hamming window karena Hamming window memiliki side lobe yang paling kecil dan Main lobe yang paling besar sehingga hasil windowing akan lebih dalam menghasilkan efek diskontinuitas. Konsep disini adalah untuk meminimalkan distorsi spectral dengan menggunakan window untuk sinyal ke nol pada awal dan akhir disetiap frame. Jika kita mendefenisikan window seperti ini, dimana N adalah jumlah sampel disetiap frame, maka hasil windowing adalah sinyal [2].

Sebuah fungsi window yang baik harus menyempit pada bagian main lobe dan melebar pada bagian side lobe-nya.

Berikut ini adalah representasi dari fungsi window terhadap signal suara yang diinputkan :

y1(n) = x1(n)w(n), 0 ≤ n ≤ N – 1 (2.1)

Dimana :

x(n) = x1(n)w(n) n = 0,1,….,N-1

x(n) = nilai sampel signal hasil windowing x1(n) = nilai sampel dari frame signal ke i

w(n) = fungsi window


(48)

Windowing Hamming biasa digunakan sebagai berikut :

w(n) = 0.54 – 0.46.cos

(

2.

.

�−

1

)

, 0 ≤ n N – 1 (2.2)

Dimana :

w (n) = windowing

N = jumlah data dari sinyal n = waktu diskrit

2.6 Fast Fourier Transform (FFT)

Langkah pengolahan selanjutnya adalah Fast Fourier Transform (FFT), yang mengubah setiap frame sampel N dari domain waktu ke domain frekuensi. FFT adalah algoritma cepat untuk mengimplementasikan Discrete Fourier Transform (DFT), yang didefenisikan pada himpunan N sampel {xn} sebagai berikut :

=− − = = 1 0 / 2 1 ,..., 2 , 1 , 0 , N n N kn j n

k x e k N

X π (2.3)

Dalam Xk’s adalah bilangan kompleks dan hanya mempertimbang kan

nilai tersebut (besaran frekuensi). Urutan yang dihasilkan {Xk} ditafsirkan sebagai

berikut : frekuensi positif 0 ≤ f < Fs / 2 sesuai dengan nilai-nilai 0 ≤ n ≤ N / 2 – 1,

sedangkan frekuensi negative – Fs / 2 < 0 sesuai dengan N/2+1≤nN−1.


(49)

2.7 Mel Frequency Wrapping

Studi psikofisik telah menunjukkan bahwa persepsi manusia tentang frekuensi suara untuk sinyal ucapan tidak mengikuti skala linear. Jadi, untuk setiap suara dengan frekuensi seseungguhnya f, dalam Hz, sebuah pola diukur dalam sebuah skala yang disebut “mel”. Skala “mel frequency” adalah skala frekuensi linear dibawah 1000 Hz dan skala logaritmik diatas 1000 Hz. Salah satu pendekatan untuk simulasi spectrum subjektif adalah dengan menggunakan filterbank, jarak pada mel skala (lihat Gambar 2.5). Artinya Filter bank memiliki respon frekuensi Bandpass segitiga, dan jarak bandwidth ditentukan oleh interval frekuensi mel konstan. Jumlah koefisien spectrum mel, K, biasanya dipilih sebagai 20.

Gambar 2.5 Contoh Mel - spasi filterbank

0 1000 2000 3000 4000 5000 6000 7000

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2

Mel-spaced filterbank


(50)

Filterbank ini dapat diterapkan dalam domain frekuensi, sehingga hanya sebesar yang diterapkan dijendela segitiga, bentuk seperti pada gambar diatas sampai spectrum. Sebuah cara yang digunakan tentang Filter bank mel frequency ini adalah untuk melihat setiap filter sebagai histogram bin (dimana bins memiliki kemampuan) dalam domain frekuensi [2].

Skala ini didefenisikan oleh Stanley Smith, John Volkman dan Edwin Newman sebagai :

���(�) = 2595∗log10 (1 + �

700) (2.4)

Dalam mel frequency wrapping, sinyal hasil FFT dikelompokkan kedalam berkas filter triangular ini. Maksud pengelompokan disini adalah setiap nilai FFT dikalikan terhadap gain filter yang bersesuaian dan hasilnya dijumlahkan.

2.8 Cepsturm

Cepstrum adalah sebutan kabalikan untuk spectrum. Cepstrum biasa digunakan untuk mendapatkan informasi dari suatu sinyal suara yang diucapkan oleh manusia. Pada langkah terakhir ini, spectrum log mel dikonversikan menjadi cepstrum menggunakan Discrete Cosine Transform (DCT). Oleh karena itu jika kita menunjukkan tersebut koefisien spectrum daya mel yang merupakan hasil dari langkah terakhir S~0,k =0,2,...,K −1, kita dapat menghitung MFCC seperti :

K-1 (2.5)

n K k n S c K k k

n , 0,1,...,

2 1 cos ) ~ (log ~

1  =

         = ∑ =

π


(51)

Perhatikan bahwa kita mengecualikan komponen pertama, dari DCT karena merupakan nilai rata-rata dari sinyal input, yang dilakukan speaker informasi spesifik [2].


(52)

1.1 Latar Belakang

Perkembangan teknologi pengolahan sinyal suara manusia pada akhir-akhir ini banyak digemari dan dikembangkan. Salah satu contoh pengolahan sinyal suara manusia yang sedang dikembangkan adalah sistem pengenalan pembicara (speaker recognitionsystem). Manusia mampu membedakan identitas dari orang yang mereka kenal hanya melalui suara saja. Hal ini dikarenakan setiap orang memiliki karakteristik suara tersendiri. Proses pengidentifikasian seseorang melalui karakteristik suaranya disebut speaker recognition.

Pengenalan pembicara (Speaker recognition) memungkinkan untuk menggunakan suara untuk mengontrol atau memverifikasi identitas sumber suara, Sistem tersebut mampu mengontrol keamanan untuk daerah informasi rahasia, dan remote akses layanan informasi. Sinyal suara memiliki banyak parameter yang sangat rumit. Hal ini menjadi alasan penulis menggunakan teknik ekstraksi sinyal suara yang sangat kompleks. Metode ekstraksi suara MFCC (Mel Frequency Cepstrurm Coefficient) dapat menjadi alternatif untuk menyelesaikan masalah yang diakibatkan karena terjadinya kebocoran spektral atau aliasing pada sinyal suara.


(53)

Untuk memfokuskan pembahasan tugas akhir ini, maka pembahasan masalah dirumuskan pada hal - hal sebagai berikut:

1. Bagaimana MFCC (Mel Frequency Cepstrum Coefficients) mampu mengolah data suara dengan baik.

2. Bagaimana MFCC ditujukan untuk meminimalkan kebocoran yang terjadi pada sinyal suara yang diakibatkan oleh frame blocking.

3. Bagaimana menggunakan MFCC dapat mengurangi noise pada pengolahan sinyal suara.

4. Bagaimana menentukan N frame blocking pada algoritma MFCC untuk memaksimalkan kinerja algoritma tersebut.

5. Bagaimana MFCC untuk pengolahan data suara yang efektif pada rentang frekuensi pendengaran manusia.

1.3 Tujuan Penelitian

Adapun tujuan dari penulisan Tugas Akhir ini adalah :

Untuk menganalisa algoritma MFCC (mel frequency cepstrum coefficients) dalam mengekstraksi ciri dari suara masukan sehingga suara dapat diidentifikasikan.


(54)

Agar isi dan pembahasan Tugas Akhir ini menjadi terarah, maka penulis perlu membuat batasan masalah yang akan dibahas. Adapun batasan masalah pada penulisan Tugas Akhir ini adalah sebagai berikut :

1. Data suara yang akan dianalisa berasal dari file audio atau hasil tangkapan menggunakan mikrofon yang telah difilter menggunakan filter anti aliasing.

2. Metode Ekstraksi yang digunakan adalah metode MFCC (mel frequency cepstrum coefficients).

3. Program dikembangkan dengan menggunakan bahasa pemograman MATLAB sebagai alat bantu untuk pemrosesan data suara.

1.5 Metode Penelitian

Dalam penulisan Tugas Akhir ini digunakan beberapa metode untuk mendapatkan data-data yang diperlukan dalam menulis laporan Tugas Akhir ini. Metode-metode tersebut adalah :

1. Studi Pustaka menggunakan beberapa literatur berupa buku-buku teks dan jurnal nasional maupun internasional.

2. Perancangan Sistem yang terdiri dari dua bagian utama, yaitu bagian perangkat keras dan perangkat lunak.

3. Pengujian Sistem dilakukan untuk dapat mengenali suara dengan tepat, pengujian juga dilakukan dengan mengambil sampel suara dari beberapa reponden dengan menggunakan mikrofon.


(55)

4. Analisa Sistem diperlukan untuk memastikan apakah sudah sesuai dengan ketentuan yang telat dipelajari selama Studi Pustaka.

5. Kesimpulan dan Saran digunakan untuk menyampaikan informasi yang diperoleh selama melakukan penelitian.

1.6 Sistematika Penelitian

Penulisan Tugas Akhir ini ditulis dan disusun dalam urutan sebagai berikut:

BAB I PENDAHULUAN

Bab ini menjelaskan secara singkat tentang latar belakang, tujuan penelitian, pembatasan masalah dan metodologi. BAB II LANDASAN TEORI

Membuat model sistem untuk penyelesaian proyek akhir ini sesuai dengan teori dasar yang diberikan meliputi : Pembuatan algoritma MFCC (mel frequency cepstrum coefficient), Pemrosesan data suara dari analog kedigital.

BAB III PERANCANGAN DAN PENGUJIAN SISTEM

Dalam bab ini akan mengenai sistem speaker recognition dengan menggunakan MFCC (mel frequency cepstrum coefficients).


(56)

BAB IV HASIL PENGUJIAN DAN ANALISA DATA

Bab ini membahas hasil dan analisa sistem yang dilakukan untuk menguji apakah hasil yang diperoleh sesuai dengan studi literature yang telah dipelajari.

BAB V PENUTUP

Bab ini berisi kesimpulan dan saran dari hasil pembahasan-pembahasan sebelumnya.


(57)

ABSTRAK

Perkembangan teknologi pengolahan sinyal suara manusia pada akhir-akhir ini banyak digemari dan dikembangkan. Salah satu contoh pengolahan sinyal suara manusia yang sedang dikembangkan adalah sistem pengenalan pembicara (speaker recognitionsystem). Pengenalan pembicara (Speaker recognition) memungkinkan untuk menggunakan suara untuk mengontrol atau memverifikasi identitas sumber suara. Pada sistem penelitian ini digunakan metode MFCC (mel frequency cepstrum coefficients) dimana MFCC ini mampu menangkap karakteristik pengenalan suara manusia atau dengan kata lain mampu menangkap informasi yang terkandung dalam sinyal suara.

Pada sistem yang akan dibuat menggunakan software MATLAB memiliki kemampuan membedakan setiap file suara yang telah diambil datanya. Pada penerapannya nilai jumlah koefisien (N) ditentukan atau ditetapkan berdasarkan nilai yang ditulis dalam program yang panjangnya antara 10-30 ms atau 256-1024 data. Sinyal suara yang kontinyu akan diblock menjadi frame sampel N, dengan frame yang berdekatan dipisahkan oleh nilai koefisien (M) dengan ketentuan dimana M<N.

Berdasarkan hasil pengujian sistem yang telah dilakukan terdapat beberapa jumlah sinyal suara yang telah dianalisa dan memiliki perbedaan jumlah koefisien pada pengujian pertama pada pengucapan kata “MAKAN” memiliki selisih jumlah koefisien terhadap pengucapan kata “MINUM” sebesar 2 koefisien, pengucapan kata “MAKAN” terhadap koefisien pengucapan kata “BELAJAR” memiliki selisih 3 koefisien.


(58)

TUGAS AKHIR

PENGENALAN KARAKTERISTIK SUARA MENGGUNAKAN MEL FREQUENCY CEPSTRUM COEFFICIENTS (MFCC) PADA SISTEM PENGENALAN PEMBICARA (SPEAKER RECOGNITION SISTEM)

Diajukan untuk memenuhi persyaratan menyelesaikan Pendidikan Sarjana (S-1) pada

Departemen Teknik Elektro Sub konsentrasi Teknik Telekomunikasi

Oleh

NIM : 100402004 WINDY PRATAMA RIZKIA

DEPARTEMEN TEKNIK ELEKTRO FAKULTAS TEKNIK

UNIVERSITAS SUMATERA UTARA MEDAN


(59)

(60)

ABSTRAK

Perkembangan teknologi pengolahan sinyal suara manusia pada akhir-akhir ini banyak digemari dan dikembangkan. Salah satu contoh pengolahan sinyal suara manusia yang sedang dikembangkan adalah sistem pengenalan pembicara (speaker recognitionsystem). Pengenalan pembicara (Speaker recognition) memungkinkan untuk menggunakan suara untuk mengontrol atau memverifikasi identitas sumber suara. Pada sistem penelitian ini digunakan metode MFCC (mel frequency cepstrum coefficients) dimana MFCC ini mampu menangkap karakteristik pengenalan suara manusia atau dengan kata lain mampu menangkap informasi yang terkandung dalam sinyal suara.

Pada sistem yang akan dibuat menggunakan software MATLAB memiliki kemampuan membedakan setiap file suara yang telah diambil datanya. Pada penerapannya nilai jumlah koefisien (N) ditentukan atau ditetapkan berdasarkan nilai yang ditulis dalam program yang panjangnya antara 10-30 ms atau 256-1024 data. Sinyal suara yang kontinyu akan diblock menjadi frame sampel N, dengan frame yang berdekatan dipisahkan oleh nilai koefisien (M) dengan ketentuan dimana M<N.

Berdasarkan hasil pengujian sistem yang telah dilakukan terdapat beberapa jumlah sinyal suara yang telah dianalisa dan memiliki perbedaan jumlah koefisien pada pengujian pertama pada pengucapan kata “MAKAN” memiliki selisih jumlah koefisien terhadap pengucapan kata “MINUM” sebesar 2 koefisien, pengucapan kata “MAKAN” terhadap koefisien pengucapan kata “BELAJAR” memiliki selisih 3 koefisien.


(61)

KATA PENGANTAR

Segala Puji dan syukur penulis ucapkan kepada Allah SWT atas Berkah dan Rahmat-Nya sehingga penulis dapat menyelesaikan Tugas Akhir yang berjudul:

“PENGENALAN KARAKTERISTIK SUARA MENGGUNAKAN MEL FREQUENCY CEPSTRUM COEFFICIENTS (MFCC) PADA SISTEM PENGENALAN PEMBICARA (SPEAKER RECOGNITION SISTEM)”

Tugas akhir ini merupakan bagian dari kurikulum yang harus diselesaikan untuk memenuhi persyaratan menyelesaikan pendidikan Sarjana Strata Satu (S-1) di Departemen Teknik Elektro Fakultas Teknik Universitas Sumatera Utara.

Selama penulis menjalani pendidikan di kampus hingga diselesaikannya Tugas Akhir ini, penulis banyak menerima bantuan, bimbingan serta dukungan dari berbagai pihak. Pada kesempatan ini penulis ingin menyampaikan terimakasih yang tulus dan sebesar-besarnya kepada:

1. Bapak Ir. Arman Sani, MT sebagai Dosen Pembimbing Tugas Akhir penulis yang selalu bersedia memberikan bantuan yang sangat dibutuhkan oleh penulis dalam menyelesaikan Tugas Akhir ini.

2. Bapak Ir. Surya Tarmizi Kasim,M.Si sebagai Ketua Departemen Teknik Elektro Fakultas Teknik Universitas Sumatera Utara.

3. Bapak Rahmad Fauzi, ST, MT sebagai Sekretaris Departemen Teknik Elektro dan Bapak Yulianta Siregar, ST, MT sebagai Dosen Wali penulis yang membantu penulis selama menyelesaikan pendidikan di kampus USU.

4. Seluruh Staf Pengajar dan Pegawai Departemen Teknik Elektro FT-USU. 5. Orang tua khususnya Ayahanda Nukman Hasfa dan Ibunda Hanizar yang

senantiasa memberikan semangat dan do’anya kepada penulis dengan segala pengorbanan dan kasih sayang yang tidak ternilai harganya.

6. Kepadaadinda Winda Pramitha Rizkia, S.Ked dan Poppy Frananda, A.Md,keb beserta saudara saudari penulis yang telah memberikan dukungan dan do’a bagi penulis.


(62)

7. Kepada Mitra Gustinur Rahma AP, S.KG sebagai orang yang selalu memberikan motivasi, dukungan dan do’a bagi penulis.

8. Kepada sahabat penulis Ranzyskhar, Ricky Mahyuddin, Rhobby Maulana, Oki Januri, Arifin, Irsyad, Agustinus Ginting, Acmerian, Aweluddin. 9. Teman – teman di Teknik Elektro FT-USU, terkhusus angkatan 2010

Zulfahmi dhuha, Deny Destian H, Jaka Cindy Djamin, Hamdan Siregar, Fatih, Rio Gultum, Fontes Marpaung, Puti Mayang sari, Muhammad mulia, atas dukungan, do’a bagi penulis.

10. Seluruh senior dan junior angkatan 2011 dan 2012 di Departemen Teknik Elektro, atas dukungan dan bantuan yang diberikan kepada penulis.

11. Keluarga Besar MME-GS yang telah memberikan banyak sekali pembelajaran.

12. Semua orang yang pernah mengisi setiap detik waktu yang telah dilalui bersama penulis yang tidak dapat disebutkan satu per satu. Tanpa mereka, pengalaman penulis tidaklah lengkap.

Penulis menyadari bahwa Tugas Akhir ini masih banyak kekurangannya. Kritik dan saran dari pembaca untuk menyempurnakan Tugas Akhir ini sangat penulis harapkan.

Kiranya Tugas Akhir ini dapat bermanfaat bagi kita semua.Terimakasih.

Medan, 9September 2015 Penulis


(63)

DAFTAR ISI

ABSTRAK ... i

KATA PENGANTAR ... ii

DAFTAR ISI ... iv

DAFTAR GAMBAR ... vii

DAFTAR TABEL ... viii

I. PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Perumusan Masalah ... 2

1.3 Tujuan Penelitian ... 2

1.4 Batasan Masalah... 3

1.5 Metode Penelitian... 3

1.6 Sistematika Penulisan... 4

II. DASAR TEORI ... 6

2.1 Suara (speaker) ... 6

2.2 Pengolahan Suara ... 8

2.2.1 Produksi Pengolahan Ucapan... 9

2.2.2 Sifat ucapan manusia... . 10

2.3 Mel frequency Cepstrum Coefficients (MFCC) ... 11

2.4 Frame Blocking... ... 12

2.5 Windowing... ... 12

2.6 Fast Fourier Transform (FFT) ... 14

2.7 Mel Frequency Wrapping... 15


(64)

III. PERANCANGAN SISTEM PENGENALAN PEMBICARA ... 18

3.1 Pendahuluan ... 18

3.2 Block diagram Perancangan sistem... 18

3.3 Algoritma Sistem Pengenalan pembicara ... 22

IV. HASIL DAN PENGUJIAN SISTEM ... 36

4.1 Gambaran umum pengujian sistem pengenalan pembicara ... 36

4.2 Persiapan perangkat pendukung pengujian sistem ... 37

4.3 Pengujian sistem terhadap file suara ... 38

V. PENUTUP ... 43

5.1 Kesimpulan ... 43

5.2 Saran ... 43

DAFTAR PUSTAKA ... 44 LAMPIRAN


(65)

DAFTAR GAMBAR

Gambar 2.1Lingkaran komunikasi suara ... 7

Gambar 2.2Contoh sinyal suara... 7

Gambar 2.3Mekanisme vocal manusia ... 9

Gambar2.4 Blok diagram proses MFCC ... 11

Gambar 2.5 Contoh Mel spasi filterbank ... 15

Gambar 3.1 Blok diagram perancangan sistem pengenalan pembicara ... 19

Gambar 3.2 Bagan alir algoritma program perancangan sistem pengenalan pengenalan pembicara ... 23

Gambar 3.3 Tampilan program Matlab ... 25

Gambar 3.4 Contoh sampel suara “MAKAN” ... 27

Gambar 3.5 Diagram blok proses penentuan frame blocking ... 29

Gambar 3.6 Pengaruh sinyal yang diakibatkan Hamming window ... 30

Gambar 4.1 Grafik perbandingan koefisien untuk N = 256 & M = 100 ... 39

Gambar 4.2 Grafik perbandingan koefisien untuk N = 512 & M = 100 ... 40

Gambar 4.3 Grafik perbandingan koefisien untuk N = 1024 & M = 100 ... 41

BAB I PENDAHULUAN


(1)

ABSTRAK

Perkembangan teknologi pengolahan sinyal suara manusia pada akhir-akhir ini banyak digemari dan dikembangkan. Salah satu contoh pengolahan sinyal suara manusia yang sedang dikembangkan adalah sistem pengenalan pembicara (speaker recognitionsystem). Pengenalan pembicara (Speaker recognition) memungkinkan untuk menggunakan suara untuk mengontrol atau memverifikasi identitas sumber suara. Pada sistem penelitian ini digunakan metode MFCC (mel frequency cepstrum coefficients) dimana MFCC ini mampu menangkap karakteristik pengenalan suara manusia atau dengan kata lain mampu menangkap informasi yang terkandung dalam sinyal suara.

Pada sistem yang akan dibuat menggunakan software MATLAB memiliki kemampuan membedakan setiap file suara yang telah diambil datanya. Pada penerapannya nilai jumlah koefisien (N) ditentukan atau ditetapkan berdasarkan nilai yang ditulis dalam program yang panjangnya antara 10-30 ms atau 256-1024 data. Sinyal suara yang kontinyu akan diblock menjadi frame sampel N, dengan frame yang berdekatan dipisahkan oleh nilai koefisien (M) dengan ketentuan dimana M<N.

Berdasarkan hasil pengujian sistem yang telah dilakukan terdapat beberapa jumlah sinyal suara yang telah dianalisa dan memiliki perbedaan jumlah koefisien pada pengujian pertama pada pengucapan kata “MAKAN” memiliki selisih jumlah koefisien terhadap pengucapan kata “MINUM” sebesar 2 koefisien, pengucapan kata “MAKAN” terhadap koefisien pengucapan kata “BELAJAR” memiliki selisih 3 koefisien.


(2)

KATA PENGANTAR

Segala Puji dan syukur penulis ucapkan kepada Allah SWT atas Berkah dan Rahmat-Nya sehingga penulis dapat menyelesaikan Tugas Akhir yang berjudul:

“PENGENALAN KARAKTERISTIK SUARA MENGGUNAKAN MEL FREQUENCY CEPSTRUM COEFFICIENTS (MFCC) PADA SISTEM PENGENALAN PEMBICARA (SPEAKER RECOGNITION SISTEM)”

Tugas akhir ini merupakan bagian dari kurikulum yang harus diselesaikan untuk memenuhi persyaratan menyelesaikan pendidikan Sarjana Strata Satu (S-1) di Departemen Teknik Elektro Fakultas Teknik Universitas Sumatera Utara.

Selama penulis menjalani pendidikan di kampus hingga diselesaikannya Tugas Akhir ini, penulis banyak menerima bantuan, bimbingan serta dukungan dari berbagai pihak. Pada kesempatan ini penulis ingin menyampaikan terimakasih yang tulus dan sebesar-besarnya kepada:

1. Bapak Ir. Arman Sani, MT sebagai Dosen Pembimbing Tugas Akhir penulis yang selalu bersedia memberikan bantuan yang sangat dibutuhkan oleh penulis dalam menyelesaikan Tugas Akhir ini.

2. Bapak Ir. Surya Tarmizi Kasim,M.Si sebagai Ketua Departemen Teknik Elektro Fakultas Teknik Universitas Sumatera Utara.

3. Bapak Rahmad Fauzi, ST, MT sebagai Sekretaris Departemen Teknik Elektro dan Bapak Yulianta Siregar, ST, MT sebagai Dosen Wali penulis yang membantu penulis selama menyelesaikan pendidikan di kampus USU.

4. Seluruh Staf Pengajar dan Pegawai Departemen Teknik Elektro FT-USU. 5. Orang tua khususnya Ayahanda Nukman Hasfa dan Ibunda Hanizar yang

senantiasa memberikan semangat dan do’anya kepada penulis dengan segala pengorbanan dan kasih sayang yang tidak ternilai harganya.

6. Kepadaadinda Winda Pramitha Rizkia, S.Ked dan Poppy Frananda, A.Md,keb beserta saudara saudari penulis yang telah memberikan dukungan dan do’a bagi penulis.


(3)

7. Kepada Mitra Gustinur Rahma AP, S.KG sebagai orang yang selalu memberikan motivasi, dukungan dan do’a bagi penulis.

8. Kepada sahabat penulis Ranzyskhar, Ricky Mahyuddin, Rhobby Maulana, Oki Januri, Arifin, Irsyad, Agustinus Ginting, Acmerian, Aweluddin. 9. Teman – teman di Teknik Elektro FT-USU, terkhusus angkatan 2010

Zulfahmi dhuha, Deny Destian H, Jaka Cindy Djamin, Hamdan Siregar, Fatih, Rio Gultum, Fontes Marpaung, Puti Mayang sari, Muhammad mulia, atas dukungan, do’a bagi penulis.

10. Seluruh senior dan junior angkatan 2011 dan 2012 di Departemen Teknik Elektro, atas dukungan dan bantuan yang diberikan kepada penulis.

11. Keluarga Besar MME-GS yang telah memberikan banyak sekali pembelajaran.

12. Semua orang yang pernah mengisi setiap detik waktu yang telah dilalui bersama penulis yang tidak dapat disebutkan satu per satu. Tanpa mereka, pengalaman penulis tidaklah lengkap.

Penulis menyadari bahwa Tugas Akhir ini masih banyak kekurangannya. Kritik dan saran dari pembaca untuk menyempurnakan Tugas Akhir ini sangat penulis harapkan.

Kiranya Tugas Akhir ini dapat bermanfaat bagi kita semua.Terimakasih.

Medan, 9September 2015 Penulis


(4)

DAFTAR ISI

ABSTRAK ... i

KATA PENGANTAR ... ii

DAFTAR ISI ... iv

DAFTAR GAMBAR ... vii

DAFTAR TABEL ... viii

I. PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Perumusan Masalah ... 2

1.3 Tujuan Penelitian ... 2

1.4 Batasan Masalah... 3

1.5 Metode Penelitian... 3

1.6 Sistematika Penulisan... 4

II. DASAR TEORI ... 6

2.1 Suara (speaker) ... 6

2.2 Pengolahan Suara ... 8

2.2.1 Produksi Pengolahan Ucapan... 9

2.2.2 Sifat ucapan manusia... . 10

2.3 Mel frequency Cepstrum Coefficients (MFCC) ... 11

2.4 Frame Blocking... ... 12

2.5 Windowing... ... 12

2.6 Fast Fourier Transform (FFT) ... 14

2.7 Mel Frequency Wrapping... 15


(5)

III. PERANCANGAN SISTEM PENGENALAN PEMBICARA ... 18

3.1 Pendahuluan ... 18

3.2 Block diagram Perancangan sistem... 18

3.3 Algoritma Sistem Pengenalan pembicara ... 22

IV. HASIL DAN PENGUJIAN SISTEM ... 36

4.1 Gambaran umum pengujian sistem pengenalan pembicara ... 36

4.2 Persiapan perangkat pendukung pengujian sistem ... 37

4.3 Pengujian sistem terhadap file suara ... 38

V. PENUTUP ... 43

5.1 Kesimpulan ... 43

5.2 Saran ... 43

DAFTAR PUSTAKA ... 44 LAMPIRAN


(6)

DAFTAR GAMBAR

Gambar 2.1Lingkaran komunikasi suara ... 7

Gambar 2.2Contoh sinyal suara... 7

Gambar 2.3Mekanisme vocal manusia ... 9

Gambar2.4 Blok diagram proses MFCC ... 11

Gambar 2.5 Contoh Mel spasi filterbank ... 15

Gambar 3.1 Blok diagram perancangan sistem pengenalan pembicara ... 19

Gambar 3.2 Bagan alir algoritma program perancangan sistem pengenalan pengenalan pembicara ... 23

Gambar 3.3 Tampilan program Matlab ... 25

Gambar 3.4 Contoh sampel suara “MAKAN” ... 27

Gambar 3.5 Diagram blok proses penentuan frame blocking ... 29

Gambar 3.6 Pengaruh sinyal yang diakibatkan Hamming window ... 30

Gambar 4.1 Grafik perbandingan koefisien untuk N = 256 & M = 100 ... 39

Gambar 4.2 Grafik perbandingan koefisien untuk N = 512 & M = 100 ... 40

Gambar 4.3 Grafik perbandingan koefisien untuk N = 1024 & M = 100 ... 41

BAB I PENDAHULUAN


Dokumen yang terkait

Implementasi Metode Mel-Frequency Cepstrum Coefficients (MFCC) Dalam IDentifikasi jenis Suara Burung Berkicau

15 74 61

Penerapan Mel Frequency Cepstrum Coefficients (MFCC) sebagai ekstraksi ciri pada pengenalan fonem dengan Probabilistic Neural Network (PNN) sebagai classifier

0 8 48

Pengenalan Karakteristik Suara Menggunakan Mel Frequency Cepstrum Coefficients (Mfcc) Pada Sistem Pengenalan Pembicara (Speaker Recognition Sistem)

0 1 8

Pengenalan Karakteristik Suara Menggunakan Mel Frequency Cepstrum Coefficients (Mfcc) Pada Sistem Pengenalan Pembicara (Speaker Recognition Sistem)

0 0 1

Pengenalan Karakteristik Suara Menggunakan Mel Frequency Cepstrum Coefficients (Mfcc) Pada Sistem Pengenalan Pembicara (Speaker Recognition Sistem)

0 2 5

Pengenalan Karakteristik Suara Menggunakan Mel Frequency Cepstrum Coefficients (Mfcc) Pada Sistem Pengenalan Pembicara (Speaker Recognition Sistem)

0 0 12

Pengenalan Karakteristik Suara Menggunakan Mel Frequency Cepstrum Coefficients (Mfcc) Pada Sistem Pengenalan Pembicara (Speaker Recognition Sistem)

0 1 1

Pengenalan Karakteristik Suara Menggunakan Mel Frequency Cepstrum Coefficients (Mfcc) Pada Sistem Pengenalan Pembicara (Speaker Recognition Sistem)

0 0 12

SIMULASI DAN ANALISIS SPEAKER RECOGNITION MENGGUNAKAN METODE MEL FREQUENCY CEPSTRUM COEFFICIENT (MFCC) DAN GAUSSIAN MIXTURE MODEL (GMM) SPEAKER RECOGNITION SIMULATION AND ANALYSIS USING MEL FREQUENCY CEPSTRUM COEFFICIENT (MFCC) DAN GAUSSIAN MIXTURE MODEL

0 0 7

IDENTIFIKASI PENUTUR MENGGUNAKAN METODE MEL FREQUENCY CEPSTRAL COEFFICIENTS (MFCC) DAN JARINGAN SYARAF TIRUAN MODEL MADALINE Speaker Identification using Mel Frequency Cepstrum Coefficients (MFCC) and Madaline Neural Network

0 1 12