#include <opencv2/rgbd/depth.hpp>
|
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 |
|
| 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 |
|
◆ 匿名枚举
变换类别
枚举器 |
---|
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]
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()
◆ 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 返回值 |
◆ 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 |
此类的文档是从以下文件生成的: