OpenCV  4.10.0
开源计算机视觉库
正在加载...
正在搜索...
无匹配项
| 公共成员函数 | 静态公共成员函数 | 受保护的成员函数 | 所有成员列表
cv::line_descriptor::BinaryDescriptor 类参考

该类实现了线检测和二进制描述符计算的功能。 更多...

#include <opencv2/line_descriptor/descriptor.hpp>

cv::line_descriptor::BinaryDescriptor 的协作图

struct  Params
 BinaryDescriptor 参数列表: 更多...
 

公共成员函数

 BinaryDescriptor (const BinaryDescriptor::Params &parameters=BinaryDescriptor::Params())
 构造函数。
 
 ~BinaryDescriptor ()
 
void compute (const Mat &image, std::vector< KeyLine > &keylines, Mat &descriptors, bool returnFloatDescr=false) const
 需要描述符计算。
 
void compute (const std::vector< Mat > &images, std::vector< std::vector< KeyLine > > &keylines, std::vector< Mat > &descriptors, bool returnFloatDescr=false) const
 
int defaultNorm () const
 
int descriptorSize () const
 返回描述符大小。
 
int descriptorType () const
 返回数据类型。
 
void detect (const Mat &image, std::vector< KeyLine > &keypoints, const Mat &mask=Mat())
 需要线检测。
 
void detect (const std::vector< Mat > &images, std::vector< std::vector< KeyLine > > &keylines, const std::vector< Mat > &masks=std::vector< Mat >()) const
 
int getNumOfOctaves ()
 获取当前的八度数量。
 
int getReductionRatio ()
 获取当前的缩减比率(用于高斯金字塔)
 
int getWidthOfBand ()
 获取当前的带宽度。
 
virtual void operator() (InputArray image, InputArray mask, std::vector< KeyLine > &keylines, OutputArray descriptors, bool useProvidedKeyLines=false, bool returnFloatDescr=false) const
 定义操作符 '()' 以按顺序执行 KeyLines 的检测和描述符的计算。
 
virtual void read (const cv::FileNode &fn) CV_OVERRIDE
 FileNode 对象中读取参数并存储它们。
 
void setNumOfOctaves (int octaves)
 设置八度数量。
 
void setReductionRatio (int rRatio)
 设置缩减比率(用于高斯金字塔)
 
void setWidthOfBand (int width)
 设置带宽度。
 
virtual void write (cv::FileStorage &fs) const CV_OVERRIDE
 将参数存储到 FileStorage 对象。
 
- 从 cv::Algorithm 继承的公共成员函数
 Algorithm ()
 
virtual ~Algorithm ()
 
virtual void clear ()
 清除算法状态。
 
virtual bool empty () const
 如果 Algorithm 为空(例如,在最开始或读取失败后),则返回 true。
 
virtual String getDefaultName () const
 
virtual void save (const String &filename) const
 
void write (const Ptr< FileStorage > &fs, const String &name=String()) const
 
void write (FileStorage &fs, const String &name) const
 

静态公共成员函数

static Ptr< BinaryDescriptorcreateBinaryDescriptor ()
 使用默认参数(或提供的参数)创建一个 BinaryDescriptor 对象,并返回指向它的智能指针。
 
static Ptr< BinaryDescriptorcreateBinaryDescriptor (Params parameters)
 
- 从 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 computeImpl (const Mat &imageSrc, std::vector< KeyLine > &keylines, Mat &descriptors, bool returnFloatDescr, bool useDetectionData) const
 
virtual void detectImpl (const Mat &imageSrc, std::vector< KeyLine > &keylines, const Mat &mask=Mat()) const
 
- 从 cv::Algorithm 继承的受保护的成员函数
void writeFormat (FileStorage &fs) const
 

详细描述

该类实现了线检测和二进制描述符计算的功能。

类的接口主要基于经典检测器和提取器的接口,例如 Feature2d 的 特征检测和描述描述符匹配器。有关线的检索信息存储在 line_descriptor::KeyLine 对象中。

构造函数和析构函数文档

◆ BinaryDescriptor()

cv::line_descriptor::BinaryDescriptor::BinaryDescriptor ( const BinaryDescriptor::Params parameters = BinaryDescriptor::Params())

构造函数。

参数
parameters配置参数 BinaryDescriptor::Params

如果未提供任何参数,构造函数将设置默认值(请参阅上一节代码片段中的注释)。强烈建议使用默认值。

◆ ~BinaryDescriptor()

cv::line_descriptor::BinaryDescriptor::~BinaryDescriptor ( )

析构函数

成员函数文档

◆ compute() [1/2]

void cv::line_descriptor::BinaryDescriptor::compute ( const Mat image,
std::vector< KeyLine > &  keylines,
Mat descriptors,
bool  returnFloatDescr = false 
) const
Python
cv.line_descriptor.BinaryDescriptor.compute(image, keylines[, descriptors[, returnFloatDescr]]) -> keylines, descriptors

需要描述符计算。

参数
image输入图像
keylines包含需要计算描述符的线的向量
descriptors
returnFloatDescr标志(设置为 true 时,将返回原始的非二进制描述符)

◆ compute() [2/2]

void cv::line_descriptor::BinaryDescriptor::compute ( const std::vector< Mat > &  images,
std::vector< std::vector< KeyLine > > &  keylines,
std::vector< Mat > &  descriptors,
bool  returnFloatDescr = false 
) const
Python
cv.line_descriptor.BinaryDescriptor.compute(image, keylines[, descriptors[, returnFloatDescr]]) -> keylines, descriptors

这是一个重载成员函数,为了方便使用。它与上面的函数不同,仅在接受的参数上有所不同。

参数
images输入图像
keylines包含用于计算描述符的线的向量集
descriptors
returnFloatDescr标志(设置为 true 时,将返回原始的非二进制描述符)

◆ computeImpl()

virtual void cv::line_descriptor::BinaryDescriptor::computeImpl ( const Mat imageSrc,
std::vector< KeyLine > &  keylines,
Mat descriptors,
bool  returnFloatDescr,
bool  useDetectionData 
) const
protectedvirtual

描述符计算的实现

◆ createBinaryDescriptor() [1/2]

static Ptr< BinaryDescriptor > cv::line_descriptor::BinaryDescriptor::createBinaryDescriptor ( )
static
Python
cv.line_descriptor.BinaryDescriptor.createBinaryDescriptor() -> retval
cv.line_descriptor.BinaryDescriptor_createBinaryDescriptor() -> retval

使用默认参数(或提供的参数)创建一个 BinaryDescriptor 对象,并返回指向它的智能指针。

◆ createBinaryDescriptor() [2/2]

static Ptr< BinaryDescriptor > cv::line_descriptor::BinaryDescriptor::createBinaryDescriptor ( Params  parameters)
static
Python
cv.line_descriptor.BinaryDescriptor.createBinaryDescriptor() -> retval
cv.line_descriptor.BinaryDescriptor_createBinaryDescriptor() -> retval

◆ defaultNorm()

int cv::line_descriptor::BinaryDescriptor::defaultNorm ( ) const

返回规范化模式

◆ descriptorSize()

int cv::line_descriptor::BinaryDescriptor::descriptorSize ( ) const

返回描述符大小。

◆ descriptorType()

int cv::line_descriptor::BinaryDescriptor::descriptorType ( ) const

返回数据类型。

◆ detect() [1/2]

void cv::line_descriptor::BinaryDescriptor::detect ( const Mat image,
std::vector< KeyLine > &  keypoints,
const Mat mask = Mat() 
)
Python
cv.line_descriptor.BinaryDescriptor.detect(image[, mask]) -> keypoints

需要线检测。

参数
image输入图像
keypoints将存储一个或多个图像的提取线的向量
mask掩码矩阵,仅检测感兴趣的 KeyLines

◆ detect() [2/2]

void cv::line_descriptor::BinaryDescriptor::detect ( const std::vector< Mat > &  images,
std::vector< std::vector< KeyLine > > &  keylines,
const std::vector< Mat > &  masks = std::vector< Mat >() 
) const
Python
cv.line_descriptor.BinaryDescriptor.detect(image[, mask]) -> keypoints

这是一个重载成员函数,为了方便使用。它与上面的函数不同,仅在接受的参数上有所不同。

参数
images输入图像
keylines将存储一个或多个图像的提取线的向量集
masks掩码矩阵向量,用于从每个输入图像中仅检测感兴趣的 KeyLines

◆ detectImpl()

virtual void cv::line_descriptor::BinaryDescriptor::detectImpl ( const Mat imageSrc,
std::vector< KeyLine > &  keylines,
const Mat mask = Mat() 
) const
protectedvirtual

线检测的实现

◆ getNumOfOctaves()

int cv::line_descriptor::BinaryDescriptor::getNumOfOctaves ( )
Python
cv.line_descriptor.BinaryDescriptor.getNumOfOctaves() -> retval

获取当前的八度数量。

◆ getReductionRatio()

int cv::line_descriptor::BinaryDescriptor::getReductionRatio ( )
Python
cv.line_descriptor.BinaryDescriptor.getReductionRatio() -> retval

获取当前的缩减比率(用于高斯金字塔)

◆ getWidthOfBand()

int cv::line_descriptor::BinaryDescriptor::getWidthOfBand ( )
Python
cv.line_descriptor.BinaryDescriptor.getWidthOfBand() -> retval

获取当前的带宽度。

◆ operator()()

virtual void cv::line_descriptor::BinaryDescriptor::operator() ( InputArray  image,
InputArray  mask,
std::vector< KeyLine > &  keylines,
OutputArray  descriptors,
bool  useProvidedKeyLines = false,
bool  returnFloatDescr = false 
) const
virtual

定义操作符 '()' 以按顺序执行 KeyLines 的检测和描述符的计算。

参数
image输入图像
mask掩码矩阵,用于从提取的 KeyLines 中选择哪些线必须被接受(当 keylines 不为空时使用)
keylines包含输入线的向量(当填充时,将跳过检测部分,并将输入线作为输入传递给计算描述符的算法)
descriptors将存储最终描述符的矩阵
useProvidedKeyLines标志(当设置为 true 时,将跳过检测阶段,并将仅执行描述符的计算,使用在 keylines 中提供的线)
returnFloatDescr标志(设置为 true 时,将返回原始的非二进制描述符)

◆ read()

virtual void cv::line_descriptor::BinaryDescriptor::read ( const cv::FileNode fn)
virtual

FileNode 对象中读取参数并存储它们。

参数
fnFileNode 文件

cv::Algorithm 重写。

◆ setNumOfOctaves()

void cv::line_descriptor::BinaryDescriptor::setNumOfOctaves ( int  octaves)
Python
cv.line_descriptor.BinaryDescriptor.setNumOfOctaves(octaves) -> None

设置八度数量。

参数
octaves八度音阶数量

◆ setReductionRatio()

void cv::line_descriptor::BinaryDescriptor::setReductionRatio ( int  rRatio)
Python
cv.line_descriptor.BinaryDescriptor.setReductionRatio(rRatio) -> None

设置缩减比率(用于高斯金字塔)

参数
rRatio缩减比率

◆ setWidthOfBand()

void cv::line_descriptor::BinaryDescriptor::setWidthOfBand ( int  width)
Python
cv.line_descriptor.BinaryDescriptor.setWidthOfBand(width) -> None

设置带宽度。

参数
width带的宽度

◆ write()

virtual void cv::line_descriptor::BinaryDescriptor::write ( cv::FileStorage fs) const
virtual

将参数存储到 FileStorage 对象。

参数
fs输出 FileStorage 文件

cv::Algorithm 重写。


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