OpenCV 4.12.0
开源计算机视觉
加载中...
搜索中...
无匹配项
cv::stereo::QuasiDenseStereo 类参考abstract

包含 Quasi Dense Stereo 计算所需方法的类。 更多...

#include <opencv2/stereo/quasi_dense_stereo.hpp>

cv::stereo::QuasiDenseStereo 的协作图

公共成员函数

virtual ~QuasiDenseStereo ()=0
 析构函数 用于释放此类中矩阵和向量分配的所有内存的方法。
 
virtual void getDenseMatches (std::vector< MatchQuasiDense > &denseMatches)=0
 获取密集对应点。
 
virtual cv::Mat getDisparity ()=0
 基于在“process”方法中找到的对应关系计算并返回视差图。
 
virtual cv::Point2f getMatch (const int x, const int y)=0
 指定左图像中的像素坐标,并获取其在右图像中的对应位置。
 
virtual void getSparseMatches (std::vector< MatchQuasiDense > &sMatches)=0
 获取稀疏对应点。
 
virtual int loadParameters (cv::String filepath)=0
 加载包含类配置参数的文件。
 
virtual void process (const cv::Mat &imgLeft, const cv::Mat &imgRight)=0
 算法的主要过程。此方法计算稀疏种子,然后对其进行密集化。
 
virtual int saveParameters (cv::String filepath)=0
 保存包含该类当前设置的所有配置参数的文件。
 

静态公共成员函数

static cv::Ptr< QuasiDenseStereocreate (cv::Size monoImgSize, cv::String paramFilepath=cv::String())
 

公共属性

PropagationParameters Param
 

详细描述

包含 Quasi Dense Stereo 计算所需方法的类。

此模块包含执行准密集立体匹配的代码。该方法最初从基于立体图像对上的特征匹配的稀疏 3D 重建开始,随后将结构传播到相邻图像区域。为了获得初始种子对应关系,该算法在立体图像对的左图中定位 Shi 和 Tomashi 特征,然后使用金字塔 Lucas-Kanade 在右图中跟踪它们。为了密集化稀疏对应关系,该算法在每个种子对周围的小块中计算零均值归一化互相关 (ZNCC),并将其用作每个匹配的质量指标。在此代码中,我们引入了一种自定义结构来存储对应关系的位置和 ZNCC 值,称为“Match”。种子匹配存储在根据其 ZNCC 值排序的优先级队列中,从而可以轻松获得最佳质量的匹配。该算法弹出匹配项并使用它们来提取它们周围的新匹配项。这是通过考虑每个种子周围的一个小邻域并检索高于某个纹理阈值且先前未计算的对应关系来完成的。新的匹配项存储在种子优先级队列中,并用作种子。当无法检索到其他匹配项时,传播过程结束。

另请参见
此代码代表 [256] 中介绍的工作。如果此代码对您的工作有用,请引用 [256]

此外,原始增长方案的想法在 [162] 中描述

构造函数 & 析构函数文档

◆ ~QuasiDenseStereo()

virtual cv::stereo::QuasiDenseStereo::~QuasiDenseStereo ( )
纯虚函数

析构函数 用于释放此类中矩阵和向量分配的所有内存的方法。

成员函数文档

◆ create()

static cv::Ptr< QuasiDenseStereo > cv::stereo::QuasiDenseStereo::create ( cv::Size monoImgSize,
cv::String paramFilepath = cv::String() )
static
Python
cv.stereo.QuasiDenseStereo.create(monoImgSize[, paramFilepath]) -> retval
cv.stereo.QuasiDenseStereo_create(monoImgSize[, paramFilepath]) -> retval

◆ getDenseMatches()

virtual void cv::stereo::QuasiDenseStereo::getDenseMatches ( std::vector< MatchQuasiDense > & denseMatches)
纯虚函数
Python
cv.stereo.QuasiDenseStereo.getDenseMatches() -> denseMatches

获取密集对应点。

参数
[输出]denseMatches包含所有密集匹配项的向量。
注意
该方法清除 denseMatches 向量。
sMatches 向量中返回的 Match 元素不使用 corr 成员。

◆ getDisparity()

virtual cv::Mat cv::stereo::QuasiDenseStereo::getDisparity ( )
纯虚函数
Python
cv.stereo.QuasiDenseStereo.getDisparity() -> retval

基于在“process”方法中找到的对应关系计算并返回视差图。

注意
默认级别为 50
返回
cv::Mat 包含灰度视差图像。
另请参见
computeDisparity
quantizeDisparity

◆ getMatch()

virtual cv::Point2f cv::stereo::QuasiDenseStereo::getMatch ( const int x,
const int y )
纯虚函数
Python
cv.stereo.QuasiDenseStereo.getMatch(x, y) -> retval

指定左图像中的像素坐标,并获取其在右图像中的对应位置。

参数
[输入]x左图像通道中的 x 像素坐标。
[输入]y左图像通道中的 y 像素坐标。
返回值
cv::Point(x,y)右图像中对应像素的位置。
cv::Point(0,0)(NO_MATCH) 如果在右图中找不到左图中指定像素位置的匹配项。
注意
此方法应始终在 process 之后调用,否则匹配将不正确。

◆ getSparseMatches()

virtual void cv::stereo::QuasiDenseStereo::getSparseMatches ( std::vector< MatchQuasiDense > & sMatches)
纯虚函数
Python
cv.stereo.QuasiDenseStereo.getSparseMatches() -> sMatches

获取稀疏对应点。

参数
[输出]sMatches包含所有稀疏对应关系的向量。
注意
该方法清除 sMatches 向量。
sMatches 向量中返回的 Match 元素不使用 corr 成员。

◆ loadParameters()

virtual int cv::stereo::QuasiDenseStereo::loadParameters ( cv::String filepath)
纯虚函数
Python
cv.stereo.QuasiDenseStereo.loadParameters(filepath) -> retval

加载包含类配置参数的文件。

参数
[输入]filepath包含配置参数的 .YAML 文件的位置。
注意
默认值是一个空字符串,在这种情况下,将加载默认参数。
返回值
1如果路径不为空,并且程序已成功加载参数。
0如果路径为空,并且程序已加载默认参数。
-1如果文件位置无效,或者程序无法打开文件并从 defaults.hpp 加载默认参数。
注意
该方法在构造函数中自动调用并配置类。
加载不同的参数将对输出产生影响。这对于视频处理中的调整很有用。
另请参见
loadParameters

◆ process()

virtual void cv::stereo::QuasiDenseStereo::process ( const cv::Mat & imgLeft,
const cv::Mat & imgRight )
纯虚函数
Python
cv.stereo.QuasiDenseStereo.process(imgLeft, imgRight) ->

算法的主要过程。此方法计算稀疏种子,然后对其进行密集化。

最初,输入图像被转换为灰度,然后调用 sparseMatching 方法以获得稀疏立体。最后,调用 quasiDenseMatching 以密集化相应的点。

参数
[输入]imgLeft立体图像对的左通道。
[输入]imgRight立体图像对的右通道。
注意
如果输入图像是彩色的,则该方法假定为 BGR 并将它们转换为灰度。
另请参见
sparseMatching
quasiDenseMatching

◆ saveParameters()

virtual int cv::stereo::QuasiDenseStereo::saveParameters ( cv::String filepath)
纯虚函数
Python
cv.stereo.QuasiDenseStereo.saveParameters(filepath) -> retval

保存包含该类当前设置的所有配置参数的文件。

参数
[输入]filepath用于存储参数文件的位置。
注意
调用此方法时不带参数会将类参数存储到根项目文件夹中名为“qds_parameters.yaml”的文件中。
此方法可用于生成用于调整类的模板文件。
另请参见
loadParameters

成员数据文档

◆ Param

PropagationParameters cv::stereo::QuasiDenseStereo::Param

此类文档由以下文件生成