如何获取图像中的像素数?以下是我的代码,我需要得到Mat“m”中的总像素数。
int main()
{
Mat m = imread("C:/Users/Public/Pictures/Sample Pictures/Penguins.jpg");
namedWindow("Image");
imshow("Image",m);
waitKey(0);
}
答案 0 :(得分:20)
如果您想要像素的总数,请使用cv::Mat::total()
。
int nPixels = m.total();
请注意,对于多通道图像,像素数与数组中的元素数不同。每个像素最常用于每个像素一个(即灰度)和四个(即BGRA)元素。
答案 1 :(得分:1)
使用此
int nPixels = (m.cols*m.channels())*m.rows;
cout << nPixels << endl;