-
最基础的OpenCV与Qt的结合 - [Computer Graphics (计算机图形学)]
2009-07-19 | Tag:Qt OpenCV 图片 显示
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://anthonychan.blogbus.com/logs/42619471.html
访问作者的主页:http://sites.google.com/site/anthonyxiangchen/home
这是一个利用OpenCV读取一张图片然后用Qt生成窗口display出来。做的主要是IplImage到QImage的转换。大部分参考了这个人的博客(http://leohart.net/site/comments/convert_opencv_iplimage_to_qt_qimage/)
基本用法就是:
1)声明这个类,传入图片路径到构造函数中;
2)用getQImage函数获得QImage,然后就可以用到Qt的东西中。
#include <QtCore>
#include <QtGui>
#include "cv.h"
#include "highgui.h"
class QCvImage{
private:
IplImage* cvBGRImg;
IplImage* cvRGBImg;
public:
QCvImage()
{
}
QCvImage(char* imgPath)
{
cvBGRImg = cvLoadImage(imgPath, true);
cvRGBImg = NULL;
}
QImage* getQImage(void)
{
if(cvBGRImg == NULL)
return NULL;
cvRGBImg = cvCloneImage(cvBGRImg);
cvCvtColor(cvBGRImg, cvRGBImg, CV_BGR2RGB);
uchar* imgData = (uchar*)(cvRGBImg->imageData);
QImage* qimg = new QImage(imgData, cvRGBImg->width, cvRGBImg->height, QImage::Format_RGB888);
return qimg;
}
~QCvImage()
{
cvReleaseImage(&cvBGRImg);
cvReleaseImage(&cvRGBImg);
}
};
随机文章:
VS使用者的Qt的初始化系统配置 2009-04-16如何让VS2005显示行号 2009-02-25如何快速便捷地建立Qt工程 2009-02-13Bresenham Line Drawing (2) 2008-10-04
收藏到:Del.icio.us
引用地址:








