Categories
DSP

Sinyal Acak: Colored Noise

Dua sinyal acak yang dibahas sebelumnya (WUN dan WGN) dinamakan white atau putih karena algoritma yang digunakan untuk menghitung nilai pada suatu titik tidak dipengaruhi oleh nilai-nilai sebelum dan sesudahnya. Jika Anda mengukur spektrum dari sinyal-sinyal tersebut, akan Anda temukan energi yang sama untuk semua frekuensi, seperti cahaya putih yang mengandung daya atau energi yang sama untuk semua kandungan frekuensinya.

Derau putih analog semakin tidak menentu (erratic), sangat tidak menentu dibandingkan yang Anda bayangkan, selalu melompat dari satu tingkat ke tingkat lainnya. Ini merupakan abstraksi matematis yang biasa Anda jumpai dalam kehidupan sehari-hari (seperti gelombang sinus ideal, impuls, step, DC dan lain sebagainya). Derau putih analog memiliki daya yang tak-berhingga, dan dapat menjebolkan segala peralatan yang terhubung (sekaligus juga dengan orang-orang, bangunan-bangunan, planet-planet atau bintang-bintang disekitarnya). Derau putih digital tidak memiliki masalah seperti itu serta mudah dijumpai dalam dunia nyata.

Dalam banyak aplikasi, terdapat istilah derajat kesamaan (degree of similarity), atau korelasi, antara dua data yang berturutan. Artinya, bentuk gelombang sedemikian halus variasinya antara satu tingkat amplitudo dengan amplitudo berikutnya, tidak langsung loncat secara drastis. Tipe derau semacam ini memiliki daya yang lebih untuk beberapa frekuensi dibandingkan lainnya, sebagaimana cahaya berwarna lebih memili daya pada beberapa warna dibandingkan lainnya – sehingga derau tipe ini dinamakan sebagai colored noise (derau berwarna). Derau analog selalu dalam tipe colored noise (walaupun kelihatan seperti derau putih untuk jangkauan frekuensi yang terbatas). Sedangkan derau digital dapat berupa berwarna atau putih.

Berikut contoh skrip Matlab yang digunakan untuk menghasilkan beberapa derau berwarna:

fs=8000;
t=[0:1/fs:1];
y=randn(size(t));
x=y*0; % alokasi memori untuk x agar loop berikut bisa cepat
for i=2:length(y)
   x(i)=(y(i)+x(i-1))/2;
end

kemudian kita plot dalam ranah waktu…

plot(t,x,'.');
title('Colored Noise');
xlabel('time (sec)');
ylabel('amplitude');

hasilnya…

kemudian kita lihat histogramnya…

[h,loc]=hist(x,100);
bar(loc,h);
title('Histogram of Colored Noise - 100 bins');
xlabel('Amplitudo');
ylabel('Percentage of Samples in Bin');

hasilnya…

Jika Anda perhatikan kedua plot, dalam ranah waktu dan histogramnya, Anda bisa perhatikan, jika ada, perbedaan sangat kecil dengan WGN. Jika kemudian data saat ini lebih bergantung pada data sebelumnya, maka Anda akan melihat hasilnya yang semakin berbeda…

for i=2:length(y)
   x(i)=0.001*y(i)+0.999*x(i-1);
end

hasilnya dalam ranah waktu dan histogramnya…

Histogramnya masih mirip dengan pola bel, Anda perlu memperbanyak jumlah data jika ingin melihat lebih jelas bentuk histogram yang menyerupai bel. Plot masih seperti bentuk bel karena jumlah dari dua variabel WGN juga merupakan WGN. Hal ini tentu saja tidak berlaku jika Anda menggunakan WUN.

Jika Anda perhatikan skrip Matlab yang sudah saya tuliskan tersebut, hasil derau berwarna berasal dari derau putih yang diumpankan ke tapis IIR orde pertama. Anda bisa menghasilkan berbagai macam derau berwarna menggunakan berbagai macam operasi tapis yang berbeda-beda.

Artikel yang terkait…

Semoga bermanfaat…