最新版本的OpenCV:
数据结构
储存图像的数据类型不再是 IplImage 的指针, 使用 cv::Mat 即可。
读取图像
读取图像的函数改为:
cv::imread(const string & FileName, int flag)
其中,可选的 flag 有
- CV_LOAD_IMAGE_ANYDEPTH 如果图像具有32/64位深度,使用图像对应的色彩深度
- CV_LOAD_IMAGE_COLOR 转换为彩色图像 (默认)
- CV_LOAD_IMAGE_GRAYSCALE 转换为灰度图像
创建窗口
创建窗口的函数改为
cv::namedWindow(const string & windowName, int flag)
#include "cv.h" #include "highgui.h" #include "cxcore.h" #include <iostream> using namespace std; using namespace cv;//都在cv命名空间中 int main() { string picture="lena.jpg"; Mat image; //CV_EXPORTS_W Mat imread( const string& filename, int flags=1 ); image=imread(picture);//返回Mat if (!image.data) { cout<<"Could not open image"<<endl; return -1; } namedWindow(picture); imshow(picture,image); waitKey(0); return 0; }