opencv2.0中的数据类型cv::Mat与OPENCV1.0中的iplimage类型如何进行互相转换
我已经试过,CV::Mat与cvMat并不是同一数据类型
————————————————
iplimage -> cv::Mat
做个简单的范例。
Ex.
//使用Mat的构造函数:Mat::Mat(const IplImage* img, bool copyData=false); 默认情况下copyData为false
IplImage* srcImg = cvLoadImage("Lena.jpg");
//注意:以下三种效果一致,均为浅拷贝
Mat M(srcImg);
Mat M(srcImg, false);
Mat M = srcImg;
//注意:当将参数copyData设为true后,则为深拷贝(复制整个图像数据)
Mat M(srcImg, true);
cv::Mat -> iplimage
Ex.
//注意:浅拷贝 - 同样只是创建图像头,而没有复制数据
Mat M;
IplImage img = M;
IplImage img = IplImage(M);
//深拷贝
cv::Mat img2;
IplImage imgTmp = img2;
IplImage *input = cvCloneImage(&imgTmp);