Sinopsis
Smoothing The Data and Find Major Peaks – Latar belakang tulisan ini dibuat ketika Penulis menjumpai sebuah plot data tidak semulus yang dibayangkan yaitu Projected Integral Image. Data yang secara real didapatkan akan banyak terdapat beberapa gangguan sehingga plot data tersebut tidak semulus apa yang kita harapkan, oleh hal tersebut, maka diperlukan beberapa hal kecil untuk mengubahnya agar lebih smooth. Sebuah plot grafik terkadang dijumpai dalam kondisi yang noise / bergerigi seperti berikut:
Bila dilihat sekilas, maka banyak ‘gerigi’ atau noise yang cukup mengganggu agar bisa dihilangkan, sehingga find peak dapat ditentukan dengan lebih akurat.
Bila dibandingkan dengan data tersebut di ‘smooth’ menggunakan operasi konvolusi berikut ini
Maka hasilnya akan terlihat lebih ‘clear’ serta pencarian peak menjadi lebih presisi, jika kalian ingin mencoba operasi diatas menggunakan kernel gaussian. Kalian bisa menggunakan kode berikut
clc;clear all;close all; data = load('data.txt'); g = gausswin(30); % <-- this value determines the width of the smoothing window g = g/sum(g); data2 = conv(data, g, 'same'); [pks,locs] = findpeaks(data2,1:length(data2),'MinPeakDistance',20,'MinPeakWidth',10); figure() plot(data2); xlabel('x','fontsize',18); xticks([0:50:length(data)+100]) xtickangle(45) yticks([]); grid on; title('Data Sinyal') hold on; text(locs+.02,pks,num2str((1:numel(pks))'))
Bagaimana menurut kalian mengenai Smoothing The Data and Find Major Peaks