函数原型 1:
void cv::minMaxLoc(InputArray src,double * minVal,double * maxVal = 0,Point * minLoc = 0,Point * maxLoc = 0,InputArray mask = noArray() )
解析:
src:输入数组 / 图像数据(只能是单通道)minVal:输出最小值maxVal:输出最大值minLoc:输出最小值坐标maxLoc:输出最大值坐标mask:掩膜
函数原型 2:
void cv::minMaxLoc(const SparseMat & a,double * minVal,double * maxVal,int * minIdx = 0,int * maxIdx = 0 )
备注:函数原型 2 和函数原型 1 的区别仅仅在于数据格式不同,便于调用
解析:
a:输入数组 / 图像数据(只能是单通道)minVal:输出最小值maxVal:输出最大值minIdx:输出最小值坐标maxIdx:输出最大值坐标
使用案例:
cv::Mat lena = cv::imread("lena.jpg", 0);double minVal;double maxVal;cv::Point minLoc;cv::Point maxLoc;cv::minMaxLoc(lena, &minVal, &maxVal, &minLoc, &maxLoc);cout << "minVal: " << minVal << ", maxVal: " << maxVal << ", minLoc: " << minLoc << ", maxLoc: " << maxLoc << endl;
输出:
minVal: 1, maxVal: 246, minLoc: [100, 282], maxLoc: [70, 219]