Image Component Library (ICL)
|
class for curvature feature (open and occluded objects). More...
#include <CurvatureFeatureExtractor.h>
Static Public Member Functions | |
static math::DynMatrix< bool > | apply (const core::Img32f &depthImg, core::DataSegment< float, 4 > &xyz, math::DynMatrix< bool > &initialMatrix, std::vector< SurfaceFeatureExtractor::SurfaceFeature > features, std::vector< std::vector< int > > &surfaces, core::DataSegment< float, 4 > &normals, bool useOpenObjects=true, bool useOccludedObjects=true, float histogramSimilarity=0.5, int distance=10, float maxError=10., int ransacPasses=20, float distanceTolerance=3., float outlierTolerance=5.) |
Calculates the curvature feature matrix. More... | |
Static Private Member Functions | |
static bool | computeOpenObject (core::DataSegment< float, 4 > &normals, SurfaceFeatureExtractor::SurfaceFeature feature1, SurfaceFeatureExtractor::SurfaceFeature feature2, std::vector< int > &surface1, std::vector< int > &surface2, int distance, int w) |
static bool | computeOccludedObject (const core::Img32f &depthImg, core::DataSegment< float, 4 > &xyz, core::DataSegment< float, 4 > &normals, SurfaceFeatureExtractor::SurfaceFeature feature1, SurfaceFeatureExtractor::SurfaceFeature feature2, std::vector< int > &surface1, std::vector< int > &surface2, int w, float maxError, int ransacPasses, float distanceTolerance, float outlierTolerance) |
static float | computeConvexity (core::DataSegment< float, 4 > &normals, SurfaceFeatureExtractor::SurfaceFeature feature, std::vector< int > &surface, int w) |
static std::pair< utils::Point, utils::Point > | computeExtremalBins (SurfaceFeatureExtractor::SurfaceFeature feature) |
static std::pair< utils::Point, utils::Point > | backproject (core::DataSegment< float, 4 > &normals, std::pair< utils::Point, utils::Point > &histo1ExtremalBins, std::vector< int > &surface1, int w) |
static std::vector< int > | backprojectPointIDs (core::DataSegment< float, 4 > &normals, utils::Point bin, std::vector< int > &surface) |
static utils::Point | computeMean (std::vector< int > &imgIDs, int w) |
static std::vector< utils::Point > | createPointsFromIDs (std::vector< int > &imgIDs, int w) |
static std::vector< Vec > | createPointsFromIDs (core::DataSegment< float, 4 > &xyz, std::vector< int > &imgIDs) |
static float | computeConvexity (std::pair< utils::Point, utils::Point > histoExtremalBins, std::pair< utils::Point, utils::Point > imgBackproject) |
static float | linePointDistance (std::pair< Vec, Vec > line, Vec point) |
static utils::Point | idToPoint (int id, int w) |
class for curvature feature (open and occluded objects).
This class implements the curvature feature for feature-graph based segmentation.
|
static |
Calculates the curvature feature matrix.
depthImg | the input depth image |
xyz | the input xyz pointcloud data segment |
initialMatrix | the initial boolean test matrix (0 test if both curved, 1 dont test, preferably an adjacency matrix) |
features | the surface feature for the surfaces |
surfaces | the vector of surface id vectors |
normals | the input normals |
useOpenObjects | true for computation of open objects |
useOccludedObjects | true for computation of occluded objects |
histogramSimilarity | the minimum histogram similarity |
distance | the maximum distance between two curved objects in pixel for open objects (e.g. a cup) |
maxError | maximum RANSAC error for object alignment detection |
ransacPasses | number of RANSAC passes for object alignment detection |
distanceTolerance | distance tolerance for occlusion check |
outlierTolerance | outlier tolerance for occlusion check |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |
|
staticprivate |