基于Qt和OpenCV实现彩色图和灰度图的转换

news/2024/7/5 9:52:45

一、实验目的与要求

1.1 目的

  • 熟悉Qt可视化开发,理解C++的面向对象思想

  • 熟悉Qt和Opencv开发环境搭建

  • 了解Qt消息机制

  • 初步理解Opencv的用法

  • 学会使用c++异常处理

1.2 要求

  • 使用Qt编写一程序,点击按钮从电脑目录选择jpg图片,显示在界面上

  • 再设置一按钮或者菜单,点击后将图片黑白化或者灰度化,保存到另一个目录里,并显示出来

  • 再次点击按钮,重新加载彩色图像,实现两种图像的转换

  • 在读取文件和保存过程中,要加入异常处理(try…catch)来确保错误捕捉到自己的处理程序范围内

二、工具与准备工作

2.2 实验工具

  • Qt_5.8_mingw_WIN32

  • Opencv_3.4

  • Win10_x64

2.2 环境搭建

  • Qt官网下载安装以上所述版本

  • Opencv官网下载3.4版本源码

  • 由于Qt使用Mingw32位编译器,OpenCV需要自己编译。使用Qt打开OpenCV源码目录下的MakeLists.txt文件,构建项目配置为install,选择正确的编译输出目录开始编译

  • 编译完成后新建项目,配置OpenCV环境依赖包

三、分析

UI界面设计,使用Qt creator的可视化界面编辑工具。需要添加打开文件按钮、色彩转换按钮、退出按钮。

点击此处下载文档和源码

 


http://www.niftyadmin.cn/n/3102303.html

相关文章

VC++中如何判断当前用户是否具有管理员权限

代码一: BOOL CRSysInfo::IsUserAdminPrivilege(const CString & strUserName,BOOL & bAdminPrivilege) { bAdminPrivilege FALSE; PSID pSid NULL; DWORD cbSid 0; LPTSTR bufDomain NULL; …

linux下载html并查看代码 curl使用

linux下载html并查看代码 curl使用 linux下载html并查看代码 curl -L http://www.baidu.com posted on 2019-07-15 02:21 ysbl 阅读(...) 评论(...) 编辑 收藏 转载于:https://www.cnblogs.com/ysbl/p/11186687.html

基于Python实现的论坛帖子情感分析

一、课程项目 Scuinfo文本分类分析 二、项目类容 爬取川大匿名社区SCUinfo在一段时间内的帖子,对其进行情感分类分析,包括情绪分类(积极,消极),帖子内容关联分析等。 三、个人工作完成报告 3.1 工作概…

MAC地址格式

随机配置一个mac地址,发现有的会报出Cannot assign requested address。 错误码是EADDRNOTAVAIL。 检查不是组播地址也不是全0地址。 组播地址就是第一个字节最低位为1,问题就是在这里。 发现第一个字节最低位为1时该函数就会返回0,driver中的…

分别基于WIN32 API界面编程和Cocos2d-x实现的两个版本FlappyBird游戏

1 开发背景 游戏程序设计涉及了学科中的各个方面,鉴于目的在于学习与进步,本游戏《Flappy Bird 》采用了两个不同的开发方式来开发本款游戏,一类直接采用win32底层API来实现,另一类采用当前火热的cocos2d-x游戏引擎来开发本游戏。…

基于WIN32 API界面编程实现的贪吃蛇游戏

1 设计目的和任务 本次期末大作业采用课程设计的形式进行,作为《Windows编程》课程的期末考核。要求综合运用Windows编程的相关知识,完成大作业的相关内容,并撰写设计报告。其目的和任务是: 巩固和加深学生对本课 程基本知识的理…

定制调试诊断工具和实用程序

定制调试诊断工具和实用程序——摆脱DLL"地狱"(DLL Hell)的困扰(一)原著:Christophe Nasarre编译:NorthTibet 下载源代码:Debugsrc0206.exe (583KB)原文出处:Windows XP&a…