Question on matrix Multiplication to get a 1 by 1 matrix in OpenCV

I need some advice in modifying this line of code.

Suppose I have Matrix A has a dimension of 1 by 2, Matrix P_x.t() has a dimension of 2 by 1, R_x has a dimension of 1 by 1. The dimension of T need to be a matrix of dimensions 1 by 1.


cv::Matx<double,1,1> T = {(A *P_x* A.t())+ R_x};
cv::Matx21d I = P_x*(A.t());

Because T is a 1-by-1 matrix, I know I can’t use T.inv() .Instead, I need to use I/T(0).


 cv::Matx21d K = I/T(0);

During implementation, I got an error message.

no operator “/” matches these operands
operand types are: cv::Matx21d / double

Where should I make the changes?

related: c++ - How do I create a 1 by 1 matrix in OpenCV? - Stack Overflow