Krotos Modules 3
Loading...
Searching...
No Matches
DiscreteCosineTransform.h
Go to the documentation of this file.
1#pragma once
2
3#include <cmath>
4#include <cstddef>
5#include <vector>
6
7namespace krotos
8{
10 {
11
12 public:
15
16 void setInputOutputSize(const std::size_t& inputSize, const std::size_t& outputSize);
17
19 std::vector<float> calculateDCT(const std::vector<float>& input);
20
21 void buildDctMatrix(const std::size_t& inputSize, const std::size_t& outputSize);
22
23 private:
24 float m_pi = 3.141592653589793238f;
25 std::size_t m_inputSize = 0;
26 std::size_t m_outputSize = 0;
27
28 std::vector<std::vector<float>> m_dctMatrix;
29 };
30} // namespace krotos
Definition DiscreteCosineTransform.h:10
void buildDctMatrix(const std::size_t &inputSize, const std::size_t &outputSize)
Definition DiscreteCosineTransform.cpp:35
void setInputOutputSize(const std::size_t &inputSize, const std::size_t &outputSize)
Definition DiscreteCosineTransform.cpp:9
std::size_t m_outputSize
Definition DiscreteCosineTransform.h:26
DiscreteCosineTransform()
Definition DiscreteCosineTransform.cpp:4
float m_pi
Definition DiscreteCosineTransform.h:24
std::vector< std::vector< float > > m_dctMatrix
Definition DiscreteCosineTransform.h:28
std::vector< float > calculateDCT(const std::vector< float > &input)
Definition DiscreteCosineTransform.cpp:15
std::size_t m_inputSize
Definition DiscreteCosineTransform.h:25
Definition AirAbsorptionFilter.cpp:2