搜档网
当前位置:搜档网 › QT 显示一张图片

QT 显示一张图片

QT 显示一张图片
QT 显示一张图片

医学图像处理

实验一:显示一张图片

摘要

实验目的

本次实验的主要内容是熟悉图像处理的软件搭建环境,并且利用其显示一张图片。

在老师和助教的引导下,我们:

了解了进行数字图像处理需要的软件以及软件平台的搭建

开源计算机视觉库OpenCV以及其优势,应用领域

了解实验需要用到的Qt和Qt Creator的原因,以及优势

实验要求

利用Qt Creator、Qt以及OpenCV编写程序显示一张图片。图片自选。

一、技术讨论

1.1实验原理

本次实验的原理主要是利用了QT图片显示功能,通过编写程序实现对QT显示图片的指令从而显示出程序中指定的一张图片。

1.2实验方法

本次实验主要是运用了Qt Creator的建立Qt4控制台应用,之后在.pro文件中添加CMake编译的OpenCV库文件。通过编写程序实现对计算机磁盘中的某一图片的显示功能。

二、结果与讨论

通过编写、修改并运行QT程序,实现图片显示,对计算机截屏如下:

本实验中我主要使用了第二种图片显示程序,图片放在D盘中,命名为2,格式为jpg。在QT平台上写入附录中的程序后,最终显示出上述图片。

其中中间出现的问题(附录程序中标注为黄色部分)和解决方法如下:

1、

在.pro文件中编写程序之前,其中已经包括一下部分:

QT+=core

QT-=gui

TARGET=showimage

CONFIG+=console

CONFIG-=app_bundle

TEMPLATE=app

SOURCES+=main.cpp

重复输入以上程序内容运行出错。因为重复输入以上程序使软件在以上程序中停滞,识别不到下面的程序内容,系统提示错误。

2、

main.cpp中编写程序添加头文件时:

int main()中的int字母“i”不可使用大写,否则无法正常运行,因为软件系统没有对“Int”进行定义。

3、

下面一句程序编辑了要显示的图片的名字,更改括号里的内容,可以显示不同的图片IplImage*image=cvLoadImage("d:/2.jpg");

4、

在编写程序的时候一定要严格将程序和计算机磁盘里的内容想对应,如程序中

c:\Qt\opencv2.2\include\opencv2\,应和QT软件安装位置相符,否则程序运行程序使提示无法找到文件等错误。

感悟:

程序编写工作要求严谨的工作态度和强硬的技术研究能力。计算机识别不像人本身,我们要实现对其的指令,要认真学习各种计算机语言,不仅能让计算机识别,而且符合软件应用平台的要求。我们要通过大量的实践联系去发现问题、分析问题并解决问题,在实践中会遇到各种各样的程错误,只有慢慢熟悉这些错误并改正才能对编程等工作熟练的驾驭!

附录

.pro文件中填写的程序如下:

QT+=core

QT-=gui

TARGET=showimage

CONFIG+=console

CONFIG-=app_bundle

TEMPLATE=app

SOURCES+=main.cpp

INCLUDEPATH+=c:\Qt\opencv2.2\include\opencv\

c:\Qt\opencv2.2\include\opencv2\

c:\Qt\opencv2.2\include

LIBS+=c:\Qt\opencv2.2\lib\libcv.dll.a\

c:\Qt\opencv2.2\lib\libopencv_calib3d220.dll.a\

c:\Qt\opencv2.2\lib\libopencv_contrib220.dll.a\

c:\Qt\opencv2.2\lib\libopencv_core220.dll.a\

c:\Qt\opencv2.2\lib\libopencv_features2d220.dll.a\

c:\Qt\opencv2.2\lib\libopencv_flann220.dll.a\

c:\Qt\opencv2.2\lib\libopencv_gpu220.dll.a\

c:\Qt\opencv2.2\lib\libopencv_highgui220.dll.a\

c:\Qt\opencv2.2\lib\libopencv_imgproc220.dll.a\

c:\Qt\opencv2.2\lib\libopencv_legacy220.dll.a\

c:\Qt\opencv2.2\lib\libopencv_ml220.dll.a\

c:\Qt\opencv2.2\lib\libopencv_objdetect220.dll.a\

c:\Qt\opencv2.2\lib\libopencv_video220.dll.a

再main.cpp中编写程序,添加头文件并编写显示图片的程序:头文件:

#include

#include

#include

显示图片的程序:

int main()

{

//IplImage是OpenCV中的图像信息头,可以用于打开、显示并且储存图片。

//首先定义一个指针image,再用可以用于IplImage的cvLoadImage导入图片IplImage*image=cvLoadImage("d:/2.jpg");

//定义一个图片显示窗口

cvNamedWindow("MyImage");

//利用cvShowImage来显示图片,第一个参数表示显示窗口,第二个参数是刚才导入的图片

cvShowImage("MyImage",image);

//等待用户相应

cvWaitKey(0);

//释放图像

cvReleaseImage(&image);

//毁掉图像显示窗口

cvDestroyWindow("MyImage");

return 0;

}

相关主题