医学图像处理
实验一:显示一张图片
摘要
实验目的
本次实验的主要内容是熟悉图像处理的软件搭建环境,并且利用其显示一张图片。
在老师和助教的引导下,我们:
了解了进行数字图像处理需要的软件以及软件平台的搭建
开源计算机视觉库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中编写程序添加头文件时:
intmain()中的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<opencv2/core/core.hpp>
#include<opencv2/highgui/highgui.hpp>
#include<opencv/cv.hpp>
显示图片的程序:
intmain()
{
//IplImage是OpenCV中的图像信息头,可以用于打开、显示并且储存图片。
//首先定义一个指针image,再用可以用于IplImage的cvLoadImage导入图片
IplImage*image=cvLoadImage("d:/2.jpg");
//定义一个图片显示窗口
cvNamedWindowwap歌词脏版知乎("MyImage");
//利用cvShowImage来显示图片,第一个参数表示显示窗口,第二个参数是刚才导入的图片
户口所在地行政区划cvShowImage("MyImage",image);
//等待用户相应
cvWaitKey(0);
//释放图像
cvReleaseImage(&image);
//毁掉图像显示窗口
cvDestroyWindow("MyImage");
return0;
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论