|
From: Gustavo P. B. <gb...@us...> - 2005-04-02 20:12:20
|
Update of /cvsroot/kimageprocess/kimageprocess/src/methods/glcm In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15841 Modified Files: glcm.cpp Log Message: - Moved the glcm creating code from calculateGLCM() to calculate() - Identation fixes Index: glcm.cpp =================================================================== RCS file: /cvsroot/kimageprocess/kimageprocess/src/methods/glcm/glcm.cpp,v retrieving revision 1.6 retrieving revision 1.7 diff -u -d -r1.6 -r1.7 --- glcm.cpp 1 Apr 2005 03:14:05 -0000 1.6 +++ glcm.cpp 2 Apr 2005 20:12:10 -0000 1.7 @@ -57,6 +57,15 @@ void KTGLCM::calculate(KTImage *img, KTClassifBackend *backend, int imgClass) { m_img = img; + + // create matrices + for (int i=0; i < 4; i++) + { + m_glcm[i] = new float*[m_glcmSize]; + for (int j=0;j < m_glcmSize; j++) + m_glcm[i][j] = new float[m_glcmSize]; + } + calculateGLCM(); int i,j,k; @@ -110,14 +119,6 @@ int R0, R45, R90, x, y, row, col, rows, cols, angle, itone, jtone; //d is the step size on checking the neighbor pixels int d = 1; - - // create matrices - for (int i=0; i < 4; i++) - { - m_glcm[i] = new float*[m_glcmSize]; - for (int j=0;j < m_glcmSize; j++) - m_glcm[i][j] = new float[m_glcmSize]; - } //initialize the matrices for (int i=0; i < 4; i++) @@ -134,27 +135,27 @@ x = m_img->gray(col,row) / m_quantization; if (angle == 0 && col + d < cols) { - y = m_img->gray(col+d,row) / m_quantization; + y = m_img->gray(col+d,row) / m_quantization; m_glcm[angle][x][y]++; - m_glcm[angle][y][x]++; + m_glcm[angle][y][x]++; } - else if (angle == 1 && row + d < rows) + else if (angle == 1 && row + d < rows) { - y = m_img->gray(col,row+d) / m_quantization; + y = m_img->gray(col,row+d) / m_quantization; m_glcm[angle][x][y]++; - m_glcm[angle][y][x]++; + m_glcm[angle][y][x]++; } - else if (angle == 2 && row + d < rows && col - d >= 0) + else if (angle == 2 && row + d < rows && col - d >= 0) { - y = m_img->gray(col-d, row+d) / m_quantization; + y = m_img->gray(col-d, row+d) / m_quantization; m_glcm[angle][x][y]++; - m_glcm[angle][y][x]++; + m_glcm[angle][y][x]++; } - else if (angle == 3 && row + d < rows && col + d < cols) + else if (angle == 3 && row + d < rows && col + d < cols) { - y = m_img->gray(col+d, row+d) / m_quantization; + y = m_img->gray(col+d, row+d) / m_quantization; m_glcm[angle][x][y]++; - m_glcm[angle][y][x]++; + m_glcm[angle][y][x]++; } } |