OpenCV 5.0.0-pre
Open Source Computer Vision
Loading...
Searching...
No Matches
cv::RgbdNormals Class Referenceabstract

#include <opencv2/3d/depth.hpp>

Collaboration diagram for cv::RgbdNormals:

Public Types

enum  RgbdNormalsMethod {
  RGBD_NORMALS_METHOD_FALS = 0 ,
  RGBD_NORMALS_METHOD_LINEMOD = 1 ,
  RGBD_NORMALS_METHOD_SRI = 2 ,
  RGBD_NORMALS_METHOD_CROSS_PRODUCT = 3
}
 

Public Member Functions

 RgbdNormals ()
 
virtual ~RgbdNormals ()
 
virtual void apply (InputArray points, OutputArray normals) const =0
 
virtual void cache () const =0
 
virtual int getCols () const =0
 
virtual int getDepth () const =0
 
virtual void getK (OutputArray val) const =0
 
virtual RgbdNormals::RgbdNormalsMethod getMethod () const =0
 
virtual int getRows () const =0
 
virtual int getWindowSize () const =0
 
virtual void setCols (int val)=0
 
virtual void setK (InputArray val)=0
 
virtual void setRows (int val)=0
 
virtual void setWindowSize (int val)=0
 

Static Public Member Functions

static Ptr< RgbdNormalscreate (int rows=0, int cols=0, int depth=0, InputArray K=noArray(), int window_size=5, float diff_threshold=50.f, RgbdNormals::RgbdNormalsMethod method=RgbdNormals::RgbdNormalsMethod::RGBD_NORMALS_METHOD_FALS)
 

Detailed Description

Object that can compute the normals in an image. It is an object as it can cache data for speed efficiency The implemented methods are either:

  • FALS (the fastest) and SRI from Fast and Accurate Computation of Surface Normals from Range Images by H. Badino, D. Huber, Y. Park and T. Kanade
  • the normals with bilateral filtering on a depth image from Gradient Response Maps for Real-Time Detection of Texture-Less Objects by S. Hinterstoisser, C. Cagniart, S. Ilic, P. Sturm, N. Navab, P. Fua, and V. Lepetit

Member Enumeration Documentation

◆ RgbdNormalsMethod

Enumerator
RGBD_NORMALS_METHOD_FALS 
RGBD_NORMALS_METHOD_LINEMOD 
RGBD_NORMALS_METHOD_SRI 
RGBD_NORMALS_METHOD_CROSS_PRODUCT 

Constructor & Destructor Documentation

◆ RgbdNormals()

cv::RgbdNormals::RgbdNormals ( )
inline

◆ ~RgbdNormals()

virtual cv::RgbdNormals::~RgbdNormals ( )
inlinevirtual

Member Function Documentation

◆ apply()

virtual void cv::RgbdNormals::apply ( InputArray points,
OutputArray normals ) const
pure virtual
Python:
cv.RgbdNormals.apply(points[, normals]) -> normals

Given a set of 3d points in a depth image, compute the normals at each point.

Parameters
pointsa rows x cols x 3 matrix of CV_32F/CV64F or a rows x cols x 1 CV_U16S
normalsa rows x cols x 3 matrix

◆ cache()

virtual void cv::RgbdNormals::cache ( ) const
pure virtual
Python:
cv.RgbdNormals.cache() -> None

Prepares cached data required for calculation If not called by user, called automatically at first calculation

◆ create()

static Ptr< RgbdNormals > cv::RgbdNormals::create ( int rows = 0,
int cols = 0,
int depth = 0,
InputArray K = noArray(),
int window_size = 5,
float diff_threshold = 50.f,
RgbdNormals::RgbdNormalsMethod method = RgbdNormals::RgbdNormalsMethod::RGBD_NORMALS_METHOD_FALS )
static
Python:
cv.RgbdNormals.create([, rows[, cols[, depth[, K[, window_size[, diff_threshold[, method]]]]]]]) -> retval
cv.RgbdNormals_create([, rows[, cols[, depth[, K[, window_size[, diff_threshold[, method]]]]]]]) -> retval

Creates new RgbdNormals object

Parameters
rowsthe number of rows of the depth image normals will be computed on
colsthe number of cols of the depth image normals will be computed on
depththe depth of the normals (only CV_32F or CV_64F)
Kthe calibration matrix to use
window_sizethe window size to compute the normals: can only be 1,3,5 or 7
diff_thresholdthreshold in depth difference, used in LINEMOD algirithm
methodone of the methods to use: RGBD_NORMALS_METHOD_SRI, RGBD_NORMALS_METHOD_FALS
Here is the call graph for this function:

◆ getCols()

virtual int cv::RgbdNormals::getCols ( ) const
pure virtual
Python:
cv.RgbdNormals.getCols() -> retval

◆ getDepth()

virtual int cv::RgbdNormals::getDepth ( ) const
pure virtual
Python:
cv.RgbdNormals.getDepth() -> retval

◆ getK()

virtual void cv::RgbdNormals::getK ( OutputArray val) const
pure virtual
Python:
cv.RgbdNormals.getK([, val]) -> val

◆ getMethod()

virtual RgbdNormals::RgbdNormalsMethod cv::RgbdNormals::getMethod ( ) const
pure virtual
Python:
cv.RgbdNormals.getMethod() -> retval

◆ getRows()

virtual int cv::RgbdNormals::getRows ( ) const
pure virtual
Python:
cv.RgbdNormals.getRows() -> retval

◆ getWindowSize()

virtual int cv::RgbdNormals::getWindowSize ( ) const
pure virtual
Python:
cv.RgbdNormals.getWindowSize() -> retval

◆ setCols()

virtual void cv::RgbdNormals::setCols ( int val)
pure virtual
Python:
cv.RgbdNormals.setCols(val) -> None

◆ setK()

virtual void cv::RgbdNormals::setK ( InputArray val)
pure virtual
Python:
cv.RgbdNormals.setK(val) -> None

◆ setRows()

virtual void cv::RgbdNormals::setRows ( int val)
pure virtual
Python:
cv.RgbdNormals.setRows(val) -> None

◆ setWindowSize()

virtual void cv::RgbdNormals::setWindowSize ( int val)
pure virtual
Python:
cv.RgbdNormals.setWindowSize(val) -> None

The documentation for this class was generated from the following file: