Ask Your Question

Revision history [back]

using mul resut type will be CV_8UC1. If you want a good result you have to use multiply :

Mat A = (Mat_<uchar>(2, 4) << 5, 6, 0, 4, 0, 1, 9, 9);
Mat B = (Mat_<uchar>(2, 4) << 60,9,1,0,4,0,6,5);
cout << "mat.mul =" << A.mul(B) << endl;
Mat C;
multiply(A, B, C, 1, CV_32S);
cout << "C =" << C << endl;

Results are

mat.mul =[255,  54,   0,   0;
   0,   0,  54,  45]
C =[300, 54, 0, 0;
 0, 0, 54, 45]