OpenCV:如何获得像素数?

时间:2013-06-07 18:18:23

标签: c++ image opencv image-processing

如何获取图像中的像素数?以下是我的代码,我需要得到Mat“m”中的总像素数。

int main()
{
    Mat m = imread("C:/Users/Public/Pictures/Sample Pictures/Penguins.jpg");


    namedWindow("Image");
    imshow("Image",m);



    waitKey(0);


}

2 个答案:

答案 0 :(得分:20)

如果您想要像素的总数,请使用cv::Mat::total()

int nPixels = m.total();

请注意,对于多通道图像,像素数与数组中的元素数不同。每个像素最常用于每个像素一个(即灰度)和四个(即BGRA)元素。

答案 1 :(得分:1)

使用此

int nPixels = (m.cols*m.channels())*m.rows;
cout << nPixels << endl;