Align descriptors at different scales for dense descriptors

asked 2017-03-01 04:41:27 -0600

lovaj gravatar image

updated 2017-03-01 04:46:03 -0600

I'm reading the source code of vl_phow from VLFeat. The proceess is clear to me, however I'm confused by this section (which is not reported in the documentation here or here):

% Recall from VL_DSIFT() that the first descriptor for scale SIZE has
% center located at XC = XMIN + 3/2 SIZE (the Y coordinate is
% similar). It is convenient to align the descriptors at different
% scales so that they have the same geometric centers. For the
% maximum size we pick XMIN = 1 and we get centers starting from
% XC = 1 + 3/2 MAX(OPTS.SIZES). For any other scale we pick XMIN so
% that XMIN + 3/2 SIZE = 1 + 3/2 MAX(OPTS.SIZES).
%
% In pracrice, the offset must be integer ('bounds'), so the
% alignment works properly only if all OPTS.SZES are even or odd.

off = floor(1 + 3/2 * (max(opts.sizes) - opts.sizes(si))) ;

Can someone explain me this part please? I want to replicate dense descriptors at multiple scales in OpenCV.

edit retag flag offensive close merge delete