HALCON Reference Manual 10.0.2
Name
classify_class_gmmT_classify_class_gmmclassify_class_gmmClassifyClassGmmClassifyClassGmm — Calculate the class of a feature vector by a Gaussian Mixture
Model.
Herror classify_class_gmm(const HTuple& GMMHandle, const HTuple& Features, const HTuple& Num, HTuple* ClassID, HTuple* ClassProb, HTuple* Density, HTuple* KSigmaProb)
HTuple HClassGmm::ClassifyClassGmm(const HTuple& Features, const HTuple& Num, HTuple* ClassProb, HTuple* Density, HTuple* KSigmaProb) const
void HOperatorSetX.ClassifyClassGmm(
[in] VARIANT GMMHandle, [in] VARIANT Features, [in] VARIANT Num, [out] VARIANT* ClassID, [out] VARIANT* ClassProb, [out] VARIANT* Density, [out] VARIANT* KSigmaProb)
VARIANT HClassGmmX.ClassifyClassGmm(
[in] VARIANT Features, [in] Hlong Num, [out] VARIANT* ClassProb, [out] VARIANT* Density, [out] VARIANT* KSigmaProb)
static void HOperatorSet.ClassifyClassGmm(HTuple GMMHandle, HTuple features, HTuple num, out HTuple classID, out HTuple classProb, out HTuple density, out HTuple KSigmaProb)
HTuple HClassGmm.ClassifyClassGmm(HTuple features, int num, out HTuple classProb, out HTuple density, out HTuple KSigmaProb)
classify_class_gmmclassify_class_gmmclassify_class_gmmClassifyClassGmmClassifyClassGmm computes the best NumNumNumNumnum classes of
the feature vector FeaturesFeaturesFeaturesFeaturesfeatures with the Gaussian Mixture Model
(GMM) GMMHandleGMMHandleGMMHandleGMMHandleGMMHandle and returns the classes in ClassIDClassIDClassIDClassIDclassID
and the corresponding probabilities of the classes in
ClassProbClassProbClassProbClassProbclassProb. Before calling classify_class_gmmclassify_class_gmmclassify_class_gmmClassifyClassGmmClassifyClassGmm, the
GMM must be trained with train_class_gmmtrain_class_gmmtrain_class_gmmTrainClassGmmTrainClassGmm.
classify_class_gmmclassify_class_gmmclassify_class_gmmClassifyClassGmmClassifyClassGmm corresponds to a call to
evaluate_class_gmmevaluate_class_gmmevaluate_class_gmmEvaluateClassGmmEvaluateClassGmm and an additional step that extracts the
best NumNumNumNumnum classes. As described with
evaluate_class_gmmevaluate_class_gmmevaluate_class_gmmEvaluateClassGmmEvaluateClassGmm, the output values of the GMM can be
interpreted as probabilities of the occurrence of the respective
classes. However, here the posterior probability ClassProbClassProbClassProbClassProbclassProb
is further normalized as ClassProbClassProbClassProbClassProbclassProb = p(i|x)/p(x)
, where p(i|x) and p(x) are specified with evaluate_class_gmmevaluate_class_gmmevaluate_class_gmmEvaluateClassGmmEvaluateClassGmm.
In most cases it should be sufficient to use NumNumNumNumnum =
1 in order to decide whether the
probability of the best class is high enough. In some applications
it may be interesting to also take the second best class into
account (NumNumNumNumnum = 2), particularly if it can be
expected that the classes show a significant degree of overlap.
DensityDensityDensityDensitydensity and KSigmaProbKSigmaProbKSigmaProbKSigmaProbKSigmaProb are explained with
evaluate_class_gmmevaluate_class_gmmevaluate_class_gmmEvaluateClassGmmEvaluateClassGmm.
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Processed without parallelization.
NumNumNumNumnum (input_control) integer → HTupleHTupleVARIANTHtuple (integer) (int / long) (Hlong) (Hlong) (Hlong)
Number of best classes to determine.
Default value: 1
Suggested values: 1, 2, 3, 4, 5
Result of classifying the feature vector with
the GMM.
A-posteriori probability of the classes.
Probability density of the feature vector.
Normalized k-sigma-probability for the feature
vector.
If the parameters are valid, the operator classify_class_gmmclassify_class_gmmclassify_class_gmmClassifyClassGmmClassifyClassGmm
returns the value 2 (H_MSG_TRUE). If necessary an exception is
raised.
train_class_gmmtrain_class_gmmtrain_class_gmmTrainClassGmmTrainClassGmm,
read_class_gmmread_class_gmmread_class_gmmReadClassGmmReadClassGmm
evaluate_class_gmmevaluate_class_gmmevaluate_class_gmmEvaluateClassGmmEvaluateClassGmm
create_class_gmmcreate_class_gmmcreate_class_gmmCreateClassGmmCreateClassGmm
Christopher M. Bishop: “Neural Networks for Pattern Recognition”;
Oxford University Press, Oxford; 1995.
Mario A.T. Figueiredo: “Unsupervised Learning of Finite Mixture
Models”; IEEE Transactions on Pattern Analysis and Machine
Intelligence, Vol. 24, No. 3; March 2002.
Foundation
| HALCON Reference Manual 10.0.2 |
Copyright © 1996-2011 MVTec Software GmbH |