diff --git a/modules/objdetect/src/featurepyramid.cpp b/modules/objdetect/src/featurepyramid.cpp index a37019f5e4..c6bc6c0e8a 100644 --- a/modules/objdetect/src/featurepyramid.cpp +++ b/modules/objdetect/src/featurepyramid.cpp @@ -31,28 +31,20 @@ int getFeatureMaps(const IplImage* image, const int k, CvLSVMFeatureMap **map) int i, j, kk, c, ii, jj, d; float * datadx, * datady; - //номер канала в цикле int ch; - //переменные вычисления магнитуды float magnitude, x, y, tx, ty; IplImage * dx, * dy; int *nearest; float *w, a_x, b_x; - // ядро для вычисления градиентов изображение по осям x и y float kernel[3] = {-1.f, 0.f, 1.f}; CvMat kernel_dx = cvMat(1, 3, CV_32F, kernel); CvMat kernel_dy = cvMat(3, 1, CV_32F, kernel); - // грачение градиента float * r; - // новер сектора куда попало значение градиента - // четные иннексы не контрастное изображение - // не четные иннексы контрастное изображение int * alfa; - // векторы границ секторов float boundary_x[NUM_SECTOR + 1]; float boundary_y[NUM_SECTOR + 1]; float max, dotProd; @@ -70,7 +62,7 @@ int getFeatureMaps(const IplImage* image, const int k, CvLSVMFeatureMap **map) sizeX = width / k; sizeY = height / k; - px = 3 * NUM_SECTOR; // контрастное и не контрастное изображение + px = 3 * NUM_SECTOR; p = px; stringSize = sizeX * p; allocFeatureMapObject(map, sizeX, sizeY, p); @@ -138,7 +130,6 @@ int getFeatureMaps(const IplImage* image, const int k, CvLSVMFeatureMap **map) }/*for(i = 0; i < width; i++)*/ }/*for(j = 0; j < height; j++)*/ - //подсчет весов и смещений nearest = (int *)malloc(sizeof(int ) * k); w = (float*)malloc(sizeof(float) * (k * 2)); @@ -167,7 +158,6 @@ int getFeatureMaps(const IplImage* image, const int k, CvLSVMFeatureMap **map) }/*for(j = k / 2; j < k; j++)*/ - //интерполяция for(i = 0; i < sizeY; i++) { for(j = 0; j < sizeX; j++) @@ -275,7 +265,7 @@ int normalizeAndTruncate(CvLSVMFeatureMap *map, const float alfa) sizeY -= 2; newData = (float *)malloc (sizeof(float) * (sizeX * sizeY * pp)); -//normalization + //normalization for(i = 1; i <= sizeY; i++) { for(j = 1; j <= sizeX; j++) @@ -336,12 +326,12 @@ int normalizeAndTruncate(CvLSVMFeatureMap *map, const float alfa) }/*for(ii = 0; ii < 2 * p; ii++)*/ }/*for(j = 1; j <= sizeX; j++)*/ }/*for(i = 1; i <= sizeY; i++)*/ -//truncation + //truncation for(i = 0; i < sizeX * sizeY * pp; i++) { if(newData [i] > alfa) newData [i] = alfa; }/*for(i = 0; i < sizeX * sizeY * pp; i++)*/ -//swop data + //swap data map->numFeatures = pp; map->sizeX = sizeX; @@ -354,6 +344,7 @@ int normalizeAndTruncate(CvLSVMFeatureMap *map, const float alfa) return LATENT_SVM_OK; } + /* // Feature map reduction // In each cell we reduce dimension of the feature vector @@ -427,7 +418,7 @@ int PCAFeatureMaps(CvLSVMFeatureMap *map) } /*for(ii = 0; ii < yp; ii++)*/ }/*for(j = 0; j < sizeX; j++)*/ }/*for(i = 0; i < sizeY; i++)*/ -//swop data + //swap data map->numFeatures = pp;