OpenCV 4.11.0
开源计算机视觉
加载中…
搜索中…
无匹配项
cv::rgbd::Odometry 类参考抽象类

#include <opencv2/rgbd/depth.hpp>

cv::rgbd::Odometry 协作图

公共类型

枚举 {
  ROTATION(旋转) = 1 ,
  TRANSLATION(平移) = 2 ,
  RIGID_BODY_MOTION(刚体运动) = 4
}
 

公共成员函数

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
 
virtual cv::Mat getCameraMatrix () const =0
 
virtual int getTransformType () const =0
 
virtual Size prepareFrameCache (Ptr< OdometryFrame > &frame, int cacheType) const
 
virtual void setCameraMatrix (const cv::Mat &val)=0
 
virtual void setTransformType (int val)=0
 
- 从 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 Ptr< FileStorage > &fs, const String &name=String()) const
 
virtual void write (FileStorage &fs) const
 将算法参数存储到文件存储中。
 
void write (FileStorage &fs, const String &name) const
 

静态公共成员函数

static Ptr< Odometrycreate (const String &odometryType)
 
static float DEFAULT_MAX_DEPTH(默认最大深度) ()
 
static float DEFAULT_MAX_DEPTH_DIFF(默认最大深度差) ()
 
static float DEFAULT_MAX_POINTS_PART(默认最大点数部分) ()
 
static float DEFAULT_MAX_ROTATION(默认最大旋转) ()
 
static float DEFAULT_MAX_TRANSLATION(默认最大平移) ()
 
static float DEFAULT_MIN_DEPTH(默认最小深度) ()
 
- 从 cv::Algorithm 继承的静态公共成员函数
template<typename _Tp >
static Ptr< _Tpload (const String &filename, const String &objname=String())
 从文件中加载算法。
 
template<typename _Tp >
static Ptr< _TploadFromString (const String &strModel, const String &objname=String())
 从字符串加载算法。
 
template<typename _Tp >
static Ptr< _Tpread (const FileNode &fn)
 从文件节点读取算法。
 

受保护成员函数

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

详细描述

里程计计算的基类。

成员枚举文档

◆ 匿名枚举

匿名枚举

变换类别

枚举器
ROTATION(旋转) 
TRANSLATION(平移) 
RIGID_BODY_MOTION(刚体运动) 

成员函数文档

◆ checkParams()

virtual void cv::rgbd::Odometry::checkParams ( ) const
受保护纯虚函数

◆ compute() [1/2]

bool cv::rgbd::Odometry::compute ( 常量 Mat & srcImage 源图像,
常量 Mat & srcDepth 源深度图,
常量 Mat & srcMask 源掩码,
常量 Mat & dstImage 目标图像,
常量 Mat & dstDepth 目标深度图,
常量 Mat & dstMask 目标掩码,
OutputArray 输出数组 Rt 变换矩阵,
常量 Mat & initRt = Mat() ) const
Python
cv.rgbd.Odometry.compute(srcImage, srcDepth, srcMask, dstImage, dstDepth, dstMask[, Rt[, initRt]]) -> retval, Rt 返回值,变换矩阵
cv.rgbd.Odometry.compute2(srcFrame, dstFrame[, Rt[, initRt]]) -> retval, Rt 返回值,变换矩阵

计算从源帧到目标帧的变换的方法。一些里程计算法不使用帧的一些数据(例如,ICP不使用图像)。在这种情况下,相应的参数可以设置为空的Mat。如果所有内部计算都是可能的(例如,有足够的对应点,方程组有解等等),并且结果变换满足Odometry继承者实现提供的某些测试(例如,最大平移和旋转的阈值),则该方法返回true。

参数
srcImage 源图像源帧的图像数据 (CV_8UC1)
srcDepth 源深度图源帧的深度数据 (CV_32FC1, 以米为单位)
srcMask 源掩码设置要从源帧中使用的像素的掩码 (CV_8UC1)
dstImage 目标图像目标帧的图像数据 (CV_8UC1)
dstDepth 目标深度图目标帧的深度数据 (CV_32FC1, 以米为单位)
dstMask 目标掩码设置要从目标帧中使用的像素的掩码 (CV_8UC1)
Rt 变换矩阵从源帧到目标帧的结果变换(刚体运动):dst_p = Rt * src_p,其中dst_p是目标帧中的齐次点,src_p是源帧中的齐次点,Rt是CV_64FC1类型的4x4矩阵。
initRt 初始变换矩阵从源帧到目标帧的初始变换(可选)

◆ compute() [2/2]

bool cv::rgbd::Odometry::compute ( Ptr< OdometryFrame > & srcFrame 源帧,
Ptr< OdometryFrame > & dstFrame 目标帧,
OutputArray 输出数组 Rt 变换矩阵,
常量 Mat & initRt = Mat() ) const
Python
cv.rgbd.Odometry.compute(srcImage, srcDepth, srcMask, dstImage, dstDepth, dstMask[, Rt[, initRt]]) -> retval, Rt 返回值,变换矩阵
cv.rgbd.Odometry.compute2(srcFrame, dstFrame[, Rt[, initRt]]) -> retval, Rt 返回值,变换矩阵

另一种计算从源帧到目标帧的变换的方法。它旨在节省计算帧数据(图像金字塔、法线等)。

◆ computeImpl()

virtual bool cv::rgbd::Odometry::computeImpl ( const Ptr< OdometryFrame > & srcFrame 源帧,
const Ptr< OdometryFrame > & dstFrame 目标帧,
OutputArray 输出数组 Rt 变换矩阵,
常量 Mat & initRt ) const
受保护纯虚函数

◆ create()

static Ptr< Odometry > cv::rgbd::Odometry::create ( const String & odometryType 里程计类型)
静态方法
Python
cv.rgbd.Odometry.create(odometryType 里程计类型) -> retval 返回值
cv.rgbd.Odometry_create(odometryType 里程计类型) -> retval 返回值

◆ DEFAULT_MAX_DEPTH()

static float cv::rgbd::Odometry::DEFAULT_MAX_DEPTH ( )
inlinestatic
Python
cv.rgbd.Odometry.DEFAULT_MAX_DEPTH() -> retval 返回值

◆ DEFAULT_MAX_DEPTH_DIFF()

static float cv::rgbd::Odometry::DEFAULT_MAX_DEPTH_DIFF ( )
inlinestatic
Python
cv.rgbd.Odometry.DEFAULT_MAX_DEPTH_DIFF() -> retval 返回值

◆ DEFAULT_MAX_POINTS_PART()

static float cv::rgbd::Odometry::DEFAULT_MAX_POINTS_PART ( )
inlinestatic
Python
cv.rgbd.Odometry.DEFAULT_MAX_POINTS_PART() -> retval 返回值

◆ DEFAULT_MAX_ROTATION()

static float cv::rgbd::Odometry::DEFAULT_MAX_ROTATION ( )
inlinestatic
Python
cv.rgbd.Odometry.DEFAULT_MAX_ROTATION() -> retval 返回值

◆ DEFAULT_MAX_TRANSLATION()

static float cv::rgbd::Odometry::DEFAULT_MAX_TRANSLATION ( )
inlinestatic
Python
cv.rgbd.Odometry.DEFAULT_MAX_TRANSLATION() -> retval 返回值

◆ DEFAULT_MIN_DEPTH()

static float cv::rgbd::Odometry::DEFAULT_MIN_DEPTH ( )
inlinestatic
Python
cv.rgbd.Odometry.DEFAULT_MIN_DEPTH() -> retval 返回值

◆ getCameraMatrix()

virtual cv::Mat cv::rgbd::Odometry::getCameraMatrix ( ) const
纯虚函数
Python
cv.rgbd.Odometry.getCameraMatrix() -> retval 返回值

◆ getTransformType()

virtual int cv::rgbd::Odometry::getTransformType ( ) const
纯虚函数
Python
cv.rgbd.Odometry.getTransformType() -> retval 返回值

◆ prepareFrameCache()

virtual Size cv::rgbd::Odometry::prepareFrameCache ( Ptr< OdometryFrame > & frame 帧,
int cacheType ) const
虚函数
Python
cv.rgbd.Odometry.prepareFrameCache(frame, cacheType) -> retval 返回值

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

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

cv::rgbd::FastICPOdometrycv::rgbd::ICPOdometrycv::rgbd::RgbdICPOdometrycv::rgbd::RgbdOdometry中重新实现。

◆ setCameraMatrix()

virtual void cv::rgbd::Odometry::setCameraMatrix ( const cv::Mat & val 值)
纯虚函数
Python
cv.rgbd.Odometry.setCameraMatrix(val 值) -> None

◆ setTransformType()

virtual void cv::rgbd::Odometry::setTransformType ( int val 值)
纯虚函数
Python
cv.rgbd.Odometry.setTransformType(val 值) -> None

此类的文档是从以下文件生成的: