Russian comments was removed. Error code was added as returned value inLatentSVM...
authorEvgeniy Kozinov <no@email>
Mon, 11 Oct 2010 07:59:13 +0000 (07:59 +0000)
committerEvgeniy Kozinov <no@email>
Mon, 11 Oct 2010 07:59:13 +0000 (07:59 +0000)
modules/objdetect/src/_lsvmparser.h
modules/objdetect/src/lsvmparser.cpp

index 3d5cf56..4136b21 100644 (file)
 #define EBTAG     (STEP_END + BTAG)\r
 \r
 //extern "C" {\r
-    void LSVMparser(const char * filename, filterObject *** model, int *last, int *max, int **comp, float **b, int *count, float * score);\r
+    int LSVMparser(const char * filename, filterObject *** model, int *last, int *max, int **comp, float **b, int *count, float * score);\r
 #ifdef __cplusplus\r
 extern "C"\r
 #endif\r
     int loadModel(\r
-             // Âõîäíûå ïàðàìåòðû\r
-              const char *modelPath,// - ïóòü äî ôàéëà ñ ìîäåëüþ\r
              \r
-              // Âûõîäíûå ïàðàìåòðû\r
-              filterObject ***filters,// - ìàññèâ óêàçàòåëåé íà ôèëüòðû êîìïîíåíò\r
-              int *kFilters, //- îáùåå êîëè÷åñòâî ôèëüòðîâ âî âñåõ ìîäåëÿõ\r
-              int *kComponents, //- êîëè÷åñòâî êîìïîíåíò\r
-              int **kPartFilters, //- ìàññèâ, ñîäåðæàùèé êîëè÷åñòâî òî÷íûõ ôèëüòðîâ â êàæäîé êîìïîíåíòå\r
-              float **b, //- ìàññèâ ëèíåéíûõ ÷ëåíîâ â îöåíî÷íîé ôóíêöèè\r
-              float *scoreThreshold); //- ïîðîã äëÿ score)\r
+              const char *modelPath,\r
+             \r
+              filterObject ***filters,\r
+              int *kFilters,\r
+              int *kComponents,\r
+              int **kPartFilters,\r
+              float **b,\r
+              float *scoreThreshold); \r
 //};\r
 #endif
\ No newline at end of file
index a9eeac6..0b0d8cf 100644 (file)
@@ -718,7 +718,7 @@ void parserModel(FILE * xmlf, filterObject *** model, int *last, int *max, int *
     }\r
 }\r
 \r
-void LSVMparser(const char * filename, filterObject *** model, int *last, int *max, int **comp, float **b, int *count, float * score){\r
+int LSVMparser(const char * filename, filterObject *** model, int *last, int *max, int **comp, float **b, int *count, float * score){\r
     int st = 0;\r
     int tag;\r
     char ch;\r
@@ -732,7 +732,11 @@ void LSVMparser(const char * filename, filterObject *** model, int *last, int *m
     (*model) = (filterObject ** )malloc((sizeof(filterObject * )) * (*max));\r
 \r
     //printf("parse : %s\n", filename);\r
+\r
     xmlf = fopen(filename, "rb");\r
+       if(xmlf == NULL){\r
+               return -1;\r
+       }\r
     \r
     i   = 0;\r
     j   = 0;\r
@@ -762,28 +766,31 @@ void LSVMparser(const char * filename, filterObject *** model, int *last, int *m
             }\r
         }        \r
     }\r
+       return 0;\r
 }\r
 \r
 int loadModel(\r
-             // Âõîäíûå ïàðàìåòðû\r
-              const char *modelPath,// - ïóòü äî ôàéëà ñ ìîäåëüþ\r
+              const char *modelPath,\r
              \r
-              // Âûõîäíûå ïàðàìåòðû\r
-              filterObject ***filters,// - ìàññèâ óêàçàòåëåé íà ôèëüòðû êîìïîíåíò\r
-              int *kFilters, //- îáùåå êîëè÷åñòâî ôèëüòðîâ âî âñåõ ìîäåëÿõ\r
-              int *kComponents, //- êîëè÷åñòâî êîìïîíåíò\r
-              int **kPartFilters, //- ìàññèâ, ñîäåðæàùèé êîëè÷åñòâî òî÷íûõ ôèëüòðîâ â êàæäîé êîìïîíåíòå\r
-              float **b, //- ìàññèâ ëèíåéíûõ ÷ëåíîâ â îöåíî÷íîé ôóíêöèè\r
-              float *scoreThreshold){ //- ïîðîã äëÿ score)\r
+              filterObject ***filters,\r
+              int *kFilters, \r
+              int *kComponents, \r
+              int **kPartFilters, \r
+              float **b, \r
+              float *scoreThreshold){ \r
     int last;\r
     int max;\r
     int *comp;\r
     int count;\r
     int i;\r
+       int err;\r
     float score;\r
     //printf("start_parse\n\n");\r
 \r
-    LSVMparser(modelPath, filters, &last, &max, &comp, b, &count, &score);\r
+    err = LSVMparser(modelPath, filters, &last, &max, &comp, b, &count, &score);\r
+       if(err != 0){\r
+               return -1;\r
+       }\r
     (*kFilters)       = last + 1;\r
     (*kComponents)    = count;\r
     (*scoreThreshold) = (float) score;\r