minMaxLoc仅返回找到的第一个点。但是,该最小值或最大值可能会超过一个点。是否有内置函数可以找到所有要点?为什么minMaxLoc只返回1个位置,它只看本地点吗?
答案 0 :(得分:2)
由于您知道最小值或最大值,因此可以遍历矩阵并找到位置。
示例:
vector<Point> max_values;
vector<Point> min_values;
for (int y=0;y<matrix.rows<y++){
for (int x=0;x<matrix.cols<x++){
if (matrix.at<float>(y,x) == max_val){
max_values.push_back(Point(x,y));
}
if (matrix.at<float>(y,x) == min_val){
min_values.push_back(Point(x,y));
}
}
}
我没有尝试过代码,但是应该是这样的