|
libcrn
3.9.5
A document image processing library
|
Complex matrix class. More...
#include <CRNMatrixComplex.h>
Inheritance diagram for crn::MatrixComplex:
Collaboration diagram for crn::MatrixComplex:Public Member Functions | |
| MatrixComplex (const Matrix< std::complex< double >> &m) | |
| MatrixComplex (Matrix< std::complex< double >> &&m) | |
| MatrixComplex (const MatrixComplex &)=default | |
| MatrixComplex (MatrixComplex &&)=default | |
| virtual | ~MatrixComplex () override=default |
| Destructor. More... | |
| MatrixComplex & | operator= (const MatrixComplex &)=default |
| MatrixComplex & | operator= (MatrixComplex &&)=default |
| 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) More... | |
| MatrixDouble | MakeModule () const |
| Returns a matrix containing the modules of the inner values. More... | |
| void | FFT (bool direct) |
| Inplace fast Fourier transform. More... | |
| 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. More... | |
Public Member Functions inherited from crn::Matrix< std::complex< double > > | |
| Matrix (size_t nrow, size_t ncol, const std::complex< double > &value=std::complex< double >(0)) | |
| Constructor. More... | |
| Matrix (const std::vector< std::vector< std::complex< double > >> &m) | |
| Constructor from std::vector matrix. More... | |
| Matrix (const std::vector< std::complex< double > > &vect, Orientation ori=Orientation::VERTICAL) | |
| Constructor from std::vector 1D vector. More... | |
| Matrix (std::vector< std::complex< double > > &&vect, Orientation ori=Orientation::VERTICAL) | |
| Constructor from std::vector 1D vector. More... | |
| Matrix (const Matrix &)=default | |
| Matrix (const Matrix< Y > &m) | |
| Matrix (Matrix &&)=default | |
| virtual | ~Matrix () override=default |
| Destructor. More... | |
| Matrix & | operator= (const Matrix &)=default |
| Matrix & | operator= (Matrix &&)=default |
| void | Swap (Matrix &m) |
| size_t | GetRows () const noexcept |
| Returns the number of rows. More... | |
| size_t | GetCols () const noexcept |
| Returns the number of columns. More... | |
| const std::complex< double > & | At (size_t pos) const noexcept |
| std::complex< double > & | At (size_t pos) noexcept |
| const std::complex< double > & | At (size_t r, size_t c) const noexcept |
| std::complex< double > & | At (size_t r, size_t c) noexcept |
| void | SetAll (const std::complex< double > &v) |
| Set all elements. More... | |
| void | Negative () |
| Change sign for all elements. More... | |
| void | SetRow (size_t r, const std::vector< std::complex< double > > &row) |
| Sets the values of a row. More... | |
| void | SetColum (size_t c, const std::vector< std::complex< double > > &col) |
| Sets the values of a column. More... | |
| void | IncreaseElement (size_t r, size_t c, const std::complex< double > &delta) |
| Increases the value of an element. More... | |
| void | IncreaseRow (size_t r, const std::complex< double > &v) |
| Increase one row from matrix. More... | |
| void | IncreaseColumn (size_t c, const std::complex< double > &v) |
| Increase one column from matrix. More... | |
| Matrix & | operator+= (const Matrix &m) |
| Matrix & | operator-= (const Matrix &m) |
| Matrix & | operator*= (const Matrix &m) |
| Matrix & | operator*= (double d) |
| Scaling. More... | |
| bool | operator== (const Matrix &m) const |
| bool | operator!= (const Matrix &m) const |
| Matrix & | operator/= (double d) |
| Scaling. More... | |
| void | MultRow (size_t r, double v) |
| Scale one row from matrix. More... | |
| void | MultColumn (size_t c, double v) |
| Scale one column from matrix. More... | |
| void | CenterColumns () |
| Centers all columns by subtracting the mean for each column. More... | |
| void | ReduceColumns (bool centered=true) |
| Reduces all columns by dividing by the standard deviation of each column. More... | |
| void | SwapRows (size_t r1, size_t r2) |
| Swap two rows in matrix. More... | |
| void | SwapColumns (size_t c1, size_t c2) |
| Swap two columns in matrix. More... | |
| void | NormalizeForConvolution () |
| Normalizes the matrix to be used for convolution. More... | |
| TypeInfo< std::complex< double > >::SumType | CumulateCells () const |
| std::complex< double > | GetMin () const |
| std::complex< double > | GetMax () const |
| std::pair< size_t, size_t > | Argmin () const |
| std::pair< size_t, size_t > | Argmax () const |
| Matrix | MakeTranspose () |
| Create transposition. More... | |
| virtual Matrix & | Transpose () |
| Inplace transposition. More... | |
| Matrix | MakeRowAsColumn (size_t r) const |
| Creates a column matrix from a row. More... | |
| Matrix | MakeRow (size_t r) const |
| Extract a row from current matrix. More... | |
| Matrix | MakeColumn (size_t k) const |
| Extracts one column from matrix. More... | |
| size_t | ArgmaxInRow (size_t r) const |
| Returns the row index of the maximal element in a row. More... | |
| size_t | ArgmaxInColumn (size_t c) const |
| Returns the row index of the maximal element in a column. More... | |
| size_t | CountNullCellsInRow (size_t r) const |
| Counts null cells in row. More... | |
| size_t | CountNullCellsInColumn (size_t c) const |
| Counts null cells in column. More... | |
| size_t | CountNullCells () const |
| Matrix | MakeColumnMeans () const |
| Matrix | MakeColumnDeviations (const Matrix &means) const |
| Matrix | MakeColumnDeviations (bool zero_means=false) const |
| standard deviation of patterns stored as the rows of a data matrix More... | |
| Matrix | MakeCovariance () const |
| std::complex< double > * | operator[] (size_t r) |
| Returns a row. More... | |
| const std::complex< double > * | operator[] (size_t r) const |
| Returns a row. More... | |
| const std::vector < std::complex< double > > & | Std () const &noexcept |
| std::vector< std::complex < double > > | Std ()&& |
| IMG | ToImage () const |
| Converts to image. More... | |
| String | ToString () const |
| Prints matrix into a string. More... | |
Public Member Functions inherited from crn::Object | |
| virtual | ~Object ()=default |
Additional Inherited Members | |
Protected Types inherited from crn::Matrix< std::complex< double > > | |
| using | datatype = std::vector< std::complex< double > > |
Protected Member Functions inherited from crn::Matrix< std::complex< double > > | |
| bool | areValidIndexes (size_t r, size_t c) const |
| checks the validity of indexes More... | |
Protected Attributes inherited from crn::Matrix< std::complex< double > > | |
| datatype | data |
| size_t | rows |
| size_t | cols |
Complex matrix class.
Matrix containing complex numbers
Definition at line 46 of file CRNMatrixComplex.h.
|
inline |
Definition at line 50 of file CRNMatrixComplex.h.
|
inline |
Definition at line 51 of file CRNMatrixComplex.h.
|
default |
|
default |
|
overridevirtualdefault |
Destructor.
| std::pair< Point2DInt, double > MatrixComplex::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.
Cross correlation
| [in] | other | the matrix to match |
| [in] | fill1 | the fill pattern for current matrix (to grow to power of 2 dimensions) |
| [in] | fill2 | the fill pattern for the other matrix (to grow to power of 2 dimensions) |
Definition at line 190 of file CRNMatrixComplex.cpp.
| void MatrixComplex::FFT | ( | bool | direct | ) |
Inplace fast Fourier transform.
Definition at line 157 of file CRNMatrixComplex.cpp.
| void MatrixComplex::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)
Grows the matrix to power of 2 sizes (for FFT)
| [in] | make_square | shall the resulting matrix be square? |
| [in] | fill_value | the value used to fill the blanks |
Definition at line 107 of file CRNMatrixComplex.cpp.
| MatrixDouble MatrixComplex::MakeModule | ( | ) | const |
Returns a matrix containing the modules of the inner values.
Definition at line 141 of file CRNMatrixComplex.cpp.
|
default |
|
default |
1.8.6