# HG changeset patch # User Matthias Mauch # Date 1288325691 -32400 # Node ID b80144039d8f6fc1aa10e5f64effad980b906944 # Parent 3ef99d22ec6b1306e081b34b826b702fd66d80e8 slightly raised weight for the N chord -- better detection of non-harmonic parts diff -r 3ef99d22ec6b -r b80144039d8f chromamethods.cpp --- a/chromamethods.cpp Thu Oct 28 11:36:28 2010 +0200 +++ b/chromamethods.cpp Fri Oct 29 13:14:51 2010 +0900 @@ -385,6 +385,7 @@ // } float exponent = 2.0; + float boostN = 1.1; for (int iChord = 0; iChord < loadedChordDict.size()/24; iChord++) { float sum = 0; @@ -396,7 +397,11 @@ // loadedChordDict[24 * iChord + iST] -= sum/24; stand += pow(abs(loadedChordDict[24 * iChord + iST]),exponent)/24; } - stand = pow(stand,(float)1.0/exponent); + if (iChord < loadedChordDict.size()/24 - 1) { + stand = pow(stand,(float)1.0/exponent); + } else { + stand = pow(stand,(float)1.0/exponent) / boostN; + } for (int iST = 0; iST < 24; ++iST) { loadedChordDict[24 * iChord + iST] /= stand; }