当前位置:文档之家› 基于matlab的图像形状分类器设计

基于matlab的图像形状分类器设计

基于matlab的图像形状分类器设计
基于matlab的图像形状分类器设计

编号:

审定成绩:

重庆邮电大学

毕业设计(论文)

设计(论文)题目:

学院名称:自动化学院

学生姓名:

专业:

班级:

学号:

指导教师:

答辩组负责人:

填表时间:2016 年月

重庆邮电大学教务处制

摘要

随着计算机技术的发展,图像处理作为一种兴起的学科分支受到了国类外学者的高度关注,图像处理由于其应用范围方法的特点的到了较快的发展,现已分布到医疗、公共安全等各个领域,所以对数字图像的研究具有重大意义。数字图像中携带者大量的图像信息,我们对其处理的工程中,不仅要关注信息提取的精度,还要注重处理的速度。因此,找到一种合适的算法,能够高效精确得对图像进行边缘检测与提取显得尤为重要。Matlab软件中包含强大的图像处理程序和图形展示界面,用户通过运行程序,不仅能够对图像的操作有直观的认识,还能自由的对程序进行修改,在图像处理研究方面具有重要的地位。

本文主要结合Matlab软件来进行图像形状分类器的设计,通过编写程序,设置了六种不同的边缘提取算子,对不同类型的图像边缘进行提取,实验结果表明,选取合适的边缘提取算子及其重要,以上六种算法都能够成功识别出三角形,正方形,圆行边界,但是有些算法存在边缘凸起问题,prewitt算子在在识别各种边界时都表现出很好的效果。

【关键词】MATLAB;数字图像处理;图像形状;图像分类

ABSTRACT

With the development of computer technology, image processing as a discipline branch of rise by countries outside class the attention of scholars, the methods of image processing because of its range of application of the rapid development, has now been distributed to the health, public security and other fields, so the study of digital image is of great significance. Carried a large amount of image information in digital image, in our engineering for its processing, should not only pay attention to the accuracy of information extraction, but also pay attention to the speed of processing. Therefore, to find a suitable algorithm, can effective accurate is particularly important for image edge detection and extraction. Matlab software contains powerful image processing and graphic display interface, the user to run the program, not only can have the direct-viewing understanding, to the operation of the image can also be free to modify the program, has an important position in the image processing research.

In this paper, combined with Matlab software for image shape classifier design, through the program, set up six different edge detection operator, for different types of image edge extraction, the experimental results show that the selection of suitable edge detection operator and its important, more than six kinds of algorithms are successfully identified triangle, square, circle line boundary, but some problems edge projection algorithm, prewitt operator showed good effect in identifying various boundary.

【Key words】MATLAB; Digital Image Processing; Image shape; Image Classification

目录

前言 (1)

第一章图像分类器概述 (2)

第一节图像的定义 (3)

一、图像边缘 (3)

二、图像形状 (3)

第二节图像边缘检测 (5)

一、边缘检测的主要内容 (5)

二、边缘检测的应用 (6)

第三节国内外研究现状 (7)

第四节论文主要内容及章节安排 (8)

第二章数字图像处理方法 (9)

第一节数字图像的预处理 (9)

一、数字图像 (9)

二、采样 (11)

三、量化 (12)

四、采样、量化和图像细节的关系 (12)

第二节形状特征及其描述方法 (12)

一、形状特征 (12)

二、几种典型的形状特征描述方法 (14)

第三节几种不同的度量 (14)

一、矩形度 (14)

二、圆形度 (15)

三、矩 (15)

四、不变矩 (15)

第三章边缘检测与提取方法 (16)

第一节边缘检测 (16)

一、边缘检测准备条件 (16)

二、边缘检测基本步骤 (17)

第二节边缘提取 (18)

一、边缘提取的步骤 (18)

第三节边缘提取的常用算子 (19)

一、Roberts边缘算子 (19)

二、Sobel边缘算子 (19)

三、Prewitt边缘算子 (20)

四、Laplacian边缘算子 (20)

五、Log边缘算子 (21)

六、Canny边缘算子 (23)

第四章算法的选择和实现 (26)

第一节边缘检测与识别算法 (26)

第二节仿真实验及结果分析 (29)

一、仿真实验 (29)

二、结果分析 (32)

结论 (33)

致谢 (35)

参考文献 (36)

附录 (37)

前言

图像边缘检测作为图像处理技术中非常重要的环节之一,被广泛的运用到图像应用中。与此同时,边缘检测也是图像分割,图像识别,图像压缩和图像增强的基础。一个图像的边缘是该图像最明显最特殊的特征,为后面的图像边缘检测带来了便利。

图像的边缘往往携带者一张图像中的大部分信息,使得图像处理人员能够很快掌握图像的位置,即使在信号发生突变的顶点处,这些边缘也能提供出很好的轮廓,所以,在边缘检测中,我们往往吧图像的了轮廓看做及其重要的一项特征。这就需要我们在图像处理过程中能够精确的提取出图像的边缘。然而,选取合适的边缘检测算法正是我们目前面临的一项技术难题,不同的边缘检测算法对图像处理的结果又很大的差别,严重影响到了图像识别以及后期的图像处理的效果。

边缘检测算法是一种经典的图像边缘检测技术问题,它的解决方案为我们的高水平的特征描述、识别和理解具有重要的影响,由于边缘检测在许多方面有着非常重要的使用价值,所以人们一直在致力于研究和解决如何构造边缘检测算子的好属性和良好的效果。

现有经典的边界提取技术基本上是基于微分操作。首先,通过相对平滑过滤掉图像中伴随的噪声;然后,进行微分运算,其中包括一阶微分和二阶微分,通过求得梯度最大值或着找到二阶导数为零的点;最后,选取合适的阈值点来进行边界提取。本文中主要采用了几种经典的边缘检测算法,运用MATLAB 语言编写相对应的m文件,最后比较并分析各种算法进行边缘提取的结果。

第一章图像分类器概述

数字图像边缘检测技术最早是在1920年产生的,由于一直以来收到了科研条件的限制,一些技术还不够发达,因此往后的几十年里没有获得很大的进步。在20世纪中后期,随着电力电子技术和计算机技术的广泛发展,图像识别技术在技术上得到了突破。通过最近的迅速突破,边缘检测处理技术目前己经被广泛的应用到全球各个领域中,如制造业,医药业,科技等领域。同时,数字图像边缘检测技术已经受到了世界各行各业的广泛关注。

数字图像边缘检测处理技术在最近的10年发展尤为迅速,每年均有数以百计的新算法诞生,其中包括canny算法[1]、小波变换wavelet transform等多种具有重要地位的智能算法,这类算法都具有一个相同的特点,即是基于数学、通信等基础知识而设计产生的,不仅如此,神经网络[2]、遗传算法[3]、人工智能以及模糊逻辑[4]等技术也被融入到算法的设计中,这不仅需要我们具备相关的理论知识,还要求我们对边缘检测问题有一个明确的思路。

现代的数字图像边缘检测处理的目标有以下三种:

(1)可视化:图像采集和显示时,我们需要适时地对所处理的图像进行改进,以方便观察者能够更加直观的观察到图像的内容。如果具有某些观察者可能感兴趣的图像,我们更应该对图像进行加强突出处理,对有些3D成像方法如CT、MRI、可视化,特别是三维结构可视化高度重视。

(2)自动化:做日常任务或自动化。例如,根据微观图像自动确定染色体的核型染色体分配系统,自动从血涂片白细胞计数报告生成系统。这些应用程序的特点是要求最低人工干预,自动分析系统。应用白细胞计数、商业系统是发达国家在1970年。但是今天是一个完全不同的方式这个任务自动(使用液白细胞计数技术)。

(3)定量化:相关量化图像检测的例子有很多,关于动脉狭窄的过程和测量在显微镜下观察到的切片,并定位和定量得Fenix的特殊成分(如血色沉着病、铁)。在这些应用程序中,允许人工干预,因为在这些应用程序处理时间的长度不是主要矛盾。

数字图像边缘检测处理,利用计算机处理图像的边缘,这些处理方法是与计算机的发展息息相关,这是一个新的应用领域的发展,以光电、数学等技术的许多方面为主题。图像边缘检测处理已经作为一门学科,被AMS当做应用数学的一个分支。经过如此迅速的发展,它被成功应用到了几乎所有关于图像

的领域中。20世纪以后,随着图像分析与处理基础理论的不断完善,其已经在众多高新技术领域中占据了重要地位。

第一节图像的定义

一、图像边缘

图像边缘(Edlge)的定义是指图像边界具有不连续性,这是一种局部特性。比如,图像的灰度具有突变性,图像颜色以及图像的像素也具有突变性,图像纹理结构的突变等。在物体的背景中,两种不同的区域中以及各种目标中,都具有典型的图像边缘特征,这为图像边缘检测提供了依据。本文将主要采用几种典型的边缘检测方法,基于他们的原理,编写程序来实现边缘检测技术[5, 6]。

每个图像都具有不同的灰度,图像灰度是根据图像的不同色阶(红,黄,蓝)的比例程度来决定的。图像边缘也与图像灰度相关。图像灰度具有不连续性,一是阶跃不连续,二是线条不连续。如果图像灰度在不连续的两边具有明显的差异,就叫做阶跃不连续;如果在某个时刻,图像的灰度从一个值改变到另一个值,保持一定的时间后返回到原来值,这个过程叫做图像的线条不连续。事实上,具备阶跃或者线条边缘图像是非常罕见的。在空间分辨率的作用下,具有阶跃边缘的图像将会发生变化,产生斜坡边缘。但是,边缘的灰度不是一瞬间发生改变的[7]。

在讨论边缘检测方法之前,首先介绍一些术语的定义。

(1)边缘点:图像中灰度显著变化的点。

(2)边缘段:边缘点坐标及方向的总和,边缘的方向可以是梯度角。

(3)轮廓:可以用一条曲线来模拟轮廓。

(4)边缘检测器:一种在图像中选择合适的点集(边缘点)的算法。

(5)边缘连接:对无序边缘进行加工,使其变为有序的边缘表。

(6)边缘跟踪:找到相应的搜索途径,用来确定图像的轮廓。

二、图像形状

形状特征是图像边界清晰目标的最佳表达。是目标图像的重要特征,在实践中通常使用形状特征或图像检索的主要边界和分类。图像分类(识别)属于模式识别的范畴,图像是在经过预处理后的主要内容(经过增强、恢复和压缩)、

图像分割和特征提取,其中一个句子分类。图像分类是常用的经典模式识别方法、统计模式分类和句法模式分类(结构),近年来发展了一种新的模糊模式识别和人工神经网络模式分类方法在图像识别中的应用越来越受到重视。

人的第一个思想的光学系统是在物体的形式,可以识别许多的对象从二维图像。在人类视觉感知、识别和理解中,形状是一个重要的参数。形状是描述对象的一个定义特征,并描述图像内容的重要特征。描述图像的形状是一个非常复杂的问题,在二维情况下,形状可以被定义为一个二维位置的范围内的一个简单的连接曲线和方向的函数。所以形状描述涉及封闭曲线或描述的包体的轮廓描述。图像目标边缘的轮廓。外形是最基本的概念,它与形状有着密切的关系。形状知觉的人必须在以前看到。当我们看到一个物体的形状,就是要看到一个轮廓,这个轮廓来区分物体和其他部分的视觉。直观的,感性的要求的形状的轮廓线之间的可见区域的亮度是明确的。形状的轮廓,用数学语言对应的亮度是二阶导数的形成,只有线性变化的亮度不产生轮廓。当人们注意物体的形状时,往往是固定在某一区域;而当人们注意到轮廓线时,轮廓就要从轮廓上看,所以从外形上看,有一个“形状”的过程。你可以说,只是边界轮廓,是一个地方的概念,而且形状都是,是一个一般的概念。

Matlab软件在图像处理方面得到了很好的运用。其是由美国的MathWorks 公司研发的集成了数值计算、符号计算等功能与一体的软件,其最具特色的图形可视化功能,能够让人直观的对仿真结果有一个清晰的认识,是一款世界公认的强大的应用软件[8]。

Matlab中最方便的运算单位是矩阵,通过编写简单的命令,可以将数据表示为基本矩阵,从而加快了计算的速度,大大减少了计算时间。Matlab指令非常简单,通俗易懂,真是因为这样的优势,matlab在国际上得到了有效的发展,并被广泛运用。

Matlab程序包中含有成百上千个函数,还有四十多个工具箱用于解决各式各样的数学优化及计算问题。不仅如此,用户汉可以认为编写程序,对工具包进行扩充处理,每个工具包中都具有相应的测试案例方便初学者学习。工具包已经被广泛的应用到各个领域中。Matlab中的simulink工具箱还可以通过搭建仿真模型来,使得用户对图形有一个直观的了解,因此也受到了众多学者的认可。不仅如此,Matlab软件对所有用户免费开放,除了某些特定的函数模块,大部分函数和程序都是可编辑状态,用户可以按照自己的需求随意编写程序,这也被更多的开发者所认可。

本文正是运用Matlab软件对图像的边缘检测算法进行编辑,通过执行文件,识别图像的轮廓来得到图形的边界特征。

第二节图像边缘检测

一、边缘检测的主要内容

制图边缘检查和分析可以定义的一系列方法掌握、矫正、增强、转换、测试或视觉制图压缩技术。其目的是提高质量的相关信息,再提取有用的信息。出口从图案输入的图像边模型、图像检测边缘的边缘检查过程中,特定应用程序的某个特定的问题和发展的新技术和新方法是画边缘检查找到确实几乎完全不同的其他应用领域[9]。

图像边缘检测的主要研究内容包括:

(1)图像获得和抽样,目的是通过有效的途径来获取图像,并对图像进行抽取,首先通过图像获取装置得到相应的图像,其次,将图像转换为对应的数字化信号,并对该型号进行采样提取,结合图像传感器,对获得的图像进行提取。每一张图像实质上是一个分布在二位向量空间的信号,因此,在选择了合适的图像分辨率的情况下,通过特定的信号处理方法,可以识别出我们需要的图像。

(2)图像分割,图像分割过程非常复杂,它是将图像分解成若干个很小的子图像,然后对每一个子图像进行测量,得到相应的目标。图像分割的结果大大影响到了图像测量的质量。通常情况下,图像分割的方式有两种:一是将每个子图像的灰度值进行平均化,得到均匀变化的过程;二是充分运用图像中灰度的差别,搜索出不同图像之间的轮廓。

(3)边界查索,通常用于探测图性的线型等局部结构,将在图像分割操作运用到图像预处理步骤中。大多数图像边缘检测技术中都使用了某种形式的梯度算子。可以用于水平、垂直或对角梯度传感梯度的算子,他们复杂的结果可以探测在任意方向上的边界点。

(4)图像增强和复原,即采用相应的增强技术对图像镜像操作,以便能够直观的观察到图像,并获取图像的对比度。图像的类型不同,则增强方法的目的也不一样。其中,图像分割是为了对图像进行下一步处理。可以对图像进行整体分割和局部分割。对图像的分割可以在时空中处理,也可以在平面内进

行。图像增强和复原是要改变图像本身的性质,消除图像中的杂波,提出图像中不好的成分,从而实现增强图像质量的目的。

(5)图像分类,作为模式识别的一部分,它的主要内容是经过图像预处理,图像分割,特征提取,分类判断。图像分类使用经典的模式识别方法,统计模式分类和句法模式识别,近年来新的模糊模式识别和人工神经网络模式识别在图像识别中也越来越多的关注。

(6)图像变换,由于图像阵列很大,直接处理空间领域的涉及大量的计算。因此,通常使用各种图像变换的方法,如傅立叶变换、沃尔什变换、离散余弦变换间接处理技术,将空间变换域处理,不仅可以减少计算量,可以获得更多的有效的治疗(如傅里叶变换在数字滤波器在频域)。新兴研究小波变换在时域和频域具有良好的定位特性,它在图像边缘检测也有广泛而有效的应用。二、边缘检测的应用

边缘检测的应用范围尤其广泛,已经波及到各个领域的各个方面,充分影响着人类的生产与生活。由于人的工作方式是不断改变的,其研究了领域也是不断扩大的,所以边缘检测的运用范围也是无止境的。数字图像边缘检测作为图像处理的一个分支,最早是在1952年发展起来的,它的发展有当时的计算水平息息相关。边缘检测的应用范围相当广泛,其主要表现在以下方面:(1)航天和航空技术方面的应用,数字图像边缘检测技术在航空和航天技术应用中,除了月球,火星,照片处理,另一方面是遥感和卫星遥感技术的应用在飞机。末以来,美国和一些国际组织发起了一项资源遥感卫星(陆地卫星系列)和太空实验室(如太空实验室),由于飞机位置和态度在成像条件下,环境条件和其他因素,图像质量并不总是很高。现在配备了先进的计算机系统读取图像边缘检测的分析首先提取图像边缘,缩减了人工并增强了效率,还可以从图片中获取人工不能获取众多有效信号。

(2)生物医学工程方面的应用,例如X光技术,工作人员能够通过X光照片来分析人体的结构,清晰的判断病人生病的地点,其基本原理就是成功运用到了边缘检测方法,精确地提取出人体各个器官的边缘,这为给我们医学方向做出去非常大的贡献,对于人类也是一种福音。

(3)公安军事方面的应用,就目前来说,最广泛的应用就是在识别领域的运用,如人脸识别,由于每个人的人脸轮廓是不同的,所以相关机关能够通过采集城市摄像头中的图像来对犯罪人员的人脸进行匹配,有助于成功抓获犯

罪分子,不仅如此,我们还可以对犯罪分子的车牌进行匹配,成功定位到犯罪分子的活动范围,同样有利区国防安全。

(4)交通管理系统的应用,其应用体现到了多个方面,如今,各类地图的流行,如百度地图能够成功定位到哥各个路段的边线,各个路口的轮廓,如果人们都利用百度地图进行定位,我们就可以实时的观察到每个路段的交通信息,这样极大地方便了人们的出行,同时车辆可以根据地图信息巧妙的避开拥挤路段,充分节约了我们的时间。

视频交通流检测和车辆识别系统是一种图像边缘检测技术,用于实现计算机处理系统的交通目标检测与识别。通过对道路交通信息和交通目标的行动(如超速、停车、超车等)的实时检测和自动统计,对机动车数量、计算速度和车辆分类的不同交通参数,如,达到监测道路交通信息的作用。

第三节国内外研究现状

一直以来,特征提取及识别都富含极高的可靠性,在国际上都具有很高的价值,被各个领域的专家学者广泛探索。

国际上的研究者主要有Mckeown研究所、VGG研究院和德国波恩大学、等,国内的研究者主要是中国科学技术研究院、华中理工大学等等,各个领域的研究者都以计算机技术为基础,通过编程及仿真,总结出了很多有实用性的工作,极大的促进了图像识别的发展。基于前面研究者的成果,很多图像处理软件被成功运用,而且取得了不错的效果,这些软件都有一个共同的特征,就是具有较高的识别精度和较快的特征提取速度。例如:softelec公司在早期研发的VPStudio软件,日本日立公司的Imageseries,美国GTX公司的GTXRaster series,挪威Rasterex公司的RxAutoImage Pro 2000等。中国学者也成功加入到对该类软件的研发过程中,比如:东北大学研发出SEAS系统,华中理工大学研发的的EDIS系统,还有清华紫光研发的TH-DAIMS图纸处理系统等。

通过上述特征提取和识别技术,由于特征提取和识别的多样性和复杂性的问题本身,现有的理论和方法有相当一段距离,从实际的要求,一些基本的问题还有待进一步深入研究。现有的特征提取和识别算法基本上仍处于实验阶段,其实用性和通用性和准确性要求从大规模的实际应用到一定程度。问题的性质和所有这些应用都是分不开的,尚未形成一个统一的、有效的,可以应用于所有的模式识别理论。虽然各特征提取和识别算法的能力,特征提取,特征

识别能力的影响方面的优势,但仍然在性能的算法,通用性,自动化程度的自动化,精度有许多不足之处。所以,这项研究的路还很漫长,希望很多的人增强对于图像特征提取与识别技术的探索,迫切需要后者进行更多的工作。

第四节论文主要内容及章节安排

本文主要是运用MATLAB为工具,来研究对图像的形状,并对不同形状的图像进行分类,其结构安排如下:

第一章引言,介绍了课题研究背景,图像的定义,边缘检测的内容、以及课题的研究现状。

第二章介绍了对数字图像进行预处理基本步骤和基本方法,图像的形状特征及其描述方法以及针对不同形状的度量。

第三章简要阐述了几种边缘检测算子,分析边缘检测算子的各个模型,并比较他们的优劣。

第四章运用第三章所提到的几种常见边缘提取算子,并结合所编写的matlab程序对图形进行仿真实验,并得到合理的结论。

第二章数字图像处理方法

第一节数字图像的预处理

一、数字图像

数字图像,顾名思义就是对一般图像进行处理,得到可以进行数字运算的图像,其中最重要的一个步骤是吧图像进行分割,得到如图2-1所示的子图像,每个子图像都有其固定的像素,我们便可以通过子图像区域像素的差别来对图像的边界定性定位与识别。

图2-1 数字图像

常见的数字图像格式有以下几种[10, 11]:

(1)PCX(Windows Paintbrush)格式。可处理1,4,8,16,24位等图像数据。文件内容包括:文件头(128字节),图像数据、扩展颜色映射表数据。

(2)BMP(Windows Bitmap)格式。有1,4,8,24位非压缩图像,8位RLE(Run-length Encoded )图像。文件内容包括:文件头(一个BITMAP FILEHEADER数据结构),位图信息数据块(位图信息头BITMAP INFOHEADER和一个颜色表)和图像数据。

(3)HDF(Hierarchical Data Format)格式。有8位,24位光栅数据集。

(4)JPEG(Joint Photographic Experts Group)格式,是一种成为联合图像专家组的图像压缩格式。

(5)TIFF(Tagged Image File Format)格式。处理1,4,8,24位非压缩图像,1,4,8,24位packbit压缩图像,一位CCITT压缩图像等。具体的内

容有:文件头(一个BITMAP FILEHEADER数据结构),位图信息数据块(位图信息头BITMAP INFOHEADER和一个颜色表)和图像数据。

(6)XWD(X Windows Dump)格式。1,8位Zpixmaps,Xybitmaps,1位Xypixmaps。

(7)PNG(Portable Network Graphics)格式。

为了从一般的照片,景物中得到符合要求的数字图像,在前期准备过程中,需要对原图做两种操作,即采样与量化(二者统称为数字化)。Matlab作为一种计算工具,被成功的引入到对图像的分析处理中,Matlab中含有专门的图像处理工具箱,这对数字图像的发展有极大地促进作用[12, 13]。

图像处理工具包是Matlab软件中附带的专业的工具箱,它是由众多的函数组成的,操作人员能够自由的对程序进行编写和修改,程序中的注释部分也大大提高的可读性,工具包中还包含有图像变换、滤波等操作,去操作能够有效的保留图像的精度[14]。

(1)图像文件格式的读写和显示。Matlab 中包含有图像文件导入函数imread(),可以用来导入如:bmp、tif、tiffpcx、jpg、gpeg、hdf、xwd等格式图像文;图像写出函数imwrite(),还有图像显示函数image()、imshow()等等。

(2)图像处理运算。Matlab提供了强大的线性以及非线性运算,例如求和运算、求差运算,还有相关性运算等。例如,conv2(I,J)实现了I,J两幅图像的卷积。

(3)图像变换。Matlab提供了一维和二维离散傅立叶变换(DFT)、连续小波变换(CWT)、离散小波变换(DWT)及其反变换,离散余弦变换(DCT)及其反变换函数。

(4)图像的分析和增强。针对图像的统计计算Matlab提供了校正、直方图均衡、中值滤波、对比度调整、自适应滤波等对图像进行的处理。

(5)图像的数学形态学处理。Matlab包含了各种各样的数学运算函数,能够对图像进行开关灯操作。

以上所提到的Matlab在图像中的应用都是由相应的Matlab函数来实现的,使用时,只需按照函数的调用语法正确输入参数即可。在Matlab中,edge()函数的运用特别多,可以对图像进行的边缘提取,它包含了六种边缘提取方法,即Sobel方法、Prewitt方法、Robert方法,Laplacian2Gaussian方法、过零点方法和Canny方法。

基本的图像类型分为以下几种:

(1)索引图像

索引图像实际上是利用图像的像素进行匹配,每个图像的像素是由红黄蓝三种颜色决定的,他们形成一个矩阵,每个矩阵都含有一个特定的值,这样就能构成图像的索引。

图像矩阵和图像的颜色有关,也与图像矩阵的数据类型有关。图像的数据类型一般为双精度或者整形,uint8支持256色,通常用在图像中。

(2)灰度图像

在Matlab中,每一个图像的灰度都会对应一个矩阵。矩阵的大小与像素有关,每一个像素点就是矩阵中的某一个值。因此,矩阵的类型也是不固定的,可以是双精度型,也能设置为整形,但是不同的数据类型对应的值域不同,起范围可以分布在0到1,也可以分布在0到255之间。矩阵的每个元素代表不同的亮度或灰度级。

(3)二进制图像

二进制图像中都有两个状态,即0和1,其中0表示关闭状态,1表示开状态,有这两种状态值可以构成一个矩阵,该矩阵的值就是二进制图像的值,该图像只有黑白两种装填,所以可以当做是灰度图像。

与上面类似,二进制图像也能够处理成不同的数据类型,可以是双精度型,也能设置为整形,但值得注意的是,Matlab在对图像进行处理时,所有的值都是以uint8类型逻辑数组来返回的。

(4)RGB图像

RGB图像实际上是利用图像的像素进行匹配,每个图像的像素是由红黄蓝三种颜色决定的,他们形成一个矩阵,每个矩阵都含有一个特定的值,这样就能构成图像的索引。但是它和图像索引不同,它说产生的值是直接放到数组内。图像数组为M*N*3,M,N表示图像像素的行列数。

二、采样

采样的工作原理是提取出图像的特征,将图像在时间上分割成多个时间点,并找到每个时间点对应的图像离散点,把每个离散值当做一个像素,最后形成一个包含了图像信息的集合。

图像的传输是在一个二维平面上进行的,所以,我们要想把图像信号传输给计算机,及应该降低信号的维度,经过扫描操作可以实现。目前来看,扫描操作可以分为水平操作、垂直操作和时间上的操作。我们需要按照一定的时间规律对图像进行扫描,并且提取出各个图像各个部分的灰度值,通过对比图像之间的灰度值来找到它的像素点。

三、量化

经过采样,图像被分解成在时间上和空间上离散分布的像素,但是像素的

值(灰度值)还是连续值。像素的值,是指白色-灰色-黑色的浓淡值,有时候

也指光的强度(亮度)值或灰度值。把这些连续的浓淡值或灰度值变为离散的

值(整数值)的操作就是量化。

在0-255的值对应于白-黑的时候,有以0为白,255为黑的方法,也有以

0为黑,255为白的方法,这取决于图像的输入方法以及用什么样的观点对图

像进行处理等,这是在编程时应特别注意的问题。

通常灰度值是可以进行量化的,主要有下面几种方法对:均匀量化(uniform

quantization ),线性量化(liner quantization ),对数量化,MAX 量化,锥形

量化(tapered quantization )等。

四、采样、量化和图像细节的关系

上面的采样及量化过程中,应该确定数值N 和灰度级的级数K 。通常取成

2的n 次幂,即:

=2n N (2.1) =2m K (2.2)

图像在计算机中所占的二进制储存位数b 可以做如下计算:

*log(2)**(bit)m N N b N N m == (2.3)

事实上,数字图像不能够完全代替原图像,因为在数据处理的过程中会带

来或多或少的误差,这种误差的大小大部分由采样样本的大小和数量以及量化

的级数K 决定的。N 和K 的值越大,图像越清晰[15]。

第二节 形状特征及其描述方法

一、形状特征

本文主要采用的是几何参数法来判断给出的的图像是什么形状。

对于图像分类问题,特征提取的提取是决定分类性能的关键因素。在提取

物体的形状特征之前,首先对图像进行边缘检测,以获取物体边界轮廓,然后

需要对边界区域的特征进行轮廓提取。在这些特性中,一些可以用数值来描述,

但更多的功能是没有明显的几何。对于图像匹配的目的,需要进一步说明的几何形状。图像中的对象的性质不能因为图像的平移、旋转和尺度的变化而改变。所以,在形状描述中,该描述符的选择应具有平移不变性和旋转不变性和缩放不变性。不仅如此,选择描述符还应该能够刻画形状特征的本质,使描述符具有很好的分辨能力。

特征提取的图像特征选择原则是对所包含的输入信息进行处理和分析,将信息容易受到随机干扰,作为特征提取模型。特征提取方法是去除冗余信息,提高识别精度,降低运算复杂度,提高运算速度。较好的特征必须具备以下四个特点:

(1)区别性

理论上,点的特征值属于不同类别的对象应该有明显的差异。不同类别的特征值,差值越大越区分不同类别的特征之间的区分能力,类的特性可以用来测量距离。

面积如三角形和圆形,两者的计算间距很小,类之间的距离的形状指数非常大,因为这2种类型的样本各有相同的内部形状指数,方差的特征是接近0,所以类之间的距离较大。如果你选择“形状特征指标作为分类的基础上,其高分辨率;如果你选择“地区”为分类依据,分辨率低。

(2)可靠性

在同一类别的所有对象的特征值应该是尽可能接近。类特征值越接近于特征值越高,以确定这种对象的可靠性更高。

作为一组不同大小的圆形,如果选择以“区域”为基础,其与其他类别分离,其可靠性较低,同一圆在不同样本区域的差异较大,并选择“形状指数”作为分类的依据,其可靠性高,所有在同一个圆类中的同形指数。特征是类属性的样本属性的可靠性直接。

(3)独立性

如果必须使用多个特征分类,应该尽可能地将这些特性之间是无关的。像是高度相关的功能,基本上反映了对象的相同属性,可以结合,而不应该单独使用。

如形状的几何分类,面积和周长之间的特征是高度相关的,和形状指数的形状和大小有一定的相关性,但相关程度低。在识别系统的分辨率、可靠性和独立性的特点,是针对整个系统的组成。一个单一的物体,分辨率和无参考和比较特点的可靠性。

二、几种典型的形状特征描述方法

对于形状分析和分类方法有很多。一般而言,形式特征表示方法可以分为两类:基于边界和基于区域的。前者使用的外部边界的形状,而后者使用的整个区域。最典型的两种形状模板匹配方法的特征是傅立叶描述符、变形和形状不变矩。此外,轮廓匹配法和几何参数法、边界方向直方图法、小波系数法和小波轮廓表示法等。下面是几种典型的形状特征描述方法。:

(1)边界特征法

基于边界特征描述的方法得到形状参数的图像。Hough变换检测平行线法和边界方向直方图法是一种经典的方法。Hough变换是利用全局特征的图像和边缘连接的像素区域封闭边界的一种方法,其基本思想是点-线对偶性;边界方向直方图方法第一差分图像的边缘,从而获得使边缘直方图的大小和方向,通常的方法是构建了图像灰度梯度方向矩阵。

(2)傅里叶形状描述符法

傅立叶形状描述符的基本思想是使用一个对象的边界,傅立叶变换的形状描述,使用的区域边界闭合和周期性,二维问题成一维问题。从边界点三的形状表达,分别是曲率函数,质心距离,复杂的坐标函数。

(3)几何参数法

形状表示和匹配方法来描述一个更简单的,定量的措施,如采用形状参数法(形状因子)的形状参数法(形状参数)的区域特征。在QBIC系统,是利用圆度、偏心率、主轴方向和代数几何参数,如矩、基于形状特征的图像检索。(4)形状不变矩法

利用目标所占区域的矩作为形状描述参数来进行分类。

(5)其它方法

这些年,在形状的表示和匹配方面的工作还包括有限元法(Finite Element Method或FEM)、旋转函数(Turning Function)和小波描述符(Wavelet Descriptor)等方法。

第三节几种不同的度量

一、矩形度

用目标图像的面积和包围该图像的最小的矩形面积之比作为目标矩形度

的一种度量参数,记为

0R A R A = (2.4)

其中A0表示目标图像的面积,AR 表示包围该图像的最小矩形的面积。R 的大小能反映目标物体和矩形的接近程度。矩形度的值限定在0到1之间。

二、圆形度

对于某些图形的面积,半周长越小,圆形表面更光滑,更接近于圆形;反之,洲长越大,圆的表面褶皱,形状更加复杂的多。为了这个原因,一般使用圆形程度来衡量图形的形状的程度。在一个圆形的形状中,指的是其面积的平方之比是目标对象的周长,记为 2

4P c A π= (2.5)

其中:P 表示图形的周长,A 表示周长所围的面积。理论上讲,圆的圆形度为1.0,正方形的圆形度为π/4=0.79

/9=0.60.

另外,圆形度还有两个计算公式: 'A c A = (2.6) 其中,A 是区域面积,L 是最小外接圆面积。该指数还认为圆形区域最紧凑,紧凑度为1。在最小外接圆面积作为衡量区域形状的计算。 2A c L

= (2.7)

三、矩

当对象是一些简单的几何图形时,用上述参数来描述物体的形状是比较合适的。如果图像的复杂边界特性,用上述参数来描述物体的形状就比较困难。对于复杂的对象,我们可以通过转矩和轮廓描述符来描述复杂的对象。转矩特性是基于该区域的灰度分布的统计分析的基础上,是一个术语用来描述一个统计平均,可以从全局的角度来看,对象的整体功能。力矩是一种线性特征,图像旋转、尺度和平移不变性的转矩特性,因此可以用来描述图像区域的形状特征。

四、不变矩

基于MATLAB的图像复原

基于MATLAB的图像复原 摘要 随着信息技术的发展,数字图像像已经充斥着人们身边的任意一个角落。由于图像的传送、转换,或者其他原因,可能会造成图像的降质、模糊、变形、质量下降、失真或者其他情况的图像的受损。本设计就针对“图像受损”的问题,在MATLAB环境中实现了利用几何失真校正方法来恢复被损坏的图像。几何失真校正要处理的则是在处理的过程,由于成像系统的非线性,成像后的图像与原图像相比,会产生比例失调,甚至扭曲的图像。 图像复原从理论到实际的操作的实现,不仅能改善图片的视觉效果和保真程度,还有利于后续的图片处理,这对医疗摄像、文物复原、视频监控等领域都具有很重要的意义。 关键字:图像复原;MATLAB;几何失真校正

目录 摘要 (1) 1 MATLAB 6.x 信号处理 (1) 2 图像复原的方法及其应用 (13) 2.1 图像复原的方法 (13) 2.2 图像复原的应用 (14) 3 几何失真校正实现 (15) 3.1 空间变换 (15) 3.1.1 已知()y x r,和()y x s,条件下的几何校正 (16) 3.1.2 ()y x r,和()y x s,未知条件下的几何失真 (16) 3.2 灰度插值 (17) 3.3 结果分析 (19) 参考文献 (20) 附录 (21)

1 MATLAB 6.x信号处理 (1)对MATLAB 6 进行了简介,包括程序设计环境、基本操作、绘图功能、M文件以及MATLAB 6 的稀疏矩阵这五个部分。MATLAB的工作环境有命令窗口、启动平台、工作空间、命令历史记录与当前路径窗口这四部分。M文件的编辑调试环境有四个部分的设置,分别是:Editor/Debugger的参数设置,字体与颜色的设置,显示方式的设置,键盘与缩进的设置。MATLAB采用路径搜索的方法来查找文件系统的M文件,常用的命令文件组在MATLAB文件夹中,其他M文件组在各种工具箱中。基本操作主要是对一些常用的基本常识、矩阵运算及分解、数据分析与统计这三方面进行阐述。MATLAB的基本操作对象时矩阵,所以对于矩阵的输入、复数与复数矩阵、固定变量、获取工作空间信息、函数、帮助命令进行了具体的描述。矩阵运算是MATLAB的基础,所有参与运算的数都被看做为矩阵。MATLAB中共有四大矩阵分解函数:三角分解、正交分解、奇异值分解以及特征值分解。数据分析与统计包括面向列的数据分析、数据预处理、协方差矩阵与相关系数矩阵、曲线拟合这四部分。MATLAB 中含有丰富的图形绘制寒素,包括二维图形绘制、三维图像绘制以及通用绘图工具函数等,同时还包括一些专业绘图函数,因此其具有很强大的绘图功能。简单的二维曲线可以用函数plot来绘制,而简单的三维曲线图则用plot3来绘制。在绘制图形时,MATLAB自动选择坐标轴表示的数值范围,并用一定的数据间隔标记做标注的数据,当然自己也可以指定坐标轴的范围与数据间隔。专业的绘图函数有绘梯度图制条形图、饼图、三维饼图、箭头图、星点图、阶梯图以及等高线。M文件时用户自己通过文本编辑器或字处理器生成的,且其之间可以相互调用,用户可以根据自己的需要,自我编写M文件。M文件从功能上可以分为底稿文件与函数文件两类,其中底稿文件是由一系列MATLAB语句组成的,而函数文件的第一行必须包含关键字“function”,二者的区别在于函数文件可以接受输入参数,并可返回输出参数,而底稿文件不具备参数传递的功能;在函数文件中定义及使用的变量大都是局部变量,只在本函数的工作区内有效,一旦退出该函数,即为无效变量,而底稿文件中定义或使用的变量都是全局变量,在退出文件后仍为有效变量。稀疏矩阵是一种特殊类型的矩阵,

matlab图像处理的几个实例

Matlab图像处理的几个实例(初学者用) 1.图像的基本信息及其加减乘除 clear,clc; P=imread('yjx.jpg'); whos P Q=imread('dt.jpg'); P=im2double(P); Q=im2double(Q); gg1=im2bw(P,0.3); gg2=im2bw(P,0.5); gg3=im2bw(P,0.8); K=imadd(gg1,gg2); L=imsubtract(gg2,gg3); cf=immultiply(P,Q); sf=imdivide(Q,P); subplot(421),imshow(P),title('郁金香原图'); subplot(422),imshow(gg1),title('0.3'); subplot(423),imshow(gg2),title('0.5'); subplot(424),imshow(gg3),title('0.8'); subplot(425),imshow(K),title('0.3+0.5'); subplot(426),imshow(L),title('0.5-0.3'); subplot(427),imshow(cf),title('P*Q'); subplot(428),imshow(sf),title('P/Q'); 2.图像缩放 clear,clc; I=imread('dt.jpg'); A=imresize(I,0.1,'nearest'); B=imresize(I,0.4,'bilinear'); C=imresize(I,0.7,'bicubic'); D=imresize(I,[100,200]); F=imresize(I,[400,100]); figure subplot(321),imshow(I),title('原图'); subplot(322),imshow(A),title('最邻近插值'); subplot(323),imshow(B),title('双线性插值'); subplot(324),imshow(C),title('二次立方插值'); subplot(325),imshow(D),title('水平缩放与垂直缩放比例为2:1'); subplot(326),imshow(F),title('水平缩放与垂直缩放比例为1:4');

基于MATLAB图像处理报告

基于M A T L A B图像处理报告一、设计题目 图片叠加。 二、设计要求 将一幅礼花图片和一幅夜景图片做叠加运算,使达到烟花夜景的美图效果。 三、设计方案 、设计思路 利用matlab强大的图像处理功能,通过编写程序,实现对两幅图片的像素进行线性运算,利用灰度变换的算法使图片达到预期的效果。 、软件介绍 MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。 MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。 MATLAB的基本数据单位是矩阵,它的指令表达式与数学、工程中常用的形式十分相似,故用MATLAB来解算问题要比用C,FORTRAN等语言完成相同的事情简捷得多,并且MATLAB 也吸收了像Maple等软件的优点,使MATLAB成为一个强大的数学软件。在新的版本中也加入了对C,FORTRAN,C++,JAVA的支持。可以直接调用,用户也可以将自己编写的实用程序导入到MATLAB函数库中方便自己以后调用,此外许多的MATLAB爱好者都编写了一些经典的程序,用户直接进行下载就可以用。

图像处理实例(含Matlab代码)

信号与系统实验报告——图像处理 学院:信息科学与工程学院 专业:2014级通信工程 组长:** 组员:** 2017.01.02

目录 目录 (2) 实验一图像一的细胞计数 (3) 一、实验内容及步骤 (3) 二、Matlab程序代码 (3) 三、数据及结果 (4) 实验二图像二的图形结构提取 (5) 一、实验内容及步骤 (5) 二、Matlab程序代码 (5) 三、数据及结果 (6) 实验三图像三的图形结构提取 (7) 一、实验内容及步骤 (7) 二、Matlab程序代码 (7) 三、数据及结果 (8) 实验四图像四的傅里叶变化及巴特沃斯低通滤波 (9) 一、实验内容及步骤 (9) 二、Matlab程序代码 (9) 三、数据及结果 (10) 实验五图像五的空间域滤波与频域滤波 (11) 一、实验内容及步骤 (11) 二、Matlab程序代码 (11) 三、数据及结果 (12)

实验一图像一的细胞计数 一、实验内容及步骤 将该图形进行一系列处理,计算得到途中清晰可见细胞的个数。 首先,由于原图为RGB三色图像处理起来较为麻烦,所以转为灰度图,再进行二值化化为黑白图像,得到二值化图像之后进行中值滤波得到细胞分布的初步图像,为了方便计数对图像取反,这时进行一次计数,发现得到的个数远远多于实际个数,这时在进行一次中值滤波,去掉一些不清晰的像素点,剩下的应该为较为清晰的细胞个数,再次计数得到大致结果。 二、Matlab程序代码 clear;close all; Image = imread('1.jpg'); figure,imshow(Image),title('原图'); Image=rgb2gray(Image); figure,imshow(Image),title('灰度图'); Theshold = graythresh(Image); Image_BW = im2bw(Image,Theshold); Reverse_Image_BW22=~Image_BW; figure,imshow(Image_BW),title('二值化图像'); Image_BW_medfilt= medfilt2(Image_BW,[3 3]); figure,imshow(Image_BW_medfilt),title('中值滤波后的二值化图像'); Reverse_Image_BW = ~Image_BW_medfilt; figure,imshow(Reverse_Image_BW),title('图象取反'); Image_BW_medfilt2= medfilt2(Reverse_Image_BW,[20 20]); figure,imshow(Image_BW_medfilt2),title('第二次中值滤波的二值化图像'); [Label, Number]=bwlabel(Image_BW_medfilt,8);Number [Label, Number]=bwlabel(Image_BW_medfilt2,8);Number

基于matlab的文字识别算法 课程设计

摘要 本课程设计主要运用MATLAB的仿真平台设计进行文字识别算法的设计与仿真。也就是用于实现文字识别算法的过程。从图像中提取文字属于信息智能化处理的前沿课题,是当前人工智能与模式识别领域中的研究热点。由于文字具有高级语义特征,对图片内容的理解、索引、检索具有重要作用,因此,研究图片文字提取具有重要的实际意义。又由于静态图像文字提取是动态图像文字提取的基础,故着重介绍了静态图像文字提取技术。随着计算机科学的飞速发展,以图像为主的多媒体信息迅速成为重要的信息传递媒介,在图像中,文字信息(如新闻标题等字幕)包含了丰富的高层语义信息,提取出这些文字,对于图像高层语义的理解、索引和检索非常有帮助。 关键字:文字识别算法;静态图像文字提取;检索

目录 1 课程设计目的 (3) 2 课程设计要求 (4) 3 相关知识 (5) 4 课程设计分析 (8) 5 系统实现 (9) 6 系统测试与分析 (17) 6.1文字识别算法仿真结果 (17) 6.2基于字符及单词的识别 (19) 6.2.1 基于字符的识别 (19) 6.2.2 基于单词的识别 (20) 6.3现存算法的问题 (21) 6.3.1 大多文字识别方法依赖于人工定义的特征 (21) 6.3.2 脱离上下文的字符识别易造成显著的歧义 (21) 6.3.3 简单的单词整体识别有着较大的局限性 (22) 6.3.4 训练样本制作繁琐 (22) 7 参考文献 (23)

图像文字提取又分为动态图像文字提取和静态图像文字提取两种,其中,静态图像文字提取是动态图像文字提取的基础,其应用范围更为广泛,对它的研究具有基础性,所以本文主要讨论静态图像的文字提取技术。静态图像中的文字可分成两大类:一种是图像中场景本身包含的文字,称为场景文字;另一种是图像后期制作中加入的文字,称为人工文字,如右图所示。场景文字由于其出现的位置、小、颜色和形态的随机性,一般难于检测和提取;而人工文字则字体较规范、大小有一定的限度且易辨认,颜色为单色,相对与前者更易被检测和提取,又因其对图像内容起到说明总结的作用,故适合用来做图像的索引和检索关键字。对图像中场景文字的研究难度大,目前这方面的研究成果与文献也不是很丰富,本文主要讨论图像中人工文字提取技术。 静态图像中文字的特点 静态图像中文字(本文特指人工文字,下同)具有以下主要特征: (1)文字位于前端,且不会被遮挡; (2)文字一般是单色的; (3)文字大小在一幅图片中固定,并且宽度和高度大体相同,从满足人眼视觉感受的角度来说,图像中文字的尺寸既不会过大也不会过小; (4)文字的分布比较集中,排列一般为水平方向或垂直方向; (6)多行文字之间,以及单行内各个字之间存在不同于文字区域的空隙。在静态图片文字的检测与提取过程中,一般情况下都是依据上述特征进行处理的。 数字图象处理 静态图像文字提取一般分为以下步骤:文字区域检测与定位、文字分割与文字提取、文字后处理。其流程如图所示。 图1 静态文字处理流程图

基于MATLAB的图像处理

课程设计任务书 学生姓名:专业班级: 指导教师:工作单位: 题目: 基于MATLAB的图像滤波设计 初始条件:1.MATLAB软件 2.滤波器处理相关函数 要求完成的主要任务: (1)读入图像并分别加入高斯噪声、椒盐噪声和乘性噪声,并比较结果。 (2)设计巴特沃斯低通滤波对图像进行低通滤波处理,显示结果。 (3)设计高斯高通滤波器对图像进行处理,显示结果。 (4)采用维纳滤波和中值滤波对图像进行处理,显示结果 参考书: 1.《信号与系统》第一版刘泉江雪梅主编高等教育出版社 2.《数字图像处理》MATLAB版冈萨雷斯主编电子工业出版社 时间安排: 第15周:任务安排、分组 第16周:理论设计及仿真 第18周:撰写设计报告及答辩 指导教师签名:年月日系主任(或责任教师)签名:年月日

摘要 (3) 1.MATLAB简介 (5) 1.1 MATLAB的概况 (5) 1.2 MATLAB产生的历史背景 (5) 2.编程及运行结果 (7) 2.1常见基本运算 (7) 2.1.1极限的计算 (7) 2.1.2微分的计算 (7) 2.1.3积分的计算 (8) 2.1.4级数的计算 (9) 2.1.5求解代数方程 (10) 2.1.6求解常微分方程 (10) 2.2 矩阵基本计算 (11) 2.2.1矩阵的最大值 (11) 2.2.2矩阵的最小值 (11) 2.2.3矩阵的均值 (12) 2.2.4矩阵的方差 (13) 2.2.5矩阵的转置 (13) 2.2.6矩阵的逆 (14) 2.2.7矩阵的行列式 (15) 2.2.8矩阵的特征值计算 (15) 2.2.9矩阵的相乘 (16) 2.2.10矩阵的右除和左除 (17) 2.2.11矩阵的幂运算 (18) 2.3 多项式基本计算 (18) 2.3.1多项式加减运算 (18) 2.3.2多项式乘除运算 (19) 2.3.3多项式求导 (20) 2.3.4求根和求值运算 (20) 2.3.5多项式的部分分式展开 (21) 2.3.6多项式的拟合 (22) 2.3.7插值运算 (23) 3.基于MATLAB的图像滤波设计 (25) 3.1读入图像并分别加入高斯噪声、椒盐噪声和乘性噪声,并比较结果 (25) 3.2设计巴特沃斯低通滤波对图像进行低通滤波处理,显示结果 (29) 3.2.1叠加椒盐噪声的巴特沃斯低通滤波 (29) 3.2.2叠加高斯噪声的巴特沃斯低通滤波 (31) 3.2.3叠加乘性噪声的巴特沃斯低通滤波 (32) 3.3用MATLAB实现高斯高通滤波器对图像的处理 (33) 3.4维纳滤波和中值滤波对图像进行处理 (35) 4.总结 (38) 参考文献 (39)

基于MATLAB的图像恢复算法研究

中北大学 课程设计说明书 学生姓名:学号: 学生姓名:学号: 学生姓名:学号: 学院:信息商务学院 专业:电子信息工程 题目:信息处理综合实践: 基于MATLAB的图像恢复算法研究 指导教师:职称: 年月日

中北大学 课程设计任务书 13/14 学年第一学期 学院:信息商务学院 专业:电子信息工程 学生姓名:学号: 学生姓名:学号: 学生姓名:学号: 课程设计题目:信息处理综合实践: 于MATLAB的图像恢复算法研究起迄日期: 课程设计地点:电子信息科学与技术专业实验室 指导教师: 系主任: 下达任务书日期: 年月日

目录 摘要: (6) 1.图像复原的概念 (6) 1.1图像复原的定义 (6) 1.2 图象恢复与图象增强的异同 (6) 1.3 图象退化的原因 (6) 1.4 维纳滤波的研究历史 (6) 1.5图象退化举例 (7) 2.退化模型 (8) 2.1图象退化模型概述 (8) 2.2连续函数退化模型 (8) 2.3离散函数退化模型 (8) 3.图象复原技术 (9) 3.1无约束恢复 (9) 3.2逆滤波 (9) 3.3 维纳(Wiener)滤波器基本原理 (10) 3.4维纳滤波复原法 (11) 3.5图像复原例图 (12) 4.图像复原的MATLAB实现实例 (13) 5.结束语 (14) 参考文献: (14) 附录: (14) (1).维纳滤波复原源代码: (14) (2).规则化滤波复原程序源代码: (15) (3).Lucy-Richardson复原滤波源代码: (15) (4).盲目去卷积复原源代码: (15)

摘要: 图像复原是图象处理的一个重要课题。图像复原也称图象恢复,是图象 处理中的一大类技术。它的主要目的是改善给定的图像质量。当给定了一幅 退化了的或者受到噪声污染了的图像后,利用退化现象的某种先验知识来重 建或恢复原有图像是复原处理的基本过程。可能的退化有光学系统中的衍 射,传感器非线性畸变,光学系统的像差,摄影胶片的非线性,大气湍流的 扰动效应,图像运动造成的模糊及几何畸变等等。噪声干扰可以由电子成像 系统传感器、信号传输过程或者胶片颗粒性造成。各种退化图像的复原都 可归结为一种过程,具体地说就是把退化模型化,并且采用相反的过程进行 处理,以便恢复出原图像。文章介绍了图象退化的原因,几种常用的图像滤 波复原技术,以及用MATLAB实现图像复原的方法。 1.图像复原的概念 1.1图像复原的定义 图像复原也称图象恢复,是图象处理中的一大类技术。所谓图像复原,是指去除或减轻在获取数字图像过程中发生的图像质量下降(退化)这些退化包括由光学系统、运动等等造成图像的模糊,以及源自电路和光度学因素的噪声。图像复原的目标是对退化的图像进行处理,使它趋向于复原成没有退化的理想图像。成像过程的每一个环节(透镜,感光片,数字化等等)都会引起退化。在进行图像复原时,既可以用连续数学,也可以用离散数学进行处理。其次,处理既可在空间域,也可在频域进行。 1.2 图象恢复与图象增强的异同 相同点:改进输入图像的视觉质量。 不同点:图象增强目的是取得较好的视觉结果(不考虑退化原因);图象恢复根据相应的退化模型和知识重建或恢复原始的图像(考虑退化原因)。 1.3 图象退化的原因 图象退化指由场景得到的图像没能完全地反映场景的真实内容,产生了失真等问题。其原因是多方面的。如: 透镜象差/色差 聚焦不准(失焦,限制了图像锐度) 模糊(限制频谱宽度) 噪声(是一个统计过程) 抖动(机械、电子) 1.4 维纳滤波的研究历史 维纳是著名的数学家,后来被誉为信息理论家。维纳的著作不仅是一个很好的创见,而且具有结合工程的实际意义,是线性滤波理论研究的一个重要的开端. 在第二次世界大战中,由于雷达的发明以及防空炮火控制的任务,把大量有修养的数学家和物理学家都动员到信息科学这个研究领域中来了,这个时候人们活跃于这个领域,并有许多重大的科学创造。数学家维纳对于滤波理论的研究成果,就是这时候重大的科学创见之一。

MATLAB中图像函数大全 详解及例子

图像处理函数详解——strel 功能:用于膨胀腐蚀及开闭运算等操作的结构元素对象(本论坛随即对膨胀腐蚀等操作进行讲解)。 用法:SE=strel(shape,parameters) 创建由指定形状shape对应的结构元素。其中shape的种类有 arbitrary' 'pair' 'diamond' 'periodicline' 'disk' 'rectangle' 'line' 'square' 'octagon 参数parameters一般控制SE的大小。 例子: se1=strel('square',6) %创建6*6的正方形 se2=strel('line',10,45) %创建直线长度10,角度45 se3=strel('disk',15) %创建圆盘半径15 se4=strel('ball',15,5) %创建椭圆体,半径15,高度5

图像处理函数详解——roipoly 功能:用于选择图像中的多边形区域。 用法:BW=roipoly(I,c,r) BW=roipoly(I) BW=roipoly(x,y,I,xi,yi) [BW,xi,yi]=roipoly(...) [x,y,BW,xi,yi]=roipoly(...) BW=roipoly(I,c,r)表示用向量c、r指定多边形各点的X、Y坐标。BW选中的区域为1,其他部分的值为0. BW=roipoly(I)表示建立交互式的处理界面。 BW=roipoly(x,y,I,xi,yi)表示向量x和y建立非默认的坐标系,然后在指定的坐标系下选择由向量xi,yi指定的多边形区域。 例子:I=imread('eight.tif'); c=[222272300270221194]; r=[21217512112175]; BW=roipoly(I,c,r); imshow(I)

用matlab实现图像灰度变换课程设计

课程设计报告册 课程名称: MATLAB课程设计 课题名称:灰度变换增强 专业班级: 姓名: Bob Wang 学号: 15164 课程设计主要场所:信息楼220 时间: 指导教师:成绩:

前言 数字图像处理技术是20世界60年代发展起来的一门新兴学科,随着图像处理理论和方法的进一步完善,使得数字图像处理技术在各个领域得到了广泛应用,并显示出广阔的应用前景。MATLAB既是一种直观、高效的计算机语言,同时又是一个科学计算平台。它为数据分析和数据可视化、算法和应用程序开发提供了最核心的数学和高级图形工具。根据它提供的500多个数学和工程函数,工程技术人员和科学工作者可以在它的集成环境中交互或变成以完成各自的计算。MATLAB中集成了功能强大的图像处理工具箱。由于MATLAB语言的语法特征与C语言极为相似,而且更加简单,更加符合科技人员对数学表达式的书写格式,而且这种语言可移植性好、可扩展性强,再加上其中有丰富的图像处理函数,所以MATLAB在图像处理的应用中具有很大的优势。 MATLAB是一种以矩阵运算为基础的交互式程序语言,能够满足科学、工程计算和绘图的要求,与其它计算机语言相比,其特点是简洁和智能化,适应科技专业人员的思维方式和书写习惯,使得编程和调试效率大大提高。我们学习掌握MATLAB,也可以说是在科学工具上与国际接轨。

目录 一、课程设计目的 (2) 二、设计任务及容 (2) 三、课题设计实验条件 (3) 四、涉及知识 (3) 五、具体设计过程及调试 (4) 5.1、图像的读入和显示 5.1.1、打开图像 (4) 5.1.2、显示原图像 (5) 5.1.3、图像灰度处理 (7) 5.1.4、显示灰阶后图像 (8) 5.2、直方图均衡化 5.2.1、生成直方图 (10) 5.2.2、直方图均衡化 (12) 5.3、灰度变换 5.3.1、线性变换 (9) 5.3.2、分段线性变换 (9) 5.3.3、非线性变换.................................... (9) 六、心得体会 (17) 七、参考文献 (18) 八、程序清单 (19)

基于MATLAB的运动模糊图像处理

基于MATLAB的运动模糊图像处理 提醒: 我参考了文献里的书目和网上的一些代码而完成的,所以误差会比较大,目前对于从网上下载的模糊图片的处理效果很不好,这是我第一次上传自己完成的实验的文档,希望能帮到一些人吧。 研究目的 在交通系统、刑事取证中图像的关键信息至关重要,但是在交通、公安、银行、医学、工业监视、军事侦察和日常生活中常常由于摄像设备的光学系统的失真、调焦不准或相对运动等造成图像的模糊,使得信息的提取变得困难。但是相对于散焦模糊,运动模糊图像的复原在日常生活中更为普遍,比如高速运动的违规车辆的车牌辨识,快速运动的人群中识别出嫌疑人、公安刑事影像资料中提取证明或进行技术鉴定等等,这些日常生活中的重要应用都需要通过运动模糊图像复原技术来尽可能地去除失真,恢复图像的原来面目。因此对于运动模糊图像的复原技术研究更具有重要的现实意义。 图像复原原理 本文探讨了在无噪声的情况下任意方向的匀速直线运动模糊图像的复原问题,并在此基础上讨论了复原过程中对点扩散函数(PSF)的参数估计从而依据自动鉴别出的模糊方向和长度构造出最为近似的点扩散函数,构造相应的复原模型,实现运动模糊图像的复原;在模糊图像自动复原的基础上,根据恢复效果图的纹理特征和自动鉴别出的模糊长度和角度,人工调整模糊方向和长度参数,使得复原效果达到最佳。 实验过程 模糊方向的估计: 对图1(a)所示的原始图像‘车牌’图像做方向θ=30?,长度L=20像素的匀速直线运动模糊,得到退化图像如图1(b)

1(a) 1(b) j=imread('车牌1.jpg'); figure(1),imshow(j); title('原图像'); len=20; theta=30; psf=fspecial('motion',len,theta); j1=imfilter(j,psf,'circular','conv'); figure,imshow(j1); title('PSF 模糊图像'); 图1(c)和1(d)分别为原图像和模糊图像的二次傅里叶变化

matlab课程设计-图像处理

图像处理系统 --学习报告 学号: 姓名: 专业: 日期:

1 使用语言 Matlab 2图像选择及变换 2.1 原始图像选择读取 原始图片如下: 图1 原始图片 MATLAB为用户提供了专门的函数以从图像格式的文件中读写图像数据。 采用的是imrea d函数来实现图像文件的读取操作,采用的格式如下: A=imread(’filename.fmt’) 该语句用于读取字符串“filename”对应的灰度图像或彩色图像,“fmt”指定了文件的格式。 采用imfinfo函数查询图像文件的信息。其语句格式如下:

Info=imfinfo(‘filename.fmt’) 该语句可以在命令窗口会显示出文件的基本信息。 采用imshow函数进行图像的显示,采用的格式如下: A=imread(‘filename.fmt’); imshow(A); 当这种显示方式要求被显示的图像要么在当前目录下或MATLAB的目录下。 采用rgb2gray函数进行真彩色图像与灰阶强度图像的转变,其格式调用如下:A=rgb2gry(‘filename.fmt’); 得到的图像可以进行统计与处理,能完成要求。 图像读入与显示和变化的源代码如下: close all; clear all; x=imread('xuewu.jpg'); imshow(x); imfinfo('xuewu.jpg') 程序运行结果如下图2所示: 图2 读取后显示图片

命令窗口中,显示如下: Filename: 'xuewu.jpg' FileModDate: '27-Dec-2011 08:58:56' FileSize: 348015 Format: 'jpg' FormatVersion: '' Width: 1024 Height: 768 BitDepth: 24 ColorType: 'truecolor' FormatSignature: '' NumberOfSamples: 3 CodingMethod: 'Huffman' CodingProcess: 'Sequential' Comment: {}2.2 转换图像为灰阶图像 2.2 图像的变换 在后期的处理中,有部分程序需要用到灰阶图片,因此提前将图片进行转换,得到灰阶图片。采用rgb2gray函数进行真彩色图像与灰阶强度图像的转变其格式调用如下: A=rgb2gry(‘filename.fmt’); 得到的图像可以进行统计与处理。 程序源代码如下: x1=rgb2gray(x); figure,imshow(x1) 程序运行结果如下图3所示:

基于Matlab基本图像处理程序

图像读入 ●从图形文件中读入图像imread Syntax: A = imread(, fmt) :指定的灰度或彩色图像文件的完整路径和文件名。 fmt:指定图形文件的格式所对应的标准扩展名。如果imread没有找到所制定的文件,会尝试查找一个名为的文件。 A:包含图像矩阵的矩阵。对于灰度图像,它是一个M行N列的矩阵。如果文件包含RGB 真彩图像,则是m*n*3的矩阵。 ●对于索引图像,格式[X, map] = imread(, fmt) X:图像数据矩阵。 MAP:颜色索引表 图像的显示 ●imshow函数:显示工作区或图像文件中的图像 ●Syntax: imshow(I) %I是要现实的灰度图像矩阵 imshow(I,[low high],param1, val1, param2, val2,...) %I是要现实的灰度图像矩阵,指定要显示的灰度范围,后面的参数指定显示图像的特定参数 imshow(RGB) imshow(BW) imshow(X,map) %map颜色索引表 imshow() himage = imshow(...)

●操作:读取并显示图像 I=imread('C:\Users\fanjinfei\Desktop\baby.bmp');%读取图像数据 imshow(I);%显示原图像 图像增强 一.图像的全局描述 直方图(Histogram):是一种对数据分布情况的图形表示,是一种二维统计图表,它的两个坐标分别是统计样本和该样本对应的某个属性的度量。 图像直方图(Image Histogram):是表示数字图像中亮度分布的直方图,用来描述图象灰度值,标绘了图像中每个亮度值的像素数。 灰度直方图:是灰度级的函数,它表示图像中具有某种灰度级的像素的个数,反映了图像中某种灰度出现的频率。描述了一幅图像的灰度级统计信息。是一个二维图,横坐标为图像中各个像素点的灰度级别,纵坐标表示具有各个灰度级别的像素在图像中出现的次数或概率。 归一化直方图:直接反应不同灰度级出现的比率。纵坐标表示具有各个灰度级别的像素在图像中出现的概率。 图像的灰度直方图:是一个离散函数,表示图像每一灰度级与该灰度级出现概率的对应关系。 图像的灰度直方图运算: imhist()函数,其横坐标表示像素的灰度级别,纵坐标为像素点的个数。 ●Imhist函数=Display histogram of image data显示灰度直方图的函数 ●Syntax: ①imhist(I) % I为要计算的灰度直方图图像 ②imhist(I, n) % n指定的灰度级的数目,表示所有灰度级均匀分布在n个小区间内。 ③imhist(X, map) ④[counts,x] = imhist(...) %counts直方图数据向量。counts(i)第i个灰度区间中的像素数目。x是保存了对应的灰度小区间的向量。 注意:若调用时不接受这个函数的返回值,则直接显示直方图;在得这些返回数据之后,也可以使用stem(x,counts)手绘直方图。 ●例1:显示某一图像的灰度直方图

MATLAB实现图像恢复设计报告

MATLAB实现图像恢复设计报告 一、设计目标及需求分析 设计目标:希望通过matlab设计一个软件来实现对CT图像的模糊再恢复的过程,是对现实中CT图像复原的一个简单仿真。 需求分析:随着网络和通信技术的发展,数字图像处理与分析技术已经在科学研究、工业生产、医疗卫生、教育等领域得到了广泛应用,对推动社会的发展和提高人们的生活水平都起到了重要作用[1]。而在医学CT影像中,CT图像的影响因素众多,包括部分容积效应,空间分辨力,密度分辨力,相机条件设定和噪声等[2]。这些因素会造成CT 图像模糊失真,需要对图像进行恢复,才能满足对临床诊断的要求。 二、设计概要 图像退化 三、详细设计 在GUI界面设计中选取三个静态文本分别叫“原始图像”、“模糊加噪图像”、“恢复图像”,添加三个坐标轴,三个按钮分别用于“读入原始图像”、“模糊和加噪”、“恢复”。 图一 GUI界面设计

①点击按钮“读入图像”,将选取的原始肺部CT图像导入第一个坐标轴中。 ②点击按钮“模糊和加噪”,对原始CT图像进行运动模糊,加入高斯噪声,生成的图像显示在第二个坐标轴中。 图二模糊和加噪 在这里用MATLAB图像处理工具函数fspecial生成了一个运动模糊的点扩展函数PSF,PSF 再与原图卷积得到模糊图像,这一步操作是为了模拟现实CT图像中由于病人身体的移动,心脏搏动和胃肠蠕动这些不自主的运动造成的伪影。在CT图像中的噪声有多种类型,有高斯噪声,椒盐噪声,泊松噪声,斑点噪声等。这里只引入了高斯噪声是由于通过查阅文献得知,CT图像中的噪声主要是高斯噪声[3],是一个抽象简化的退化模型。 ③点击按钮“恢复”,对模糊和加噪的图像进行图像复原,将复原后的图像显示在第三个坐标轴上。

图像增强及MATLAB实现

《数字图像处理》课程设计 课设题目:图像增强与MATLAB实现学校学院:华东交通大学理学院 学生班级:13级信息计算(2)班学生:超 学生学号:20130810010216 指导老师:自柱

图像增强与MATLAB实现 摘要 数字图像处理是指将图像信号转换成数字格式并利用计算机对其进行处理的过程。图像增强是数字图像处理的过程中经常采用的一种方法,它对提高图像质量起着重要的作用。本文先对图像增强的原理进行概述,然后对图像增强的方法分类并给出直方图增强、对比度增强、平滑和锐化等几种常用的增强方法的理论基础,通过Matlab实验得出的实际处理效果来对比各种算法的优缺点,讨论不同的增强算法的技术要点,并对其图像增强方法进行性能评价。 关键字:图像;图像增强;算法

目录 一、MATLAB的简介 (1) 1.1MATLAB主要功能 (1) 二、MATLAB的主要功能 (1) 2.1数字增强技术概述 (1) 2.2数字图像的表示 (2)

三、直方图的均衡化 (2) 3.1图像的灰度 (2) 3.2灰度直方图 (2) 3.3直方图均衡化 (3) 四、图像二值化 (5) 4.1图像二值化 (5) 五、对比度增强 (7) 5.1对比度增强 (7) 5.2灰度调整 (8) 5.3对数变换 (9) 六、滤波 (10) 6.1平滑滤波 (10) 6.2线性平滑滤波程序: (11) 6.3非线性滤波 (12) 七、锐化 (18) 八、参考文献 (19) 九、自我评价 (20)

一、Matlab的简介 1.1 MATLAB主要功能 MATLAB是建立在向量、数组和矩阵基础上的一种分析和仿真工具软件包,包含各种能够进行常规运算的“工具箱”,如常用的矩阵代数运算、数组运算、方程求根、优化计算及函数求导积分符号运算等;同时还提供了编程计算的编程特性,通过编程可以解决一些复杂的工程问题;也可绘制二维、三维图形,输出结果可视化。目前,已成为工程领域中较常用的软件工具包之一。 二、MATLAB的主要功能 2.1数字增强技术概述 图像增强是按特定的需要突出一幅图像中的某些信息,同时,消弱或去除某些信息使得图像更加实用。图像增强技术主要包含直方图修改处理、图像平滑处理、图像尖锐化处理等。 图像增强技术主要包括:直方图修改处理,图像平滑处理,图像尖锐化处理,彩色图像处理。从纯技术上讲主要有两类:频域处理法和空域处理法。 频域处理法主要是卷积定理,采用修改图像傅立叶变换的方法实现对图像的增强处理技术;空域处理法:是直接对图像中的像素进行处理,基本上是以灰度映射变换为基础的。

MATLAB课程设计报告图像处理

一.课程设计相关知识综述...................................................................... 1.1 研究目的及意义 (3) 1.2 数字图像处理研究的内容........................................................... 1.3 MATLAB 软件的介绍.................................................................. 1.3.1 MATLAB 语言的特点......................................................... 1.3.2 MATLAB 图像文件格式.................................................... 1.3.3 MATLAB 图像处理工具箱简介........................................ 1.3.4 MATLAB 中的图像类型.................................................... 1.3.5 MATLAB 的主要应用........................................................ 1.4 函数介绍........................................................................................ 二.课程设计内容和要求........................................................................... 2.1 主要研究内容................................................................................ 2.2 具体要求....................................................................................... 2.3 预期达到的目标........................................................................... 三.设计过程............................................................................................... 3.1 设计方案及步骤............................................................................ 3.2 程序清单及注释........................................................................... 3.3 实验结果........................................................................................ 四.团队情况................................................................................................ 五.总结....................................................................................................... 六.参考文献............................................................................................... 一.课程设计相关知识综述. 1.1研究目的及意义

基于MATLAB的运动模糊图像恢复技术

基于MATLAB的运动模糊图像恢复技术 王洪珏 (温州医学院,浙江,温州) 摘要:MATLAB是当今流行的科学计算软件,它具有很强的数据处理能力。在其图像处理工具箱中有四个图像复原函数,本文就这些函数的算法原理、运用和恢复处理效果结合实力效果作简要对比讨论。 0前言 图像复原时图像处理中一个重要的研究课题。图像在形成、传输和记录的过程中,由于传感器的噪声、摄像机未对好焦、摄像机与物体相对运动、系统误差、畸变、噪声等因素的影响,使图像往往不是真实景物的完善影像。这种图像在形成、传输和记录过程中,由于成像系统、传输介质和设备的不完善,使图像质量下降的过程称为图像的退化。图像复原就是通过计算机处理,对质量下降的图像加以重建或恢复的过程。 图像复原过程一般为:找退化原因→建立退化模型→反向推演→图像复原 1算法产生概述 开发算法时,首先要创建图像退化的线性数学模型,接着选择准则函数,并以适当的数学形式表达,然后进行数学推演。推演过程中通常要进行表达形式(即空域形式、频域形式、矩阵-矢量形式或变换域形式)的相互转换,最后得到图像复原算式。 退化数学模型的空域、频域、矢量-矩阵表达形式分别是: g(x,y)=d(x,y)*f(x,y)+n(x,y) G(u,v)=D(u,v)〃F(u,v)+N(u,v) g=HF+n 其中:g(x,y)、d(x,y)、f(x,y)、n(x,y)分别为观测的退化图像、模糊函数、原图像、加性噪声,*为卷积运算符,(x=0,1,2,…,M-1),(y=0,1,2,…,N-1)。 2运动模糊的产生 景物与相机之间的相对运动通常会使相机所成的像存在运动模糊。对于线性移不变模糊,退化图像u0可以写成,u0=h*u+n,其中h为模糊核,*表示卷积,n为加性噪声。 由du/dt=0,文献[5]将这种运动模糊过程描述为波动方程:

相关主题
文本预览
相关文档 最新文档