Qt5.6.2 Opencv3.3.0 打开本地图片示例
在本文中,我们将深入探讨如何在Qt5.6.2中使用OpenCV3.3.0库来打开和显示本地图片。Qt是一个功能强大的C++框架,用于开发跨平台的图形用户界面应用,而OpenCV则是一个开源计算机视觉库,支持图像处理和计算机视觉算法。结合两者,我们可以创建高效且直观的图像查看应用。 确保你已经安装了Qt5.6.2和OpenCV3.3.0。你可以从各自的官方网站下载并按照官方文档进行安装。安装完成后,需要将OpenCV库添加到Qt项目的编译路径中,以便能够正确链接到所需的库文件。 1. **配置项目文件 (.pro)**: 在Qt Creator中,打开或创建一个新的Qt项目。在`.pro`文件中,添加以下行来链接OpenCV库: ``` INCLUDEPATH += /path/to/opencv/include LIBS += -L/path/to/opencv/lib -lopencv_core -lopencv_highgui -lopencv_imgproc ``` 这里,`/path/to/opencv`是你的OpenCV安装目录。 2. **编写代码**: 创建一个`main.cpp`文件,并引入必要的头文件: ```cpp #include <QApplication> #include <QWidget> #include <QLabel> #include <QPixmap> #include <opencv2/opencv.hpp> using namespace cv; ``` 接下来,我们需要定义一个窗口类,用于显示图片: ```cpp class ImageWidget : public QWidget { public: explicit ImageWidget(QWidget *parent = nullptr) : QWidget(parent) {} void setImage(const Mat &image) { QPixmap pixmap; if (image.type() == CV_8UC3) { QImage img(image.data, image.cols, image.rows, QImage::Format_RGB888); pixmap = QPixmap::fromImage(img.rgbSwapped()); } else if (image.type() == CV_8UC1) { QImage img(image.data, image.cols, image.rows, QImage::Format_Indexed8); img.setColorCount(256); for (int i = 0; i < 256; ++i) img.setColor(i, qRgb(i, i, i)); pixmap = QPixmap::fromImage(img); } setPixmap(pixmap.scaled(width(), height(), Qt::KeepAspectRatio, Qt::SmoothTransformation)); } }; ``` `setImage`函数将OpenCV的`Mat`对象转换为Qt的`QPixmap`,然后设置到`QWidget`上显示。 3. **加载和显示图片**: 在`main.cpp`中,我们加载本地图片并将其显示在`ImageWidget`上: ```cpp int main(int argc, char *argv[]) { QApplication app(argc, argv); // 加载图片 Mat image = imread("path/to/your/image.jpg"); if (image.empty()) { std::cerr << "无法加载图片!" << std::endl; return -1; } // 创建窗口并显示图片 ImageWidget widget; widget.setImage(image); widget.show(); return app.exec(); } ``` 请将`"path/to/your/image.jpg"`替换为你想要打开的图片路径。 4. **编译和运行**: 使用Qt Creator构建并运行项目。如果一切顺利,你应该能看到一个窗口,其中显示了指定的本地图片。 通过这个示例,我们了解了如何在Qt5.6.2中集成OpenCV3.3.0来处理和显示本地图片。这只是一个基本的应用,实际上OpenCV和Qt的组合可以实现更复杂的功能,如图像处理、特征检测、人脸识别等。在实际开发中,你可以根据需要扩展这个基础,构建更强大的图像处理应用。
- 1
- 粉丝: 55
- 资源: 11
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 年终奖雷区测试及注意说明.xls
- 谨防年终奖发放的“雷区”.xls
- 年终奖发放税筹、技巧及注意事项.pptx
- 六种薪酬模式下销售员工的年终奖发放策略(技巧篇).doc
- 员工年终奖分配方案(规范行政文件).doc
- 2016年终奖税率表(清晰一览表).docx
- 个税最佳配置表-月薪及年终奖.XLS
- 【化工行业】化学原料及成品制造业年终奖金制度.doc
- 【制造行业】绩效奖金、年终奖金发放办法(通用模板).docx
- 高管层年终奖避税测算表(含各税点测算).xlsx
- 工资年终奖调节试算表(模板).xls
- (3500)年终奖个税自动计算表.xls
- 一次性年终奖审批及发放明细表.xls
- 年终奖、年薪差个人所得税筹划方案测算表.xls
- 绩效奖金发放表(模板样式).xls
- 税前税后工资VS年终奖计算表(灵活-简单).xlsx