您的位置:首页 > 编程语言 > Qt开发

9.10 QT VS2010 Opencv图像界面程序

2014-03-15 10:21 260 查看
方法:http://blog.csdn.net/whw8007/article/details/18462417

(1)连接信号槽,并且添加响应函数;

(2)编写响应函数

声明 qt5test.h

private:

Ui::Qt5testClass ui;

cv::Mat image; //定义私有变量 image

cv::Mat result;//定义私有变量 result

private slots: //声明信号函数

void OpenImageClicked();

void ProcessClicked();

qt5test.cpp,定义响应函数

a.//图像在QT显示前,必须转化成QImage格式,将RGBA格式转化成RGB

void Qt5test::OpenImageClicked()

{

image = cv::imread("img.jpg");//读取图像

cv::cvtColor(image, image, CV_RGB2RGBA);//图像在QT显示前,必须转化成QImage格式,将RGBA格式转化成RGB

QImage img = QImage((const unsigned char*)(image.data),

image.cols, image.rows, QImage::Format_RGB32);

QLabel *label = new QLabel(this);

label->move(130,50);

label->setPixmap(QPixmap::fromImage(img));

label->resize(label->pixmap()->size());

label->show();

}

void Qt5test::ProcessClicked()

{

cv::flip(image,result,1);//对图像进行翻转

QImage img = QImage((const unsigned char*)(result.data),

result.cols, result.rows, QImage::Format_RGB32);

QLabel *label = new QLabel(this);

label->move(380,50);

label->setPixmap(QPixmap::fromImage(img));

label->resize(label->pixmap()->size());

label->show();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: