Add min and max to Function2D.

This commit is contained in:
Krad
2023-04-23 16:02:08 +08:00
parent c0e413e80c
commit 4c08268887
3 changed files with 212 additions and 0 deletions

View File

@@ -6,12 +6,42 @@
namespace Aurora {
enum FunctionDirection{
Column,
Row,
All
};
double immse(const Matrix& aImageA, const Matrix& aImageB);
Matrix inv(const Matrix& aMatrix);
Matrix inv(Matrix&& aMatrix);
Matrix interp2(const Matrix& aX, const Matrix& aY, const Matrix& aV, const Matrix& aX1, const Matrix& aY1, InterpnMethod aMethod);
Matrix interpn(const Matrix& aX, const Matrix& aY, const Matrix& aV, const Matrix& aX1, const Matrix& aY1, InterpnMethod aMethod);
Matrix std(const Matrix& aMatrix);
/**
* 求矩阵最小值,可按行、列、单元, 目前不支持三维,不支持复数
* @param aMatrix 矩阵
* @param direction 方向Column, Row, All
* @return
*/
Matrix min(const Matrix& aMatrix,FunctionDirection direction = Column);
/**
* 求矩阵最小值,可按行、列、单元, 目前不支持三维,不支持复数
* @param aMatrix 矩阵
* @param direction 方向Column, Row, All
* @return
*/
Matrix max(const Matrix& aMatrix,FunctionDirection direction = Column);
/**
* 比较两个矩阵,求对应位置的最小值,不支持三维
* @attention 矩阵形状不一样时如A为[MxN],则B应为标量或[1xN]的行向量
* @param aMatrix
* @param aOther
* @return
*/
Matrix min(const Matrix& aMatrix,const Matrix& aOther);
};