MATLAB数字图像处理小系统

【带GUI界面,源码实现】

目 录

实验一、数字图像获取和格式转换 2

实验二、图像亮度变换和空间滤波 6

实验三、频域处理 7

实验四、图像复原 9

实验五、彩色图像处理 10

实验六、图像压缩 11

实验七、图像分割 13

教材与参考文献 14

实验一、数字图像获取和格式转换

一、 实验目的

1掌握使用扫描仪、数码相机、数码摄像级机、电脑摄像头等数字化设备以及计算机获取数字图像的方法;

2修改图像的存储格式;并比较不同压缩格式图像的数据量的大小。

二、 实验原理

  数字图像获取设备的主要性能指标有x、y方向的分辨率、色彩分辨率(色彩位数)、扫描幅面和接口方式等。各类设备都标明了它的光学分辨率和最大分辨率。分辨率的单位是dpi,dpi是英文Dot Per Inch的缩写,意思是每英寸的像素点数。

扫描仪扫描图像的步骤是:首先将欲扫描的原稿正面朝下铺在扫描仪的玻璃板上,原稿可以是文字稿件或者图纸照片;然后启动扫描仪驱动程序后,安装在扫描仪内部的可移动光源开始扫描原稿。为了均匀照亮稿件,扫描仪光源为长条形,并沿y方向扫过整个原稿;照射到原稿上的光线经反射后穿过一个很窄的缝隙,形成沿x方向的光带,又经过一组反光镜,由光学透镜聚焦并进入分光镜,经过棱镜和红绿蓝三色滤色镜得到的RGB三条彩色光带分别照到各自的CCD上,CCD将RGB光带转变为模拟电子信号,此信号又被A/D变换器转变为数字电子信号。至此,反映原稿图像的光信号转变为计算机能够接受的二进制数字电子信号,最后通过串行或者并行等接口送至计算机。扫描仪每扫一行就得到原稿x方向一行的图像信息,随着沿y方向的移动,在计算机内部逐步形成原稿的全图。扫描仪工作原理见图1.1。

图1.1扫描仪的工作原理

在扫描仪的工作过程中,有两个元件起到了关键的作用。一个是CCD,它将光信号转换成为电信号;另一个是A/D变换器,它将模拟电信号变为数字电信号。CCD是Charge Couple Device的缩写,称为电荷耦合器件,它是利用微电子技术制成的表面光电器件,可以实现光电转换功能。CCD在摄像机、数码相机和扫描仪中应用广泛,只不过摄像机中使用的是点阵CCD,即包括x、y两个方向用于摄取平面图像,而扫描仪中使用的是线性CCD,它只有x一个方向,y方向扫描由扫描仪的机械装置来完成。CCD芯片上有许多光敏单元,它们可以将不同的光线转换成不同的电荷,从而形成对应原稿光图像的电荷图像。

数码相机的系统结构(见图1.2)数码相机的许多特殊部件,如图像传感器(CCD或CMOS)、模/数转换器(A/D)、数字信号处理单元(DSP)、图像存储器、液晶显示器(LCD)以及输出控制单元(连接端口)等是传统胶片相机所没有的。
仔细分析一下数码相机的原理方框图,我们不难发现,数码相机的系统工作过程就是把光信号转化为数字信号的过程。数码相机使用CCD电荷耦合器件这种光敏元件代代替胶卷感光成像。光线通过透镜系统和滤色器(滤光器)投射到CCD光敏元件上,CCD元件将其光强和色彩转换为电信号记录到数码相机的存储器中,形成计算机可以处理的数字信号。
数码相机除了光学透镜系统外,其余几乎全由电子电路控制。基本的信号处理过程非常简单。由CCD送来的电信号通过A/D转换器转换为数字信号,然后送入具有信号处理能力的DSP(数字信号处理器)。DSP处理工作量很大,一般都设计成专用的硬件。信号进一步送给离散余弦变换部件DCT进行JPEG压缩,然后通过接口电路记录到位于最后一级的存储器。

图1.2 数码相机原理图

  数码摄像机的感光器件也即数码摄像机感光成像的部件,能把光线转变成电荷,通过模数转换器芯片转换成数字信号。目前数码摄像机的核心成像部件有两种:一种是广泛使用的CCD(电荷藕合)元件;另一种是CMOS(互补金属氧化物导体)器件。电荷藕合器件图像传感器CCD(Charge Coupled Device),它使用一种高感光度的半导体材料制成,能把光线转变成电荷,通过模数转换器芯片转换成数字信号,数字信号经过压缩以后由相机内部的闪速存储器或内置硬盘卡保存,因而可以轻而易举地把数据传输给计算机,并借助于计算机的处理手段,根据需要和想像来修改图像。CCD由许多感光单位组成,通常以百万像素为单位。当CCD表面受到光线照射时,每个感光单位会将电荷反映在组件上,所有的感光单位所产生的信号加在一起,就构成了一幅完整的画面。互补性氧化金属半导体CMOS(Complementary Metal-Oxide Semiconductor)和CCD一样同为在数码相机中可记录光线变化的半导体。CMOS的制造技术和一般计算机芯片没什么差别,主要是利用硅和锗这两种元素所做成的半导体,使其在CMOS上共存着带N(带–电) 和 P(带+电)级的半导体,这两个互补效应所产生的电流即可被处理芯片纪录和解读成影像。然而,CMOS的缺点就是太容易出现杂点, 这主要是因为早期的设计使CMOS在处理快速变化的影像时,由于电流变化过于频繁而会产生过热的现象。由两种感光器件的工作原理可以看出,CCD的优势在于成像质量好,但是由于制造工艺复杂,只有少数的厂商能够掌握,所以导致制造成本居高不下,特别是大型CCD,价格非常高昂。在相同分辨率下,CMOS价格比CCD便宜,但是CMOS器件产生的图像质量相比CCD来说要低一些。到目前为止,市面上绝大多数的消费级别以及高端数码相机都使用CCD作为感应器;CMOS感应器则作为低端产品应用于一些摄像头上,是否具有CCD感应器变成了人们判断数码相机档次的标准之一。

  1. 实验步骤

1扫描仪、数码相机(手机)、数码摄像机或电子摄像头通过数据线与计算机的连接;

2打开计算机,安装外部设备的驱动程序;

3将数字图像获取设备中的图像复制进计算机,保存;

4调整彩色图像的色彩;

5将获得的图像的格式分别转换为“*.gif”、“*.tif”、“*.jpg”的格式保存,检查图像文件数据量的大小。将图片保存或拷贝到MATLAB程序组根目录的“work”文件夹中,以便后面的实验做为“原图像”利用。

6记录和整理实验报告。

  1. 实验仪器

1计算机;

2扫描仪(或数码相机、数字摄像机等)及其驱动程序盘;

3图像处理软件(画图,Photoshop, Microsoft photo edit等);

4记录用的笔、纸。

  1. 实验报告内容

1叙述操作过程

2提交用扫描仪扫描得到的图像。

  1. 思考题

1试述数字图像获取设备的工作原理。

2你使用过图像获取设备有哪些。

实验二、图像亮(灰)度变换与空间滤波

  1. 实验目的

1了解图像亮(灰)度变换与空间滤波的意义和手段;

2熟悉图像亮(灰)度变换与空间滤波的MATLAB函数和语法;

3熟练掌握应用MATLAB软件编程进行图像亮(灰)度变换与空间滤波的方法;

4参照课本和课堂教学的例题对图像进行图像亮(灰)度变换与空间滤波。

  1. 实验原理

图像亮(灰)度变换与空间滤波属于在空间域内处理图像,是直接对图像的像素进行处理。有两种重要的空间域处理方法,即亮度(或灰度级)变换与空间滤波,后一种方法有时称为邻域处理或空间卷积。

图像亮(灰)度变换采用MATLAB工具箱中的亮度变换函数、直方图处理函数等函数及其相应的语法格式对实验一生成的图像进行处理;空间滤波采用MATLAB工具箱中的标准(线性和非线性)空间滤波器对图像进行空间滤波处理。

  1. 实验步骤

1打开计算机,安装和启动MATLAB程序;程序组中“work”文件夹中应有待处理的图像文件;

2利用MatLab工具箱中的函数、语法,参照课本和课堂讲解的例题对图像进行图像亮(灰)度变换与空间滤波,并显示获得的图像;

3记录和整理实验报告。

  1. 实验仪器

1计算机;

2 MATLAB程序;

3移动式存储器(软盘、U盘等)。

4记录用的笔、纸。

  1. 实验报告内容

1叙述实验过程;

2提交实验的原始图像和结果图像。

  1. 思考题

1.MATLAB程序的IPT中有哪些图像亮(灰)度变换函数?写出函数的语法。

2.图像亮(灰)度变换与空间滤波有什么不同?

实验三、频域处理

实验目的

1了解图像频域处理的意义和手段;

2熟悉离散傅里叶变换的基本性质;

3熟练掌握图像傅里叶变换的方法及应用;

4通过实验了解二维频谱的分布特点;

5通过本实验掌握利用MATLAB的工具箱实现数字图像的频域处理。

  1. 实验原理

傅里叶变换是线性系统分析的一个有力工具,它能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪音和显示点等的作用。通过实验培养这项技能,将有助于解决大多数图像处理问题。对任何想在工作中有效应用数字图像处理技术的人来说,把时间用在学习和掌握博里叶变换上是很有必要的。

2图像变换的基本原理

(1)傅立叶(Fourier)变换的定义

对于二维信号,二维Fourier变换定义为:

  二维离散傅立叶变换为:

  图像的傅立叶变换与一维信号的傅立叶变换变换一样,有快速算法。实际上,现在有实现傅立叶变换的芯片,可以实时实现傅立叶变换。

  1. 实验步骤

1打开计算机,启动MATLAB程序;程序组中“work”文件夹中应有待处理的图像文件;

2调入“实验一”中获取的数字图像,应用IPT函数(参照例题)进行图像频域处理;

3显示原图像与频域处理后的图像及频谱图。

4记录和整理实验报告

  1. 实验仪器

1计算机;

2 MATLAB程序;

3移动式存储器(软盘、U盘等)。

4记录用的笔、纸。

  1. 实验报告内容

1叙述实验过程;

2提交实验的原始图像和结果图像。

  1. 思考题

1.叙述对数字图像进行DFT处理的原理。
  2.通过对图像进行频域处理可以使图像产生什么样的变化?

3.如何从空间滤波器获得频域滤波器?

4.如何在频域中直接生成频域滤波器

实验四、图像复原

  1. 实验目的

1、了解图像复原的原理;

2、掌握常用图像复原方法。

  1. 实验原理
  1. 分析不同条件下图像退化成因和处理方法;
  2. 根据退化的数学模型对退化图像进行处理,复原原始图像。
  1. 实验步骤

1打开计算机,启动MATLAB程序;

2调入“实验一”中获取的数字图像,应用IPT的函数对图像作模糊化和添加噪声处理;

3 参照课本和课堂讲解的例题中的方法对退化的图像进行复原。

4记录和整理实验报告

  1. 实验仪器

1计算机;

2 MATLAB(含IPT)等程序;

3移动式存储器(软盘、U盘等)。

4记录用的笔、纸。

  1. 实验报告内容

1叙述实验过程;

2提交实验的原始图像、退化图像和复原图像。

  1. 思考题

1.常见的图像退化模型有哪些种类?
  2.不同的PSF对复原效果有什么影响?

实验五、彩色图像处理

一、实验目的

1、了解彩色空间的基本概念及转换原理;

2、熟悉MATLAB中彩色图像的表示方法;

3、使用MatLab函数实现各类彩色空间的转换;

4、使用MatLab函数实现各种图像类型的转换;

二、实验原理

(1)利用MATLAB的IPT进行彩色图像的读、写和显示;

(2)颜色空间的基本概念;

(3)颜色空间包括某个颜色域的所有颜色,实验中采用的颜色模型有NTSC、HSV、YcbCr模型等。各种颜色空间在图像处理中各有优势,可以互相转换;

三、实验步骤

1打开计算机,启动MATLAB程序;

2调入“实验一”中获取的数字图像,采用IPT的各种颜色空间转换函数进行图像读取、显示,并显示各分量图像。

3 试根据转换公式,自行编制其他颜色空间转换函数

4. 记录和整理实验报告

四、实验仪器

1计算机;

2 MATLAB等程序;

3移动式存储器(软盘、U盘等)。

4记录用的笔、纸。

五、实验报告内容

1叙述实验过程;

2提交实验的原始图像和结果图像。

六、思考题

比较不同颜色空间的差别。

实验六、图像压缩

  1. 实验目的

    1. 理解有损压缩和无损压缩的概念;
    2. 理解图像压缩的主要原则和目的; 
    3. 了解几种常用的图像压缩编码方式。
    4. 利用MATLAB程序进行图像压缩。
  1. 实验原理

1.图像压缩原理

图像压缩主要目的是为了节省存储空间,增加传输速度。图像压缩的理想标准是信息丢失最少,压缩比例最大。不损失图像质量的压缩称为无损压缩,无损压缩不可能达到很高的压缩比;损失图像质量的压缩称为有损压缩,高的压缩比是以牺牲图像质量为代价的。压缩的实现方法是对图像重新进行编码,希望用更少的数据表示图像。

信息的冗余量有许多种,如空间冗余,时间冗余,结构冗余,知识冗余,视觉冗余等,数据压缩实质上是减少这些冗余量。高效编码的主要方法是尽可能去除图像中的冗余成分,从而以最小的码元包含最大的图像信息。

编码压缩方法有许多种,从不同的角度出发有不同的分类方法,从信息论角度出发可分为两大类。

(1).冗余度压缩方法,也称无损压缩、信息保持编码或熵编码。具体说就是解码图像和压缩编码前的图像严格相同,没有失真,从数学上讲是一种可逆运算。

(2)信息量压缩方法,也称有损压缩、失真度编码或熵压缩编码。也就是说解码图像和原始图像是有差别的,允许有一定的失真。

应用在多媒体中的图像压缩编码方法,从压缩编码算法原理上可以分为以下3类:

(1)无损压缩编码种类

哈夫曼(Huffman)编码,算术编码,行程(RLE)编码,Lempel zev编码。

(2)有损压缩编码种类

预测编码,DPCM,运动补偿;

频率域方法:正交变换编码(如DCT),子带编码;

空间域方法:统计分块编码;

模型方法:分形编码,模型基编码;

基于重要性:滤波,子采样,比特分配,向量量化;

(3)混合编码。

有JBIG,H261,JPEG,MPEG等技术标准。

本实验主要利用MATLAB程序进行Huffman编码、算术编码、离散余弦变换(DCT)和行程编码(Run Length Encoding, RLE)。

  1. 实验步骤

1打开计算机,启动MATLAB程序;

2调入“实验一”中获取的数字图像,并进行数据的Huffman编码、算术编码、DCT、游程编码等压缩处理;

3 将原图像在Photoshop软件中打开,分别以不同的位图文件格式进行“另保存”,比较它们的数据量。

4记录和整理实验报告

  1. 实验仪器

1计算机;

2 MATLAB、Photoshop等程序;

3移动式存储器(软盘、U盘等)。

4记录用的笔、纸。

  1. 实验报告内容

1叙述实验过程;

2提交实验的原始图像和结果图像。

  1. 思考题

1.图像中哪些信息是主要的,哪些信息是次要的?
  2.简述离散余弦变换(DCT)和行程编码(RLE)的原理。

实验七、图像分割

  1. 实验目的

1、通过实验体会一些主要的分割算子对图像处理的效果,以及各种因素对分割效果的影响;

2、使用MatLab 软件进行图像的分割;

3、能够评价各主要算子在无噪声条件下和噪声条件下的分割性能;

4、能够掌握分割条件(阈值等)的选择;

5、完成规定图像的处理并要求正确评价处理结果,能够从理论上作出合理的解释。

二、实验原理

1.使用Roberts 算子的图像分割实验,调入并显示一幅图像*.gif或*.tif;使用Roberts 算子对图像进行边缘检测处理;

2.使用Prewitt 算子的图像分割实验

使用Prewitt 算子进行内容(1)中的全部步骤。

3.使用Sobel 算子的图像分割实验,使用Sobel 算子进行内容(1)中的全部步骤。

4.使用LoG (拉普拉斯-高斯)算子的进行图像分割实验。

5.使用Canny算子的进行图像分割实验。

三、实验步骤

1打开计算机,启动MATLAB程序;

2调入“实验一”中获取的数字图像,并进行图像分割处理;

3记录和整理实验报告

四、实验仪器

1计算机;

2 MATLAB等程序;

3移动式存储器(软盘、U盘等)。

4记录用的笔、纸。

五、实验报告内容

1叙述实验过程;

2提交实验的原始图像和结果图像。

六、思考题

1. 评价一下Roberts 算子、Prewitt 算子、Sobel 算子对于噪声条件下边界检测的性能。

2. 为什么LoG梯度检测算子的处理结果不需要象Prewitt 等算子那样进行幅度组合?

3. 实验中所使用的四种算子所得到的边界有什么异同?

教材

㈠教材

[1].(美)Rafael C. Gonzalez , Richard E. Woods, Steven L. Eddins. Digital Image Processing Using MATLAB.数字图像处理(MATLAB版)[M].阮秋琦 等. 北京:电子工业出版社,2005.9

MATLAB数字图像处理小系统 【带GUI界面,源码实现】相关推荐

  1. 基于matlab的人脸考勤系统,gui界面,界面简洁,实现实时打卡考勤

    基于matlab的人脸考勤系统,gui界面,界面简洁,实现实时打卡考勤,正确率高. 涉及图像处理,特征提取,数据降维,机器学习训练,支持把新照片新录入系统. ID:69400663195853731

  2. 【Matlab数字识别】数字仪表图像识别【含源码 693期】

    一.代码运行视频(哔哩哔哩) [Matlab数字识别]数字仪表图像识别[含源码 693期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅.MATLAB ...

  3. 小豹子带你看源码:Java 线程池(三)提交任务

    承上启下:上一篇文章小豹子讲了线程池的实例化过程,粗略介绍了线程池的状态转换:这篇文章主要讲了我运行线程池时遇到的小问题,以及 execute 方法的源码理解. 4 并不算疑难的 Bug 按照我们的规 ...

  4. 03系统多界面_基于MATLAB的多方法车牌识别系统[带GUI界面+万字技术文档+直播]

    一.课题介绍 随着汽车数量的增加,城市交通状况日益受到人们的重视,如何进行有效的交通管理更是成为了人们关注的焦点.智能交通系统通过车辆检测装置对过往的车辆实施检测,提取有关交通数据,达到监控.管理和指 ...

  5. 小豹子带你看源码:Java 线程池(二)实例化

    承上启下:上一篇文章小豹子讲了我为什么想要研究线程池的代码,以及我计划要怎样阅读代码.这篇文章我主要阅读了线程池实例化相关的代码,并提出了自己的疑问. 3 千里之行,始于实例化 3.1 先创建一个线程 ...

  6. Android入门小项目--微信登录界面源码(倒计时、fragement切换、activity信息传递)

    微信登录的完全源码,复制粘贴即可使用 作为Android学习的入门,一次性搞定Android的布局,让你的view层畅通无阻 手机界面 插入数据线,将手机调入开发者模式的usb调试,即可进行手机调试安 ...

  7. 【火灾检测】基于计算机视觉实现森林火灾检测系统带GUI界面

    1 简介 森林是自然中的宝贵资源,同时还维持着生态平衡.森林火灾一旦发生,危害十分巨大,如果能在林火的萌芽状态就进行识别,则可以减少不必要的损失.随着互联网技术的发展,传统的人工监控森林火灾已经被互联 ...

  8. 微信商城小程序 带java后台源码

    微信小程序商城(Java版) 获得荣誉 GVP 官方首页 演示地址 最新开发文档 微同商城商业版 官方QQ群: git:https://gitee.com/fuyang_lipengjun/platf ...

  9. java 缘起_小豹子带你看源码:Java 线程池(一)缘起 计划

    1 缘起 怎么想起来看线程池的代码? 很简单,因为我不会用. 原先遇到用线程池一直是 Executors 直接构造一个出来.啊,newFixedThreadPool 就是创建定容线程池,线程数是固定的 ...

  10. 小豹子带你看源码:ArrayList

    世界上最牛的 Java 代码去哪找?当然是 JDK 咯-计划学习一下常见容器的源码. 我会把我觉得比较有意思或者玄学的地方更新到这里. 以下 JDK 源码及 Javadoc 均从 java versi ...

最新文章

  1. java process exit_Java Process.exitValue()中值的含义是什么?
  2. Go语言Beego框架1.6.2(稍显老)及bee工具的使用
  3. 关于java.lang.ArithmeticException: divide by zero的异常
  4. shortcut switch in terminal start pos end pos
  5. ss php 搭建,sspanel 前端搭建教程
  6. c++基础 STL 第 0 篇:(模板)
  7. Ant Design Vue+vue2.x图片上传数量限制(亲测有效)
  8. 怀念《100部经典动漫大回顾》 你还记得几部?(附图)
  9. UE4学习笔记:学习UE4中的UMG(图形UI设计器)工具(一): Widget Blueprint控件蓝图
  10. 【SAP ABAP学习资料】(财务相关)BTE增强查找,新增
  11. 自己动手实现俄罗斯方块
  12. 李兴华课程 java学习笔记
  13. 记录来到结算页面的客户
  14. oracle jdbc执行,java jdbc 执行oracle存储过程
  15. 基于Python的模拟人脑神经元进行学习
  16. 区块链、通证与供应链风险管理适应性分析研究
  17. centos7的syslog知识点
  18. 触摸液晶屏技术原理及分类
  19. 拷贝构造函数的三种使用情况
  20. 第八章 交互技术,8.1 VR电商购物(作者:宋五)

热门文章

  1. PHP 开发新版个人博客
  2. pymol怎么做底物口袋表面_pymol常用操作
  3. js eq()选择器的使用
  4. 五线谱上的Linux旋律
  5. python中exp函数_python的math函数 python中虚数函数exp怎么表示
  6. 俩分钟认识Sketch的基础功能
  7. (笔记)数据结构——顺序表
  8. 日系插画学习笔记(七):日系角色脸部画法-3表情
  9. Zepto中touch模块的使用(移动端)
  10. bfm人脸模型和3DDFA及其变种