一、
使用Mat矩阵类的成员data(uchar*)可获取图像的数据:
Mat src;
src = imread("src.png");
for(int i = 0; i < src.rows * src.cols * src.channels(); ++i)
printf("%d ", src.data[i]);
二、
通过以下方法可将buffer(uchar*)中的数据转换为图像:
cv::Mat image_1(rows, cols, CV_8UC3, buffer);
cv::imshow("image_1", image_1);
或:
cv::Mat image_2({cols, rows}, CV_8UC3, buffer);
cv::imshow("image_2", image_2);
注意两种写法的不同:变量rows和cols位置互换。