OpenCV - > IplImage与Mat

时间:2015-10-24 19:14:35

标签: c++

我是OpenCV的绝对乞丐。我已经安装了2.4.10版本。我写了这个简单的脚本,它有效:

#include "opencv\cv.h"
#include "opencv\ml.h"
#include "opencv\cxcore.h"
#include "opencv\highgui.h"
#include <iostream>

using namespace cv;
using namespace std;

int main(int argc, char* argv[])
{
    IplImage* img = cvLoadImage("C:/Users/Me/Desktop/photo.jpg", 0);
    cvNamedWindow("Example");
    cvShowImage("Example", img);
    cvReleaseImage(&img);
    cvDestroyWindow("Example");
    return 0;
}

但我想避免使用指针。 我尝试用这个函数替换选定的行:

 Mat img = imread("C:/Users/Me/Desktop/photo.jpg", CV_LOAD_IMAGE_UNCHANGED);

if (img.empty()) 
{
    return -1;
}
namedWindow("MyWindow", CV_WINDOW_AUTOSIZE);
imshow("MyWindow", img);

失败了: 该程序&#39; [4296] Project1.exe&#39;已退出代码-1(0xffffffff)。

我不知道为什么IplImage *可以工作但是Mat不行?有什么区别?也许我没有附上合适的图书馆?

0 个答案:

没有答案
相关问题