|
From: Gustavo P. B. <gb...@us...> - 2005-06-02 02:11:52
|
Update of /cvsroot/kimageprocess/kimageprocess/src/methods/hsvcm/features/contrast In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv21701/src/methods/hsvcm/features/contrast Modified Files: contrast.cpp Log Message: - Changed from cmSize[3] to cmSizeV, cmSizeH and cmSizeS (readability) Index: contrast.cpp =================================================================== RCS file: /cvsroot/kimageprocess/kimageprocess/src/methods/hsvcm/features/contrast/contrast.cpp,v retrieving revision 1.5 retrieving revision 1.6 diff -u -d -r1.5 -r1.6 --- contrast.cpp 28 May 2005 21:29:27 -0000 1.5 +++ contrast.cpp 2 Jun 2005 02:11:39 -0000 1.6 @@ -50,64 +50,64 @@ float KTHSVCMContrast::_calculate(KTImage *img, int direction) { - int cmSize[3]; + int cmSizeH, cmSizeS, cmSizeV; float ***cm = (float***) method()->data(direction); KTMethod *m = method(); - cmSize[0] = m->dataSize(0); // v - cmSize[1] = m->dataSize(1); // h - cmSize[2] = m->dataSize(2); // s + cmSizeV = m->dataSize(0); // v + cmSizeH = m->dataSize(1); // h + cmSizeS = m->dataSize(2); // s double bigsum[3] = {0, 0, 0}; // calculating the S component - int max = MAX(cmSize[1], cmSize[0]); - for (int k=0; k < cmSize[2]; k++) + int max = MAX(cmSizeH, cmSizeV); + for (int k=0; k < cmSizeS; ++k) { float sum[max]; - for (int a=0; a < max; a++) + for (int a=0; a < max; ++a) sum[a] = 0; - for (int i=0; i < cmSize[0]; i++) - for (int j=0; j < cmSize[1]; j++) + for (int i=0; i < cmSizeV; ++i) + for (int j=0; j < cmSizeH; ++j) sum[abs(i-j)] += cm[i][j][k]; //calculate bigsum - for (int n=0; n < max; n++) + for (int n=0; n < max; ++n) bigsum[0] += sum[n] * n * n; } // calculating the H component - max = MAX(cmSize[2], cmSize[0]); - for (int j=0; j < cmSize[1]; j++) + max = MAX(cmSizeS, cmSizeV); + for (int j=0; j < cmSizeH; ++j) { float sum[max]; - for (int a=0; a < max; a++) + for (int a=0; a < max; ++a) sum[a] = 0; - for (int i=0; i < cmSize[0]; i++) - for (int k=0; k < cmSize[2]; k++) + for (int i=0; i < cmSizeV; ++i) + for (int k=0; k < cmSizeS; ++k) sum[abs(i-k)] += cm[i][j][k]; //calculate bigsum - for (int n=0; n < max; n++) + for (int n=0; n < max; ++n) bigsum[1] += sum[n] * n * n; } // calculating the V component - max = MAX(cmSize[1], cmSize[2]); - for (int i=0; i < cmSize[0]; i++) + max = MAX(cmSizeH, cmSizeS); + for (int i=0; i < cmSizeV; ++i) { float sum[max]; - for (int a=0; a < max; a++) + for (int a=0; a < max; ++a) sum[a] = 0; - for (int k=0; k < cmSize[2]; k++) - for (int j=0; j < cmSize[1]; j++) + for (int k=0; k < cmSizeS; ++k) + for (int j=0; j < cmSizeH; ++j) sum[abs(k-j)] += cm[i][j][k]; //calculate bigsum - for (int n=0; n < max; n++) + for (int n=0; n < max; ++n) bigsum[2] += sum[n] * n * n; } - float result = bigsum[0] / cmSize[2] + bigsum[1] / cmSize[1] + bigsum[2] / cmSize[0]; + float result = bigsum[0] / cmSizeS + bigsum[1] / cmSizeH + bigsum[2] / cmSizeV; //kdDebug() << "Result: " << result << endl; return result; } |