OPENCV 访问图像像素值
简单总结下OPENCV中几种数据类型访问图片像素值的方法,有Mat类型,IplImage类型,CvMat 类型。以下均是针对灰度图,彩色图其实就是对应三个通道的操作。
- 1. Mat 类型
for (int i = 0; i < img.rows; i++)
{
for (int j = 0; j < img.cols; j++)
{
cout << (int)img.at<uchar>(i, j) << " ";
}
}
- 2. IplImage类型
IplImage* srcImg;
for (int i = 0; i < srcImg->height; i++)
{
for (int j = 0; j < srcImg->width; j++)
{
temp = cvGet2D(srcImg, i, j).val[0];
//cout << temp << endl;
}
}
- 3.CvMat类型
void printMat(CvMat* mat)//打印mat矩阵
{
for (int i = 0; i < mat->rows; i++)
{
for (int j = 0; j < mat->cols; j++)
{
cout << cvmGet(mat, i, j) << " ";
}
cout << endl;
}
}