In some cases you may improve the feature tracking by pre-processing the images. The aim of the preprocessing may be to reduce effects from different lighting conditions, remove noise, or reduce the weight of outliers. Here are a set of proposed pre-processing steps that may improve your results. Many of the filters below are written using matlabs @-syntax for anonymous functions. You would apply the filters like this: A=im2single(imread('test.tif')); hpass=@(A,sigma)A-imfilter(A,fspecial('gaussian',sigma*3,sigma)); %define a filter function A=hpass(A,3); %apply the filter imagesc(A) High-pass filteringFeature tracking using NCC will attempt to align bright and dark regions of the image. These may correspond to illuminated vs shadow regions of the ice and thus depend strongly on the direction of the illumination. For that reason you may want to apply a high pass filter to focus on finer details than large patches of bright and dark. This can be written in matlab like this: hpass=@(A,sigma)A-imfilter(A,fspecial('gaussian',sigma*3,sigma)) Local histogram equalizationHistogram equalization will bring in outliers so that they are not allowed to dominate the output. histequalfilt=@(A,tilesize)adapthisteq(A,'NumTiles',ceil(size(A)./tilesize)); Noise reductionSee e.g. the wiener2 function in the image processing toolbox. Combination of filtersYou can combine multiple filters. E.g. myfilter=@(A)histequalfilt(hpass(A,3),50); Structure texture separation |
Documentation > FAQ >