Peningkatan Kualitas Sinyal Suara Menggunakan Metode Pengurangan Spektral Multiband.

(1)

PENINGKATAN KUALITAS SINYAL SUARA MENGGUNAKAN METODE PENGURANGAN SPEKTRAL MULTIBAND

Poltak Putra Paruntungan Manik/9922065 Jurusan Teknik Elektro - Fakultas Teknik

Universitas Kristen Maranatha

Jl. Prof. Drg. Suria Sumantri 65, Bandung 40164, Indonesia Email : manik_putra@yahoo.co.id

ABSTRAK

Pada komunikasi suara, adanya interferensi menyebabkan kualitas sinyal suara itu menurun. Pengaruh noise juga mempengaruhi kemampuan pendengar untuk mengerti apa makna dari suara tersebut. Pada komunikasi interpersonal, sinyal suara dapat ditransmisikan melalui kanal telepon, loudspeaker atau headphone.

Tujuan dari Tugas Akhir ini adalah meningkatkan kualitas sinyal suara secara keseluruhan, dan meningkatkan kemampuan untuk memahami dan mengerti makna sinyal suara yang ditransmisikan dengan cara mengurangi pengaruh noise. Peningkatan kualitas sinyal suara difokuskan pada sinyal suara yang mengandung noise aditif.

Metode yang digunakan dalam Tugas Akhir ini adalah Pengurangan Spektral Multiband, yaitu teknik menekan noise dengan memisahkan sebuah perkiraan noise bias (dalam domain Transformasi Fourier). Noise bias dapat ditemukan selama aktivitas tanpa suara pada pengaturan satu kanal, atau dari sebuah referensi mikrophone pada pengaturan dua kanal.

Dari hasil simulasi dapat terlihat bahwa banyaknya jumlah band frekuensi mempengaruhi kualitas dari sinyal suara tersebut.

Kata kunci : Peningkatan kualitas, sinyal suara, spektral multiband.


(2)

ABSTRACT

In many speech communication settings, the presence of the background interference causes the quality or intelligibility degraded. Noisy environment also reduces listeners’ ability to understand what is said. In addition to interpersonal communication, speech can also be transmitted across telephone channels, loudspeakers or headphones.

The goal of final project is to improve overall speech quality, hence to increase the intelligibility. And we will concentrate on reducing background noise to improve speech quality. The enhancement of quality will focus on the speech that has additive broadband noise.

Method applied in final project is a multiband spectral subtraction that is techniques to suppress noise by subtracting an estimated noise bias (in the Fourier transform domain). Noise bias can be found during nonspeech activity in single-channel case, or from a reference microphone in dual-single-channel setting.

From result of simulation can seen that the many frequency band amounts influences quality from the speech.

Keywords : Enhancement, speech signal, multiband spectral.


(3)

KATA PENGANTAR

Puji dan Syukur yang sebesar-besarnya kepada Tuhan Yesus Kristus, karena hanya atas kasih dan karunia-Nya akhirnya penyusun mampu menyelesaikan Tugas Akhir ini yang berjudul “Peningkatan Kualitas Sinyal Suara Menggunakan Metode Pengurangan Spektral Multiband”.

Adapun Laporan Tugas Akhir ini dibuat untuk memenuhi salah satu syarat dalam menyelesaikan program studi strata satu (S-1) di Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha.

Begitu banyak bimbingan, bantuan, maupun dorongan yang penyusun dapatkan selama proses penyusunan Laporan Tugas Akhir ini. Pada kesempatan ini penyusun mengucapkan terima kasih yang sebesar-besarnya kepada :

1. Bapak Ir. Aan Darmawan, MT., selaku Ketua Jurusan Teknik Elektro Universitas Kristen Maranatha.

2. Riko Arlando Saragih, ST., MT., sebagai dosen pembimbing yang dengan segala kebaikan dan kesabarannya, juga dengan tulus telah menyediakan waktu, tenaga, dan pikiran untuk memberikan bimbingan kepada penyusun dalam menyelesaikan Tugas Akhir ini.

3. Ibu Ir. Anita Supartono, M.Sc., selaku koordinator Tugas Akhir. 4. Bapak Ir. Supartono, M Sc., sebagai penguji dalam Tugas Akhir ini. 5. Bapak Dr.Ir. Daniel Setiadikurnia, MT., sebagai penguji dalam Tugas

Akhir ini.

6. Ibu Novie T Pasaribu, ST., MT., sebagai penguji dalam Tugas Akhir ini. 7. Seluruh staf pengajar Universitas Kristen Maranatha yang telah

memberikan ilmu dan pengetahuan, segenap staf tata usaha Jurusan Teknik Elektro Universitas Kristen Maranatha.

8. Yang terkasih Mama, Leo Manik, Ana, Shinta Manik, Simson Purba, Sari, Daniel Manullang, dan seluruh keluarga tercinta atas dukungan doa dan motivasinya terutama dalam melewati masa-masa yang berat yang sempat dialami oleh penulis dan dalam perwujudan materi yang diberikan


(4)

tanpa pamrih, sehingga penyusun pada akhirnya dapat menyelesaikan Tugas Akhir ini.

9. Ivan Rony, ST., Gimhot Manik, ST., Diondo Marten, ST., Arief Mubiar, ST., Irwan Muthalib, ST., Ari Fadil, ST., Roy Kaban, ST., Dodi Simanjuntak, ST., Yudi Toding, ST., Mas Wahyu W, ST., Julty Bida, ST., Haris, ST., Dian Ismanta, ST., Alfonso H, ST., Sandi Kusuma, ST., Yudhie Suherdani, Zulham, Fransiskus, Ferdian Belia., Yogi, Andrew Silitonga, Marwin, Goldi, Evan, Catur G, Goklas, Mangiring H, Herbert, Anthony Sitepu, Dahana, Erie Syahriza, Eston, Toni, Ferdian Andri, Michael Joe K, Anderson, dan sahabat-sahabat saya yang tidak dapat disebutkan namanya satu persatu, terima kasih atas semua bantuan dan dukungannya selama ini.

Sebagai orang yang masih perlu banyak belajar, penyusun sadar bahwa Tugas Akhir ini masih belum sempurna, karena itu penyusun terbuka untuk menerima saran dan kritik membangun yang dapat melengkapi dan memperbaiki bagian-bagian yang kurang sempurna.

Akhir kata, penyusun mengharapkan semoga Tugas Akhir ini dapat bermanfaat dan dapat memberikan sumbangan pikiran yang berguna bagi pembaca.

Bandung, Maret 2008

Penyusun


(5)

DAFTAR ISI

Halaman

ABSTRAK ... i

ABSTRACT... ii

KATA PENGANTAR ... iii

DAFTAR ISI...v

DAFTAR GAMBAR ... vii

DAFTAR TABEL...x

BAB I PENDAHULUAN ...1

1.1 Latar Belakang ...1

1.2 Identifikasi Masalah ...1

1.3 Tujuan ...1

1.4 Pembatasan Masalah ...1

1.5 Sistematika Penulisan...1

BAB II LANDASAN TEORI ...3

2.1 Sinyal Suara Manusia...3

2.2 Proses Sampling ...4

2.3 Frame Blocking...5

2.4 Windowing...5

2.5 Transformasi Fourier...7

2.6 Fast Fourier Transform ...10

BAB III PERANCANGAN ...13

3.1 Pengurangan Spektral Multiband ...13

3.2 Klasifikasi Teknik Peningkatan Kualitas Sinyal Suara...13

3.3 Short – Term Fourier Transform ...15

3.4 Bandpass Filter ...17

3.5 Linear Time Invariant Sistem Waktu Diskrit ...18


(6)

3.6 Pembangkit Sinyal Noise ...18

3.7 Filter IIR Digital Bandpass Orde-2 ...19

3.8 Respon Frekuensi dari Fungsi Alih...19

3.9 Sinyal Korelasi ...20

3.10 Sinyal Tidak Berkorelasi...20

3.11 Domain Waktu Sinyal ...21

BAB IV SIMULASI DAN ANALISA HASIL SIMULASI ...22

4.1 Hasil Simulasi ...22

4.2 Analisa Hasil Simulasi ...48

BAB V KESIMPULAN DAN SARAN ...49

5.1 Kesimpulan ...49

5.2 Saran...49

DAFTAR PUSTAKA ...50

LAMPIRAN A – LISTING PROGRAM


(7)

DAFTAR GAMBAR

Halaman

Gambar II.1 Skema Diagram Organ Penghasil Suara ...3

Gambar II.2 Sinyal Suara untuk Bunyi Vokal “O” ...4

Gambar II.3 Bentuk Sinyal Sinus ...4

Gambar II.4 Sinyal Sinus yang telah Disampling ...5

Gambar II.5 Bentuk Sinyal yang di-Frame Blocking ...5

Gambar II.6 Sinyal Sinus...6

Gambar II.7 Sinyal Sinus yang telah di-Window ...6

Gambar II.8 Transformasi Sinyal dari Domain Waktu ke Domain Frekuensi ....7

Gambar II.9 Sinyal Stasioner...8

Gambar II.10 Sinyal Nonstasioner ...8

Gambar II.11 Sinyal Sinus...9

Gambar II.12 Spektrum Frekuensi Sinyal Sinus ...9

Gambar II.13 Sinyal Sinus dengan Frekuensi Berubah...10

Gambar II.14 Spektrum Sinyal ...10

Gambar II.15 Bank Filter untuk Menghitung DFT ...11

Gambar II.16 Spektral Frekuensi Kalimat “a-i-u-e-o” ...12

Gambar III.1 Diagram Blok Sistem ...14

Gambar III.2 Diagram Alir Sistem ...15

Gambar III.3 Transformasi Sinyal dari Domain Waktu ke Domain Waktu-Frekuensi ...16

Gambar III.4 Transformasi Fourier, Sinyal Dipecah ke Dalam Gelombang-gelombang Sinus Dengan Frekuensi yang Berbeda-beda ...16

Gambar III.5 Diagram Alir Bagian Bandpass Filter ...17

Gambar III.6 Karakteristik Sistem Domain Frekuensi ...18

Gambar III.7 Pembangkit Sinyal Noise ...19

Gambar III.8 Diagram Blok Pemrosesan Sinyal Stasioner yang Berkorelasi...20

Gambar III.9 Diagram Blok Proses Pengurangan Spektral ...21

Gambar IV.1 Input Sinyal Suara ...22


(8)

Gambar IV.2 Fungsi Alih Bandpass Filter...23

Gambar IV.3 Output dari Bandpass Filter ...23

Gambar IV.4 Amplituda Dari FFT Sinyal Input dan Output ...24

Gambar IV.5 STFT dari Input Sinyal Suara dan Noise ...25

Gambar IV.6 STFT dari Input Noise ...26

Gambar IV.7 STFT dari Sinyal Output setelah Pengurangan Spektral...26

Gambar IV.8 Input Sinyal Suara ...27

Gambar IV.9 Fungsi Alih Bandpass Filter...28

Gambar IV.10 Output dari Bandpass Filter ...29

Gambar IV.11 Amplituda Dari FFT Sinyal Input dan Output ...30

Gambar IV.12 STFT dari Input Sinyal Suara dan Noise ...31

Gambar IV.13 STFT dari Input Noise ...32

Gambar IV.14 STFT dari Sinyal Output setelah Pengurangan Spektral...32

Gambar IV.15 Input Sinyal Suara ...33

Gambar IV.16 Fungsi Alih Bandpass Filter...34

Gambar IV.17 Output dari Bandpass Filter ...35

Gambar IV.18 Amplituda Dari FFT Sinyal Input dan Output ...35

Gambar IV.19 STFT dari Input Sinyal Suara dan Noise ...36

Gambar IV.20 STFT dari Input Noise ...37

Gambar IV.21 STFT dari Sinyal Output setelah Pengurangan Spektral...37

Gambar IV.22 Input Sinyal Suara ...38

Gambar IV.23 Fungsi Alih Bandpass Filter...39

Gambar IV.24 Output dari Bandpass Filter ...40

Gambar IV.25 Amplituda Dari FFT Sinyal Input dan Output ...40

Gambar IV.26 STFT dari Input Sinyal Suara dan Noise ...41

Gambar IV.27 STFT dari Input Noise ...42

Gambar IV.28 STFT dari Sinyal Output setelah Pengurangan Spektral...42

Gambar IV.29 Input Sinyal Suara ...43

Gambar IV.30 Fungsi Alih Bandpass Filter...44

Gambar IV.31 Output dari Bandpass Filter ...45

Gambar IV.32 Amplituda Dari FFT Sinyal Input dan Output Y ...45

Gambar IV.33 STFT dari Input Sinyal Suara dan Noise ...46


(9)

Gambar IV.34 STFT dari Input Noise ...47 Gambar IV.35 STFT dari Sinyal Output setelah Pengurangan Spektral...47


(10)

DAFTAR TABEL

Halaman Tabel III.1 Strategi Proses Peningkatan Kualitas Sinyal Suara...13 Tabel IV.1 Hasil Simulasi...48


(11)

Lampiran A - Listing Program A-1

Simulasi I

Bagian Bandpass Filter

% BandPass filter: clear;

close all; clc;

%[voice, fs, bits] = wavread('voice9',[10001 50000]); [voice, fs, bits] = wavread('s1',[1 15000]);

disp('fs= ');disp(fs); disp('bits= '); disp(bits); voice=voice(:,1); v1 = fft(voice);

wavwrite(voice,22050,'piece1') disp('size v1=');disp(length(v1));

figure(1);

plot(voice);grid on

title('Sinyal Suara sebagai Input'); xlabel('Indeks Waktu');

ylabel('Amplituda');

v1_ifft = ifft(v1);

wavwrite(v1_ifft,22050,'try1');

num = [0.1367 0 -0.1367]; %with central frequency of 0.1pi den = [1 -1.6423 0.7267]; %and bandwidth of 0.1pi

%[H,w] = freqz(num,den,40000,'whole'); [H,w] = freqz(num,den,15000,'whole');

figure(2);

plot(abs(H));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Fungsi Alih Bandpass H(z)');

xlabel('Frekuensi Angular'); ylabel('Amplituda');

disp('size H =');disp(length(H));

v2 = H.*v1; v3 = ifft(v2);

figure(3);

plot(real(v3));grid on;


(12)

Lampiran A - Listing Program A-2

xlabel('Indeks Waktu');ylabel('Amplituda'); figure(4);

subplot(2,1,1);plot(abs(v1));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Amplituda dari FFT Sinyal Input');

xlabel('Frekuensi Angular');ylabel('Amplituda');

subplot(2,1,2);plot(abs(v2));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Amplituda dari Output ');

xlabel('Frekuensi Angular');ylabel('Amplituda');

wavwrite(v3,22050,'bp_voice');

Bagian Pengurangan Spektral

clear; close all; clc;

% signal

[voice, fs, bits] = wavread('piece1',[1001 15000]); % [x,fs] = wavread('s1.wav',[9001,16000]);

% [x,fs] = wavread('e:\dsp\p1\a.wav',[26001,33000]); x=voice;

N = length(x);

% noise

[y,fs] = wavread('piece1.wav',[1,14000]); % [y,fs] = wavread('noise.wav',[1,7000]); % [y,fs] = wavread('e:\dsp\p1\a.wav',[1,7000]); % y=0.1*randint(1,7000);

n = 0:N-1; %plot(n,x); % STFT

nfft=input('Lebar window = ');

overlap=input('Overlap yang diinginkan = ');

[BS,f,t] = specgram(x,nfft,fs,hamming(nfft),overlap); BN = specgram(y,nfft,fs,hamming(nfft),overlap);

figure(1);

surf(t,f,abs(BS));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Sinyal Suara dan Noise');


(13)

Lampiran A - Listing Program A-3

figure(2);

surf(t,f,abs(BN));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Noise');

PS = abs(BS).^2; PN = abs(BN).^2;

PP = PS - PN; P = PP.^(1/2);

figure(3); surf(t,f,abs(P));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Sinyal Output setelah Pengurangan Spektral'); soundsc(voice,.5*fs)

Simulasi II

Bagian Bandpass Filter

% BandPass filter: clear;

close all; clc;

%[voice, fs, bits] = wavread('voice9',[10001 50000]); [voice, fs, bits] = wavread('s2',[1 10000]);

disp('fs= ');disp(fs); disp('bits= '); disp(bits); voice=voice(:,1); v1 = fft(voice);

wavwrite(voice,22050,'piece2') disp('size v1=');disp(length(v1));

figure(1);

plot(voice);grid on

title('Sinyal Suara sebagai Input'); xlabel('Indeks Waktu');

ylabel('Amplituda');

v1_ifft = ifft(v1);


(14)

Lampiran A - Listing Program A-4

num = [0.1367 0 -0.1367]; %with central frequency of 0.1pi den = [1 -1.6423 0.7267]; %and bandwidth of 0.1pi

%[H,w] = freqz(num,den,40000,'whole'); [H,w] = freqz(num,den,10000,'whole');

figure(2);

plot(abs(H));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Fungsi Alih Bandpass H(z)');

xlabel('Frekuensi Angular'); ylabel('Amplituda');

disp('size H =');disp(length(H));

v2 = H.*v1; v3 = ifft(v2);

figure(3);

plot(real(v3));grid on;

title('Output dari Bandpass Filter');

xlabel('Indeks Waktu');ylabel('Amplituda');

figure(4);

subplot(2,1,1);plot(abs(v1));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Amplituda dari FFT Sinyal Input');

xlabel('Frekuensi Angular');ylabel('Amplituda');

subplot(2,1,2);plot(abs(v2));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Amplituda dari Output Y');

xlabel('Frekuensi Angular');ylabel('Amplituda');

wavwrite(v3,22050,'bp_voice');

Bagian Pengurangan Spektral

clear; close all; clc;

% signal

[voice, fs, bits] = wavread('piece2',[1001 10000]); % [x,fs] = wavread('s2.wav',[9001,16000]);

% [x,fs] = wavread('e:\dsp\p2\a.wav',[26001,33000]); x=voice;


(15)

Lampiran A - Listing Program A-5

% noise

[y,fs] = wavread('piece2.wav',[1,9000]); % [y,fs] = wavread('noise.wav',[1,7000]); % [y,fs] = wavread('e:\dsp\p2\a.wav',[1,7000]); % y=0.1*randint(1,5000);

n = 0:N-1; %plot(n,x); % STFT

nfft=input('Lebar window = ');

overlap=input('Overlap yang diinginkan = ');

[BS,f,t] = specgram(x,nfft,fs,hamming(nfft),overlap); BN = specgram(y,nfft,fs,hamming(nfft),overlap);

figure(1);

surf(t,f,abs(BS));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Sinyal Suara dan Noise');

figure(2);

surf(t,f,abs(BN));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Noise');

PS = abs(BS).^2; PN = abs(BN).^2;

PP = PS - PN; P = PP.^(1/2);

figure(3); surf(t,f,abs(P));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Sinyal Output setelah Pengurangan Spektral'); soundsc(voice,.5*fs)

Simulasi III

Bagian Bandpass Filter

% BandPass filter: clear;

close all; clc;


(16)

Lampiran A - Listing Program A-6

%[voice, fs, bits] = wavread('voice9',[10001 50000]); [voice, fs, bits] = wavread('s3',[1 15000]);

disp('fs= ');disp(fs); disp('bits= '); disp(bits); voice=voice(:,1); v1 = fft(voice);

wavwrite(voice,22050,'piece3') disp('size v1=');disp(length(v1));

figure(1);

plot(voice);grid on

title('Sinyal Suara sebagai Input'); xlabel('Indeks Waktu');

ylabel('Amplituda');

v1_ifft = ifft(v1);

wavwrite(v1_ifft,22050,'try3');

num = [0.1367 0 -0.1367]; %with central frequency of 0.1pi den = [1 -1.6423 0.7267]; %and bandwidth of 0.1pi

%[H,w] = freqz(num,den,40000,'whole'); [H,w] = freqz(num,den,15000,'whole');

figure(2);

plot(abs(H));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Fungsi Alih Bandpass H(z)');

xlabel('Frekuensi Angular'); ylabel('Amplituda');

disp('size H =');disp(length(H));

v2 = H.*v1; v3 = ifft(v2);

figure(3);

plot(real(v3));grid on;

title('Output dari Bandpass Filter');

xlabel('Indeks Waktu');ylabel('Amplituda');

figure(4);

subplot(2,1,1);plot(abs(v1));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Amplituda dari FFT Sinyal Input');

xlabel('Frekuensi Angular');ylabel('Amplituda');


(17)

Lampiran A - Listing Program A-7

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Amplituda dari Output Y');

xlabel('Frekuensi Angular');ylabel('Amplituda');

wavwrite(v3,22050,'bp_voice');

Bagian Pengurangan Spektral

clear; close all; clc;

% signal

[voice, fs, bits] = wavread('piece3',[1001 15000]); % [x,fs] = wavread('s3.wav',[9001,16000]);

% [x,fs] = wavread('e:\dsp\p3\a.wav',[26001,33000]); x=voice;

N = length(x);

% noise

[y,fs] = wavread('piece3.wav',[1,14000]); % [y,fs] = wavread('noise.wav',[1,7000]); % [y,fs] = wavread('e:\dsp\p3\a.wav',[1,7000]); % y=0.1*randint(1,5000);

n = 0:N-1; %plot(n,x); % STFT

nfft=input('Lebar window = ');

overlap=input('Overlap yang diinginkan = ');

[BS,f,t] = specgram(x,nfft,fs,hamming(nfft),overlap); BN = specgram(y,nfft,fs,hamming(nfft),overlap);

figure(1);

surf(t,f,abs(BS));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Sinyal Suara dan Noise');

figure(2);

surf(t,f,abs(BN));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Noise');

PS = abs(BS).^2; PN = abs(BN).^2;


(18)

Lampiran A - Listing Program A-8

PP = PS - PN; P = PP.^(1/2);

figure(3); surf(t,f,abs(P));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Sinyal Output setelah Pengurangan Spektral'); soundsc(voice,.5*fs)

Simulasi IV:

Bagian Bandpass Filter

% BandPass filter: clear;

close all; clc;

%[voice, fs, bits] = wavread('voice9',[10001 50000]); [voice, fs, bits] = wavread('s4',[1 16000]);

disp('fs= ');disp(fs); disp('bits= '); disp(bits); voice=voice(:,1); v1 = fft(voice);

wavwrite(voice,22050,'piece4') disp('size v1=');disp(length(v1));

figure(1);

plot(voice);grid on

title('Sinyal Suara sebagai Input'); xlabel('Indeks Waktu');

ylabel('Amplituda');

v1_ifft = ifft(v1);

wavwrite(v1_ifft,22050,'try4');

num = [0.1367 0 -0.1367]; %with central frequency of 0.1pi den = [1 -1.6423 0.7267]; %and bandwidth of 0.1pi

%[H,w] = freqz(num,den,40000,'whole'); [H,w] = freqz(num,den,16000,'whole');

figure(2);

plot(abs(H));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Fungsi Alih Bandpass H(z)');


(19)

Lampiran A - Listing Program A-9

xlabel('Frekuensi Angular'); ylabel('Amplituda');

disp('size H =');disp(length(H));

v2 = H.*v1; v3 = ifft(v2);

figure(3);

plot(real(v3));grid on;

title('Output dari Bandpass Filter');

xlabel('Indeks Waktu');ylabel('Amplituda');

figure(4);

subplot(2,1,1);plot(abs(v1));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Amplituda dari FFT Sinyal Input');

xlabel('Frekuensi Angular');ylabel('Amplituda');

subplot(2,1,2);plot(abs(v2));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Amplituda dari Output Y');

xlabel('Frekuensi Angular');ylabel('Amplituda');

wavwrite(v3,22050,'bp_voice');

Bagian Pengurangan Spektral:

clear; close all; clc;

% signal

[voice, fs, bits] = wavread('piece4',[1001 16000]); % [x,fs] = wavread('s4.wav',[9001,16000]);

% [x,fs] = wavread('e:\dsp\p4\a.wav',[26001,33000]); x=voice;

N = length(x);

% noise

[y,fs] = wavread('piece4.wav',[1,15000]); % [y,fs] = wavread('noise.wav',[1,7000]); % [y,fs] = wavread('e:\dsp\p4\a.wav',[1,7000]); % y=0.1*randint(1,5000);

n = 0:N-1; %plot(n,x);


(20)

Lampiran A - Listing Program A-10

% STFT

nfft=input('Lebar window = ');

overlap=input('Overlap yang diinginkan = ');

[BS,f,t] = specgram(x,nfft,fs,hamming(nfft),overlap); BN = specgram(y,nfft,fs,hamming(nfft),overlap);

figure(1);

surf(t,f,abs(BS));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Sinyal Suara dan Noise');

figure(2);

surf(t,f,abs(BN));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Noise');

PS = abs(BS).^2; PN = abs(BN).^2;

PP = PS - PN; P = PP.^(1/2);

figure(3); surf(t,f,abs(P));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Sinyal Output setelah Pengurangan Spektral'); soundsc(voice,.5*fs)

Simulasi V:

Bagian Bandpass Filter

% BandPass filter: clear;

close all; clc;

%[voice, fs, bits] = wavread('voice9',[10001 50000]); [voice, fs, bits] = wavread('s5',[1 16000]);

disp('fs= ');disp(fs); disp('bits= '); disp(bits); voice=voice(:,1); v1 = fft(voice);

wavwrite(voice,22050,'piece5') disp('size v1=');disp(length(v1));


(21)

Lampiran A - Listing Program A-11

figure(1);

plot(voice);grid on

title('Sinyal Suara sebagai Input'); xlabel('Indeks Waktu');

ylabel('Amplituda');

v1_ifft = ifft(v1);

wavwrite(v1_ifft,22050,'try5');

num = [0.1367 0 -0.1367]; %with central frequency of 0.1pi den = [1 -1.6423 0.7267]; %and bandwidth of 0.1pi

%[H,w] = freqz(num,den,40000,'whole'); [H,w] = freqz(num,den,16000,'whole');

figure(2);

plot(abs(H));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Fungsi Alih Bandpass H(z)');

xlabel('Frekuensi Angular'); ylabel('Amplituda');

disp('size H =');disp(length(H));

v2 = H.*v1; v3 = ifft(v2);

figure(3);

plot(real(v3));grid on;

title('Output dari Bandpass Filter');

xlabel('Indeks Waktu');ylabel('Amplituda');

figure(4);

subplot(2,1,1);plot(abs(v1));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Amplituda dari FFT Sinyal Input');

xlabel('Frekuensi Angular');ylabel('Amplituda');

subplot(2,1,2);plot(abs(v2));grid on;

set(gca,'XTickLabel',{'0','0.25pi','0.5pi','0.75pi','pi','1.25pi','1.5pi','1.75pi','2pi'}) title('Amplituda dari Output Y');

xlabel('Frekuensi Angular');ylabel('Amplituda');

wavwrite(v3,22050,'bp_voice');


(22)

Lampiran A - Listing Program A-12

clear; close all; clc;

% signal

[voice, fs, bits] = wavread('piece5',[1001 16000]); % [x,fs] = wavread('s5.wav',[9001,16000]);

% [x,fs] = wavread('e:\dsp\p5\a.wav',[26001,33000]); x=voice;

N = length(x);

% noise

[y,fs] = wavread('piece5.wav',[1,15000]); % [y,fs] = wavread('noise.wav',[1,7000]); % [y,fs] = wavread('e:\dsp\p5\a.wav',[1,7000]); % y=0.1*randint(1,5000);

n = 0:N-1; %plot(n,x); % STFT

nfft=input('Lebar window = ');

overlap=input('Overlap yang diinginkan = ');

[BS,f,t] = specgram(x,nfft,fs,hamming(nfft),overlap); BN = specgram(y,nfft,fs,hamming(nfft),overlap);

figure(1);

surf(t,f,abs(BS));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Sinyal Suara dan Noise');

figure(2);

surf(t,f,abs(BN));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Noise');

PS = abs(BS).^2; PN = abs(BN).^2;

PP = PS - PN; P = PP.^(1/2);

figure(3); surf(t,f,abs(P));


(23)

Lampiran A - Listing Program A-13

title('STFT dari Sinyal Output setelah Pengurangan Spektral'); soundsc(voice,.5*fs)


(24)

Bab I Pendahuluan

BAB I

PENDAHULUAN

1.1 Latar Belakang

Peningkatan kualitas sinyal suara terhadap noise sangat diperlukan dalam bidang telekomunikasi. Noise merupakan salah satu kendala yang mempengaruhi kualitas dari sinyal suara yang ditransmisikan.

Noise tersebut dapat berasal dari peralatan komunikasi itu sendiri atau pengaruh dari sumber luar. Akibatnya sinyal suara akan mengalami penurunan kualitas artikulasi dan pengertian.

Oleh karena itu, perlu adanya suatu metode untuk menekan noise tersebut agar dapat meningkatkan kualitas sinyal suara. Metode yang digunakan pada Tugas Akhir ini adalah Pengurangan Spektral Multiband, yaitu pengurangan level noise pada masing-masing band sinyal suara.

1.2 Identifikasi Masalah

Bagaimana metode pengurangan spektral multiband dapat meningkatkan kualitas sinyal suara yang mengandung noise?

1.3 Tujuan

Tujuan dari Tugas Akhir ini adalah menganalisa kualitas sinyal suara yang telah diperbaiki dengan metode pengurangan spektral multiband.

1.4 Pembatasan Masalah

• Sinyal masukan adalah sinyal suara (ucapan).

Noise berasal dari sumber yang diketahui karakteristiknya. • Menggunakan metode pengurangan spektral multiband. • Simulasi menggunakan software Matlab.

1.5 Sistematika Penulisan

Penulisan Tugas Akhir ini terdiri dari lima bab dengan susunan sebagai berikut:


(25)

Bab I Pendahuluan 2

Bab I Pendahuluan

Pada bab ini menguraikan tentang latar belakang, identifikasi masalah, tujuan, dan pembatasan masalah serta sistematika penulisan Tugas Akhir ini.

Bab II Landasan Teori

Pada bab ini menguraikan tentang pengetahuan dasar mengenai Transformasi Fourier, Short Term Fourier Transform dan materi-materi penunjang lainnya sebagai referensi.

Bab III Perancangan

Pada bab ini menguraikan tentang proses pemodelan data input, perancangan dan pembuatan program, serta simulasi.

Bab IV Simulasi dan Analisa

Pada bab ini menguraikan tentang hasil simulasi dari program yang telah berhasil dibuat, serta pengujian terhadap program tersebut.

Bab V Kesimpulan dan Saran

Pada bab ini menguraikan tentang kesimpulan yang dapat diambil setelah melakukan simulasi, dan disertai dengan saran-saran untuk pengembangan lebih lanjut.


(26)

Bab V Kesimpulan dan Saran

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Kesimpulan yang didapat dari penyusunan Tugas Akhir ini adalah sebagai berikut:

1. Metode Pengurangan Spektral Multiband telah dapat dibuktikan dengan melakukan simulasi menggunakan software Matlab.

2. Setelah dilakukan simulasi, dapat dibuktikan bahwa dengan memperbesar ukuran window, banyaknya jumlah band frekuensi mempengaruhi kualitas sinyal suara.

5.2 Saran

Untuk pengembangan lebih lanjut, dapat ditambahkan beberapa algoritma untuk mengetahui informasi fasa. Contoh: Estimasi noise adaptif.


(27)

Daftar Pustaka

DAFTAR PUSTAKA

[1] J.G. Proakis dan D.G. Manolakis, Digital Signal Processing : Principles, Algorithms and Application, Third Edition, Prentice Hall, 1996.Zadeh L., “Applied Soft Computing – Foreword/Applied Soft Computing”, Vol. 1, 2000.

[2] Vaseghi, V. Saeed, Advanced Digital Signal Processing and Noise Reduction, Second Edition, John Wiley & Sons, 2000.

[3] J.Deller Jr, J.Hansen dan J.Proakis, ”Discrete - Time Processing of Speech Signals”, NY:IEE Press, 2000.

[4] Y. Hu, M. Bhatnagar dan P. Loizou, “A Cross-Correlation Technique for Enhancing Speech Corrupted With Correlated Noise”, ICASSP, vol.1, pp.673-676, 2001.

[5] S. Kamath dan P. Loizou, “A Multi-band Spectral Subtraction Method for Enhancing Speech Corrupted by Colored Noise”, submitted to ICASSP 2002.

[6] S. Savadatti, "Real Time, Fixed-Point Implementation of Multi-channel Speech Amplitude Compression", Master Thesis, University of New Mexico, 2000.

[7] P. Kasthuri, “Multichannel Speech Enhancement for a Digital Programmable Hearing Aid”, Master Thesis, University of New Mexico, 1999.

[8] W. Kim, S. Kang dan H. Ko, “Spectral Subtraction Based on Phonetic Dependency and Masking Effects”, Proc.IEE Visual Image Signal Processed, vol.147, No.5, Oct.2000.

[9] Sunil Devdas Kamath, “A Multi-Band Spectral Subtraction Method for Speech Enhancement”, Master Thesis, University of Texas Dallas, 2001. [10] Cristanto, Harry, “Peningkatan Kualitas Sinyal Suara Menggunakan

Wavelet Denoising”, Tugas Akhir, Universitas Kristen Maranatha, 2007.


(1)

Lampiran A - Listing Program A-12 clear; close all; clc; % signal

[voice, fs, bits] = wavread('piece5',[1001 16000]); % [x,fs] = wavread('s5.wav',[9001,16000]);

% [x,fs] = wavread('e:\dsp\p5\a.wav',[26001,33000]); x=voice;

N = length(x);

% noise

[y,fs] = wavread('piece5.wav',[1,15000]); % [y,fs] = wavread('noise.wav',[1,7000]); % [y,fs] = wavread('e:\dsp\p5\a.wav',[1,7000]); % y=0.1*randint(1,5000);

n = 0:N-1; %plot(n,x); % STFT

nfft=input('Lebar window = ');

overlap=input('Overlap yang diinginkan = ');

[BS,f,t] = specgram(x,nfft,fs,hamming(nfft),overlap); BN = specgram(y,nfft,fs,hamming(nfft),overlap);

figure(1);

surf(t,f,abs(BS));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Sinyal Suara dan Noise');

figure(2);

surf(t,f,abs(BN));

xlabel ('Waktu');ylabel('Frekuensi');zlabel('Amplituda'); title('STFT dari Input Noise');

PS = abs(BS).^2; PN = abs(BN).^2;

PP = PS - PN; P = PP.^(1/2);

figure(3); surf(t,f,abs(P));


(2)

Lampiran A - Listing Program A-13

title('STFT dari Sinyal Output setelah Pengurangan Spektral'); soundsc(voice,.5*fs)


(3)

Bab I Pendahuluan

BAB I

PENDAHULUAN

1.1 Latar Belakang

Peningkatan kualitas sinyal suara terhadap noise sangat diperlukan dalam bidang telekomunikasi. Noise merupakan salah satu kendala yang mempengaruhi kualitas dari sinyal suara yang ditransmisikan.

Noise tersebut dapat berasal dari peralatan komunikasi itu sendiri atau pengaruh dari sumber luar. Akibatnya sinyal suara akan mengalami penurunan kualitas artikulasi dan pengertian.

Oleh karena itu, perlu adanya suatu metode untuk menekan noise tersebut agar dapat meningkatkan kualitas sinyal suara. Metode yang digunakan pada Tugas Akhir ini adalah Pengurangan Spektral Multiband, yaitu pengurangan level noise pada masing-masing band sinyal suara.

1.2 Identifikasi Masalah

Bagaimana metode pengurangan spektral multiband dapat meningkatkan kualitas sinyal suara yang mengandung noise?

1.3 Tujuan

Tujuan dari Tugas Akhir ini adalah menganalisa kualitas sinyal suara yang telah diperbaiki dengan metode pengurangan spektral multiband.

1.4 Pembatasan Masalah

• Sinyal masukan adalah sinyal suara (ucapan).

Noise berasal dari sumber yang diketahui karakteristiknya. • Menggunakan metode pengurangan spektral multiband. • Simulasi menggunakan software Matlab.

1.5 Sistematika Penulisan

Penulisan Tugas Akhir ini terdiri dari lima bab dengan susunan sebagai berikut:


(4)

Bab I Pendahuluan 2

Bab I Pendahuluan

Pada bab ini menguraikan tentang latar belakang, identifikasi masalah, tujuan, dan pembatasan masalah serta sistematika penulisan Tugas Akhir ini.

Bab II Landasan Teori

Pada bab ini menguraikan tentang pengetahuan dasar mengenai Transformasi Fourier, Short Term Fourier Transform dan materi-materi penunjang lainnya sebagai referensi.

Bab III Perancangan

Pada bab ini menguraikan tentang proses pemodelan data input, perancangan dan pembuatan program, serta simulasi.

Bab IV Simulasi dan Analisa

Pada bab ini menguraikan tentang hasil simulasi dari program yang telah berhasil dibuat, serta pengujian terhadap program tersebut.

Bab V Kesimpulan dan Saran

Pada bab ini menguraikan tentang kesimpulan yang dapat diambil setelah melakukan simulasi, dan disertai dengan saran-saran untuk pengembangan lebih lanjut.


(5)

Bab V Kesimpulan dan Saran

BAB V

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Kesimpulan yang didapat dari penyusunan Tugas Akhir ini adalah sebagai berikut:

1. Metode Pengurangan Spektral Multiband telah dapat dibuktikan dengan melakukan simulasi menggunakan software Matlab.

2. Setelah dilakukan simulasi, dapat dibuktikan bahwa dengan memperbesar ukuran window, banyaknya jumlah band frekuensi mempengaruhi kualitas sinyal suara.

5.2 Saran

Untuk pengembangan lebih lanjut, dapat ditambahkan beberapa algoritma untuk mengetahui informasi fasa. Contoh: Estimasi noise adaptif.


(6)

Daftar Pustaka

DAFTAR PUSTAKA

[1] J.G. Proakis dan D.G. Manolakis, Digital Signal Processing : Principles, Algorithms and Application, Third Edition, Prentice Hall, 1996.Zadeh L., “Applied Soft Computing – Foreword/Applied Soft Computing”, Vol. 1, 2000.

[2] Vaseghi, V. Saeed, Advanced Digital Signal Processing and Noise Reduction, Second Edition, John Wiley & Sons, 2000.

[3] J.Deller Jr, J.Hansen dan J.Proakis, ”Discrete - Time Processing of Speech Signals”, NY:IEE Press, 2000.

[4] Y. Hu, M. Bhatnagar dan P. Loizou, “A Cross-Correlation Technique for Enhancing Speech Corrupted With Correlated Noise”, ICASSP, vol.1, pp.673-676, 2001.

[5] S. Kamath dan P. Loizou, “A Multi-band Spectral Subtraction Method for Enhancing Speech Corrupted by Colored Noise”, submitted to ICASSP 2002.

[6] S. Savadatti, "Real Time, Fixed-Point Implementation of Multi-channel Speech Amplitude Compression", Master Thesis, University of New Mexico, 2000.

[7] P. Kasthuri, “Multichannel Speech Enhancement for a Digital Programmable Hearing Aid”, Master Thesis, University of New Mexico, 1999.

[8] W. Kim, S. Kang dan H. Ko, “Spectral Subtraction Based on Phonetic Dependency and Masking Effects”, Proc.IEE Visual Image Signal Processed, vol.147, No.5, Oct.2000.

[9] Sunil Devdas Kamath, “A Multi-Band Spectral Subtraction Method for Speech Enhancement”, Master Thesis, University of Texas Dallas, 2001. [10] Cristanto, Harry, “Peningkatan Kualitas Sinyal Suara Menggunakan