码迷,mamicode.com
首页 > 其他好文 > 详细

opencv中的图片流保存

时间:2017-04-26 22:01:42      阅读:208      评论:0      收藏:0      [点我收藏+]

标签: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);

技术分享

终于完美还原,问题来了,什么原因呢?

opencv中的图片流保存

标签:cvs   str   处理   header   class   data   流处理   head   char   

原文地址:http://www.cnblogs.com/baldermurphy/p/6771224.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!