本文主要针对图像处理技术中的边缘检测这个领域进行探讨,边缘是图像的一个重要的属性,边缘检测是很多更高层次的图像处理技术的基础。图像绝大部分的主要信息都集中在图像的边缘上,因此研究边缘对于图像处理有着不可忽略的重要意义。绝大多数的经典边缘检测算法都是利用了边缘两边图像的性质剧烈变化的特点,借助一阶导数、极值、二阶导数等数学工具对图像进行处理。本文的目的主要包括研究几个经典的算子,详细介绍它们的形成原理,并通过GUI来实现边缘检测系统,最终能实现用户自主选择图像以及算子,输出正确结果。
1。2 国内外研究现状
1。3 本课题研究工作与安排
边缘检测系统主要是利用了几个经典的算子,本文主要研究工作包括:详细描述每个算子处理的原理以及它们各自的计算方式、适用范围、各自的特点等等,以及从几个经典的算子中挑选出三个,利用GUI来实现模拟它们的处理过程来不调用库函数实现边缘检测。
主要工作安排如下:首先,阐明经典的边缘检测算子的原理,在MATLAB中显示出正确结果;其次,模拟罗伯特(Roberts)算子、索贝尔(Sobel)算子、普瑞维特(Prewitt) 算子处理,实现不调用库函数而直接建立模板来对图像进行边缘检测;最后设计系统,书写代码,使得系统最终能实现用户自主选择图像以及算子来进行处理,确保模拟实现的算子的结果正确,在所有工作完成后对整个系统以及算子进行总结,书写论文。
第二章 MATLAB简介
2。1 MATLAB概述
MATLAB名字的构成来源于Matrix Laboratory,它是一种能够进行科学计算的软件,以能够利用矩阵的来处理数据为世人所熟悉。MATLAB兼具精确计算、符号处理和图形分析等多种功能,将高性能的数值计算和可视化集成在一起,并且在它的数据库中提供了大量的内置函数[1] 。正因为如此,近年来MATLAB已得到了业界的普遍认可,从而被广泛地应用于科学计算、控制系统、信息处理等领域的分析、仿真和设计工作中。在各大公司、科研所以及各大高校得到广泛应用,这也推动了其自身的不断完善和发展,功能不断扩充,如今已经发展到MATLAB 7。4。
在科学研究以及工程应用中,人们希望能够通过图像直观表示出数据或者计算结果,参考当前全球软件发展趋势,友好的图形用户界面 (Graphical User Interface,GUI)已成为程序的基本交互入口,因此MATLAB也具备功能强大的GUI功能。也正是如此,MATLAB开发的程序也越来越被用户接受,使得用户能够轻松实现数据的交互式显示。使用者无需了解实现图像结果的细节内容,甚至只需几个简单的函数就能实现。
MATLAB的图像绘制、图像高级操作以及GUI的应用的日益普及,越来越多的用户开始使用MATLAB来进行图像设计,复杂图像绘制。不仅如此,用户还可以根据自己的需求来规划、设计MATLAB的图像外观,不断进行完善和调整,直到最后的图像输出结果满足用户的要求。利用MATLAB所提供的GUI工具,可以使得用户绘制图像的过程更加简单,易于用户使用,从而更有利于MATLAB的研究和发展。
2。2 MATLAB产生的历史背景
MATLAB软件是由美国新墨西哥大学的Cleve Moler以及一起科研的同事开发的出来的,最初主要是为了解决复杂的线性代数分析种种繁琐的计算问题,因此才设计出一款基于矩阵计算的专用于数据处理的软件。最一开始的MATLAB软件是使用FORTRAN语言编写的,随后经过几年的试用,开发者们发现MATLAB软件在处理数据方面有着独特的魅力,存在着很大的优势。