当前位置:文档之家› 实验一、空域图像增强(2015)

实验一、空域图像增强(2015)

实验一、空域图像增强(2015)
实验一、空域图像增强(2015)

实验一 空域图像增强(一)

时间: AM 10:00-12:00,2015.3.23(星期一)

地点:信软学院大楼(沙河校区计算机楼)继教院东309机房

一、实验目的

1.熟悉和掌握利用matlab工具进行数字图像的读、写、显示、像素处理等数字图像处理的基本步骤和流程。

2.熟练掌握各种空间域图像增强的基本原理及方法。

3.熟悉通过灰度变换方式进行图像增强的基本原理、方法和实现。

4.熟悉直方图均衡化的基本原理、方法和实现。

二、实验内容

本次实验主要包括数字图像的灰度变换和直方图处理两大部分内容。

(一)数字图像的灰度变换

1、线性灰度变换

1)读取一幅对比度低的灰度图像(如图1-1),并显示。

图1-1 原始低对比度图像(可下载原图,也可自行选图)

2)以m文件形式编写matlab代码,实现数字图像的灰度范围由[a,b]到[c,d]的线性拉伸,以便于提升原图像的对比度。线性灰度变换公式如下:

()(,),[(,)](,)(,)d f x y b d c g x y f x y a c a f x y b b a c

f x y a >????=?+≤≤???

3)显示经过线性灰度变换后的图像,并对变换结果进行必要的分析,画出灰度变换曲线图。(要求:在同一窗口中分别显示原始图像、变换结果及其直方图。)

4)以另一个文件名形式保存灰度变换后的图像。

2、非线性灰度变换(对数变换或幂律变换选作其一)

1)读取一幅灰度图像(如图1-2所示),并显示。

图1-2 待处理图像(可下载原图,也可自行选图)

2)分别对其进行对数变换或幂律(伽马)变换。即

对数变换公式为:

()(,)log 1(,)g x y c f x y =+ (2)

幂律(伽马)变换为:

(,)(,)g x y cf x y γ

= (3) 注:进行变换前,应根据需要分别选取合适的对数或幂律函数,即确定式(2)和(3)中适当的c 、r 等调节因子。

3)显示变换后的图像,并利用matlab工具画出对数或幂律变换曲线。

4)以另一个文件名形式保存变换后的图像。

(二)直方图处理

1)读取一幅灰度图像(如图1-3),并显示原始图像。

图1-3 原始图像(pout.tif,matlab系统自带测试图)

2)编写m文件实现对输入图像2种定义下的直方图统计统计(即各个灰度级出现的次数及概率分布),并分别画出两种定义下的直方图。

3)对输入灰度图像进行直方图均衡化处理,分别显示均衡处理前后的图像和对应的直方图。

基本要求:根据直方图均衡化原理自行编写基础代码,不能直接调用histeq()函数进行处理。

三、实验报告及要求

1. 原始图像可在课程网站“实验指导”中下载,也可根据需要自行选择合理的待处理图像。

2. 简述实验原理。

3. 根据各个实验内容分别叙述其实验步骤、程序设计流程图(建议用Visio软件),并对实验结果进行必要的分析和总结。

4. 要求提交matlab源代码,以xxx.m文件名形式保存,并注意程序代码书写的规范性。

5. 严格按电子科技大学《实验报告》的相关要求,撰写实验报告,并按时提交纸质版实验报告。代码及处理图形打印后粘贴于实验报告的相应位置。

实验报告中还需要回答和完成以下思考题。

四、思考题

1. 为了扩展一幅图像的灰度,使其最低灰度为C、最高灰度为L-1,试给出一个单调的灰度变换函数。

2. 数字图像经过对数变换与幂律变换后,变换结果有什么差异?请按不同参数的取值范围进行具体分析。

3. 从连续函数的概率分布来分析,直方图均衡处理可以使得各个灰度级分布变为均匀分布,即拉平直方图。而对实际数字图像的处理结果却是一种近似平直,而不是严格意义上的均匀直方图,试说明其理由。

提示与备注

1. 读入一幅数字图像进行处理前,需要注意以下几点:

1)如果输入图像为24位RGB真彩色图像,则需要对其进行灰度化处理。

2)对单个像素点(像元)进行循环处理时,需要转换类型为双精度(double)型;以免或编译错误,或因数据类型问题造成计算精度误差。另外,matlab的数组或矩阵元素的序号,是从1开始的,即x(1),而x(0)是不能识别的。这点与c语言是不一样的。

3)处理结束,需要正确显示结果时,应再次转换为matlab认可的图像类型(如uin t8(im),imshow(im,[]), mat2gray(im)等),才可能得到正确合理的显示结果。

2. 本实验中可能用到的部分matlab函数功能提示:

% ============================================================== % 程序运行前的清理工作

% ==============================================================

clc,% 清屏

clf,% 清除当前的图形窗口

clear all,% 清除工作区所有变量,释放内存

close all, % 关闭所有运行的matlab图形窗口

% ============================================================== imread (…), % 读取图像

imshow(…), % 显示图像

imwrite(…), % 保存图像

% ==============================================================

[m n]=size(…), % 求图像尺寸

rgb2gray(…), % 彩色图像灰度化

mat2gray(…), % 矩阵数据转换为灰度图像类型

double(…),% 转为双精度数据类型

uint8(…),% 转为无符号8位数据类型

sort(…), % 数据排序

min(…),median(…),max(…), % 一维数组/序列的最小、中或最大值。

min(min(.)),median(median(.)),max(max(.)),

% 2维矩阵/数组的最小、中或最大值。

% =====================================================

% 灰度调整/变换相关函数

% =====================================================

J=imadjust(I);

J=imadjust(I,[low_in; high_in],[low_out; high_out]);

J=imadjust(I,[low_in; high_in],[low_out; high_out],gamma).

% =====================================================

% 绘图相关功能函数

% =====================================================

plot(x,y), % 绘制y=f(x)函数曲线

subplot(m,n,k) % 同一窗口显示m行n列第k个图像stem,bar(…),hist(…) % 绘制数据柱状图/直方图

imhist(…) % 绘制图像直方图

histeq(…) % 图像的直方图均衡化

注:各个函数的参数说明及具体用法,可查阅相关的matlab帮助文件。

实验一图像增强实验

实验一图像增强实验 实验目的:1.掌握图像增强的算法 2.学习利用MATLAB进行图像的增强 实验内容:1.图像的点操作、邻域操作算法 2.图像的直方图处理算法 实验步骤: 1.读入图像,用MATLAB函数实现图像读入 (1)启动MATLAB (2)在命令行窗口直接输入MATLAB命令,按“回车”键后执行(3)读入命令和显示命令分别为 imread 和 imshow (4)如A=imread('D:\上官军\medical image\woman.jpg') Imshow (A) 结果显示

2.实现图像点操作运算(gamma校正和对数校正)(1)根据图像线形变换三种形式,图像反转 S=L-1-r 、对数变换S=c*log(1+r) 、幂次变换 S=c*r .^γ编写图像点操作函数 (2)建立新的M文件,点操作函数代码如下: function s=dian(r,leixing,chengshu,gamma1) % r为处理图像,leixing为操作类型 s1=imread(r); s2=im2double(s1); %将图像转为double数据型 switch leixing case 'fanzhuan' s=1-s2; case 'duishu' s=chengshu*log(1+s2); case 'gamma' s=chengshu*s2.^gamma1; otherwise error('错误') end subplot(1,2,1), imshow(s1); subplot(1,2,2),imshow(s);

(3)实际操作,如反转: Y=dian('D:\上官军\medical image\woman.jpg','fanzhuan',1,1); 3.图像邻域处理 (1)图像邻域处理是通过设计相应的滤波器来处理相邻图像像素,主要为均值滤波器、中指滤波器、高斯滤波器等 (2)建立新的M文件,均值滤波函数代码如下: function d=avefilt(x,n) a(1:n,1:n)=1; %a即n×n模板,元素全是1 p=size(x);

空域图像增强报告

实验报告 实验课程:光电图像处理姓名: 学号: 实验地点: 指导老师: 实验时间:

一. 实验名称:空间图象增强(一) 二. 实验目的 1. 熟悉和掌握利用matlab 工具进行数字图像的读、写、显示、像素处理等数字图像处理的基本步骤和流程。 2. 熟练掌握各种空间域图像增强的基本原理及方法。 3. 熟悉通过灰度变换方式进行图像增强的基本原理、方法和实现。 4. 熟悉直方图均衡化的基本原理、方法和实现。 三. 实验原理 (一)数字图像的灰度变换 1、线性灰度变换 令原图像灰度范围由[a,b]线性变换后图像灰度范围[c,d],以便于提升原图像的对比度。线性灰度变换公式如下: ()(,),[(,)](,)(,)d f x y b d c g x y f x y a c a f x y b b a c f x y a >??-?=-+≤≤?-?

对图像2种定义下的直方图统计统计,并分别画出两种定义下的直方图。直方图均衡化主要用于增强动态范围偏小的图像的反差。该方法的基本思想是把原始的直方图变换为均匀分布的形状,这样就增加了像素灰度值的动态范围,从而达到增强图像整体对比度的效果。 四. 实验步骤 (一)数字图像的灰度变换 1、线性灰度变换 1)读取一幅对比度低的灰度图像并显示。 2)以m 文件形式编写matlab 代码,实现数字图像的灰度范围由[a,b]到[c,d]的线性拉伸,以便于提升原图像的对比度。线性灰度变换公式如下: ()(,),[(,)](,)(,)d f x y b d c g x y f x y a c a f x y b b a c f x y a >??-?=-+≤≤?-?

数字图像处理实验报告

数字图像处理实验报告 实验一数字图像基本操作及灰度调整 一、实验目的 1)掌握读、写图像的基本方法。 2)掌握MATLAB语言中图像数据与信息的读取方法。 3)理解图像灰度变换处理在图像增强的作用。 4)掌握绘制灰度直方图的方法,理解灰度直方图的灰度变换及均衡化的方 法。 二、实验内容与要求 1.熟悉MATLAB语言中对图像数据读取,显示等基本函数 特别需要熟悉下列命令:熟悉imread()函数、imwrite()函数、size()函数、Subplot()函数、Figure()函数。 1)将MATLAB目录下work文件夹中的forest.tif图像文件读出.用到imread, imfinfo 等文件,观察一下图像数据,了解一下数字图像在MATLAB中的处理就是处理一个矩阵。将这个图像显示出来(用imshow)。尝试修改map颜色矩阵的值,再将图像显示出来,观察图像颜色的变化。 2)将MATLAB目录下work文件夹中的b747.jpg图像文件读出,用rgb2gray() 将其 转化为灰度图像,记为变量B。 2.图像灰度变换处理在图像增强的作用 读入不同情况的图像,请自己编程和调用Matlab函数用常用灰度变换函数对输入图像进行灰度变换,比较相应的处理效果。 3.绘制图像灰度直方图的方法,对图像进行均衡化处理 请自己编程和调用Matlab函数完成如下实验。 1)显示B的图像及灰度直方图,可以发现其灰度值集中在一段区域,用 imadjust函 数将它的灰度值调整到[0,1]之间,并观察调整后的图像与原图像的差别,调整后的灰

度直方图与原灰度直方图的区别。 2) 对B 进行直方图均衡化处理,试比较与源图的异同。 3) 对B 进行如图所示的分段线形变换处理,试比较与直方图均衡化处理的异同。 图1.1 分段线性变换函数 三、实验原理与算法分析 1. 灰度变换 灰度变换是图像增强的一种重要手段,它常用于改变图象的灰度范围及分布,是图象数字化及图象显示的重要工具。 1) 图像反转 灰度级范围为[0, L-1]的图像反转可由下式获得 r L s --=1 2) 对数运算:有时原图的动态范围太大,超出某些显示设备的允许动态范围, 如直接使用原图,则一部分细节可能丢失。解决的方法是对原图进行灰度压缩,如对数变换: s = c log(1 + r ),c 为常数,r ≥ 0 3) 幂次变换: 0,0,≥≥=γγc cr s 4) 对比拉伸:在实际应用中,为了突出图像中感兴趣的研究对象,常常要求 局部扩展拉伸某一范围的灰度值,或对不同范围的灰度值进行不同的拉伸处理,即分段线性拉伸: 其对应的数学表达式为:

实验二-图像增强处理实习报告

实验二图像增强处理实习报告 1.实验目的和内容 1.1.实验目的 掌握图像合成和显示增强的基本方法,理解存储的图像数据与显示的图像数据之间的1.2.实验要求 熟练根据图像中的地物特征进行图像合成显示、拉伸、图像均衡化等显示增强操作。 理解直方图的含义,能熟练的利用直方图进行多波段的图像显示拉伸增强处理。 1.3.软件和数据 ENVI 软件。 TM 图像数据。上次实验合成后的图像数据文件AA。 1.4.实验内容 图像的彩色合成显示 图像的基本拉伸方法 图像均衡化方法 图像规定化 2.实验过程 通过合成和拉伸增强显示图像中的信息。 2.1.图像合成 图像合成方法:伪彩色合成、彩色合成两种方式。其中彩色合成包括:真彩色合成、假彩色合成、模拟真彩色合成。 操作: 使用(4,3,2)进行RGB 合成显示图像。图像窗口为#1。

移动图像窗口的红色选框到玄武湖,将光标十字放在红框内,双击,显示光标位置窗口。该窗口中出现了Scrn 和Data,二者后面的RGB 的值是不同的。

2.1.1伪彩色合成 在新的窗口显示第4 波段图像,窗口为#2。

操作: 菜单:窗口菜单Tools-Color Mapping-Density slice…,选择Band 4,确定。在“Density Slice”窗口中,点击“应用”按钮,窗口#2 的图像变成了彩色。

设置默认的分级数为3 个:在“Density Slice”窗口,点击Options-Set number of default range,输入3,确定。点击Options-Apply default range,点击Apply 按钮。查看窗口#2 内的变化。

实验二空域图像增强

实验三空域图像增强 一、实验目的与要求 1、掌握灰度直方图的概念及其计算方法; 2、熟练掌握直力图均衡化和直方图规定化的计算过程; 3、熟练掌握空域滤波中常用的平滑和锐化滤波器; 4、掌握色彩直方图的概念和计算方法 5、利用MATLAB程序进行图像增强。 二、实验内容与步骤 1、图像的直方图与直方图均衡方法 a. 从硬盘加载cameraman.tif图象(using function imread). b. 显示图象. c. 显示图象的直方图(using function imhist). d. 用直方图均衡方法进行图象增强. e. 对处理后的图象显示其直方图. f. 比较图象的质量并且进行讨论. 代码如下: I=imread(‘原图像名.gif); % 读入原图像 J=histeq(I); %对原图像进行直方图均衡化处理 Imshow(I); %显示原图像 Title(‘原图像’); %给原图像加标题名 Figure;imshow(J); %对原图像进行屏幕控制;显示直方图均衡化后的图像 Title(‘直方图均衡化后的图像’) ; %给直方图均衡化后的图像加标题名 Figure; subplot(1,2,1) ;%对直方图均衡化后的图像进行屏幕控制;作一幅子图作为并排两幅图的第1幅图 Imhist(I,64); %将原图像直方图显示为64级灰度 Title(‘原图像直方图’) ; %给原图像直方图加标题名 Subplot(1,2,2); %作第2幅子图 Imhist(J,64) ; %将均衡化后图像的直方图显示为64级灰度 Title(‘均衡变换后的直方图’) ; %给均衡化后图像直方图加标题名 从处理前后的图像可以看出,许多在原始图像中看不清楚的细节在直方图均衡化处理后所得到的图像中都变得十分清晰。 2、对图象加入躁声,改变噪声参数(均值、方差或比例),比较其影响。使用3x3或7x7的均值滤波器、中值滤波器对不同强度的高斯噪声和椒盐噪声,进行滤波处理;能够正确地评价处理的结果;能够从理论上作出合理的解释。相关程序: I=imread('electric.tif'); J = imnoise(I,'gauss',0.05,0.02); %添加均值为0.05,方差为0.02的高斯噪声%J = imnoise(I,'salt& pepper',0.02); %添加2%像素被污染的椒盐噪声 ave1=fspecial('average',3); %产生3×3的均值模版ave2=fspecial('average',7); %产生7×7的均值模版

东南大学数字图像处理实验报告

数字图像处理 实验报告 学号:04211734 姓名:付永钦 日期:2014/6/7 1.图像直方图统计 ①原理:灰度直方图是将数字图像的所有像素,按照灰度值的大小,统计其所出现的频度。 通常,灰度直方图的横坐标表示灰度值,纵坐标为半个像素个数,也可以采用某一灰度值的像素数占全图像素数的百分比作为纵坐标。 ②算法: clear all PS=imread('girl-grey1.jpg'); %读入JPG彩色图像文件figure(1);subplot(1,2,1);imshow(PS);title('原图像灰度图'); [m,n]=size(PS); %测量图像尺寸参数 GP=zeros(1,256); %预创建存放灰度出现概率的向量 for k=0:255 GP(k+1)=length(find(PS==k))/(m*n); %计算每级灰度出现的概率end figure(1);subplot(1,2,2);bar(0:255,GP,'g') %绘制直方图 axis([0 255 min(GP) max(GP)]); title('原图像直方图') xlabel('灰度值') ylabel('出现概率') ③处理结果:

原图像灰度图 100 200 0.005 0.010.0150.020.025 0.030.035 0.04原图像直方图 灰度值 出现概率 ④结果分析:由图可以看出,原图像的灰度直方图比较集中。 2. 图像的线性变换 ①原理:直方图均衡方法的基本原理是:对在图像中像素个数多的灰度值(即对画面起主 要作用的灰度值)进行展宽,而对像素个数少的灰度值(即对画面不起主要作用的灰度值)进行归并。从而达到清晰图像的目的。 ②算法: clear all %一,图像的预处理,读入彩色图像将其灰度化 PS=imread('girl-grey1.jpg'); figure(1);subplot(2,2,1);imshow(PS);title('原图像灰度图'); %二,绘制直方图 [m,n]=size(PS); %测量图像尺寸参数 GP=zeros(1,256); %预创建存放灰度出现概率的向量 for k=0:255

图像处理实验-图像增强和图像分割

图像处理实验 图像增强和图像分割 一、实验目的: 掌握用空间滤波进行图像增强的基本方法,掌握图像分割的基本方法。 二、 实验要求: 1、测试图像1中同时含有均值为零的均匀分布噪声和椒盐噪声。用大小为5×5的算术均值滤波器和中值滤波器对图像进行处理,在不同窗口中显示原图像及各处理结果图像,并分析哪一种滤波器去噪效果好? 2、对测试图像2进行图像分割,求出分割测试图像2的最佳阈值。分别显示原图、原图的直方图(标出阈值)、和分割后的二值图。 实验内容: 1. 实验原理 1) 图像增强:流程图: 图像增强可以通过滤波的方式来完成,即消除一部分的噪声。滤波又可以分为均值滤波和中值滤波。 1. 中值滤波原理:中值滤波就是选用一个含有奇数个像素的滑动窗口,将该窗口在图像上扫描,把其中所含像素点按灰度级的升(或降)序排列,取位于中间的灰度值来代替窗口中心点的灰度值。

对于一维序列{N f }: 21,},...,,...,{-=∈=+-m u N i f f f M e d y u i i u i i 对于二维序列{ij F }:为滤波窗口W y ij F Med W ij }{= 2. 均值滤波原理:对于含噪声的原始图像g(s,t)的每一个像素点去一个领 域N ,用N 中所包含的相速的灰度平均值,作为领域平均处理后的图像f(x,y)的像素值,即: ∑∈=xy S t s t s g mn y x f ),(),(1),(? 2) 图像分割: 图像分割:依据图像的灰度、颜色等特征,将一幅图像分为若干个互不重叠的、具有某种同质特征的区域。

本实验中我们是根据灰度值,将灰度值大于阈值T的像素统一置为255,小于的则置为0。如何求出最合适的分割阈值,则需要用到迭代算法。 迭代法算法步骤: (1) 初始化阈值T (一般为原图像所有像素平均值)。 (2) 用T分割图像成两个集合:G1 和G2,其中G1包含所有灰度值小于T的像素,G2包含所有灰度值大于T的像素。 (3) 计算G1中像素的平均值m1及G2中像素的平均值m2。 (4) 计算新的阈值:T =(m1+m2)/2 。 (5)如果新阈值跟原阈值之间的差值小于一个预先设定的范围,停止循环,否则继续(2)-(4)步。 2.程序代码与分析: 1)图像增强: clear all;clc; %读入图像 I1=imread('Fig5.12(b).jpg'); %均值滤波模板 h1=ones(5,'uint8'); %获取分辨率 [a,b]=size(I1); %创建变量 I2=zeros(a+4,b+4,'uint8'); I3=zeros(a+4,b+4,'uint8'); %复制原始图像 for n=3:a+2 for m=3:b+2 I2(n,m)=I1(n-2,m-2); I3(n,m)=I1(n-2,m-2); end end

图像处理实验报告

重庆交通大学 学生实验报告 实验课程名称数字图像处理 开课实验室数学实验室 学院理学院年级信息与计算科学专业 2 班学生姓名李伟凯学号631122020203 开课时间2014 至2015 学年第 1 学期

实验(一)图像处理基础 ?实验目的 学习Matlab软件的图像处理工具箱,掌握常用的一些图像处理命令;通过编程实现几种简单的图像增强算法,加强对图像增强的理解。 ?实验内容 题目A.打开Matlab软件帮助,学习了解Matlab中图像处理工具箱的基本功能;题目B.掌握以下常见图像处理函数的使用: imread( ) imageinfo( ) imwrite( ) imopen( ) imclose( ) imshow( ) impixel( ) imresize( ) imadjust( ) imnoise( ) imrotate( ) im2bw( ) rgb2gray( ) 题目C.编程实现对图像的线性灰度拉伸y = ax + b,函数形式为:imstrech(I, a, b); 题目D.编程实现对图像进行直方图均衡化处理,并将实验结果与Matab中imhist 命令结果比较。 三、实验结果 1).基本图像处理函数的使用: I=imread('rice.png'); se = strel('disk',1); I_opened = imopen(I,se); %对边缘进行平滑 subplot(1,2,1), imshow(I), title('原始图像') subplot(1,2,2), imshow(I_opened), title('平滑图像') 原始图像平滑图像

空域图像增强实验报告

一、实验名称:空域图像增强 二、实验目的:掌握Matlab语言图像工具箱中空域图像增强的实现 三、实验要求: 在掌握图像灰度调整、直方图修正和图像锐化的指令基础上,编写程序实现图像的灰度变换,直方图均衡和图像锐化的处理 四、实验仪器和设备:计算机,Matlab软件 五、实验原理: 1、亮度变换S=T(r)点对点的变换(灰度级对灰度级的变换)matlab函数:imadjust() 亮度变换的基本函数g=imadjust(f,[low in high in],[low out high out],gamma); low in and high in 参数分别指定输入图像需要映射的灰度空间范围,low out 和high out 参数分别指定输出图像所在的灰度范围。GAMMA表示曲线的形状,描述输入输出图像之间的关系。如果GAMMA小于1,则映射的权重趋势向更亮输出,如果GAMMA大于1,则趋向更暗的输出。默认值为1。 2、直方图均衡化 直方图是多种空间域处理技术的基础,能有效用于图像增强,是实时图像处理的流行工具,直方图均衡化的目的是使图像在整个灰度值动态变化范围内分布均匀化,改善图像的亮度分布状态,增强视觉效果。直方图均衡化是通过灰度变换将一幅图像转换程另一幅具有均衡性的直方图。即在每个灰度级上都具有相同的像素点数的过程。 3、空域滤波 手工滤波与函数提供滤波器的比较 六、实验步骤: 1、将待处理图片拷到matlab软件’work’文件夹 2、实行亮度变换 3、对图像进行直方图均衡处理 4、空域滤波 5、记录实验结果并分析 七、实验程序及结果记录: 1、亮度变换 I=imread(‘E:\fig308.tif’); Imshow(I); Figure,imhist(I); J=imadjust(I,[0.5 0.9],[0,1]); Figure; imshow(J); Figure; imhist(J) 2、直方图均衡化 I=imread(‘E:\fig308.tig’); J=histea(I); Imshow(I); Title(‘原图像’); Figure; Imshow(J); Title(‘直方图均衡化后的图像’);

数字图像处理图像增强实验报告

实验报告 班级:08108班 姓名:王胤鑫 09号学号:08210224

一、实验内容 给出噪声图像Girl_noise.jpg,请选择合适的图像增强算法,给出你认为最优的增强后的图像。 可以使用Matlab - Image Processing Toolbox 中的处理函数。 原始图像如下: 二、算法分析 对于给出的图像中有灰色的噪声,因此首先处理灰色的线条,根据其方差的大小来判断其所在行。对于两条白色的噪声,根据与前后两行的对比来判断其所在位置。程序中设定灰色线条处理的均方差门限为0.1,白线处理的标准为与前后两行的差值超过0.2(转换为double型)。滤除噪声之后再通过中值滤波、拉普拉斯图像增强等方式对图像进行处理。 三、matlab 源程序 clear all;clc; f=imread('girl_noise.jpg'); figure,imshow(f),title('原始图像'); [m,n]=size(f); f0= im2double(f); % 整型转换为 double 类 f1=f0; std_i=zeros(1,m-2); %灰线处理 for i=2:m-1 %灰线处理 std_i(i-1)=std(f0(i,:)); if(std_i(i-1)<0.1) for j=1:m f0(i,j)=(f0(i-1,j)+f0(i+1,j))/2; end

end end figure,imshow(f0),title('滤除灰线后的图像'); fz=f0-f1; [r,c]=find(fz~=0);%寻找灰线噪声的位置 f2=f0; change=0; count=0; for i=3:m-2 %白线处理 for j=1:m if(abs(f0(i,j)-f0(i-1,j))>0.2&&abs(f0(i,j)-f0(i+1,j))>0.2) count=count+1; end if(count>n*0.8) count=0; change=1; break; end end if(change==1) for k=1:m f0(i,k)=(f0(i-1,k)+f0(i+1,k))/2; end change=0; count=0; end end figure,imshow(f0),title('滤除白线后的图像'); fz1=f2-f0; [r1,c1]=find(fz1~=0); %寻找白线噪声的位置 fn = medfilt2(f0); %反射对称填充 figure, imshow(fn),title('中值滤波后的图像'); f0 = im2double(fn); % 整型转换为 double 类 g =2*f0- imfilter(f0,w4, 'replicate'); % 增强后的图像 figure, imshow(g),title('高提升滤波图像(A=2)');

matlab图像处理实验报告

图像处理实验报告 姓名:陈琼暖 班级:07计科一班 学号:20070810104

目录: 实验一:灰度图像处理 (3) 实验二:灰度图像增强 (5) 实验三:二值图像处理 (8) 实验四:图像变换 (13) 大实验:车牌检测 (15)

实验一:灰度图像处理题目:直方图与灰度均衡 基本要求: (1) BMP灰度图像读取、显示、保存; (2)编程实现得出灰度图像的直方图; (3)实现灰度均衡算法. 实验过程: 1、BMP灰度图像读取、显示、保存; ?图像的读写与显示操作:用imread( )读取图像。 ?图像显示于屏幕:imshow( ) 。 ?

2、编程实现得出灰度图像的直方图; 3、实现灰度均衡算法; ?直方图均衡化可用histeq( )函数实现。 ?imhist(I) 显示直方图。直方图中bin的数目有图像的类型决定。如果I是个灰度图像,imhist将 使用默认值256个bins。如果I是一个二值图像,imhist使用两bins。 实验总结: Matlab 语言是一种简洁,可读性较强的高效率编程软件,通过运用图像处理工具箱中的有关函数,就可以对原图像进行简单的处理。 通过比较灰度原图和经均衡化后的图形可见图像变得清晰,均衡化后的直方图形状比原直方图的形状更理想。

实验二:灰度图像增强 题目:图像平滑与锐化 基本要求: (1)使用邻域平均法实现平滑运算; (2)使用中值滤波实现平滑运算; (3)使用拉普拉斯算子实现锐化运算. 实验过程: 1、 使用邻域平均法实现平滑运算; 步骤:对图像添加噪声,对带噪声的图像数据进行平滑处理; ? 对图像添加噪声 J = imnoise(I,type,parameters)

数字图像处理实验报告

数字图像处理试验报告 实验二:数字图像的空间滤波和频域滤波 姓名:XX学号:2XXXXXXX 实验日期:2017 年4 月26 日 1.实验目的 1. 掌握图像滤波的基本定义及目的。 2. 理解空间域滤波的基本原理及方法。 3. 掌握进行图像的空域滤波的方法。 4. 掌握傅立叶变换及逆变换的基本原理方法。 5. 理解频域滤波的基本原理及方法。 6. 掌握进行图像的频域滤波的方法。 2.实验内容与要求 1. 平滑空间滤波: 1) 读出一幅图像,给这幅图像分别加入椒盐噪声和高斯噪声后并与前一张图显示在同一 图像窗口中。 2) 对加入噪声图像选用不同的平滑(低通)模板做运算,对比不同模板所形成的效果,要 求在同一窗口中显示。 3) 使用函数 imfilter 时,分别采用不同的填充方法(或边界选项,如零填 充、’replicate’、’symmetric’、’circular’)进行低通滤波,显示处理后的图 像。 4) 运用 for 循环,将加有椒盐噪声的图像进行 10 次,20 次均值滤波,查看其特点, 显 示均值处理后的图像(提示:利用fspecial 函数的’average’类型生成均值滤波器)。 5) 对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处理,要 求在同一窗口中显示结果。 6) 自己设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。 2. 锐化空间滤波 1) 读出一幅图像,采用3×3 的拉普拉斯算子 w = [ 1, 1, 1; 1 – 8 1; 1, 1, 1] 对其进行滤波。 2) 编写函数w = genlaplacian(n),自动产生任一奇数尺寸n 的拉普拉斯算子,如5 ×5的拉普拉斯算子 w = [ 1 1 1 1 1 1 1 1 1 1 1 1 -24 1 1 1 1 1 1 1 1 1 1 1 1] 3) 分别采用5×5,9×9,15×15和25×25大小的拉普拉斯算子对

实验四图像增强

信息工程学院实验报告 课程名称:数字图像处理Array 实验项目名称:实验四图像增强实验时间:2016.11.08 班级::学号: 一、实验目的 1.了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学理论知识。 2. 掌握图像空域增强算法的基本原理。 3. 掌握图像空域增强的实际应用及MATLAB实现。 4. 掌握频域滤波的概念及方法。 5. 熟练掌握频域空间的各类滤波器。 6.掌握怎样利用傅立叶变换进行频域滤波。 7. 掌握图像频域增强增强的实际应用及MATLAB实现。 二、实验步骤及结果分析 1. 基于幂次变换的图像增强 程序代码: clear all; close all; I{1}=double(imread('fig534b.tif')); I{1}=I{1}/255; figure,subplot(2,4,1);imshow(I{1},[]);hold on I{2}=double(imread('room.tif')); I{2}=I{2}/255; subplot(2,4,5);imshow(I{2},[]);hold on for m=1:2 Index=0; for lemta=[0.5 5] Index=Index+1; F{m}{Index}=I{m}.^lemta; subplot(2,4,(m-1)*4+Index+1),imshow(F{m}{Index},[]) end end 执行结果:

图1 幂次变换增强结果 实验结果分析: 由实验结果可知,当r<1时,黑色区域被扩展,变的清晰;当r>1时,黑色区域被压缩,变的几乎不可见。 2.直方图规定化处理 程序代码: clear all clc close all %0.读图像 I=double(imread('lena.tiff')); subplot(2,4,1); imshow(I,[]); title('原图') N=32; Hist_image=hist(I(:),N); Hist_image=Hist_image/sum(Hist_image); Hist_image_cumulation=cumsum(Hist_image);%累 计直方图 subplot(245); stem(0:N-1,Hist_image); title('原直方图'); %1.设计目标直方图 Index=0:N-1; %正态分布直方图 Hist{1}=exp(-(Index-N/2).^2/N); Hist{1}=Hist{1}/sum(Hist{1}); Hist_cumulation{1}=cumsum(Hist{1}); subplot(242); title('规定化直方图1'); %倒三角形状直方图 Hist{2}=abs(2*N-1-2*Index); Hist{2}=Hist{2}/sum(Hist{2}); Hist_cumulation{2}=cumsum(Hist{2}); subplot(246); stem(0:N-1,Hist{2}); title('规定化直方图2'); %2. 规定化处理 Project{1}=zeros(N); Project{2}=zeros(N); Hist_result{1}=zeros(N); Hist_result{2}=zeros(N); for m=1:2 Image=I; %SML处理(SML,Single Mapping Law单映射规则 for k=1:N Temp=abs(Hist_image_cumulation(k)-Hist_cumulati on{m}); [Temp1,Project{m}(k)]=min(Temp); end %2.2 变换后直方图 for k=1:N

数字图像处理实验报告

数字图像处理实验 报告 学生姓名:学号: 专业年级: 09级电子信息工程二班

实验一常用MATLAB图像处理命令 一、实验内容 1、读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。 实验结果如右图: 代码如下: Subplot (1,3,1) i=imread('E:\数字图像处理\2.jpg') imshow(i) title('RGB') Subplot (1,3,2) j=rgb2gray(i) imshow(j) title('灰度') Subplot (1,3,3) k=im2bw(j,0.5) imshow(k) title('二值') 2、对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分别显示,注上文字标题。 实验结果如右图: 代码如下: Subplot (3,2,1) i=imread('E:\数字图像处理 \16.jpg') x=imresize(i,[250,320]) imshow(x) title('原图x') Subplot (3,2,2) j=imread(''E:\数字图像处理 \17.jpg') y=imresize(j,[250,320]) imshow(y) title('原图y') Subplot (3,2,3) z=imadd(x,y) imshow(z)

title('相加结果');Subplot (3,2,4);z=imsubtract(x,y);imshow(z);title('相减结果') Subplot (3,2,5);z=immultiply(x,y);imshow(z);title('相乘结果') Subplot (3,2,6);z=imdivide(x,y);imshow(z);title('相除结果') 3、对一幅图像进行灰度变化,实现图像变亮、变暗和负片效果,在同一个窗口内分成四个子窗口来分别显示,注上文字标题。 实验结果如右图: 代码如下: Subplot (2,2,1) i=imread('E:\数字图像处理 \23.jpg') imshow(i) title('原图') Subplot (2,2,2) J = imadjust(i,[],[],3); imshow(J) title('变暗') Subplot (2,2,3) J = imadjust(i,[],[],0.4) imshow(J) title('变亮') Subplot (2,2,4) J=255-i Imshow(J) title('变负') 二、实验总结 分析图像的代数运算结果,分别陈述图像的加、减、乘、除运算可能的应用领域。 解答:图像减运算与图像加运算的原理和用法类似,同样要求两幅图像X、Y的大小类型相同,但是图像减运算imsubtract()有可能导致结果中出现负数,此时系统将负数统一置为零,即为黑色。 乘运算实际上是对两幅原始图像X、Y对应的像素点进行点乘(X.*Y),将结果输出到矩阵Z中,若乘以一个常数,将改变图像的亮度:若常数值大于1,则乘运算后的图像将会变亮;叵常数值小于是,则图像将会会暗。可用来改变图像的灰度级,实现灰度级变换,也可以用来遮住图像的某些部分,其典型应用是用于获得掩膜图像。 除运算操作与乘运算操作互为逆运算,就是对两幅图像的对应像素点进行点(X./Y), imdivide()同样可以通过除以一个常数来改变原始图像的亮度,可用来改变图像的灰度级,其典型运用是比值图像处理。 加法运算的一个重要应用是对同一场景的多幅图像求平均值 减法运算常用于检测变化及运动的物体,图像相减运算又称为图像差分运算,差分运算还可以用于消除图像背景,用于混合图像的分离。

数字图像实验三图像增强

实验三、图像增强 一、实验目的 (1)熟悉并学会使用MATLAB中图像增强的相关函数。 (2)掌握图像灰度修正、平滑去噪、锐化加强边缘和轮廓的方法,并编程实现。 二、实验主要仪器设备 (1)台式机或笔记本电脑。 (2)MATLAB软件(含图像处理工具箱)。注意:由于软件版本的缘故,软件的界面可能有所差异,读者可以根据实际安装的软件选择相关的命令。 (3)典型的灰度、彩色图像文件。 三、实验原理 数码相机的曝光量指到达DC感光器件上的光线总量,用曝光值(EV)表示。图像的过度曝光、曝光不足时,用曝光补偿调节曝光量,这种功能可修正自动曝光设置值为上升或下降几级。例如,某些DC的EV调整范围为+3~0~-3。尝试对同一景象进行正确曝光、过度曝光和曝光不足三种情况成像情况。 (1)将一幅图像视为一个二维矩阵,用MATLAB进行图像增强。 (2)利用MATLAB图像处理工具箱中的函数imread(读入),imshow(显示),imnoise (加噪),filter2(滤波)对图像进行去噪处理。 (3)图像灰度修正:灰度变换。对不满意的图像通过线性或非线性灰度映射关系进行变换,其效果可以得到明显提高。通过分析,会发现变换前后图像的直方图 也发生相应的变化。 (4)图像平滑方法:领域平均、中值滤波。分析图像降质的性质,区分平稳性还是非平稳型、加性还是乘性等,采用合适的去噪方法,可以去除或降低噪声对图 像的影响。从频率域看,平均操作在降低噪声的同时衰减了图像的高频分量, 会影响图像细节的重现。中值滤波对某些信号具有不变形,适用于消除图像中 的突发干扰,但如果图像含有丰富的细节,则不宜使用。 (5)图像锐化方法:人眼对目标的边缘和轮廓较为敏感,对图像进行锐化,有助于突出图像的这些特征。从频率域看,锐化提升了图像的高频分量。 四、实验内容 MATLAB图像增强:①图像灰度修正;②图像平滑方法;③图像锐化方法。 五、实验步骤 MATLAB图像增强。 (1)图像灰度修正。测试图像为pout.tif、tire.tif。读入一幅灰度级分布不协调的图像,分析其直方图。根据直方图,设计灰度变换表达式,或调用imadjuct函数。调 整变换表达式的参数,直到显示图像的灰度级分布均衡为止。 (2)不均匀光照的校正。测试图像为pout.tif。采用分块处理函数blkproc和图像相减函数imsubtract校正图6.6存在的不均匀光照现象。 (3)三段线性变换增强。测试图像为eight.tif。选择合适的转折点,编程进行三段线

数字图像处理实验报告实验三

中南大学 数字图像处理实验报告实验三数学形态学及其应用

实验三 数学形态学及其应用 一.实验目的 1.了解二值形态学的基本运算 2.掌握基本形态学运算的实现 3.了解形态操作的应用 二.实验基本原理 腐蚀和膨胀是数学形态学最基本的变换,数学形态学的应用几乎覆盖了图像处理的所有领域,给出利用数学形态学对二值图像处理的一些运算。 膨胀就是把连接成分的边界扩大一层的处理。而收缩则是把连接成分的边界点去掉从而缩小一层的处理。 二值形态学 I(x,y), T(i,j)为 0/1图像Θ 腐蚀:[]),(&),(),)((),(0,j i T j y i x I AND y x T I y x E m j i ++=Θ== 膨胀:[]),(&),(),)((),(0 ,j i T j y i x I OR y x T I y x D m j i ++=⊕== 灰度形态学T(i,j)可取10以外的值 腐蚀: []),(),(min ),)((),(1 ,0j i T j y i x I y x T I y x E m j i -++=Θ=-≤≤ 膨胀: []),(),(max ),)((),(1 ,0j i T j y i x I y x T I y x D m j i +++=⊕=-≤≤ 1.腐蚀Erosion: {}x B x B X x ?=Θ: 1B 删两边 2B 删右上 图5-1 剥去一层(皮) 2.膨胀Dilation: {}X B x B X x ↑⊕:= 1B 补两边 2B 补左下 图5-2 添上一层(漆) 3.开运算open :

B B X ⊕Θ=)(X B 4.闭close :∨ Θ⊕=B B X X B )( 5.HMT(Hit-Miss Transform:击中——击不中变换) 条件严格的模板匹配 ),(21T T T =模板由两部分组成。1T :物体,2T :背景。 {} C x x i X T X T X T X ??=?21, 图5-3 击不中变换示意图 性质: (1)φ=2T 时,1T X T X Θ=? (2))()()(21T X T X T X C Θ?Θ=? C T X T X )()(21Θ?Θ= )/()(21T X T X ΘΘ= 6.细化/粗化 (1)细化(Thin ) C T X X T X XoT )(/??=?= 去掉满足匹配条件的点。 图5-4 细化示意图 系统细化{}n B oB XoB T Xo ))(((21=, i B 是1-i B 旋转的结果(90?,180?,270?)共8种情况 适于细化的结构元素 1111000d d I = d d d L 10110 0= (2)粗化(Thick ) )(T X X T X ??=? 用(){}0,01=T (){}0,12=T 时,X X X T X =?=? X 21 1 1 2 3 T ? XoT X ? X X ?T X ΘT T ⊕

数字图像处理实验报告 空域图像增强技术

课程名称: 实验项目: 实验地点: 专业班级:学号:学生姓名: 指导教师: 2012年月日

实验一 空域图像增强技术 一、 实验目的 1结合实例学习如何在视频显示程序中增加图像处理算法; 2理解和掌握图像的线性变换和直方图均衡化的原理和应用; 3了解平滑处理的算法和用途,学习使用均值滤波、中值滤波和拉普拉斯锐化进行图像增强处理的程序设计方法; 4 了解噪声模型及对图像添加噪声的基本方法。 二、 实验原理 1 灰度线性变换就是将图像中所有点的灰度按照线性灰度变换函数进行变换。 )],([),(y x f T y x g = ?? ? ??<≤+-<≤+-≤≤=255),(]),([),( ]),([),(0 ) ,(),(y x f b g b y x f b y x f a g a y x f a y x f y x f y x g b a γβα n y m x ΛΛ,2,1 ,,,2,1== 2 直方图均衡化通过点运算将输入图像转换为在每一级上都有相等像素点数的输出图 像。按照图像概率密度函数PDF 的定义: 1,...,2,1,0 )(-== L k n n r p k k r 通过转换公式获得: 1,...,2,1,0 )()(0 -====∑∑ ==L k n n r p r T s k j k j j j r k k 3 均值(中值)滤波是指在图像上,对待处理的像素给定一个模板,该模板包括了其 周围的临近像素。将模板中的全体像素的均值(中值)来代替原来像素值的方法。 4 拉普拉斯算子如下: ???? ??????--------111181111 拉普拉斯算子首先将自身与周围的8个像素相减,表示自身与周围像素的差异,再将 这个差异加上自身作为新像素的灰度。 三、 实验步骤 1 启动MA TLAB 程序,对图像文件分别进行灰度线性变换(参考教材57页,例4.1)、直方图均衡化、均值滤波、中值滤波和梯度锐化操作。添加噪声,重复上述过程观察处理结果。 2记录和整理实验报告

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