Raster segmentation.  
 More...
#include <Segmenter.h>
 | 
| bool  | calcBestBlockSize (const unsigned int minExapandedBlockPixels, const unsigned int maxExapandedBlockPixels, unsigned int &blocksHOverlapSize, unsigned int &blocksVOverlapSize, unsigned int &nonExpandedBlockWidth, unsigned int &nonExpandedBlockHeight, unsigned int &expandedBlockWidth, unsigned int &expandedBlockHeight) const  | 
|   | Calc the best sub-image block size for each thread to process.  More...
  | 
|   | 
| bool  | createCutOffLinesTiff (const std::vector< std::vector< unsigned int > > &imageHorizontalProfiles, const std::vector< unsigned int > &imageHorizontalProfilesCenterLines, const std::vector< std::vector< unsigned int > > &imageVerticalProfiles, const std::vector< unsigned int > &imageVerticalProfilesCenterLines, const std::string &filename) | 
|   | 
| bool  | genImageHCutOffProfile (const unsigned int profileCenter, const te::rst::Raster &inRaster, const std::vector< unsigned int > &inRasterBands, const unsigned int pixelNeighborhoodSize, const unsigned int tileNeighborhoodSize, const unsigned int profileAntiSmoothingFactor, std::vector< unsigned int > &profile) const  | 
|   | Generate the horizontal cutOff prifles for the entire image..  More...
  | 
|   | 
| bool  | genImageVCutOffProfile (const unsigned int profileCenter, const te::rst::Raster &inRaster, const std::vector< unsigned int > &inRasterBands, const unsigned int pixelNeighborhoodSize, const unsigned int tileNeighborhoodSize, const unsigned int profileAntiSmoothingFactor, std::vector< unsigned int > &profile) const  | 
|   | Generate the vertical cutOff prifles for the entire image..  More...
  | 
|   | 
| bool  | updateBlockCutOffProfiles (const std::vector< std::vector< unsigned int > > &imageHorizontalProfiles, const std::vector< std::vector< unsigned int > > &imageVerticalProfiles, SegmenterSegmentsBlock &segmentsBlock) const  | 
|   | Update the block cutOff profiles using the full image profiles.  More...
  | 
|   | 
Raster segmentation. 
Raster segmentation following the choosed segmentation strategy. 
- Note
 - The created label image will be written to the raster instance pointed by m_outRasterPtr (in this case the output band must also be passed by m_outRasterBand ); or written to a new raster instance created inside the given data source pointed by m_outDataSourcePtr (in this case the data set name must be supplied - m_outDataSetName ). 
 
- See also
 - te::rp::Segmenter::Parameters For detailed parameters description. 
 
- 
te::rp::SegmenterStrategy For detailed parameters description. 
 
Definition at line 73 of file Segmenter.h.
 
Segments blocks matrix type definition 
Definition at line 194 of file Segmenter.h.
 
 
      
        
          | te::rp::Segmenter::Segmenter  | 
          ( | 
           | ) | 
           | 
        
      
 
 
      
        
          | te::rp::Segmenter::~Segmenter  | 
          ( | 
           | ) | 
           | 
        
      
 
 
  
  
      
        
          | bool te::rp::Segmenter::calcBestBlockSize  | 
          ( | 
          const unsigned int  | 
          minExapandedBlockPixels,  | 
         
        
           | 
           | 
          const unsigned int  | 
          maxExapandedBlockPixels,  | 
         
        
           | 
           | 
          unsigned int &  | 
          blocksHOverlapSize,  | 
         
        
           | 
           | 
          unsigned int &  | 
          blocksVOverlapSize,  | 
         
        
           | 
           | 
          unsigned int &  | 
          nonExpandedBlockWidth,  | 
         
        
           | 
           | 
          unsigned int &  | 
          nonExpandedBlockHeight,  | 
         
        
           | 
           | 
          unsigned int &  | 
          expandedBlockWidth,  | 
         
        
           | 
           | 
          unsigned int &  | 
          expandedBlockHeight  | 
         
        
           | 
          ) | 
           |  const | 
         
       
   | 
  
protected   | 
  
 
Calc the best sub-image block size for each thread to process. 
- Parameters
 - 
  
    | minBlockPixels | The minimun allowed pixels number for each block (expanded block).  | 
    | maxBlockPixels | The maximum allowed pixels number for each block (expanded block).  | 
    | blocksHOverlapSize | The blocks horizontal overlap size (number of columns).  | 
    | blocksVOverlapSize | The blocks vertical overlap size (number of rows).  | 
    | nonExpandedBlockWidth | The calculated non-expanded block width (non-expanded block).  | 
    | nonExpandedBlockHeight | The calculated non-expanded block height (non-expanded block).  | 
    | expandedBlockWidth | The calculated expanded block width (non-expanded block).  | 
    | expandedBlockHeight | The calculated expanded block height (non-expanded block).  | 
  
   
- Returns
 - true if OK, false on errors. 
 
 
 
  
  
      
        
          | bool te::rp::Segmenter::createCutOffLinesTiff  | 
          ( | 
          const std::vector< std::vector< unsigned int > > &  | 
          imageHorizontalProfiles,  | 
         
        
           | 
           | 
          const std::vector< unsigned int > &  | 
          imageHorizontalProfilesCenterLines,  | 
         
        
           | 
           | 
          const std::vector< std::vector< unsigned int > > &  | 
          imageVerticalProfiles,  | 
         
        
           | 
           | 
          const std::vector< unsigned int > &  | 
          imageVerticalProfilesCenterLines,  | 
         
        
           | 
           | 
          const std::string &  | 
          filename  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
protected   | 
  
 
 
Executes the algorithm using the supplied parameters. 
- Parameters
 - 
  
    | outputParams | Output parameters. | 
  
   
- Returns
 - true if OK, false on errors. 
 
Implements te::rp::Algorithm.
 
 
  
  
      
        
          | bool te::rp::Segmenter::genImageHCutOffProfile  | 
          ( | 
          const unsigned int  | 
          profileCenter,  | 
         
        
           | 
           | 
          const te::rst::Raster &  | 
          inRaster,  | 
         
        
           | 
           | 
          const std::vector< unsigned int > &  | 
          inRasterBands,  | 
         
        
           | 
           | 
          const unsigned int  | 
          pixelNeighborhoodSize,  | 
         
        
           | 
           | 
          const unsigned int  | 
          tileNeighborhoodSize,  | 
         
        
           | 
           | 
          const unsigned int  | 
          profileAntiSmoothingFactor,  | 
         
        
           | 
           | 
          std::vector< unsigned int > &  | 
          profile  | 
         
        
           | 
          ) | 
           |  const | 
         
       
   | 
  
protected   | 
  
 
Generate the horizontal cutOff prifles for the entire image.. 
- Parameters
 - 
  
    | profileCenter | The profile center line.  | 
    | inRaster | The input raster.  | 
    | inRasterBands | The input raster bands.  | 
    | pixelNeighborhoodSize | The pixel neighborhood size over the line transverse to each tile line.  | 
    | tileNeighborhoodSize | The buffer size around each tile.  | 
    | profileAntiSmoothingFactor | A positive profile anti-smoothing factor.  | 
    | profile | The generated profile (each element is a inRaster line index ).  | 
  
   
- Returns
 - true if OK, false on errors. 
 
 
 
  
  
      
        
          | bool te::rp::Segmenter::genImageVCutOffProfile  | 
          ( | 
          const unsigned int  | 
          profileCenter,  | 
         
        
           | 
           | 
          const te::rst::Raster &  | 
          inRaster,  | 
         
        
           | 
           | 
          const std::vector< unsigned int > &  | 
          inRasterBands,  | 
         
        
           | 
           | 
          const unsigned int  | 
          pixelNeighborhoodSize,  | 
         
        
           | 
           | 
          const unsigned int  | 
          tileNeighborhoodSize,  | 
         
        
           | 
           | 
          const unsigned int  | 
          profileAntiSmoothingFactor,  | 
         
        
           | 
           | 
          std::vector< unsigned int > &  | 
          profile  | 
         
        
           | 
          ) | 
           |  const | 
         
       
   | 
  
protected   | 
  
 
Generate the vertical cutOff prifles for the entire image.. 
- Parameters
 - 
  
    | profileCenter | The profile center column.  | 
    | inRaster | The input raster.  | 
    | inRasterBands | The input raster bands.  | 
    | pixelNeighborhoodSize | The pixel neighborhood size over the line transverse to each tile line.  | 
    | tileNeighborhoodSize | The buffer size around each tile.  | 
    | profileAntiSmoothingFactor | A positive profile anti-smoothing factor.  | 
    | profile | The generated profile (each element is a inRaster column index )  | 
  
   
- Returns
 - true if OK, false on errors. 
 
 
 
Initialize the algorithm instance making it ready for execution. 
- Parameters
 - 
  
    | inputParams | Input parameters. | 
  
   
- Returns
 - true if OK, false on errors.
 
- Note
 - A return error string can be obtained via te::rp::Module::getLastLogStr() 
 
Implements te::rp::Algorithm.
 
 
  
  
      
        
          | bool te::rp::Segmenter::isInitialized  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
virtual   | 
  
 
Returns true if the algorithm instance is initialized and ready for execution. 
- Returns
 - true if the algorithm instance is initialized and ready for execution. 
 
Implements te::rp::Algorithm.
 
 
  
  
      
        
          | void te::rp::Segmenter::reset  | 
          ( | 
           | ) | 
           | 
         
        
          | throw  | ( | te::rp::Exception | 
         
        
           | ) |  |  | 
         
       
   | 
  
virtual   | 
  
 
Clear all internal allocated objects and reset the algorithm to its initial state. 
Implements te::rp::Algorithm.
 
 
Segmenter thread entry. 
- Parameters
 - 
  
    | paramsPtr | A pointer to the segmenter thread parameters.  | 
  
   
 
 
  
  
      
        
          | bool te::rp::Segmenter::updateBlockCutOffProfiles  | 
          ( | 
          const std::vector< std::vector< unsigned int > > &  | 
          imageHorizontalProfiles,  | 
         
        
           | 
           | 
          const std::vector< std::vector< unsigned int > > &  | 
          imageVerticalProfiles,  | 
         
        
           | 
           | 
          SegmenterSegmentsBlock &  | 
          segmentsBlock  | 
         
        
           | 
          ) | 
           |  const | 
         
       
   | 
  
protected   | 
  
 
Update the block cutOff profiles using the full image profiles. 
- Parameters
 - 
  
    | imageVerticalProfiles | The generated horizontal profiles (empty profiles also will be accepted).  | 
    | horizontalProfiles | The generated vertical profiles (empty profiles also will be accepted).  | 
    | segmentsBlock | The block to update.  | 
  
   
- Returns
 - true if OK, false on errors. 
 
 
 
  
  
      
        
          | bool te::rp::Segmenter::m_instanceInitialized | 
         
       
   | 
  
protected   | 
  
 
 
The documentation for this class was generated from the following file:
- /home/castejon/castejon_files/develop/terralib5/git_master/terralib5/src/terralib/rp/Segmenter.h