d@0: /* d@0: ============================================================================== d@0: d@0: FeatureData.h d@0: Created: 28 Aug 2014 6:41:48pm d@0: Author: david.ronan d@0: d@0: ============================================================================== d@0: */ d@0: d@0: #ifndef FEATUREDATA_H_INCLUDED d@0: #define FEATUREDATA_H_INCLUDED d@0: d@0: #include "ObservationData.h" d@0: #include d@0: #include d@0: d@0: class FeatureData d@0: { d@0: public: d@0: FeatureData(); d@0: ~FeatureData(); d@0: FeatureData(std::vector observationData, std::string label, std::string fileName, float sampleRate, int windowSize, float lengthOfAudioClip , float poolingTimeFactor) d@0: { d@0: m_ObservationData = observationData; d@0: m_Label = label; d@0: m_FileName = fileName; d@0: m_SampleRate = sampleRate; d@0: m_LengthOfAudioClip = lengthOfAudioClip; d@0: m_WindowSize = windowSize; d@0: m_poolingTimeFactor = poolingTimeFactor; d@0: d@0: ComputeLowEnergyFeature(); d@0: ComputeDeltaMFCCs(); d@0: d@0: //Pool the Data d@0: PoolData(m_poolingTimeFactor); d@0: }; d@0: d@0: std::vector GetObservationData(){return m_ObservationData;} d@0: d@0: std::vector GetPooldedObservationDataAverage(){return m_PooledObservationDataAverage;} d@0: std::vector GetWholeTrackObservationDataAverage(){return m_WholeTrackObservationDataAverage;} d@0: d@0: std::vector GetPooldedObservationDataStd(){return m_PooledObservationDataStd;} d@0: std::vector GetWholeTrackObservationDataStd(){return m_WholeTrackObservationDataStd;} d@0: d@0: std::vector GetPooldedObservationDataMax(){return m_PooledObservationDataMax;} d@0: std::vector GetWholeTrackObservationDataMax(){return m_WholeTrackObservationDataMax;} d@0: d@0: std::vector GetPooldedObservationDataMin(){return m_PooledObservationDataMin;} d@0: std::vector GetWholeTrackObservationDataMin(){return m_WholeTrackObservationDataMin;} d@0: d@0: std::string GetLabel(){return m_Label;} d@0: float GetPoolingTimeFactor(){return m_poolingTimeFactor;} d@0: d@0: d@0: private: d@0: void ComputeLowEnergyFeature(); d@0: void ComputeDeltaMFCCs(); d@0: void PoolData(float timefactor); d@0: d@0: float Average(std::vector v); d@0: float Deviation(std::vector v, float ave); d@0: float Max(std::vector v); d@0: float Min(std::vector v); d@0: d@0: std::vector m_ObservationData; d@0: d@0: std::vector m_PooledObservationDataAverage; d@0: std::vector m_WholeTrackObservationDataAverage; d@0: d@0: std::vector m_PooledObservationDataStd; d@0: std::vector m_WholeTrackObservationDataStd; d@0: d@0: std::vector m_PooledObservationDataMax; d@0: std::vector m_WholeTrackObservationDataMax; d@0: d@0: std::vector m_PooledObservationDataMin; d@0: std::vector m_WholeTrackObservationDataMin; d@0: d@0: std::string m_Label; d@0: std::string m_FileName; d@0: d@0: float m_SampleRate; d@0: float m_LengthOfAudioClip; d@0: d@0: int m_WindowSize; d@0: float m_poolingTimeFactor; d@0: d@0: std::vector> m_deltamfccs; d@0: }; d@0: d@0: d@0: d@0: #endif // FEATUREDATA_H_INCLUDED