In OpenCV, multiplying two scalars returns unexpected result, for example :
cv::Scalar s1(2, 3, 4);
cv::Scalar s2(2, 3, 4);
cv::Scalar s3 = s1 * s2;
where I expect s3 should be [4,9,16,0] ,however the result is [-21, 12, 16, 0], I would like to know the logic behind it. Thanks!