OpenCV 4.12.0
開源計算機視覺
載入中...
搜尋中...
無匹配項
cv::line_descriptor::BinaryDescriptor 類參考

該類實現了線條檢測及其二值描述符計算的功能。更多...

#include <opencv2/line_descriptor/descriptor.hpp>

cv::line_descriptor::BinaryDescriptor 的協作圖

結構體  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
 定義運算子 '()' 以執行 KeyLine 檢測和描述符的順序計算。
 
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
保護虛擬函式

描述符計算的實現

◆ 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將儲存一個或多個影像中提取的線條的向量集
遮罩掩碼矩陣向量,用於從每個輸入影像中僅檢測感興趣的 KeyLine

◆ detectImpl()

virtual void cv::line_descriptor::BinaryDescriptor::detectImpl ( const Mat & imageSrc,
std::vector< KeyLine > & keylines,
const Mat & mask = Mat() ) const
保護虛擬函式

線條檢測的實現

◆ 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

定義運算子 '()' 以執行 KeyLine 檢測和描述符的順序計算。

引數
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) ->

設定八度數。

引數
octaves八度數

◆ setReductionRatio()

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

設定縮減比率(用於高斯金字塔)

引數
rRatio縮減比率

◆ setWidthOfBand()

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

設定波段寬度。

引數
width波段寬度

◆ write()

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

將引數儲存到 FileStorage 物件。

引數
fs輸出 FileStorage 檔案

重新實現自 cv::Algorithm


此類的文件生成自以下檔案