该类实现了线条检测及其二进制描述符计算的功能。更多…
#include <opencv2/line_descriptor/descriptor.hpp>
|
| BinaryDescriptor (const BinaryDescriptor::Params ¶meters=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 () |
| 获取当前的octave数。
|
|
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) |
| 设置octave数。
|
|
void | setReductionRatio (int rRatio) |
| 设置缩减比例(用于高斯金字塔)。
|
|
void | setWidthOfBand (int width) |
| 设置带宽度。
|
|
virtual void | write (cv::FileStorage &fs) const CV_OVERRIDE |
| 将参数存储到 FileStorage 对象。
|
|
| 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 |
|
该类实现了线段检测和二进制描述符计算的功能。
该类的接口主要基于经典检测器和提取器的接口,例如 Feature2d 的 特征检测和描述 和 描述符匹配器。关于线段的检索信息存储在 line_descriptor::KeyLine 对象中。
◆ BinaryDescriptor()
构造函数。
- 参数
-
如果没有提供参数,构造函数将设置默认值(参见上一节代码段中的注释)。强烈推荐使用默认值。
◆ ~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 |
◆ createBinaryDescriptor() [2/2]
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()()
虚函数 void cv::line_descriptor::BinaryDescriptor::operator() |
( |
输入数组 | image, |
|
|
输入数组 | mask, |
|
|
std::vector< KeyLine > & | keylines, |
|
|
输出数组 | descriptors, |
|
|
bool | useProvidedKeyLines = false, |
|
|
bool | returnFloatDescr = false ) const |
|
虚函数 |
定义运算符 '()' 以连续执行 KeyLines 的检测和描述符的计算。
- 参数
-
image | 输入图像 |
mask | 掩码矩阵,用于选择KeyLines中哪些线段必须被接受(在keylines不为空时使用) |
keylines | 包含输入线段的向量(如果已填充,则将跳过检测部分,并将输入线段作为计算描述符算法的输入) |
descriptors | 将存储最终描述符的矩阵 |
useProvidedKeyLines | 标志(设置为true时,将跳过检测阶段,仅使用keylines中提供的线段计算描述符) |
returnFloatDescr | 标志(设置为 true 时,返回原始非二进制描述符) |
◆ read()
虚函数 void cv::line_descriptor::BinaryDescriptor::read |
( |
const cv::FileNode & | fn | ) |
|
|
虚函数 |
◆ setNumOfOctaves()
void cv::line_descriptor::BinaryDescriptor::setNumOfOctaves |
( |
int | octaves | ) |
|
Python |
---|
| cv.line_descriptor.BinaryDescriptor.setNumOfOctaves( | octaves | ) -> | 无 |
◆ setReductionRatio()
void cv::line_descriptor::BinaryDescriptor::setReductionRatio |
( |
int | rRatio | ) |
|
Python |
---|
| cv.line_descriptor.BinaryDescriptor.setReductionRatio( | rRatio | ) -> | 无 |
◆ setWidthOfBand()
void cv::line_descriptor::BinaryDescriptor::setWidthOfBand |
( |
int | width | ) |
|
Python |
---|
| cv.line_descriptor.BinaryDescriptor.setWidthOfBand( | width | ) -> | 无 |
◆ write()
虚函数 void cv::line_descriptor::BinaryDescriptor::write |
( |
cv::FileStorage & | fs | ) |
const |
|
虚函数 |
此类的文档是从以下文件生成的