comparison chromamethods.cpp @ 48:6e76c7710fa1 matthiasm-plugin

removed subtraction in chroma dictionary, added to-the-power-of-1.5 in chordino
author matthiasm
date Mon, 25 Oct 2010 16:58:32 +0900
parents 109d3b2c7105
children 08d24cc21312
comparison
equal deleted inserted replaced
47:ea35e6e804f1 48:6e76c7710fa1
376 // sum = 0; 376 // sum = 0;
377 // } 377 // }
378 // 378 //
379 // } 379 // }
380 380
381 float exponent = 2.0;
381 382
382 for (int iChord = 0; iChord < loadedChordDict.size()/24; iChord++) { 383 for (int iChord = 0; iChord < loadedChordDict.size()/24; iChord++) {
383 float sum = 0; 384 float sum = 0;
384 float stand = 0; 385 float stand = 0;
385 for (int iST = 0; iST < 24; ++iST) { 386 for (int iST = 0; iST < 24; ++iST) {
386 sum += loadedChordDict[24 * iChord + iST]; 387 sum += loadedChordDict[24 * iChord + iST];
387 } 388 }
388 for (int iST = 0; iST < 24; ++iST) { 389 for (int iST = 0; iST < 24; ++iST) {
389 loadedChordDict[24 * iChord + iST] -= sum/24; 390 // loadedChordDict[24 * iChord + iST] -= sum/24;
390 stand += pow(loadedChordDict[24 * iChord + iST],2)/24; 391 stand += pow(abs(loadedChordDict[24 * iChord + iST]),exponent)/24;
391 } 392 }
392 stand = sqrt(stand); 393 stand = pow(stand,(float)1.0/exponent);
393 for (int iST = 0; iST < 24; ++iST) { 394 for (int iST = 0; iST < 24; ++iST) {
394 loadedChordDict[24 * iChord + iST] /= stand; 395 loadedChordDict[24 * iChord + iST] /= stand;
395 } 396 }
396 397
397 } 398 }