标签:cvs str 处理 header class data 流处理 head char
做图片流处理的时候总是保存不对,
图片如下
用如下代码保存,其中Arr是byte数组
//IplImage *img = cvCreateImage(cvSize(width, height), IPL_DEPTH_8U, Channels); //IplImage *img = cvCreateImage(cvSize(width, height), IPL_DEPTH_8U, 3); //cvZero(img); //img->imageData =(char*) Arr; //img->imageDataOrigin= (char*)Arr; //cv::Mat mImg(img, 0);
这种效果
//Mat mImg(height, width, CV_8UC(Channels), (uchar*)Arr); //Mat mImg(height, width, CV_8UC(depth), (uchar*)Arr); //IplImage *img = &IplImage(mImg); imwrite(LPCSTR(csFile), mImg);
我需要冷静一下!!!!!!
研究了一下,改成如下
IplImage *img = cvCreateImageHeader(cvSize(width, height), IPL_DEPTH_8U, Channels); cvSetData(img, Arr, Channels*width); cv::Mat mImg(img, 0);
终于完美还原,问题来了,什么原因呢?
标签:cvs str 处理 header class data 流处理 head char
原文地址:http://www.cnblogs.com/baldermurphy/p/6771224.html