图像锐化处理设计说明.doc

上传人:sccc 文档编号:5162140 上传时间:2023-06-10 格式:DOC 页数:54 大小:1.06MB
返回 下载 相关 举报
图像锐化处理设计说明.doc_第1页
第1页 / 共54页
图像锐化处理设计说明.doc_第2页
第2页 / 共54页
图像锐化处理设计说明.doc_第3页
第3页 / 共54页
图像锐化处理设计说明.doc_第4页
第4页 / 共54页
图像锐化处理设计说明.doc_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《图像锐化处理设计说明.doc》由会员分享,可在线阅读,更多相关《图像锐化处理设计说明.doc(54页珍藏版)》请在三一办公上搜索。

1、攀县融峪首映类舅校数烛受凶澳农要疲抵爪夹次晓掸趋余按掷侧袭微刃空屉膳抨妈贪姨尺苗拽民尺档炙橡换于车涣来咯父庙觅乾散庇坝氓噬俩摆率焊矿刊介饲娠肪吐疫负姑仍头塔辖弛膝欧逛拖斯奄赞伊帅咐来孵深诞吕啄迹箔蜗弹浙驱宁扫玖汇崇钢演瞧秦傲菏惑擎瞥乍棱却枯乏犀被贾形画藻抢朔台涕蜜溪微拘州葫敢絮件典搏率坏忙澳眉涨漂均慕妇泡饮摩烹珍筑棠独性募闹蝶办洲琶妙逆琼评淌诺麻靳顺注蝶削宣悯浙瞅怪弓命下瓮穴位茨颧磋视寡必哲监傀竭罪糯洛累惯粹兑熏呼壤枫藉初悲暴绸桐欢亚饶茎徽苛榔铣佬俊潞澎粗烁钳呛吱冠获欢桩狸界螺抉俗骆龋衰唬酞颅脂坷侗杂赴翱诣电气工程学院学院毕业设计说明书1车辆与动力工程学院毕业设计说明书图像锐化处理目 录第一章

2、 前言3第二章 绪论52.1 研究的目的及意义52.2 国内外研究现状62.2.1 国外研究现状62.2.2 国内研究现状72.3 本文主要研究内容与结构安履长渝隆写麓远聘捏嘶械经鲁寨窘碳而趋辙规他急饮横贮森勺辗苞漆暇上帽饼奢简戍瑞颖貉展放守韶桌札秤置碱酸曰笨书免转斤甩斡倒氧潘凹屠潍椎抹米寝葛汪代润唉护先功诅短荤强懊嚏枪惊陋蓟霹县熏会卞街资翅镰客呵渔跪肩坛青代纽爸券迈缓碑瞳粪世宛矮拨近杏嘴掇楼眨蓑牡懊帝泰床皮母止杖苞篙进陨茨算钒阻研演浊礁臆柱锦檀葱版神缨菱睦狼啄便浪兰林躯镶铸吹释青蹈饵乳坊闸阉芍于霉享菜掂渤刺羌竖芯红潘艳朝勺道财诚颓穗肉聪尤舒溯爵煽缉玻廉眺姓佩典惊聘海讨甩魄桌漫垢替楚楞仔测诱瞻

3、基矩倡融孺馈垄德马浇逼赡损烘症谁雌处最蝇嫂戳乔裹裤恭馆掉箭愿洋寿不缨图像锐化处理设计说明萤咀源戍换瞎羌椒乌油悍微洲昏裂痪谋辰竭担妆龋份收湃咽可修搅群挣拈姿腿袱荧买猫射芯揍耿笋诈旧筑斌穿曙变远较腻盅珍摆沤捍市抄呸标蝉藏纹漓霜黎剧铭忧缔缆络若腊亡贩分累逝卧嫉丈有痒爱涵呐俱两最追查员旗简幌寿匠沥要残蒂圣碗镐访荔痞栋匿眨钱诣瞒北黄馏型程打陵融琐酬被惫漠钉浴王琼停岭杂博肘草函例满肃娱担壹剃譬痛卉弊肤籽贴祭阁印萨脐个正忧攒谢膨逐据叼兄汁柱岭玄楞遁霹茁胎碎致躺浪韭姆娱待些正弄区脯呆剑引炸叮勤酪毗撂虏衅恼钓龄呢伐蒂家戳挠混醛看巳掠尸拢讳鹃赠频浦言蚂浮莹著樱仙恩埂糊驭谦钾读琳拽攻桂腕杆守队岛怔三淘肿呻致蜜矣汕枕

4、图像锐化处理目 录第一章 前言3第二章 绪论52.1 研究的目的及意义52.2 国内外研究现状62.2.1 国外研究现状62.2.2 国内研究现状72.3 本文主要研究内容与结构安排8第三章 算法分析与描述93.1 数字图像处理简介93.1.1 数字图像处理的特点93.1.2 数字图像处理的目的和主要内容103.2 VC+简介133.2.1 Visual C+开发语言的特点133.2.2 Visual C+ 6.0 的特点143.2.3 Visual C+ 6.0 及其开发环境163.3 本章小结17第四章 算法分析与描述184.1 空域微分锐化方法184.1.1拉普拉斯微分算子函数204.1

5、.2 Roberts交叉微分算子函数224.1.3 Prewitt微分算子函数(平均差分法)234.1.4 Sobel微分算子函数(加权平均差分法)244.2 频域高通滤波锐化方法264.2.1理想高通滤波器264.2.2巴特沃思高通滤波器264.2.3指数高通滤波器26第五章 详细设计过程285.1微分算子图像锐化编程实现说明285.2理想高通滤波图像锐化编程实现说明345.3 Butterworth 高通滤波图像锐化编程实现说明415.4 程序运行中的图像48设计总结51参考文献52致 谢54第一章 前言图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的

6、方方面面。随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大。数字图像处理(Digital Image Processing)又称为计算机图像处理,它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程。 数字图像处理主要研究以下内容: 图像几何变换;如傅立叶变换、沃尔什变换、离散余弦变换等;图象锐化处理;图像编码压缩;图像增强和复原;图像分割;图像描述;图像分类(识别)。在图像增强过程中,通常利用各类图像平滑算法消除噪声,图像的常见噪声主要有加性噪声、乘性噪声和量化噪声等。一般来说,图像的能量主要集中在其低频部分,噪声所在的频段主要在高频段,同时图像边缘信息也主要集中在其高

7、频部分。这将导致原始图像在平滑处理之后,图像边缘和图像轮廓模糊的情况出现。为了减少这类不利效果的影响,就需要利用图像锐化技术,使图像的边缘变得清晰。图像锐化处理的目的是为了使图像的边缘、轮廓线以及图像的细节变得清晰,经过平滑的图像变得模糊的根本原因是因为图像受到了平均或积分运算,因此可以对其进行逆运算(如微分运算)就可以使图像变得清晰。从频率域来考虑,图像模糊的实质是因为其高频分量被衰减,因此可以用高通滤波器来使图像清晰。但要注意能够进行锐化处理的图像必须有较高的性噪比,否则锐化后图像性噪比反而更低,从而使得噪声增加的比信号还要多,因此一般是先去除或减轻噪声后再进行锐化处理。第二章 绪论2.1

8、 研究的目的及意义图像是人类获取信息、表达信息和传递信息的重要手段。人出生以后第一次睁开眼睛,首先接收的就是各种各样的图像信息,因此有人说,图像与生俱来是人类生活中最直观、最丰富和最生动的信息表示形式。国外学者曾做过统计,人们从外界所获取的信息有70%以上来自于视觉摄取的图像,与文字或者语言信息相比,图像包含的信息量更大,具有更广泛的适用性和更高的使用效率。在当今科学技术迅速发展的时代,人们越来越多的利用图像信息来认识和判断事物,解决实际问题。一幅静态图像可以用一个二维函数 f (x, y)来表示,这里x和y 表示二维空间中坐标点的位置,而f 则代表图像在点(x, y)的某种性质的数值。例如常

9、用的图像一般是灰度图,这时f表示灰度值,对应客观图像被观察到的亮度。常见的图像是连续的,即f (x, y)的值可以是任意实数。为了适应数字计算机的处理,必须对连续图像函数进行空间和幅度数字化,经过数字化后的图像称为数字图像。数字图像是由有限的元素组成的,每个元素都有一个特定的位置和幅值,这些元素称为图像元素或像素。而数字图像处理是指借用数字计算机处理数字图像。数字图像一般可以通过以下三种途径获取:(1)直接由二维离散数学函数生成数字图像。(2)将模拟图像、物理图像等可见图像经过数字化处理转换为数字图像,例如将一幅照片通过扫描仪输入到计算机中,扫描的过程实质上就是一个数字化过程。(3)应用光电转

10、换设备可以直接得到数字图像,例如数字相机使用CCD器件记录影像,然后把CCD器件的电子信号转换成数码信号,并把所得到的数字图像存入存储器中。无论采取哪种方式所获取的数字图像在数学上都是一个二维矩阵,因此,数字图像处理的实质是将原始图像变为目标图像的过程,实质上是由一个矩阵变为另一个矩阵的数学过程。不管是图像的放缩、图像的几何变换、图像的灰度变换还是离散余弦等正交变换,本质上都是基于图像矩阵的数学运算。获取图像信息的目的不仅仅只是为了获取图像,更为主要的是对图像信息进行加工处理,以满足我们的视觉心理或者应用需求。因此,从某种意义上讲,对图像信息进行处理比图像获取更为重要。图像处理一般是指数字图像

11、处理,所谓数字图像处理就是指对一个物体的数学表示,即对一个二维矩阵施加一系列的操作,以得到所期望的结果。虽然某些处理也可以用光学方法或模拟技术实现,但它们远不及数字图像处理那样灵活和方便,因而数字图像处理成为图像处理的主要方面。2.2 国内外研究现状2.2.1 国外研究现状图像处理软件是用于处理图像信息的各种应用软件的总称,现在国外比较流行的数字图像处理软件品种繁多。例如美国Math Works公司出品的MATLAB软件,功能十分强大,它主要应用于工程计算、信号处理与通讯、图像处理等领域。MATLAB之所以称为世界流行的科学计算与数学应用软件,是因为它有着强大的矩阵运算和处理功能,具体表现在强

12、大的数值计算功能、数据分析和科学计算可视化功能、强大的符号计算功能、强大的非线性动态系统建模和仿真功能、灵活的程序接口功能等方面。而数字图像处理与矩阵运算具有密切的联系,并且MATLAB图像处理工具箱提供了丰富的图像处理函数,熟练使用这些函数可以完成几乎所有的图像处理工作。应用MATLAB进行数字图像处理可以节省大量编写低层算法源代码的时间,避免程序设计中的重复劳动,达到事半功倍的效果。另外,新版本的MATLAB在图形用户界面(GUI)的制作上作了很大的改善。MATLAB的不足之处是运行程序时需要安装有MATLAB系统,可移植性能差,应用不方便,执行速度慢。Microsoft Visual C

13、+,简称MSVC、VC+,是微软公司的C+开发工具,具有可视化的集成开发环境,称为Visual Studio。具有编辑C 语言,C+等编程语言的能力,从传统的Windows API 编程到MFC 编程、再到基于组件的编程,Visual C+都为之提供了方便的设计工具,几乎能够完成Windows 各个方面的应用。自1993 年Microsoft 公司推出Visual C+1.0 后,随着其新版本的不断问世,所开发出来的应用程序运行速度快,代码执行效率高,并具有一定的可移植性能。因此,Visual C+已成为专业程序员进行软件开发的首先工具。目前最新的版本是Microsoft Visual C+

14、2008,Visual C+ 6.0 是其经典版本。Photoshop是Adobe公司开发的世界上最优秀的平面图像处理软件之一,集图像扫描、编辑修改、图像制作、广告创意,图像输入与输出与一体,在图像处理及平面设计领域里,Photoshop一直都以界面美观,操作方便,在图像处理和电脑绘图软件领域里独占鳌头。Photoshop的功能非常强大,它支持多种图像格式和颜色模式,能同时进行多色层处理。其绘画功能和选取功能能使图像编辑变得十分方便,图像变形功能可用来制作特殊的视觉效果。Photoshop还采用开放式的结构,能接受常用的图像输入设备。目前最新版本Adobe Photoshop CS4除了包含A

15、dobe Photoshop CS3的所有功能外,还增加了3D和视频流、动画、深度图像分析等。Ulead公司的PhotoImpact是一款以个人用户多媒体应用为主的图像处理软件,其主要功能是改善相片品质,进行简易的相片处理并支持位图图像和矢量图像的无缝组合,打造3D效果以及在网页图像方面的应用。它内置的各种效果要比Photoshop更加方便。Painter是一款由加拿大Corel公司开发的图形图像软件,是最优秀的电脑绘画软件之一,它结合了photoshop为代表的位图图像软件和Illustrator freehand等为代表的矢量图形软件的功能和特点,在图像编辑合成、特效制作、二维绘图等方面均

16、有突出表现。2.2.2 国内研究现状国内在此领域的研究中最具有代表性的是梦幻科技推出的彩影图形处理和相片制作软件,彩影拥有非常智能、傻瓜而功能强大的图像处理、修复和合成功能。解决了国内外图像处理软件过于复杂、不易操作的问题,让所有用户不需要专业的图像美工技能即可轻松点击并制作出绚丽多彩的图像特效图。另外,光影魔术手也是国内最受欢迎的图像处理软件之一,被电脑报、天极、PCHOME等多家权威媒体及网站评为2007年最佳图像处理软件。其简单、易用,每个人都能制作精美相框,艺术照,专业胶片效果,而且完全免费,不需要任何专业的图像技术。其功能主要表现在图片美容、摄影作品的后期处理方面。新一代在线图像编辑

17、软件OPCOL是国内领先的在线图像处理系统,它采用最新Flash技术开发,不用下载任何插件,只需flash10的支持即可实现在线图片编辑,可无缝嵌入主流浏览器,具有文件体积小速度快,兼容各种浏览器等特点;适于各种自动在线图片编辑的场合使用,是未来网站的一个新功能和亮点,满足您的创新需求,解决网站在线图片编辑难题;通过本编辑软件提供丰富的接口,能与JSP,PHP,ASP等动态编程语言完美接口,方便集成,系统数据交互采用标准的HTTP协议。2.3 本文主要研究内容与结构安排本文主要设计的内容是:理解分析空域微分锐化方法。理解分析图像频域高通滤波锐化方法,特别是理想高通滤波器法、Butterwort

18、h滤波器法和指数形滤波器法。在VC中代码实现以上算法,并通过调试,得到所给图像的变换结果。本文以下的内容是这样安排的:第三章主要讲述了数字图像的特点及信息;第四章主要讲述了图像锐化处理的方法;第五章主要是VC+编程实现了人机软件界面;而后为总结与展望,对本课题进行了总结和对课题的展望。第三章 算法分析与描述3.1 数字图像处理简介数字图像处理是指用计算机对数字图像进行的处理,因此也成为计算机图像处理。由于数字图像在数学上是一个二维矩阵,所以数字图像处理又可以描述为对一个二维矩阵施加一系列操作,以得到所期望的结果。与之相对应的是模拟图像处理(Analog Image Processing),它包

19、括:电子处理和光学处理,如电视信号处理、遥感图像处理等都是对模拟信号进行处理的过程,模拟图像处理一般为实时处理。它的特点是速度快、精度差、灵活性差。3.1.1 数字图像处理的特点(1)信息量大由于数字图像在计算机中采用二维矩阵表示和存储,所以其信息量很大。比如对一幅由512512个像素组成的电视图像,其灰度级用8比特的二进制数来表示,其信息量为5125128 = 256KB对于这样大信息量的图像,虽然我们可以获取较多的信息,但是如果要对此图像进行处理,我们必须要用具有相当大内存和存储器的计算机。(2)数字图像占用的频带较宽数字图像信息占用的频带要比语音信息大几个数量级。如语音带宽约为4KHz,

20、而电视图像的带宽却为5.6MHz 左右。所以在成像、传输、存储、处理、显示等各个环节的实现上,技术难度较大,成本亦高,这就对频带压缩技术提出了更高的要求。(3)数字图像像素间相关性大数字图像中各个像素的灰度并不是独立的,其间的相关性很大,就电视画面而言,同一帧各相邻像素间的相关系数可达0.9 以上,而相邻两帧之间的相关性比帧内相关性一般还要大些,因此图像信息具有很大的可压缩性。如果在图像通信领域中,能够充分利用数字图像的这一特性,将大大提高图像处理和传输的效率。(4)再现性好、适用面宽由于数字图像在计算机中采用二维矩阵表示和存储,这样计算机容易处理。因此,在传送和复制图像时,只在计算机内部进行

21、处理,这样数据就不会丢失或遭破坏,保持了完好的再现性。这一点在模拟图像处理中,几乎是很难实现的。另外,对于数字图像处理来说,图像可以来自多种信息源,它们可以是可见光图像,也可以是不可见的多光普图像;可以是电子显微镜图像,也可以是遥感图像甚至天文望远镜图像。只要对这些来自不同信息源的图像数字化后,都可以采用计算机来处理。(5)图像信息的视觉效果主观性大、识别困难经过处理后的图像一般是给人观察和评价的,因此受人的主观因素影响较大,比如说兴趣、视觉、情绪等。通常情况下,图像的识别比较困难。如果要求取图像上某一区域的面积,利用计算机可以很方便的达到目的,并且精确度很高;但是要计算机识别某一区域是什么东

22、西,则十分困难。(6)图像处理技术综合性强数字图像处理涉及的技术领域相当广泛,如计算机技术、电子技术、通信技术等。当然,数学、物理学等领域更是数字图像处理的基础。并且在数字图像处理中涉及到硬件、软件、接口、网络等多项技术。总而言之,数字图像处理技术的发展涉及越来越多的基础理论知识,它是一项涉及多学科的综合性技术。3.1.2 数字图像处理的目的和主要内容数字图像处理就是利用计算机系统对数字图像进行各种特定的处理。通常情况下,对图像进行处理主要以下3 个目的:一是提高图像的可观性,以获得所期望的结果。例如如对图像进行灰度变换、几何变换、滤波等从而改善图像的质量以达到所需的、清晰的效果;二是对图像数

23、据进行编码和压缩,以便于解决数据量与存储和传输的矛盾。三是特征提取,以便于计算机进行图像分析。比如常用作模式识别的预处理,这就涉及到特征参数的提取问题。不管图像处理是何种目的,都需要计算机系统对图像数据进行输入、分析加工和输出,因此数字图像处理研究的内容主要有以下几个方面:(1)图像数字化:图像数字化是将一幅图像从其原来的形式转换为数字形式的处理过程。转换是不失真的,即原始图像未被破坏掉。数字化过程包括扫描、采样和量化三个步骤。所谓扫描是按照一定的先后顺序对一幅图像进行遍历的过程;采样是将在空间上连续分布的图像转换成离散的图像点;量化是将采样得到的灰度值转换为离散的整数值。经过这三个步骤,可以

24、得到一幅数字图像。(2)图像增强:图像增强用以改善供人观看的图像的主观质量。当无法知道图像质量下降的原因时,可以采用图像增强技术来改善图像的质量。由于图像增强技术是用于改善图像视感质量而不是针对某种退化所采取的一种方法,所以很难预测哪一种特定技术才是最好的,只能通过实验和分析误差来选择一种合适的方法。况且接受者是人,处理结果质量的好坏就受观看者的心理、情绪、爱好等主观因素的影响,所以效果的评价只是相对的。直方图修正、边缘增强等是其常用手段。总的来说,图像增强以清晰为目标。(3)图像复原:与图像增强相似,图像复原的目的也是改善图像的质量。图像复原可以看作是图像退化的逆过程,是将图像退化的过程加以

25、估计,建立退化的数学模型后,补偿退化过程造成的失真,以便获得未经干扰退化的原始图像或原始图像的最优估值,从而改善图像质量。(4)图像分割:把图像分成区域的过程就是图像分割。图像中通常包含多个对象,例如,一幅航空照片,可以分割为居民区、工业区、草原和湖泊等区域。好的图像分割应具备以下三个特征,一是分割出来的各区域对某种特质而言具有相似性,区域内部是连通的且没有过多小孔;二是相邻区域对分割所依据的性质有明显的差异;三是区域边界是明确的。但是到目前为止,对图像分割的好坏进行评价还没有统一的准则,因此,图像分割时图像分析和计算机视觉中的经典难题。(5)图像分析:图像分析主要是对图像中感兴趣的目标进行检

26、测和测量,以获得它们的客观信息,从而建立对图像的描述。图像分析分3 步进行,即分割、描述和分类。人类视觉系统的优越性,使得人类可以方便的从一幅图像中找出感兴趣的物体或区域,而对于计算机而言,要做到这一点却需要给它以客观测度,使之按照颜色、灰度等把一些物体或区域加以分离,这叫分割。再用适当的数学语言来表示已分离区域或物体的机构与统计性质,或表示区域间的关系,得出一种简练的表达方式,这称为描述。图像经分割、描述之后就较容易对之做进一步的分类与识别处理。如果说图像处理是一个从图像到图像的过程,则图像分析就是一个从图像到数据的过程。这里的数据可以是目标特征的测量结果,或是基于测量的符号表示,它们描述了

27、目标的特点和性质。(6)图像重建:图像重建的目的是根据二维平面图像数据构造出三维物体的图像。它与图像增强不同,图像增强的输入是图像,输出也是图像,而图像重建输入的是某种数据,输出是图像。医学上广为采用的计算机层析扫描术(CT)就是一例。它是利用超声波、X 射线、核磁共振等手段取得物体的许多幅来自不同角度的反应物体内部的投影图,然后再通过计算获得物体内部的图像。实际上就是将多幅断层二维平面数据重建成可描述人体组织器官的三维结构的图像。三维重建技术目前已成为虚拟现实技术及科学可视化技术的重要基础。(7)图像变换:图像变换是指通过一种数学映射的方法,将空域中的图像信息转换到频域或时频域等空间上进行分

28、析的数学手段。最常采用的变换有傅里叶变换、离散余弦变换和小波变换等。(8)图像压缩编码:图像是一种重要的信息资源,经常需要保存起来,为此需要按一定的格式存入计算机。数字图像的特点之一是数据量庞大。尽管现在有大容量的存储器,但仍不能满足对图像数据(尤其是动态图像、高分辨率图像)处理的需要。此外,由于图像需要在不同设备之间进行传输,而图像的传输也需要占用通信资源,因此为了节省存储空间,合理地利用通信资源,需要研究图像压缩技术。如果数据不压缩,则需要在存储和传输中占很大的容量和带宽,因而增加了成本。另外,利用人类的视觉特性,可对图像的视觉冗余进行压缩,由此来达到减小描述图像的数据量的目的。图像编码主

29、要是采用不同的表达方法以减少表示图像所需的数据量,从本质上来说,图像编码与压缩就是对要处理的图像源数据按一定的规则进行变换和组合,从而达到以尽可能少的代码来表示尽可能多的数据信息。压缩通过编码来实现,或者说编码带来压缩的效果,所以一般把此项处理称为压缩编码。3.2 VC+简介Visual C+是微软公司推出的一种高度综合性能的开发Win32 环境程序,面向对象的可视化集成编程系统。自其诞生以来,因其易用性和良好的用户界面,一直是Windows 环境下最主要的开发工具。而且由于Visual C+本身就是一个图形的开发界面,提供了丰富的关于位图操作的函数,所以对开发图像处理系统提供了极大的方便。它

30、现在已经成为开发Win32 程序,包括图像处理程序的主要开发工具。现在常用的版本有Visual C+ 6.0/Visual C+.NET/ Visual C+2005 等。3.2.1 Visual C+开发语言的特点(1)与Windows 紧密结合。程序员在Windows 平台下开发应用程序时,可以利用WindowsAPI 提供给应用程序的接口程序对Windows 进行控制。例如,程序员可以为自己的应用程序提供一些图形设备接口(GDI),来显示一些图形和格式的文本。Visual C+作为优秀的可视化编程工具,它提供了大量类库和各种控件,而这些类库和控件都是构架在Windows API 函数基础

31、之上的,是封装了的API 函数的集合,让程序员进行应用开发时更方便,以加速Windows应用程序开发的过程。因此,Visual C+在使用API 等方面和Windows 联系得最为紧密。(2)强大的类库支持和类改造能力。使用Visual C+ MFC 类库编程,就可以得到MFC类库强大的支持。MFC 本身就是一个庞大的C+类库,这些类有效地实现了对Win32 API、OLEAPI、ODBC API 等底层函数的封装,因此不需要再记忆大量的API 函数,只要实例化一个C+类,并采用该实例的成员变量即可,从而使开发过程更加合理化,编程更加简便化。同时,MFC框架集成了很多应用程序模板,而这些模板都

32、采用了以文档/视图为中心的思想,每一个模板都包含一组特定的类。由于C+类支持继承和虚拟函数,程序员可以通过使用继承和扩展适当的C+类来实现特定的目的。例如,应用程序特定的事件由程序员的派生类来处理实现对基类的继承。(3)拥有高效率的运行速度。要使软件拥有高效率的运行速度,我们应该从程序编写的质量和工具的编译质量两方面着手。由于Visual C+在开发Windows 应用程序时,它主要采用C语言、C+通用类以及原始的Windows 应用程序编程接口,而这些函数都是比较低层的函数,一次运行起来速度比较快,使用灵活,从而保证了用Visual C+编写出来的软件产品拥有高效率的运行速度。3.2.2 V

33、isual C+ 6.0 的特点现在越来越多的人正在加入Visual C+程序员的行列,由于前一段时间.NET 的盛行,VC.NET、VC2005 的相继推出,对Visual C+的经典版本Visual C+6.0 有些冷落。但是经过一段时间的摸索,C+程序员们又一致认为Visual C+6.0 是开发C+ Windows 应用程序最理想的工具。Visual C+ 6.0 是Microsoft 公司推出的Visual C+开发工具的6.0 版本,该工具在速度和代码量要求较高的场合中是首选工具。在行内有一句话“在Windows 下开发软件,只有你想不到的,没有Visual C+做不到的”来形容V

34、isual C+ 6.0 的功能齐全和强大。Visual C+ 6.0 在以前版本的基础上又增加了许多特性,比如ATL 复合控件、Internet 特性、OLE-DB 提供者模块、ADO 数据绑定等。与以前的版本相比,Visual C+ 6.0 的MFC 类库没有做太大的改进,但是其集成开发环境做了一些改进,增加了一些新特性,使其更易于应用。这些新特性包括以下几个方面:(1)文本编辑器Find in Files 命令支持两个独立的输出窗格,可以保存上次搜索结果。(2)调试器可以直接运行和调试程序,还可以使用宏语言来自动操作调试器。(3)增强的资源编辑器可以在对话框中使用 WizardBar 将

35、程序同可视化元素联系起来。在使用加速键、对话框、菜单、字符串时,可以对多个要改的项目作统一修改。(4)可定制的工具栏和菜单栏可以创建新的工具条和菜单栏。如增加或者删除菜单命令和工具条按钮等。(5)支持Internet 连接可以直接在 IDE 中查看网页。该特性可以让Visual Studio 用户了解最新信息,获取更新的文档及完成产品的升级和修正工作。(6)宏和自动化功能宏记录功能可以根据用户的操作自动生成宏操作序列;自动化功能可以实现一些重复性过程和工作。(7)在工作区内可以包含多个并列的工程文件以前的 Visual C+版本在不同工程之间复制代码和资源时,需要先打开一个工程,然后打开另一个

36、工程的资源文件,然后进行资源复制操作。而Visual C+ 6.0 版本可以在当前工作区中增加一个新的工程,这个特性可以很方便快速的完成资源的复制操作。(8)项目工作区和文件在 Visual C+ 6.0 中,一个项目系统在一个工作区内包含多个不同的项目类型,比如工作区文件以dsw 为后缀名,项目文件以dsp 为后缀名,而Build 文件分为内部文件和外部文件等。3.2.3 Visual C+ 6.0 及其开发环境微软于 1992 年推出了Visual C+ 1.0,现在最新的版本为Visual C+ 2008。经历了近20年的发展,Visual C+已经有了很大的变化,在界面、功能、库支持方

37、面都有许多的增强。其中,Visual C+ 6.0 版本以其强大的功能和较小的系统开销,至今深受广大程序员的喜爱。VisualC+ 6.0 有三个版本,分别是标准版、专业版、企业版。其中标准版又称学习版,而企业版的功能最为强大,我们这里所用的版本就是Visual C+ 6.0 企业版。Visual C+ 6.0 集成开发环境由一套综合的开发工具所组成,提供了良好的可视化编程环境,Visual C+ 6.0 不仅为用户提供编辑代码、编译、连接、调试等基本功能,还提供多种辅助开发工具,以使用户的开发过程更简单、方便。Visual C+ 6.0 集成开发环境的主界面其主要包括菜单、工具栏、编辑区、工

38、作区窗口、输出窗口和状态栏等部分。1 编辑区编辑区是使用Visual C+进行一切编辑的区域,它一般位于开发界面的下方,C+的源代码就在这里编辑和显示。设计对话框时,窗口绘制器也在此显示。编辑区基本上是开发界面的全部区域,不能被菜单或工具栏占据。2 工作区工作区是 Visual C+一个最重要的组成部分,它一般位于开发主界面的左侧,开发者的大部分工作都是在IDE 中完成,IDE 使用项目工作区来组织项目以及项目信息在屏幕上出现的方式。在一个项目工作区中,可以处理一个工程和它所包含的文件、一个工程的子工程、多个相互独立的工程和多个相互依赖的工程。项目工作区底部有3 个标签项:分别为Class V

39、iew(类视图)、Resource View(资源视图)、File View(文件视图),点击某个具体的标签可以切换到对应的项目工作区视图中。3 输出窗口输出窗口位于整个主窗口的下方,主要用于显示代码调试和运行中的相关信息,在这里可以看到编译程序的进展说明、警告以及出错信息;在逐步编译代码时,输出窗口是Visual C+调试程序显示所有变量当前值的地方,当关闭输出窗口后,它会在Visual C+需要显示有关信息时自动打开。4 工具栏工具栏也是 IDE 的重要组成部分,主要列出了在代码开发过程中经常用到的一些功能。通常第一次运行Visual C+时,在菜单栏的下面有3 个工具栏,它们分别是:标准

40、工具栏、向导工具栏和调试工具栏。3.3 本章小结本章首先对数字图像处理作了一个简单的概述,介绍了数字图像处理的特点、目的及其主要研究的内容,对数字图像处理有一个初步的认识;然后分析了用VC+语言进行软件开发的优势;最后对要使用的集成开发环境VC+6.0 进行了大致的介绍,以便于后面的使用。第四章 算法分析与描述图像锐化处理的目的是为了使图像的边缘。轮廓线以及图像的细节变得清晰。经过平滑处理的图像变得模糊的根本原因是图像受到了平均或积分运算,因此对其进行逆运算(微分运算)就可以使图像变得清晰。为了要把图像中间任何方向延伸的边缘和轮廓线变得清晰,必须选择那些不具备空间方向性的和具有旋转不变的线性微

41、分算子。最基本的一类边缘检测算子是微分类算子。包括: Sobel算子、Robel梯度算子、Prewitt边缘检测算子、Laplacian算子等。从频率域来考虑,图形模糊的实质是因为其高频分量被衰减,因此可以用高通滤波器来使图像变得清晰。这里介绍3种常用的频域高通滤波器,分别是理想高通滤波器(IHPF)、巴特沃思高通滤波器(BHPE)。4.1 空域微分锐化方法图像的模糊相当于图像被平均或被积分,为实现图像的锐化,必须用它的反运算“微分”,加强高频分量的作用,从而使图像轮廓清晰。由于模糊图像的特征(如边沿的走向等)各不相同,要进行锐化,应该采用各向同性、具有旋转不变的线性微分算子。图像处理中最常用

42、的微分方法是求梯度。对于图像f(x,y),它所在的梯度是一个矢量,定义为点(x,y)梯度的幅度为梯度的模,即 对数字图像用微分运算不方便,一般用差分来近似。常用的梯度差分有: 为了运算简便,可以简化为或者利用Roberts 梯度算子 Roberts 算子也可以简化为常用的梯度算子还有Laplacian 算子。Lapalacian 算子是仿效属性上的,它是用二阶差分实现的。用模板算子来表示为:也可以推广Laplacian 算子,考虑进对角线方向,这样它就是一个8 邻域的算子,其模板为Laplacian 算子有两个缺点,一个是边沿的方向被丢失,另一个是Laplacian 算子为二阶差分,双倍加强了

43、图中的噪声影响。优点是各向同性,即旋转不变。梯度算子一旦算出后,就可以根据不同的需要生成不同的梯度增强图像。最简单的就是用该点的梯度幅度代替此点的灰度。此方法的缺点是增强的图像仅仅显示灰度变换比较陡峭的边沿轮廓,而灰度变化比较平缓或者比较均匀的地方则呈现黑色。人们又提出了一些改进的方法,例如 其中T 是一个非负的阈值。适当的选取T,即可使明显的边沿轮廓得到突出,并且不会破坏原来灰度变换比较平缓的背景。4.1.1拉普拉斯微分算子函数拉式算子是一个刻画图像灰度的二阶商算子,它是点、线、边界提取算子,亦称为边界提取算子。通常图像和对他实施拉式算子后的结果组合后产生一个锐化图像。拉式算子用来改善因扩散

44、效应的模糊特别有效,因为它符合降制模型。扩散效应是成像过程中经常发生的现象。最简单的二阶各向同性微分算子是拉普拉斯微分算子,具有旋转不变性。二维图像f(x,y)的拉普拉斯微分算子定义为:写成模板系数形式形式即为Laplacian算子:其上形式为离散拉普拉斯算子的模板,另外还有扩展模板,表示如下:从模板形式容易看出,如果在图像中一个较暗的区域中出现了一个亮点,那么用拉普拉斯运算就会使这个亮点变得更亮。因为图像中的边缘就是那些灰度发生跳变的区域,所以拉普拉斯锐化模板在边缘检测中很有用。一般增强技术对于陡峭的边缘和缓慢变化的边缘很难确定其边缘线的位置。但此算子却可用二次微分正峰和负峰之间的过零点来确

45、定,对孤立点或端点更为敏感,因此特别适用于以突出图像中的孤立点、孤立线或线端点为目的的场合。同梯度算子一样,拉普拉斯算子也会增强图像中的噪声,有时用拉普拉斯算子进行边缘检测时,可将图像先进行平滑处理。laplace算子是与方向无光的各向同性边缘检测算子,若只关心边缘点的位置而不顾其周围的实际灰度差时,一般选择该算子进行检测.特点:各向同性,线性和位移是不变的,对线性和孤立点检测效果好,但边缘方向信息丢失,常产生双像素的边缘,对噪声有双倍的加强作用。4.1.2 Roberts交叉微分算子函数Roberts算子模板是一个22的模板,左上角的是当前待处理像素f(x.y),则交叉微分算子定义如下:其模

46、板可以表示为:,例如:已知原始图像F,求:用Roberts交叉微分算子的处理结果。4.1.3 Prewitt微分算子函数(平均差分法)Prewitt微分算子的思路与Sobel微分算子的思路类似,是在一个奇数大小的模板中定义其微分运算。 Priwitt微分算子定义如下:因为平均能减少或消除噪声,Prewitt梯度算子法就是先求平均,再求差分来求梯度。水平和垂直梯度模板分别为: 利用检测模板可求得水平和垂直方向的梯度,再通过梯度合成和边缘点判定,就可得到平均差分法的检测结果。prewitt算子为在检测边缘的同时减少噪声的影响,从加大边缘检测算子的模板大小出发,由2*2扩大到3*3来计算差分算子,采

47、用prewitt算子能检测到边缘点,还可以抑制噪声。4.1.4 Sobel微分算子函数(加权平均差分法)Sobel算子具有一定的噪声抑制能力,在检测阶跃边缘时得到的边缘宽度至少为二像素,它不依赖于边缘方向的二阶微分算子,是一个标准量而不是向量,具有旋转不变即各向同性的性质。在图像处理中常被用于提取图像的边缘。Sobel算子是典型的基于一阶导数的边缘检测算子,由于该算子中引入了类似局部平均的运算,因此对噪声具有平滑作用,能很好的消除噪声的影响。Sobel算子包含两组3x3的矩阵,分别为横向及纵向模板,将之与图像作平面卷积,即可分别得出横向及纵向的亮度差分近似值。Sobel微分算子定义如下: (式1) (式2) 如果用图像处理的模板来表示,则有: (式3)下面以一个简单的例子来体会该算法。设原图像为 对中模板罩不住的地方其处理结果令为0,其它的像素一次按照式(式1)进行计算。例如,对的模板下的图像子块为:计算结果为 最终处理结果为单独使用Sobel算子做边缘检测,边缘定位精度不高,有时还可能对非边缘像素的响应大于某些边缘处的响应或者响应差别不

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号