function init_gaus_filt(filt_size) global image_size data_base image_size_x image_size_y image_number global threshold_level MatlabVersion if isempty(MatlabVersion), MatlabVersion = version; end if nargin < 1, filt_size = 1; end spatial_filter = my_fspecial('gaussian',2*round(4*filt_size)+5,filt_size); disp(['applying spatial gausian filter of size '... num2str(filt_size)]); for i=1:image_number mask = data_base(i,:)~=0; tmp = data_base(i,:); % +((1-mask)*mean(data_base(i,:))); tmp = reshape(tmp,image_size_x,image_size_y); tmp = filter2(spatial_filter,tmp); data_base(i,:) = reshape(tmp,1,image_size).*mask; end median_image = reshape(mean(data_base),image_size_x,image_size_y);