У меня есть cv :: Mat типа CV_8U . Если я использую функцию cv :: minMaxLo c следующим образом:
cv::Mat img(rows, cols, CV_8U, data);
double minVal, maxVal;
cv::Point minLoc, maxLoc;
cv::minMaxLoc(img, &minVal, &maxVal, &minLoc, &maxLoc);
, я получаю:
maxVal = 255, maxLo c = [127, 126]
Тогда, если я использую следующий код:
img.at<uint8_t>(maxLoc); //or img.at<uint8_t>(127,126);
Результат равен 0
Я фактически получаю ноль для каждого элемента матрица с использованием обоих cv :: Mat :: at и cv :: imshow (). Но cv :: minMaxLo c дает правильный ответ. Поэтому мне было интересно, есть ли у кого-нибудь понимание того, почему эти две функции не будут согласованы.