private void calcEntropy() { calcEntropy(m_kImageA, m_kImageA.dataSize); int nVoxels = m_kImageA.dataSize; if (((m_kImageA.nDims < 3) && (m_dOverlap > 1000)) || ((m_kImageA.nDims == 3) && (m_dOverlap > (0.15 * nVoxels)))) { double nRatio = (nVoxels) / m_dOverlap; m_dHx = (nRatio * m_dHx) - Math.log(nRatio); m_dHy = (nRatio * m_dHy) - Math.log(nRatio); m_dHxy = (nRatio * m_dHxy) - Math.log(nRatio); } else { m_dHx = Math.log(nVoxels); m_dHy = Math.log(nVoxels); m_dHxy = 2.0 * Math.log(nVoxels); } }