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

此類文件由以下檔案生成