15 #include <mrpt/otherlibs/do_opencv_includes.h> 32 ASSERT_(options.LogPolarImagesOptions.radius > 1);
33 ASSERT_(options.LogPolarImagesOptions.num_angles > 1);
34 ASSERT_(options.LogPolarImagesOptions.rho_scale > 0);
36 const unsigned int radius = options.LogPolarImagesOptions.radius;
37 const unsigned int patch_h = options.LogPolarImagesOptions.num_angles;
38 const double rho_scale = options.LogPolarImagesOptions.rho_scale;
39 const unsigned int patch_w =
40 rho_scale * std::log(static_cast<double>(radius));
47 it != in_features.
end(); ++it)
50 (*it)->scale = radius;
54 in_img.
getAs<IplImage>(), logpolar_frame.getAs<IplImage>(),
55 cvPoint2D32f((*it)->x, (*it)->y), rho_scale,
56 CV_INTER_LINEAR + CV_WARP_FILL_OUTLIERS);
59 logpolar_frame.getAsMatrix((*it)->descriptors.LogPolarImg);
const T * getAs() const
Returns a pointer to a const T* containing the image - the idea is to call like "img.getAs<IplImage>()" so we can avoid here including OpenCV's headers.
TInternalFeatList::iterator iterator
#define THROW_EXCEPTION(msg)
TImageChannels getChannelCount() const
Returns the number of channels, typically 1 (GRAY) or 3 (RGB)
#define ASSERT_(f)
Defines an assertion mechanism.
Classes for computer vision, detectors, features, etc.
A list of visual features, to be used as output by detectors, as input/output by trackers, etc.
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries.
A class for storing images as grayscale or RGB bitmaps.