gaussian kernel smoothing, how to optimize parameter sigma?

3 次查看(过去 30 天)
Hi, my question is how to find an optimal standard deviation for the gaussian kernel filter smoothing?
too large, we are losing amplitude, too small, it can be still noisy
Are there standard methods to optimize this choice? on which metrics?
x= (0:0.1:7)';
y = sin(x);
y_=y + 0.3*randn(size(y)); %noisy signal
y__ = zeros(length(x), 3); % reconstructs
for i=1:length(x)
%test different gaussian sigmas
k = exp( -(x-repmat(x(i),length(x),1)).^2 / (2*.2^2) ) ;
y__(i,1) = k'*y_ / sum(k);
k = exp( -(x-repmat(x(i),length(x),1)).^2 / (2*.5^2) ) ;
y__(i,2) = k'*y_ / sum(k);
k = exp( -(x-repmat(x(i),length(x),1)).^2 / (2*.8^2) ) ;
y__(i,3) = k'*y_ / sum(k);
end
plot([y y_ y__])

回答(1 个)

Junpeng Lao
Junpeng Lao 2015-10-9
Hey Cyril, I come across this paper might be related to your question: http://www.princeton.edu/~samory/Papers/adaptiveKR.pdf

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by