用於從影像中提取加速魯棒特徵的類 [21] 。 更多...
#include <opencv2/xfeatures2d/nonfree.hpp>
|
| String | getDefaultName () const CV_OVERRIDE |
| |
| virtual bool | getExtended () const =0 |
| |
| virtual double | getHessianThreshold () const =0 |
| |
| virtual int | getNOctaveLayers () const =0 |
| |
| virtual int | getNOctaves () const =0 |
| |
| virtual bool | getUpright () const =0 |
| |
| virtual void | setExtended (bool extended)=0 |
| |
| virtual void | setHessianThreshold (double hessianThreshold)=0 |
| |
| virtual void | setNOctaveLayers (int nOctaveLayers)=0 |
| |
| virtual void | setNOctaves (int nOctaves)=0 |
| |
| virtual void | setUpright (bool upright)=0 |
| |
| virtual | ~Feature2D () |
| |
| virtual void | compute (InputArray image, std::vector< KeyPoint > &keypoints, OutputArray descriptors) |
| | 計算影像(第一種變體)或影像集(第二種變體)中檢測到的一組關鍵點的描述符。
|
| |
| virtual void | compute (InputArrayOfArrays images, std::vector< std::vector< KeyPoint > > &keypoints, OutputArrayOfArrays descriptors) |
| |
| virtual int | defaultNorm () const |
| |
| virtual int | descriptorSize () const |
| |
| virtual int | descriptorType () const |
| |
| virtual void | detect (InputArray image, std::vector< KeyPoint > &keypoints, InputArray mask=noArray()) |
| | 檢測影像(第一種變體)或影像集(第二種變體)中的關鍵點。
|
| |
| virtual void | detect (InputArrayOfArrays images, std::vector< std::vector< KeyPoint > > &keypoints, InputArrayOfArrays masks=noArray()) |
| |
| virtual void | detectAndCompute (InputArray image, InputArray mask, std::vector< KeyPoint > &keypoints, OutputArray descriptors, bool useProvidedKeypoints=false) |
| |
| virtual bool | empty () const CV_OVERRIDE |
| | 如果檢測器物件為空,則返回 true。
|
| |
| virtual void | read (const FileNode &) CV_OVERRIDE |
| | 從檔案儲存中讀取演算法引數。
|
| |
| void | read (const String &fileName) |
| |
| void | write (const Ptr< FileStorage > &fs, const String &name) const |
| |
| void | write (const String &fileName) const |
| |
| virtual void | write (FileStorage &) const CV_OVERRIDE |
| | 將演算法引數儲存到檔案儲存中。
|
| |
| void | write (FileStorage &fs, const String &name) const |
| |
| | Algorithm () |
| |
| virtual | ~Algorithm () |
| |
| virtual void | clear () |
| | 清除演算法狀態。
|
| |
| 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 |
| |
用於從影像中提取加速魯棒特徵的類 [21] 。
演算法引數
- 成員 int extended
- 0 表示應計算基本描述符(每個 64 個元素)
- 1 表示應計算擴充套件描述符(每個 128 個元素)
- 成員 int upright
- 0 表示檢測器計算每個特徵的方向。
- 1 表示不計算方向(這更快)。例如,如果您匹配立體影像對中的影像,或者進行影像拼接,則匹配的特徵可能具有非常相似的角度,並且您可以透過設定 upright=1 來加速特徵提取。
- 成員 double hessianThreshold 關鍵點檢測器的閾值。只有 Hessian 大於 hessianThreshold 的特徵才會被檢測器保留。因此,值越大,您得到的關鍵點就越少。一個好的預設值可以是 300 到 500,具體取決於影像對比度。
- 成員 int nOctaves 檢測器使用的高斯金字塔的八度音階的數量。預設設定為 4。如果您想獲得非常大的特徵,請使用較大的值。如果您只想獲得小特徵,請減少它。
- 成員 int nOctaveLayers 高斯金字塔每個八度音階內的影像數量。預設設定為 2。
- 注意
- 可以在 opencv_source_code/samples/cpp/generic_descriptor_match.cpp 中找到使用 SURF 特徵檢測器的示例。
- 可以在 opencv_source_code/samples/cpp/matcher_simple.cpp 中找到使用 SURF 特徵檢測器、提取器和匹配器的另一個示例。
◆ create()
| static Ptr< SURF > cv::xfeatures2d::SURF::create |
( |
double | hessianThreshold = 100, |
|
|
int | nOctaves = 4, |
|
|
int | nOctaveLayers = 3, |
|
|
bool | extended = false, |
|
|
bool | upright = false ) |
|
static |
| Python |
|---|
| cv.xfeatures2d.SURF.create( | [, hessianThreshold[, nOctaves[, nOctaveLayers[, extended[, upright]]]]] | ) -> | retval |
| cv.xfeatures2d.SURF_create( | [, hessianThreshold[, nOctaves[, nOctaveLayers[, extended[, upright]]]]] | ) -> | retval |
- 引數
-
| hessianThreshold | Hessian 關鍵點檢測器的閾值,用於 SURF 中。 |
| nOctaves | 關鍵點檢測器將使用的金字塔八度數量。 |
| nOctaveLayers | 每個八度內的八度層數量。 |
| extended | 擴充套件描述符標誌(true - 使用擴充套件的 128 元素描述符;false - 使用 64 元素描述符)。 |
| upright | 正立或旋轉特徵標誌(true - 不計算特徵方向;false - 計算方向)。 |
◆ getDefaultName()
| String cv::xfeatures2d::SURF::getDefaultName |
( |
| ) |
const |
|
virtual |
| Python |
|---|
| cv.xfeatures2d.SURF.getDefaultName( | | ) -> | retval |
返回演算法字串識別符號。當物件儲存到檔案或字串時,此字串用作頂級 xml/yml 節點標籤。
從 cv::Feature2D 重新實現。
◆ getExtended()
| virtual bool cv::xfeatures2d::SURF::getExtended |
( |
| ) |
const |
|
純虛擬函式 |
| Python |
|---|
| cv.xfeatures2d.SURF.getExtended( | | ) -> | retval |
◆ getHessianThreshold()
| virtual double cv::xfeatures2d::SURF::getHessianThreshold |
( |
| ) |
const |
|
純虛擬函式 |
| Python |
|---|
| cv.xfeatures2d.SURF.getHessianThreshold( | | ) -> | retval |
◆ getNOctaveLayers()
| virtual int cv::xfeatures2d::SURF::getNOctaveLayers |
( |
| ) |
const |
|
純虛擬函式 |
| Python |
|---|
| cv.xfeatures2d.SURF.getNOctaveLayers( | | ) -> | retval |
◆ getNOctaves()
| virtual int cv::xfeatures2d::SURF::getNOctaves |
( |
| ) |
const |
|
純虛擬函式 |
| Python |
|---|
| cv.xfeatures2d.SURF.getNOctaves( | | ) -> | retval |
◆ getUpright()
| virtual bool cv::xfeatures2d::SURF::getUpright |
( |
| ) |
const |
|
純虛擬函式 |
| Python |
|---|
| cv.xfeatures2d.SURF.getUpright( | | ) -> | retval |
◆ setExtended()
| virtual void cv::xfeatures2d::SURF::setExtended |
( |
bool | extended | ) |
|
|
純虛擬函式 |
| Python |
|---|
| cv.xfeatures2d.SURF.setExtended( | extended | ) -> | 無 |
◆ setHessianThreshold()
| virtual void cv::xfeatures2d::SURF::setHessianThreshold |
( |
double | hessianThreshold | ) |
|
|
純虛擬函式 |
| Python |
|---|
| cv.xfeatures2d.SURF.setHessianThreshold( | hessianThreshold | ) -> | 無 |
◆ setNOctaveLayers()
| virtual void cv::xfeatures2d::SURF::setNOctaveLayers |
( |
int | nOctaveLayers | ) |
|
|
純虛擬函式 |
| Python |
|---|
| cv.xfeatures2d.SURF.setNOctaveLayers( | nOctaveLayers | ) -> | 無 |
◆ setNOctaves()
| virtual void cv::xfeatures2d::SURF::setNOctaves |
( |
int | nOctaves | ) |
|
|
純虛擬函式 |
| Python |
|---|
| cv.xfeatures2d.SURF.setNOctaves( | nOctaves | ) -> | 無 |
◆ setUpright()
| virtual void cv::xfeatures2d::SURF::setUpright |
( |
bool | upright | ) |
|
|
純虛擬函式 |
| Python |
|---|
| cv.xfeatures2d.SURF.setUpright( | upright | ) -> | 無 |
此類文件由以下檔案生成