add_sample_class_knnT_add_sample_class_knnAddSampleClassKnnAddSampleClassKnnadd_sample_class_knn添加样本类K-最近邻(算子)

名称

add_sample_class_knnT_add_sample_class_knnAddSampleClassKnnAddSampleClassKnnadd_sample_class_knn — 将样本添加到 k-最近邻(k-NN)分类器中。

签名

add_sample_class_knn( : : KNNHandle, Features, ClassID : )

Herror T_add_sample_class_knn(const Htuple KNNHandle, const Htuple Features, const Htuple ClassID)

void AddSampleClassKnn(const HTuple& KNNHandle, const HTuple& Features, const HTuple& ClassID)

void HClassKnn::AddSampleClassKnn(const HTuple& Features, const HTuple& ClassID) const

void HClassKnn::AddSampleClassKnn(double Features, Hlong ClassID) const

static void HOperatorSet.AddSampleClassKnn(HTuple KNNHandle, HTuple features, HTuple classID)

void HClassKnn.AddSampleClassKnn(HTuple features, HTuple classID)

void HClassKnn.AddSampleClassKnn(double features, int classID)

def add_sample_class_knn(knnhandle: HHandle, features: MaybeSequence[float], class_id: MaybeSequence[int]) -> None

描述

add_sample_class_knnadd_sample_class_knnAddSampleClassKnnAddSampleClassKnnAddSampleClassKnnadd_sample_class_knn 将特征向量添加到 k-最近邻 (k-NN)数据结构中。特征向量的长度已在 create_class_knncreate_class_knnCreateClassKnnCreateClassKnnCreateClassKnncreate_class_knn 中通过 NumDimNumDimNumDimNumDimnumDimnum_dim 指定。必须通过 KNNHandleKNNHandleKNNHandleKNNHandleKNNHandleknnhandle 参数指定 k-NN 数据结构的句柄。

特征向量被收集在 FeaturesFeaturesFeaturesFeaturesfeaturesfeatures 中。输入向量的长度必须是 NumDimNumDimNumDimNumDimnumDimnum_dim 的倍数。每个特征向量都需要一个类,该类可通过 ClassIDClassIDClassIDClassIDclassIDclass_id 指定;若仅指定一个类,则该类适用于所有向量。类值为大于等于 0 的自然数。若仅使用单一类,则类值必须为 0。若需调用 classify_image_class_knnclassify_image_class_knnClassifyImageClassKnnClassifyImageClassKnnClassifyImageClassKnnclassify_image_class_knn 算子,则必须使用从 0 到 classes-1 的所有数字,否则每个未使用的数字都会生成一个空区域。

允许向已训练好的 k-NN 分类器中添加样本。新数据仅在再次调用 train_class_knntrain_class_knnTrainClassKnnTrainClassKnnTrainClassKnntrain_class_knn 后才会被整合。

若 k-NN 分类器在启用自动特征归一化功能的情况下完成训练,则提供的特征集 FeaturesFeaturesFeaturesFeaturesfeaturesfeatures 将被视为未归一化数据,并按上次调用 train_class_knntrain_class_knnTrainClassKnnTrainClassKnnTrainClassKnntrain_class_knn 时定义的方式进行归一化处理。有关归一化的详细信息,请参阅 train_class_knntrain_class_knnTrainClassKnnTrainClassKnnTrainClassKnntrain_class_knn 文档。

执行信息

此算子修改后续输入参数的状态:

在执行此算子时,若该参数值需在多个线程间使用,则必须对其访问进行同步。

参数

KNNHandleKNNHandleKNNHandleKNNHandleKNNHandleknnhandle (输入控制,状态被修改)  class_knn HClassKnn, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

k-NN 分类器的句柄。

FeaturesFeaturesFeaturesFeaturesfeaturesfeatures (输入控制)  number(-array) HTupleMaybeSequence[float]HTupleHtuple (real) (double) (double) (double)

待添加功能列表。

ClassIDClassIDClassIDClassIDclassIDclass_id (输入控制)  integer(-array) HTupleMaybeSequence[int]HTupleHtuple (integer) (int / long) (Hlong) (Hlong)

特征的类 IDs。

结果

如果参数有效,算子 add_sample_class_knnadd_sample_class_knnAddSampleClassKnnAddSampleClassKnnAddSampleClassKnnadd_sample_class_knn 返回值 2 ( H_MSG_TRUE )。如有必要,则抛出异常。

可能的前趋

train_class_knntrain_class_knnTrainClassKnnTrainClassKnnTrainClassKnntrain_class_knn, read_class_knnread_class_knnReadClassKnnReadClassKnnReadClassKnnread_class_knn

另见

create_class_knncreate_class_knnCreateClassKnnCreateClassKnnCreateClassKnncreate_class_knn, read_class_knnread_class_knnReadClassKnnReadClassKnnReadClassKnnread_class_knn

参考文献

Marius Muja, David G. Lowe: “Fast Approximate Nearest Neighbors with Automatic Algorithm Configuration”; International Conference on Computer Vision Theory and Applications (VISAPP 09); 2009.

模块

基础