該類實現了 K-最近鄰模型。 更多...
#include <opencv2/ml.hpp>
|
| virtual float | findNearest (InputArray samples, int k, OutputArray results, OutputArray neighborResponses=noArray(), OutputArray dist=noArray()) const =0 |
| | 查詢輸入向量的鄰居並預測其響應。
|
| |
| virtual int | getAlgorithmType () const =0 |
| |
| virtual int | getDefaultK () const =0 |
| |
| virtual int | getEmax () const =0 |
| |
| virtual bool | getIsClassifier () const =0 |
| |
| virtual void | setAlgorithmType (int val)=0 |
| |
| virtual void | setDefaultK (int val)=0 |
| |
| virtual void | setEmax (int val)=0 |
| |
| virtual void | setIsClassifier (bool val)=0 |
| |
| virtual float | calcError (const Ptr< TrainData > &data, bool test, OutputArray resp) const |
| | 計算訓練集或測試集上的誤差。
|
| |
| virtual bool | empty () const CV_OVERRIDE |
| | 如果 Algorithm 為空(例如,在最開始或讀取不成功後),則返回 true。
|
| |
| virtual int | getVarCount () const =0 |
| | 返回訓練樣本中的變數數量。
|
| |
| virtual bool | isClassifier () const =0 |
| | 如果模型是分類器,則返回 true。
|
| |
| virtual bool | isTrained () const =0 |
| | 如果模型已訓練,則返回 true。
|
| |
| virtual float | predict (InputArray samples, OutputArray results=noArray(), int flags=0) const =0 |
| | 預測所提供樣本的響應
|
| |
| virtual bool | train (const Ptr< TrainData > &trainData, int flags=0) |
| | 訓練統計模型。
|
| |
| virtual bool | train (InputArray samples, int layout, InputArray responses) |
| | 訓練統計模型。
|
| |
| | Algorithm () |
| |
| virtual | ~Algorithm () |
| |
| virtual void | clear () |
| | 清除演算法狀態。
|
| |
| virtual String | getDefaultName () const |
| |
| virtual void | read (const FileNode &fn) |
| | 從檔案儲存中讀取演算法引數。
|
| |
| virtual void | save (const String &filename) const |
| |
| void | write (const Ptr< FileStorage > &fs, const String &name=String()) const |
| |
| virtual void | write (FileStorage &fs) const |
| | 將演算法引數儲存在檔案儲存中。
|
| |
| void | write (FileStorage &fs, const String &name) const |
| |
◆ 型別
KNearest 演算法的實現。
| 列舉值 (Enumerator) |
|---|
| BRUTE_FORCE | |
| KDTREE | |
◆ create()
| Python |
|---|
| cv.ml.KNearest.create( | | ) -> | retval |
| cv.ml.KNearest_create( | | ) -> | retval |
◆ findNearest()
| Python |
|---|
| cv.ml.KNearest.findNearest( | samples, k[, results[, neighborResponses[, dist]]] | ) -> | 返回值, 結果, 鄰居響應, 距離 |
查詢輸入向量的鄰居並預測其響應。
- 引數
-
| samples (樣本) | 按行儲存的輸入樣本。它是一個單精度浮點矩陣,大小為 <樣本數> * k。 |
| k | 使用的最近鄰居的數量。應大於 1。 |
| results | 每個輸入樣本的預測結果(迴歸或分類)向量。它是一個單精度浮點向量,包含 <樣本數> 個元素。 |
| neighborResponses | 對應鄰居的可選輸出值。它是一個單精度浮點矩陣,大小為 <樣本數> * k。 |
| 距離 | 輸入向量到對應鄰居的可選輸出距離。它是一個單精度浮點矩陣,大小為 <樣本數> * k。 |
對於每個輸入向量(樣本矩陣的一行),該方法會查詢 k 個最近的鄰居。在迴歸的情況下,預測結果是該特定向量鄰居響應的平均值。在分類的情況下,類別透過投票決定。
對於每個輸入向量,鄰居按其與向量的距離排序。
在使用 C++ 介面時,您可以使用空的輸出指標矩陣,函式會自動分配記憶體。
如果只傳遞單個輸入向量,則所有輸出矩陣都是可選的,並且該方法會返回預測值。
該函式使用 TBB 庫進行並行化。
◆ getAlgorithmType()
| virtual int cv::ml::KNearest::getAlgorithmType |
( |
| ) |
const |
|
純虛擬函式 |
| Python |
|---|
| cv.ml.KNearest.getAlgorithmType( | | ) -> | retval |
◆ getDefaultK()
| virtual int cv::ml::KNearest::getDefaultK |
( |
| ) |
const |
|
純虛擬函式 |
| Python |
|---|
| cv.ml.KNearest.getDefaultK( | | ) -> | retval |
◆ getEmax()
| virtual int cv::ml::KNearest::getEmax |
( |
| ) |
const |
|
純虛擬函式 |
| Python |
|---|
| cv.ml.KNearest.getEmax( | | ) -> | retval |
◆ getIsClassifier()
| virtual bool cv::ml::KNearest::getIsClassifier |
( |
| ) |
const |
|
純虛擬函式 |
| Python |
|---|
| cv.ml.KNearest.getIsClassifier( | | ) -> | retval |
◆ load()
| Python |
|---|
| cv.ml.KNearest.load( | filepath | ) -> | retval |
| cv.ml.KNearest_load( | filepath | ) -> | retval |
◆ setAlgorithmType()
| virtual void cv::ml::KNearest::setAlgorithmType |
( |
int | val | ) |
|
|
純虛擬函式 |
| Python |
|---|
| cv.ml.KNearest.setAlgorithmType( | val | ) -> | None |
◆ setDefaultK()
| virtual void cv::ml::KNearest::setDefaultK |
( |
int | val | ) |
|
|
純虛擬函式 |
| Python |
|---|
| cv.ml.KNearest.setDefaultK( | val | ) -> | None |
◆ setEmax()
| virtual void cv::ml::KNearest::setEmax |
( |
int | val | ) |
|
|
純虛擬函式 |
| Python |
|---|
| cv.ml.KNearest.setEmax( | val | ) -> | None |
◆ setIsClassifier()
| virtual void cv::ml::KNearest::setIsClassifier |
( |
bool | val | ) |
|
|
純虛擬函式 |
| Python |
|---|
| cv.ml.KNearest.setIsClassifier( | val | ) -> | None |
該類的文件由以下檔案生成: