Skip to content

Commit d12ed4d

Browse files
author
Dinar Ahmatnurov
committed
fix warnings;
1 parent 5c1563b commit d12ed4d

File tree

7 files changed

+109
-230
lines changed

7 files changed

+109
-230
lines changed

modules/latentsvm/samples/latentsvm_multidetect_caskad.cpp

Lines changed: 0 additions & 173 deletions
This file was deleted.

modules/latentsvm/src/lsvmc_featurepyramid.cpp

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,10 @@ namespace cv
6262
namespace lsvmc
6363
{
6464

65+
int getPathOfFeaturePyramid(IplImage * image,
66+
float step, int numStep, int startIndex,
67+
int sideLength, CvLSVMFeaturePyramidCaskade **maps);
68+
6569
/*
6670
// Getting feature map for the selected subimage
6771
//
@@ -486,15 +490,15 @@ int getPathOfFeaturePyramid(IplImage * image,
486490
CvLSVMFeatureMapCaskade *map;
487491
IplImage *scaleTmp;
488492
float scale;
489-
int i, err;
493+
int i;
490494

491495
for(i = 0; i < numStep; i++)
492496
{
493497
scale = 1.0f / powf(step, (float)i);
494498
scaleTmp = resize_opencv (image, scale);
495-
err = getFeatureMaps(scaleTmp, sideLength, &map);
496-
err = normalizeAndTruncate(map, VAL_OF_TRUNCATE);
497-
err = PCAFeatureMaps(map);
499+
getFeatureMaps(scaleTmp, sideLength, &map);
500+
normalizeAndTruncate(map, VAL_OF_TRUNCATE);
501+
PCAFeatureMaps(map);
498502
(*maps)->pyramid[startIndex + i] = map;
499503
cvReleaseImage(&scaleTmp);
500504
}/*for(i = 0; i < numStep; i++)*/
@@ -617,4 +621,4 @@ int getFeaturePyramid(IplImage * image, CvLSVMFeaturePyramidCaskade **maps)
617621
return LATENT_SVM_OK;
618622
}
619623
}
620-
}
624+
}

modules/latentsvm/src/lsvmc_function.cpp

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,7 @@ namespace lsvmc
4747
{
4848

4949
float calcM (int k,int di,int dj, const CvLSVMFeaturePyramidCaskade * H, const CvLSVMFilterObjectCaskade *filter){
50-
unsigned int i, j;
50+
int i, j;
5151
float m = 0.0f;
5252
for(j = dj; j < dj + filter->sizeY; j++){
5353
for(i = di * H->pyramid[k]->numFeatures; i < (di + filter->sizeX) * H->pyramid[k]->numFeatures; i++){
@@ -58,7 +58,7 @@ float calcM (int k,int di,int dj, const CvLSVMFeaturePyramidCaskade * H, cons
5858
return m;
5959
}
6060
float calcM_PCA(int k,int di,int dj, const CvLSVMFeaturePyramidCaskade * H, const CvLSVMFilterObjectCaskade *filter){
61-
unsigned int i, j;
61+
int i, j;
6262
float m = 0.0f;
6363
for(j = dj; j < dj + filter->sizeY; j++){
6464
for(i = di * H->pyramid[k]->numFeatures; i < (di + filter->sizeX) * H->pyramid[k]->numFeatures; i++){
@@ -70,8 +70,7 @@ float calcM_PCA(int k,int di,int dj, const CvLSVMFeaturePyramidCaskade * H, cons
7070
return m;
7171
}
7272
float calcM_PCA_cash(int k,int di,int dj, const CvLSVMFeaturePyramidCaskade * H, const CvLSVMFilterObjectCaskade *filter, float * cashM, int * maskM, int step){
73-
unsigned int i, j, mean;
74-
unsigned int n;
73+
int i, j, n;
7574
float m = 0.0f;
7675
float tmp1, tmp2, tmp3, tmp4;
7776
float res;
@@ -101,8 +100,7 @@ float calcM_PCA_cash(int k,int di,int dj, const CvLSVMFeaturePyramidCaskade * H,
101100
tmp4 += a[4 * i + 3] * b[4 * i + 3];
102101
}
103102

104-
mean = (n >> 2) << 2;
105-
for (i = mean; i < n; ++i)
103+
for (i = (n >> 2) << 2; i < n; ++i) //?
106104
{
107105
res += a[i] * b[i];
108106
}
@@ -126,4 +124,4 @@ float calcFine (const CvLSVMFilterObjectCaskade *filter, int di, int dj){
126124
filter->fineFunction[2] * di * di + filter->fineFunction[3] * dj * dj;
127125
}
128126
}
129-
}
127+
}

modules/latentsvm/src/lsvmc_latentsvm.cpp

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,17 @@ namespace cv
6363
namespace lsvmc
6464
{
6565

66+
int estimateBoxes(CvPoint *points, int *levels, int kPoints,
67+
int sizeX, int sizeY, CvPoint **oppositePoints);
68+
69+
int searchObjectThreshold(const CvLSVMFeaturePyramidCaskade *H,
70+
const CvLSVMFeaturePyramidCaskade *H_PCA,
71+
const CvLSVMFilterObjectCaskade **all_F, int n,
72+
float b,
73+
int maxXBorder, int maxYBorder,
74+
float scoreThreshold,
75+
CvPoint **points, int **levels, int *kPoints,
76+
float **score, CvPoint ***partsDisplacement);
6677

6778
void FeaturePyramid32(CvLSVMFeaturePyramidCaskade* H, int maxX, int maxY){
6879
CvLSVMFeatureMapCaskade *H32;
@@ -344,7 +355,7 @@ int searchObjectThreshold(const CvLSVMFeaturePyramidCaskade *H,
344355
//FILE *dump;
345356

346357
float p;
347-
float fine, pfine;
358+
float fine;
348359
float mpath;
349360

350361
CvPoint *tmpPoints;
@@ -429,7 +440,6 @@ int searchObjectThreshold(const CvLSVMFeaturePyramidCaskade *H,
429440
if(PCAScore > all_F[path - 1]->Deformation_PCA)
430441
{
431442
p = F_MIN ;
432-
pfine = 0.f;
433443
//pathX = (i - maxXBorder - 1) * 2 + maxXBorder + 1 + all_F[path]->V.x;
434444
//pathY = (j - maxYBorder - 1) * 2 + maxYBorder + 1 + all_F[path]->V.y;
435445
pathX = i * 2 - maxXBorder + all_F[path]->V.x;
@@ -449,7 +459,6 @@ int searchObjectThreshold(const CvLSVMFeaturePyramidCaskade *H,
449459
mpath = calcM_PCA_cash(k - LAMBDA, di, dj, H_PCA, all_F[path], cashM[path - 1], maskM[path - 1], maxPathX) - fine;
450460
if( mpath > p){
451461
p = mpath;
452-
pfine = fine;
453462
}
454463
}
455464
}
@@ -537,7 +546,6 @@ int searchObjectThreshold(const CvLSVMFeaturePyramidCaskade *H,
537546
mpath = calcM(k - LAMBDA, di, dj, H, all_F[path]) - fine;
538547
if(mpath > p){
539548
p = mpath;
540-
pfine = fine;
541549
(*partsDisplacement)[(*kPoints)][path].x = di;
542550
(*partsDisplacement)[(*kPoints)][path].y = dj;
543551
}
@@ -906,7 +914,6 @@ int searchObjectThresholdSomeComponents(const CvLSVMFeaturePyramidCaskade *H,
906914
CvPoint **points, CvPoint **oppPoints,
907915
float **score, int *kPoints)
908916
{
909-
int error = 0;
910917
int i, j, s, f, *componentIndex;
911918
unsigned int maxXBorder, maxYBorder;
912919
CvPoint **pointsArr, **oppPointsArr, ***partsDisplacementArr;
@@ -924,7 +931,7 @@ int searchObjectThresholdSomeComponents(const CvLSVMFeaturePyramidCaskade *H,
924931
componentIndex = (int *)malloc(sizeof(int) * kComponents);
925932

926933
// Getting maximum filter dimensions
927-
error = getMaxFilterDims(filters, kComponents, kPartFilters, &maxXBorder, &maxYBorder);
934+
getMaxFilterDims(filters, kComponents, kPartFilters, &maxXBorder, &maxYBorder);
928935
*kPoints = 0;
929936
sum = 0;
930937
componentIndex[0] = 0;

modules/latentsvm/src/lsvmc_latentsvmdetector.cpp

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,8 @@ namespace cv
4747
namespace lsvmc
4848
{
4949

50+
std::string extractModelName( const std::string& filename );
51+
5052
const int pca_size = 31;
5153

5254
/*
@@ -181,14 +183,12 @@ CvSeq* cvLatentSvmDetectObjectsCaskade(IplImage* image,
181183

182184
for (int i = 0; i < numBoxesOut; i++)
183185
{
184-
CvObjectDetection detection = {{0, 0, 0, 0}, 0};
186+
CvObjectDetection detection;
185187
detection.score = scoreOut[i];
186-
CvRect bounding_box(0, 0, 0, 0);
187-
bounding_box.x = pointsOut[i].x;
188-
bounding_box.y = pointsOut[i].y;
189-
bounding_box.width = oppPointsOut[i].x - pointsOut[i].x;
190-
bounding_box.height = oppPointsOut[i].y - pointsOut[i].y;
191-
detection.rect = bounding_box;
188+
detection.rect.x = pointsOut[i].x;
189+
detection.rect.y = pointsOut[i].y;
190+
detection.rect.width = oppPointsOut[i].x - pointsOut[i].x;
191+
detection.rect.height = oppPointsOut[i].y - pointsOut[i].y;
192192
cvSeqPush(result_seq, &detection);
193193
}
194194

modules/latentsvm/src/lsvmc_matching.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,9 @@ namespace cv
5454
{
5555
namespace lsvmc
5656
{
57+
58+
void sort(int n, const float* x, int* indices);
59+
5760
/*
5861
// Computation border size for feature map
5962
//
@@ -145,11 +148,11 @@ int getMaxFilterDims(const CvLSVMFilterObjectCaskade **filters, int kComponents,
145148
componentIndex = kPartFilters[0] + 1;
146149
for (i = 1; i < kComponents; i++)
147150
{
148-
if (filters[componentIndex]->sizeX > *maxXBorder)
151+
if (unsigned(filters[componentIndex]->sizeX) > *maxXBorder)
149152
{
150153
*maxXBorder = filters[componentIndex]->sizeX;
151154
}
152-
if (filters[componentIndex]->sizeY > *maxYBorder)
155+
if (unsigned(filters[componentIndex]->sizeY) > *maxYBorder)
153156
{
154157
*maxYBorder = filters[componentIndex]->sizeY;
155158
}

0 commit comments

Comments
 (0)