24 #ifndef AUDITORYPREPROCESSING_H
25 #define AUDITORYPREPROCESSING_H
85 #endif // AUDITORYPREPROCESSING_H
Class of functions for auditory preprocessing.
static double mtof(int m)
void extrapolateInharmonicity()
Extrapolate inharmonicity and estimate missing values.
std::vector< double > mdBA
Class describing the piano keyboard, holding a collection of keys.
const size_t NumberOfBins
Class describing a single piano key.
static const int NumberOfBins
Total number of slots: 9 octaves.
void initializeSPLAFilter()
Initialize the filter function in the vector mdBA.
void applyMollifier(Key &key)
double getInharmonicPartial(double n, double f1, double B)
Compute frequency of inharmonic partial.
static double IndexToFrequency(double m)
Convert continuous slot index to frequency in Hz.
AuditoryPreprocessing(Piano &piano)
Constructor.
void convertToSPLA(SpectrumType &s)
Compute A-weighted sound pressure level SPLA.
static double FrequencyToRealIndex(double f)
Convert frequency to real-valued logbin index.
Namespace for all entropy minimizer components.
bool checkDataConsistency()
Check consistency of the piano dataset.
std::vector< double > SpectrumType
Type of a log-binned spectrum.
static double ftom(double f)
double getInharmonicPartialIndex(double f, double f1, double B)
void improveHighFrequencyPeaks()
Improve high-frequency spectral lines.
void normalizeSpectrum(Key &key)
Normalize spectrum.
Key::SpectrumType SpectrumType
void convertToLoudness(SpectrumType &s)
void cutLowFrequencies(Key &key)
Cut all frequencies below 5/6*f1 in order to reduce noise.
void cleanSpectrum(Key &key)
Clean logarithmically binned spectrum.