OpenCV  4.10.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  vertices,
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() -> None

重置算法。

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

◆ update()

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

处理下一个深度帧。

根据其 ICP 计算的姿态将深度集成到体素空间中。如果输入图像具有其他类型,则在内部将其转换为 CV_32F。

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

此类的文档由以下文件生成