22 #ifndef CRNMATRIXComplex_HEADER
23 #define CRNMATRIXComplex_HEADER
31 void FFT(std::vector<std::complex<double> > &sig,
bool direct);
62 void GrowToPowerOf2(
bool make_square,
const std::complex<double> &fill_value = std::complex<double>(0, 0));
68 void FFT(
bool direct);
71 std::pair<Point2DInt, double>
CrossCorrelation(
const MatrixComplex &other,
const std::complex<double> &fill1 = std::complex<double>(0, 0),
const std::complex<double> &fill2 = std::complex<double>(0, 0));
MatrixComplex & operator=(const MatrixComplex &)=default
void FFT(std::vector< std::complex< double > > &sig, bool direct)
Fast Fourier transform.
MatrixDouble MakeModule() const
Returns a matrix containing the modules of the inner values.
MatrixComplex(Matrix< std::complex< double >> &&m)
MatrixComplex(const Matrix< std::complex< double >> &m)
std::pair< Point2DInt, double > CrossCorrelation(const MatrixComplex &other, const std::complex< double > &fill1=std::complex< double >(0, 0), const std::complex< double > &fill2=std::complex< double >(0, 0))
Cross correlation.
void GrowToPowerOf2(bool make_square, const std::complex< double > &fill_value=std::complex< double >(0, 0))
Grows the matrix to power of 2 sizes (for FFT)
virtual ~MatrixComplex() override=default
Destructor.
#define CRN_DECLARE_CLASS_CONSTRUCTOR(classname)
Declares a class constructor.
void FFT(bool direct)
Inplace fast Fourier transform.
CRN_ALIAS_SMART_PTR(ImageBW)
A class containing informations on a type.
Matrix(size_t nrow, size_t ncol, const std::complex< double > &value=std::complex< double >(0))
Constructor.