育龙网中国第一教育门户【咨询电话:010-51290949 】
育龙网旗下

中华硕博网

您现在的位置:育龙网 > 论文中心 > 计算机论文
育龙网校  WWW.CHINA- B.C0M   2009年03月17日  来源: 互联网
育龙网核心提示: 目录摘要...Abstract前言...第1章绪论...1课题背景...2课题研究的目的和意义...3国内外概况...4课题的主要研究工作...第2章Matla

目录

摘要...

Abstract

前言...

第1章绪论...

1课题背景...

2课题研究的目的和意义...

3国内外概况...

4课题的主要研究工作...

第2章Matlab的简介...8

1Matlab的概况...8

2Matlab的语言特点...8

3Matlab系统简介...9

4Matlab应用程序接口概述...10

5VC++与Matlab的优劣比较...1

第3章图像处理功能的具体实现...1

1Matlab引擎的介绍...1

2VC与Matlab引擎混合编程的环境配置...1

3应用程序界面设置...1

4添加相应的功能函数...1

第4章实验结果...2

1初始化应用程序...2

2图像编辑...2

3图像增强...2

4图像的统计与分析...2

结束语...28

参考文献...29

致谢...30

附录...3

Matlab和C++混合编程的图像处理技术的实现

摘要:本文阐述基于Matlab和VC++混合编程的图像处理技术研究背景、现状以及发展方向,明确了采用基于Matlab和VC++混合编程来实现图像处理技术的总体设计思路。

课题介绍了Matlab引擎,着重地说明了VC++调用Matlab引擎的具体实现,并且具体地叙述了利用Matlab与VC++混合编程对图像进行处理的过程。本课题实现的图像处理功能包括图像缩小、图像放大、图像旋转、图像增强及常用的图像的统计与分析方法。图像的统计与分析方法功能包括直方图与常用的边缘检测的方法,如罗伯特交叉算子,sobel算子,candy算子。

关键词:VC++;Matlab引擎;图像处理。

Abstract:Thispaperexplainedtheresearchbackgroundpresentandfutureofimageprocessingtechnique,whichisbasedonMatlabandVC++mixprogramming,AnditalsoclearedupthegeneraldesignandthedetailedtakingtheMatlabandVC++mixprogramtoimplementtheimageprocessingtechnique.

TheMatlabenginehasbeenintroducedinthethesis,especiallytherealimplementationoftheMatlabenginecontrolbyVC++.Thefunctionsofimageprocessachievedinthisthesisareimageprocessachievedinthisthesisareimagezoomingin,imagezoomingout,imagerevolving,imageclearingandtheusuallyimagestatisticsandanalysismethods.Thesemethodscontainandhistogramandtheusuallyedgetestingmethod,suchasRobertoverlappingoperator,Sobeloperator,candyoperator.

Keywords:VC++;Matlabengine;Imageprocess

随着数字化时代的来临,图像处理知识显得越来越重要。Matlab的图像处理工具箱提供了较多的图像处理功能,而且,由于工具箱采用的数据类型与Matlab相兼容。本课题的界面部分采用VC++来实现,而应用程序的图像处理部分通过在VC++0编程环境下调用Matlab引擎的API函数来完成,充分利用Matlab强大的科学计算功能,从而为图像处理自定义算法的实现提供快速实现的可能性。

Matlab语言在矩阵运算、数值计算和图形显示等方面,具有强大的功能,非常直观、简洁。它为各工程计算领域提供了相应的工具箱,在控制界、生物医学工程、语音处理、数字信号处理、雷达工程、信号分析、计算机技术等各行各业中都得到了广泛的应用。VC++0是面向对象可视化编程的高级程序设计语言,它采用编译方式运行,运行速度快,非凡是编写界面的能力很强,但它在数字处理分析、算法工具、编程效率和准确方便的绘制数据图像方面远低于Matlab语言。在进行数字图像的算法研究中,我们经常需要把一些中间数据以图像的方式显示出来。直观的表达算法的结果,比如说图像的直方图,水平、垂直投影图,但是用VC++编写这些图像需要很长的代码,假如我们把这些图像数据先用数组存储起来,再把数组传递给Matlab,调用Matlab丰富的图像显示函数,就能大大的简化程序,而把精力集中在算法的研究上。

假如用户所用的Matlab的运算函数没有涉及到Matlab的内部类,那么在VC++中调用该函数就比较简单,反之,在VC++中调用该运算函数就比较复杂。由于Matlab工具箱的大部分函数涉及到了Matlab的内部类,所以若要在VC++的开发平台上使用Matlab的工具箱是要付出代价的,如速度上不去或不能完全脱离Matlab环境等。

利用VC0平台下开发的数字图像处理系统软件作为前端,通过Matlab引擎函数库提供的引擎函数完成与Matlab系统的数据交换与命令传送的任务,在本课题中,向Matlab工作空间传送的主要是图像矩阵,并调用图像处理工具箱中的图像函数进行处理。然后,把处理后的结果从Matlab工作空间传送的VC0环境中。