OpenCV  4.6.0-dev
Open Source Computer Vision
Public Member Functions | Static Public Member Functions | List of all members
cv::dynafu::DynaFu Class Referenceabstract

#include <opencv2/rgbd/dynafu.hpp>

Public Member Functions

virtual ~DynaFu ()
 
virtual void getCloud (OutputArray points, OutputArray normals) const =0
 Gets points and normals of current 3d mesh. More...
 
virtual std::vector< Point3fgetNodesPos () const =0
 
virtual void getNormals (InputArray points, OutputArray normals) const =0
 Calculates normals for given points. More...
 
virtual const kinfu::ParamsgetParams () const =0
 Get current parameters. More...
 
virtual void getPoints (OutputArray points) const =0
 Gets points of current 3d mesh. More...
 
virtual Affine3f getPose () const =0
 Get current pose in voxel space. More...
 
virtual void marchCubes (OutputArray vertices, OutputArray edges) const =0
 
virtual void render (OutputArray image, const Matx44f &cameraPose=Matx44f::eye()) const =0
 Renders a volume into an image. More...
 
virtual void renderSurface (OutputArray depthImage, OutputArray vertImage, OutputArray normImage, bool warp=true)=0
 
virtual void reset ()=0
 Resets the algorithm. More...
 
virtual bool update (InputArray depth)=0
 Process next depth frame. More...
 

Static Public Member Functions

static Ptr< DynaFucreate (const Ptr< kinfu::Params > &_params)
 

Constructor & Destructor Documentation

◆ ~DynaFu()

virtual cv::dynafu::DynaFu::~DynaFu ( )
virtual

Member Function Documentation

◆ create()

static Ptr<DynaFu> cv::dynafu::DynaFu::create ( const Ptr< kinfu::Params > &  _params)
static
Python:
cv.dynafu.DynaFu.create(_params) -> retval
cv.dynafu.DynaFu_create(_params) -> retval

◆ getCloud()

virtual void cv::dynafu::DynaFu::getCloud ( OutputArray  points,
OutputArray  normals 
) const
pure virtual
Python:
cv.dynafu.DynaFu.getCloud([, points[, normals]]) -> points, normals

Gets points and normals of current 3d mesh.

The order of normals corresponds to order of points. The order of points is undefined.

Parameters
pointsvector of points which are 4-float vectors
normalsvector of normals which are 4-float vectors

◆ getNodesPos()

virtual std::vector<Point3f> cv::dynafu::DynaFu::getNodesPos ( ) const
pure virtual

◆ getNormals()

virtual void cv::dynafu::DynaFu::getNormals ( InputArray  points,
OutputArray  normals 
) const
pure virtual
Python:
cv.dynafu.DynaFu.getNormals(points[, normals]) -> normals

Calculates normals for given points.

Parameters
pointsinput vector of points which are 4-float vectors
normalsoutput vector of corresponding normals which are 4-float vectors

◆ getParams()

virtual const kinfu::Params& cv::dynafu::DynaFu::getParams ( ) const
pure virtual

Get current parameters.

◆ getPoints()

virtual void cv::dynafu::DynaFu::getPoints ( OutputArray  points) const
pure virtual
Python:
cv.dynafu.DynaFu.getPoints([, points]) -> points

Gets points of current 3d mesh.

The order of points is undefined.

Parameters
pointsvector of points which are 4-float vectors

◆ getPose()

virtual Affine3f cv::dynafu::DynaFu::getPose ( ) const
pure virtual

Get current pose in voxel space.

◆ marchCubes()

virtual void cv::dynafu::DynaFu::marchCubes ( OutputArray  vertices,
OutputArray  edges 
) const
pure virtual

◆ render()

virtual void cv::dynafu::DynaFu::render ( OutputArray  image,
const Matx44f cameraPose = Matx44f::eye() 
) const
pure virtual
Python:
cv.dynafu.DynaFu.render([, image[, cameraPose]]) -> image

Renders a volume into an image.

Renders a 0-surface of TSDF using Phong shading into a CV_8UC4 Mat. Light pose is fixed in DynaFu params.

Parameters
imageresulting image
cameraPosepose of camera to render from. If empty then render from current pose which is a last frame camera pose.

◆ renderSurface()

virtual void cv::dynafu::DynaFu::renderSurface ( OutputArray  depthImage,
OutputArray  vertImage,
OutputArray  normImage,
bool  warp = true 
)
pure virtual

◆ reset()

virtual void cv::dynafu::DynaFu::reset ( )
pure virtual
Python:
cv.dynafu.DynaFu.reset() -> None

Resets the algorithm.

Clears current model and resets a pose.

◆ update()

virtual bool cv::dynafu::DynaFu::update ( InputArray  depth)
pure virtual
Python:
cv.dynafu.DynaFu.update(depth) -> retval

Process next depth frame.

Integrates depth into voxel space with respect to its ICP-calculated pose. Input image is converted to CV_32F internally if has another type.

Parameters
depthone-channel image which size and depth scale is described in algorithm's parameters
Returns
true if succeeded to align new frame with current scene, false if opposite

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