OpenCV 4.12.0
开源计算机视觉
加载中...
搜索中...
无匹配项
cv::dynafu::DynaFu 类参考抽象类

#include <opencv2/rgbd/dynafu.hpp>

cv::dynafu::DynaFu 的协作图

公共成员函数

virtual ~DynaFu ()
 
virtual void getCloud (OutputArray points, OutputArray normals) const =0
 获取当前 3d 网格的点和法线。
 
virtual std::vector< Point3fgetNodesPos () const =0
 
virtual void getNormals (InputArray points, OutputArray normals) const =0
 计算给定点的法线。
 
virtual const kinfu::ParamsgetParams () const =0
 获取当前参数。
 
virtual void getPoints (OutputArray points) const =0
 获取当前 3D 网格的点。
 
virtual Affine3f getPose () const =0
 获取体素空间中的当前姿态。
 
virtual void marchCubes (OutputArray vertices, OutputArray edges) const =0
 
virtual void render (OutputArray image, const Matx44f &cameraPose=Matx44f::eye()) const =0
 将体数据渲染为图像。
 
virtual void renderSurface (OutputArray depthImage, OutputArray vertImage, OutputArray normImage, bool warp=true)=0
 
virtual void reset ()=0
 重置算法。
 
virtual bool update (InputArray depth)=0
 处理下一深度帧。
 

静态公共成员函数

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

构造函数 & 析构函数文档

◆ ~DynaFu()

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

成员函数文档

◆ 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
纯虚函数
Python
cv.dynafu.DynaFu.getCloud([, points[, normals]]) -> points, normals

获取当前 3d 网格的点和法线。

法线的顺序对应于点的顺序。点的顺序未定义。

参数
points点向量,为 4 浮点向量
normals法线向量,为 4 浮点向量

◆ getNodesPos()

virtual std::vector< Point3f > cv::dynafu::DynaFu::getNodesPos ( ) const
纯虚函数

◆ getNormals()

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

计算给定点的法线。

参数
points输入点向量,为 4 浮点向量
normals输出对应法线向量,为 4 浮点向量

◆ getParams()

virtual const kinfu::Params & cv::dynafu::DynaFu::getParams ( ) const
纯虚函数

获取当前参数。

◆ getPoints()

virtual void cv::dynafu::DynaFu::getPoints ( OutputArray points) const
纯虚函数
Python
cv.dynafu.DynaFu.getPoints([, points]) -> points

获取当前 3D 网格的点。

点的顺序未定义。

参数
points点向量,为 4 浮点向量

◆ getPose()

virtual Affine3f cv::dynafu::DynaFu::getPose ( ) const
纯虚函数

获取体素空间中的当前姿态。

◆ marchCubes()

virtual void cv::dynafu::DynaFu::marchCubes ( OutputArray 顶点,
OutputArray edges ) const
纯虚函数

◆ render()

virtual void cv::dynafu::DynaFu::render ( OutputArray image,
const Matx44f & cameraPose = Matx44f::eye() ) const
纯虚函数
Python
cv.dynafu.DynaFu.render([, image[, cameraPose]]) -> image

将体数据渲染为图像。

使用 Phong 着色将 TSDF 的 0 表面渲染为 CV_8UC4 Mat。光照姿态固定在 DynaFu 参数中。

参数
image结果图像
cameraPose从中渲染的相机姿态。如果为空,则从当前姿态渲染,当前姿态是最后一帧相机姿态。

◆ renderSurface()

virtual void cv::dynafu::DynaFu::renderSurface ( OutputArray depthImage,
OutputArray vertImage,
OutputArray normImage,
bool warp = true )
纯虚函数

◆ reset()

virtual void cv::dynafu::DynaFu::reset ( )
纯虚函数
Python
cv.dynafu.DynaFu.reset() ->

重置算法。

清除当前模型并重置姿态。

◆ update()

virtual bool cv::dynafu::DynaFu::update ( InputArray 深度)
纯虚函数
Python
cv.dynafu.DynaFu.update(深度) -> retval

处理下一深度帧。

将深度按照其 ICP 计算出的姿态积分到体素空间中。如果输入图像具有另一种类型,则在内部转换为 CV_32F。

参数
深度单通道图像,其大小和深度比例在算法参数中描述
返回
如果成功对齐新帧与当前场景,则为 true,如果相反,则为 false

此类文档由以下文件生成