Ask Your Question

Revision history [back]

matrix inverse multiply another matrix

I asked this question on stackoverflow, but since it is concerning opencv specifically thought I try my luck here as well.


Forgive me if this sounds like an amateur question but I'm having problem understanding the code here. The author declared a rotation matrix of 3x3 and a translation vector of 1x3.

cv::Mat rvec(1,3,cv::DataType<double>::type);
cv::Mat tvec(1,3,cv::DataType<double>::type);
cv::Mat rotationMatrix(3,3,cv::DataType<double>::type);

And then later there is this operation

cv::Mat rightSideMat = rotationMatrix.inv() * tvec;

Can anyone explain to me why this works, when the shape of the matrices (3x3, 1x3) don't align? I have tried it out and it runs.