GetGaussianSmoothing.m 876 B

1234567891011121314151617181920212223
  1. function Data_Smoothing = GetGaussianSmoothing(Data,Timewindow)
  2. %% Smoothing processing
  3. Data_Smoothing=zeros(1,size(Data,2));
  4. gaussFilter = gausswin(Timewindow,2.5);
  5. gaussFilter=gaussFilter';
  6. gaussFilter = gaussFilter / sum(gaussFilter); % Normalize.
  7. % % Data transformation for smoothing
  8. if size(Data,2)==1 && size(Data,1) > 1
  9. Data=Data';
  10. end
  11. if size(Data,1) == 1 %% 1 * n matrix
  12. Data_Smoothing=conv(Data, gaussFilter);
  13. % Eliminate first and last bins contained unsufficient information.
  14. % that created by smoothing process
  15. Data_Smoothing=Data_Smoothing((floor(Timewindow/2)+1):end-floor(Timewindow/2));
  16. elseif size(Data,1) > 1 %% m * n matrix
  17. for i=1:size(Data,1)
  18. temp(i,:)=conv(Data(i,:), gaussFilter);
  19. Data_Smoothing(i,:)=temp(i,(floor(Timewindow/2)+1):end-floor(Timewindow/2));
  20. end
  21. end