30     CImage& img, 
bool verticalFlip, 
bool forceRGB, 
bool tricolor)
 const    38             unsigned char* destPtr;
    39             for (
unsigned int y = 0; y < size_y; y++)
    42                     destPtr = img(0, size_y - 1 - y);
    45                 for (
unsigned int x = 0; x < size_x; x++)
    47                     *destPtr++ = l2p_255(*srcPtr++);
    55             unsigned char* destPtr;
    56             for (
unsigned int y = 0; y < size_y; y++)
    59                     destPtr = img(0, size_y - 1 - y);
    62                 for (
unsigned int x = 0; x < size_x; x++)
    64                     uint8_t c = l2p_255(*srcPtr++);
    79             unsigned char* destPtr;
    80             for (
unsigned int y = 0; y < size_y; y++)
    83                     destPtr = img(0, size_y - 1 - y);
    86                 for (
unsigned int x = 0; x < size_x; x++)
    88                     uint8_t c = l2p_255(*srcPtr++);
   103             unsigned char* destPtr;
   104             for (
unsigned int y = 0; y < size_y; y++)
   107                     destPtr = img(0, size_y - 1 - y);
   110                 for (
unsigned int x = 0; x < size_x; x++)
   112                     uint8_t c = l2p_255(*srcPtr++);
   133     CImage& img, 
bool verticalFlip, 
bool forceRGB)
 const   135     getAsImage(img, verticalFlip, forceRGB);
   138     if (insertionOptions.CFD_features_gaussian_size != 0)
   140             img, 
round(insertionOptions.CFD_features_gaussian_size));
   141     if (insertionOptions.CFD_features_median_size != 0)
   151     if (!genericMapParams.enableSaveAs3DObject) 
return;
   157     outObj->setPlaneCorners(x_min, x_max, y_min, y_max);
   159     outObj->setLocation(0, 0, insertionOptions.mapAltitude);
   167     for (
unsigned int y = 0; y < size_y; y++)
   169         unsigned char* destPtr_color = imgColor(0, y);
   170         unsigned char* destPtr_trans = imgTrans(0, y);
   171         for (
unsigned int x = 0; x < size_x; x++)
   173             uint8_t cell255 = l2p_255(*srcPtr++);
   174             *destPtr_color++ = cell255;
   176             int8_t auxC = (int8_t)((
signed short)cell255) - 127;
   177             *destPtr_trans++ = auxC > 0 ? (auxC << 1) : ((-auxC) << 1);
   181     outObj->assignImage(imgColor, imgTrans);
   182     outSetOfObj->insert(outObj);
   195     for (
size_t i = 1; i + 1 < size_x; i++)
   198         for (
size_t j = 1; j + 1 < size_y; j++)
   201             bool is_surrounded = 
true;
   202             for (
int di = -1; di <= 1 && is_surrounded; di++)
   203                 for (
int dj = -1; dj <= 1 && is_surrounded; dj++)
   204                     if ((di != 0 || dj != 0) &&
   205                         getCell(i + di, j + dj) > occup_threshold)
   206                         is_surrounded = 
false;
   208             if (getCell(i, j) < occup_threshold && !is_surrounded)
 void clear()
Erase all the contents of the map. 
 
static Ptr Create(Args &&... args)
 
void reserve(size_t newLength) override
Reserves memory for a given number of points: the size of the map does not change, it only reserves the memory. 
 
A cloud of points in 2D or 3D, which can be built from a sequence of laser scans. ...
 
void insertPoint(float x, float y, float z=0)
Provides a way to insert (append) individual points into the map: the missing fields of child classes...
 
void filterGaussian(CImage &out_img, int W=3, int H=3, double sigma=1.0) const
Filter the image with a Gaussian filter with a window size WxH, replacing "this" image by the filtere...
 
void getAsImageFiltered(img::CImage &img, bool verticalFlip=false, bool forceRGB=false) const
Returns the grid as a 8-bit graylevel image, where each pixel is a cell (output image is RGB only if ...
 
void resize(std::size_t width, std::size_t height, TImageChannels nChannels, PixelDepth depth=PixelDepth::D8U)
Changes the size of the image, erasing previous contents (does NOT scale its current content...
 
This namespace contains representation of robot actions and observations. 
 
void getAsPointCloud(mrpt::maps::CSimplePointsMap &pm, const float occup_threshold=0.5f) const
Get a point cloud with all (border) occupied cells as points. 
 
Classes for 2D/3D geometry representation, both of single values and probability density distribution...
 
void getAsImage(mrpt::img::CImage &img, bool verticalFlip=false, bool forceRGB=false, bool tricolor=false) const
Returns the grid as a 8-bit graylevel image, where each pixel is a cell (output image is RGB only if ...
 
This is the global namespace for all Mobile Robot Programming Toolkit (MRPT) libraries. 
 
void filterMedian(CImage &out_img, int W=3) const
Filter the image with a Median filter with a window size WxW, returning the filtered image in out_img...
 
void getAs3DObject(mrpt::opengl::CSetOfObjects::Ptr &outObj) const override
Returns a 3D plane with its texture being the occupancy grid and transparency proportional to "uncert...
 
OccGridCellTraits::cellType cellType
The type of the map cells: 
 
A class for storing images as grayscale or RGB bitmaps. 
 
int round(const T value)
Returns the closer integer (int) to x.