OpenCV  4.10.0
开源计算机视觉
正在加载...
正在搜索...
无匹配
公共成员函数 | 静态公共成员函数 | 保护成员函数 | 保护属性 | 所有成员列表
cv::rgbd::ICPOdometry 类参考

#include <opencv2/rgbd/depth.hpp>

cv::rgbd::ICPOdometry 的协作图

公共成员函数

 ICPOdometry ()
 
 ICPOdometry (const Mat &cameraMatrix, float minDepth=Odometry::DEFAULT_MIN_DEPTH(), float maxDepth=Odometry::DEFAULT_MAX_DEPTH(), float maxDepthDiff=Odometry::DEFAULT_MAX_DEPTH_DIFF(), float maxPointsPart=Odometry::DEFAULT_MAX_POINTS_PART(), const std::vector< int > &iterCounts=std::vector< int >(), int transformType=Odometry::RIGID_BODY_MOTION)
 
cv::Mat getCameraMatrix () const CV_OVERRIDE
 
cv::Mat getIterationCounts () const
 
double getMaxDepth () const
 
double getMaxDepthDiff () const
 
double getMaxPointsPart () const
 
double getMaxRotation () const
 
double getMaxTranslation () const
 
double getMinDepth () const
 
Ptr< RgbdNormalsgetNormalsComputer () const
 
int getTransformType () const CV_OVERRIDE
 
virtual Size prepareFrameCache (Ptr< OdometryFrame > &frame, int cacheType) const CV_OVERRIDE
 
void setCameraMatrix (const cv::Mat &val) CV_OVERRIDE
 
void setIterationCounts (const cv::Mat &val)
 
void setMaxDepth (double val)
 
void setMaxDepthDiff (double val)
 
void setMaxPointsPart (double val)
 
void setMaxRotation (double val)
 
void setMaxTranslation (double val)
 
void setMinDepth (double val)
 
void setTransformType (int val) CV_OVERRIDE
 
- 从 cv::rgbd::Odometry 继承的公共成员函数
bool compute (const Mat &srcImage, const Mat &srcDepth, const Mat &srcMask, const Mat &dstImage, const Mat &dstDepth, const Mat &dstMask, OutputArray Rt, const Mat &initRt=Mat()) const
 
bool compute (Ptr< OdometryFrame > &srcFrame, Ptr< OdometryFrame > &dstFrame, OutputArray Rt, const Mat &initRt=Mat()) const
 
- 从 cv::Algorithm 继承的公共成员函数
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 清除算法状态。
 
virtual bool empty () const
 如果 Algorithm 为空(例如,在最初或读取失败后),返回 true。
 
virtual String getDefaultName () const
 
virtual void read (const FileNode &fn)
 从文件存储中读取算法参数。
 
virtual void save (const String &filename) const
 
void write (const FileStorage &fs, const String &name=String()) const
 
virtual void write (FileStorage &fs) const
 将算法参数存储在文件存储中。
 
void write (FileStorage &fs, const String &name) const
 

静态公共成员函数

static Ptr< ICPOdometrycreate (const Mat &cameraMatrix=Mat(), float minDepth=Odometry::DEFAULT_MIN_DEPTH(), float maxDepth=Odometry::DEFAULT_MAX_DEPTH(), float maxDepthDiff=Odometry::DEFAULT_MAX_DEPTH_DIFFmaxPointsPart=Odometry::DEFAULT_MAX_POINTS_PART(), const std::vector< int > &iterCounts=std::vector< int >(), int transformType=Odometry::RIGID_BODY_MOTION)
 
- 从 cv::rgbd::Odometry 继承的静态公共成员函数
静态 Ptr< Odometrycreate (const String &odometryType)
 
静态 float DEFAULT_MAX_DEPTH ()
 
静态 float DEFAULT_MAX_DEPTH_DIFF ()
 
静态 float DEFAULT_MAX_POINTS_PART ()
 
静态 float DEFAULT_MAX_ROTATION ()
 
静态 float DEFAULT_MAX_TRANSLATION ()
 
静态 float DEFAULT_MIN_DEPTH ()
 
- 从 cv::Algorithm 继承的静态公共成员函数
模板<typename _Tp >
静态 Ptr< _Tpload (const String &filename, const String &objname=String())
 从文件加载算法。
 
模板<typename _Tp >
静态 Ptr< _TploadFromString (const String &strModel, const String &objname=String())
 从字符串加载算法。
 
模板<typename _Tp >
静态 Ptr< _Tpread (const FileNode &fn)
 从文件节点读取算法。
 

保护成员函数

virtual void checkParams () const CV_OVERRIDE
 
virtual bool computeImpl (const Ptr< OdometryFrame > &srcFrame, const Ptr< OdometryFrame > &dstFrame, OutputArray Rt, const Mat &initRt) const CV_OVERRIDE
 
- 从 cv::Algorithm 继承的保护成员函数
void writeFormat (FileStorage &fs) const
 

保护属性

Mat cameraMatrix
 
Mat iterCounts
 
double maxDepth
 
double maxDepthDiff
 
double maxPointsPart
 
double maxRotation
 
double maxTranslation
 
double minDepth
 
Ptr< RgbdNormalsnormalsComputer
 
int transformType
 

额外继承成员

- 从 cv::rgbd::Odometry 继承的公共类型
枚举  {
  ROTATION = 1 ,
  TRANSLATION = 2 ,
  RIGID_BODY_MOTION = 4
}
 

详细描述

Odometry 基于论文 "KinectFusion: Real-Time Dense Surface Mapping and Tracking",Richard A. Newcombe, Andrew Fitzgibbon 等人,SIGGRAPH,2011。

构造函数 & 析构函数文档

◆ ICPOdometry() [1/2]

cv::rgbd::ICPOdometry::ICPOdometry ( )

◆ ICPOdometry() [2/2]

cv::rgbd::ICPOdometry::ICPOdometry ( const Mat cameraMatrix,
float  minDepth = Odometry::DEFAULT_MIN_DEPTH(),
float  maxDepth = Odometry::DEFAULT_MAX_DEPTH(),
float  maxDepthDiff = Odometry::DEFAULT_MAX_DEPTH_DIFF(),
float  maxPointsPart = Odometry::DEFAULT_MAX_POINTS_PART(),
const std::vector< int > &  iterCounts = std::vector< int >(),
int  transformType = Odometry::RIGID_BODY_MOTION 
)

构造函数。

参数
cameraMatrix相机矩阵
minDepth深度小于 minDepth 的像素将不会使用
maxDepth深度大于 maxDepth 的像素将不会使用
maxDepthDiff如果两个给定帧的像素之间的深度差大于 maxDepthDiff,则将过滤掉它们之间的对应关系
maxPointsPart该方法使用一个随机像素子集,大小为 frameWidth x frameHeight x pointsPart
iterCounts每个金字塔级别的迭代次数。
transformType转换类别

成员函数文档

◆ checkParams()

virtual void cv::rgbd::ICPOdometry::checkParams ( ) const
protectedvirtual

实现了 cv::rgbd::Odometry.

◆ computeImpl()

virtual bool cv::rgbd::ICPOdometry::computeImpl ( const Ptr< OdometryFrame > &  srcFrame,
const Ptr< OdometryFrame > &  dstFrame,
OutputArray  Rt,
const Mat initRt 
) const
protectedvirtual

实现了 cv::rgbd::Odometry.

◆ create()

static Ptr< ICPOdometry > cv::rgbd::ICPOdometry::create ( const Mat cameraMatrix = Mat(),
float  minDepth = Odometry::DEFAULT_MIN_DEPTH(),
float  maxDepth = Odometry::DEFAULT_MAX_DEPTH(),
float  maxDepthDiff = Odometry::DEFAULT_MAX_DEPTH_DIFF(),
float  maxPointsPart = Odometry::DEFAULT_MAX_POINTS_PART(),
const std::vector< int > &  iterCounts = std::vector< int >(),
int  transformType = Odometry::RIGID_BODY_MOTION 
)
static
Python
cv.rgbd.ICPOdometry.create([, cameraMatrix[, minDepth[, maxDepth[, maxDepthDiff[, maxPointsPart[, iterCounts[, transformType]]]]]]]) -> retval
cv.rgbd.ICPOdometry_create([, cameraMatrix[, minDepth[, maxDepth[, maxDepthDiff[, maxPointsPart[, iterCounts[, transformType]]]]]]]) -> retval

◆ getCameraMatrix()

cv::Mat cv::rgbd::ICPOdometry::getCameraMatrix ( ) const
inlinevirtual
Python
cv.rgbd.ICPOdometry.getCameraMatrix() -> retval

◆ getIterationCounts()

cv::Mat cv::rgbd::ICPOdometry::getIterationCounts ( ) const
inline
Python
cv.rgbd.ICPOdometry.getIterationCounts() -> retval

◆ getMaxDepth()

double cv::rgbd::ICPOdometry::getMaxDepth ( ) const
inline
Python
cv.rgbd.ICPOdometry.getMaxDepth() -> retval

◆ getMaxDepthDiff()

double cv::rgbd::ICPOdometry::getMaxDepthDiff ( ) const
inline
Python
cv.rgbd.ICPOdometry.getMaxDepthDiff() -> retval

◆ getMaxPointsPart()

double cv::rgbd::ICPOdometry::getMaxPointsPart ( ) const
inline
Python
cv.rgbd.ICPOdometry.getMaxPointsPart() -> retval

◆ getMaxRotation()

double cv::rgbd::ICPOdometry::getMaxRotation ( ) const
inline
Python
cv.rgbd.ICPOdometry.getMaxRotation() -> retval

◆ getMaxTranslation()

double cv::rgbd::ICPOdometry::getMaxTranslation ( ) const
inline
Python
cv.rgbd.ICPOdometry.getMaxTranslation() -> retval

◆ getMinDepth()

double cv::rgbd::ICPOdometry::getMinDepth ( ) const
inline
Python
cv.rgbd.ICPOdometry.getMinDepth() -> retval

◆ getNormalsComputer()

Ptr< RgbdNormals > cv::rgbd::ICPOdometry::getNormalsComputer ( ) const
inline
Python
cv.rgbd.ICPOdometry.getNormalsComputer() -> retval

◆ getTransformType()

int cv::rgbd::ICPOdometry::getTransformType ( ) const
inlinevirtual
Python
cv.rgbd.ICPOdometry.getTransformType() -> retval

◆ prepareFrameCache()

virtual Size cv::rgbd::ICPOdometry::prepareFrameCache ( Ptr< OdometryFrame > &  frame,
int  cacheType 
) const
virtual
Python
cv.rgbd.ICPOdometry.prepareFrameCache(frame, cacheType) -> retval

为帧准备缓存。该函数检查预计算/传递的数据(如果此数据不满足则抛出错误),并计算为帧所需的剩余缓存数据。返回的大小是准备好的帧的分辨率。

参数
frame将处理该帧的里程计。
cacheType缓存类型:CACHE_SRC、CACHE_DST或CACHE_ALL。

cv::rgbd::Odometry重写。

◆ setCameraMatrix()

void cv::rgbd::ICPOdometry::setCameraMatrix ( const cv::Mat val)
inlinevirtual
Python
cv.rgbd.ICPOdometry.setCameraMatrix(val) -> None

◆ setIterationCounts()

void cv::rgbd::ICPOdometry::setIterationCounts ( const cv::Mat val)
inline
Python
cv.rgbd.ICPOdometry.setIterationCounts(val) -> None

◆ setMaxDepth()

void cv::rgbd::ICPOdometry::setMaxDepth ( double  val)
inline
Python
cv.rgbd.ICPOdometry.setMaxDepth(val) -> None

◆ setMaxDepthDiff()

void cv::rgbd::ICPOdometry::setMaxDepthDiff ( double  val)
inline
Python
cv.rgbd.ICPOdometry.setMaxDepthDiff(val) -> None

◆ setMaxPointsPart()

void cv::rgbd::ICPOdometry::setMaxPointsPart ( double  val)
inline
Python
cv.rgbd.ICPOdometry.setMaxPointsPart(val) -> None

◆ setMaxRotation()

void cv::rgbd::ICPOdometry::setMaxRotation ( double  val)
inline
Python
cv.rgbd.ICPOdometry.setMaxRotation(val) -> None

◆ setMaxTranslation()

void cv::rgbd::ICPOdometry::setMaxTranslation ( double  val)
inline
Python
cv.rgbd.ICPOdometry.setMaxTranslation(val) -> None

◆ setMinDepth()

void cv::rgbd::ICPOdometry::setMinDepth ( double  val)
inline
Python
cv.rgbd.ICPOdometry.setMinDepth(val) -> None

◆ setTransformType()

void cv::rgbd::ICPOdometry::setTransformType ( int  val)
inlinevirtual
Python
cv.rgbd.ICPOdometry.setTransformType(val) -> None

成员数据文档

◆ cameraMatrix

Mat cv::rgbd::ICPOdometry::cameraMatrix
protected

◆ iterCounts

Mat cv::rgbd::ICPOdometry::iterCounts
protected

◆ maxDepth

double cv::rgbd::ICPOdometry::maxDepth
protected

◆ maxDepthDiff

double cv::rgbd::ICPOdometry::maxDepthDiff
protected

◆ maxPointsPart

double cv::rgbd::ICPOdometry::maxPointsPart
protected

◆ maxRotation

double cv::rgbd::ICPOdometry::maxRotation
protected

◆ maxTranslation

double cv::rgbd::ICPOdometry::maxTranslation
protected

◆ minDepth

double cv::rgbd::ICPOdometry::minDepth
protected

◆ normalsComputer

Ptr<RgbdNormals> cv::rgbd::ICPOdometry::normalsComputer
mutableprotected

◆ transformType

int cv::rgbd::ICPOdometry::transformType
protected

该类的文档是从以下文件生成的