minor change: moved algorithm type to the end of params
authorDmitriy Anisimov <avdmitry@gmail.com>
Sat, 13 Sep 2014 11:06:07 +0000 (15:06 +0400)
committerDmitriy Anisimov <avdmitry@gmail.com>
Sat, 13 Sep 2014 11:06:07 +0000 (15:06 +0400)
modules/ml/include/opencv2/ml.hpp
modules/ml/src/knearest.cpp
modules/ml/test/test_emknearestkmeans.cpp

index 2030f69ac7907fb04661bebfa592d9c3a47a20a6..51d09d13e4f78f0b3470669ac9c5c90c9765c5e2 100644 (file)
@@ -230,12 +230,12 @@ public:
     class CV_EXPORTS_W_MAP Params
     {
     public:
-        Params(int algorithmType_=BRUTE_FORCE, int defaultK=10, bool isclassifier_=true, int Emax_=INT_MAX);
+        Params(int defaultK=10, bool isclassifier_=true, int Emax_=INT_MAX, int algorithmType_=BRUTE_FORCE);
 
-        CV_PROP_RW int algorithmType;
         CV_PROP_RW int defaultK;
         CV_PROP_RW bool isclassifier;
         CV_PROP_RW int Emax; // for implementation with KDTree
+        CV_PROP_RW int algorithmType;
     };
     virtual void setParams(const Params& p) = 0;
     virtual Params getParams() const = 0;
index ac9e95ca0df36047548ed9ee81f23badf5922e79..4bf40758f2005e4b6d309d74d0981a0910e98cfc 100644 (file)
 namespace cv {
 namespace ml {
 
-KNearest::Params::Params(int algorithmType_, int k, bool isclassifier_, int Emax_) :
-    algorithmType(algorithmType_),
+KNearest::Params::Params(int k, bool isclassifier_, int Emax_, int algorithmType_) :
     defaultK(k),
     isclassifier(isclassifier_),
-    Emax(Emax_)
+    Emax(Emax_),
+    algorithmType(algorithmType_)
 {
 }
 
index ba0b82b0c7c68d6b9e271193604c607dd8df26d9..121b34d1842be628303a4300de23c0d951ed3832 100644 (file)
@@ -330,7 +330,7 @@ void CV_KNearestTest::run( int /*start_from*/ )
     }
 
     // KNearest KDTree implementation
-    Ptr<KNearest> knearestKdt = KNearest::create(ml::KNearest::Params(ml::KNearest::KDTREE));
+    Ptr<KNearest> knearestKdt = KNearest::create(ml::KNearest::Params(10, true, INT_MAX, ml::KNearest::KDTREE));
     knearestKdt->train(trainData, ml::ROW_SAMPLE, trainLabels);
     knearestKdt->findNearest(testData, 4, bestLabels);
     if( !calcErr( bestLabels, testLabels, sizes, err, true ) )