1. 程式人生 > >OpenCV minMaxLoc找影象中最小值最大值及它們的位置

OpenCV minMaxLoc找影象中最小值最大值及它們的位置

void minMaxLoc(InputArray src, double* minVal, double* maxVal=0, Point* minLoc=0, Point* maxLoc=0, InputArray mask=noArray())

src:輸入影象。

minVal:最小值,可輸入NULL表示不需要。

maxVal :最大值,可輸入NULL表示不需要。

minLoc:最小值的位置,可輸入NULL表示不需要,Point型別。

maxLoc:最大值的位置,可輸入NULL表示不需要,Point型別。

mask:可有可無的掩模。

 

 

 

示例程式:

#include <iostream>  

#include <opencv2/core/core.hpp>

#include <opencv2/imgproc/imgproc.hpp>

#include <opencv2/opencv.hpp>

using namespace std;

using namespace cv;

 

int main()

 

{

 

    Mat src = imread("C:\\Users\\ Desktop\\ test1.jpg"

, 0);

   

    double minValue, maxValue;

    Point minLoc, maxLoc;

    minMaxLoc(src, &minValue, &maxValue, &minLoc, &maxLoc);

    cout << "影象灰度最小值:" << minValue << "\n"

        <<

"影象灰度最小值的位置:" << minLoc << "\n"

        << "***********************************" << "\n"

        << "影象灰度最大值:" << maxValue << "\n"

        << "影象灰度最大值的位置:" << maxLoc << endl;

 

    imshow("原圖", src);

    waitKey(0);

    return 0;

 

}