数字图像处理学ppt课件

上传人:工**** 文档编号:579353540 上传时间:2024-08-26 格式:PPT 页数:58 大小:1.82MB
返回 下载 相关 举报
数字图像处理学ppt课件_第1页
第1页 / 共58页
数字图像处理学ppt课件_第2页
第2页 / 共58页
数字图像处理学ppt课件_第3页
第3页 / 共58页
数字图像处理学ppt课件_第4页
第4页 / 共58页
数字图像处理学ppt课件_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《数字图像处理学ppt课件》由会员分享,可在线阅读,更多相关《数字图像处理学ppt课件(58页珍藏版)》请在金锄头文库上搜索。

1、图像增强图像增强的概念 图像增强是数字图像处理的基本内容之一。图像增强是指按特定的需要突出一副图像中的按特定的需要突出一副图像中的某些信息某些信息,同时,削弱或去除某些不需要的信削弱或去除某些不需要的信息息的处理方法。其主要目的是使处理后的图像对某种特定的应用来说,比原始图像更适用。应该明确的是增强处理并不能增强原始图像的信息,其结果是增强对某种信息的辨别能力。增强对某种信息的辨别能力。第第3章章 亮度变换与空间滤波亮度变换与空间滤波3.1 背景知识背景知识 图像增强技术基本上可分为两大类:一类是空域处理法空域处理法;一类是频域处理法。频域处理法。 空域法是直接对图像的像素进行处理,基本空域法

2、是直接对图像的像素进行处理,基本上是以灰度映射变换为基础的。上是以灰度映射变换为基础的。所用的映射变换取决于增强的目的,例如增加图像的对比度,改善图像的灰度层次等处理均属空域法处理。空域法处理的表达式: g(x,y)=Tf(x,y) 其中其中f(x,y)f(x,y)为输入图像,为输入图像,g(x,y)g(x,y)为输出图像,为输出图像,T T是对图像是对图像f f进行增强处理的操作符。进行增强处理的操作符。若若T T是定义是定义在每个点在每个点(x,y)(x,y)上的,则上的,则T T是点操作;若是点操作;若T T是定义是定义在点在点(x,y)(x,y)的指定邻域内的指定邻域内, ,则则T T

3、是模板操作。是模板操作。 由于亮度函数仅取决于亮度的值,而与由于亮度函数仅取决于亮度的值,而与(x,y)(x,y)无关,所以亮度变换函数通常可以写做无关,所以亮度变换函数通常可以写做 s=T(r)s=T(r) 其中,其中,r r表示图像表示图像f f中相应点中相应点(x,y)(x,y)的亮度,的亮度,s s表表示图像示图像g g中相应点中相应点(x,y)(x,y)的亮度。的亮度。3.2 亮度变换函数亮度变换函数函数函数imadjust 函数语法:函数语法: g=imadjust (f, low_in high_in, low_out high_out, gamma) 该函数将图像该函数将图像f

4、中的亮度值映射到中的亮度值映射到g中的新值中的新值,即low_in 至high_in之间的值映射到low_out 和high_out之间的值。low_in以下的值映射到low_out , high_in以上的值映射到high_out。 除图像f之外,函数imadjust所有的输入输出均指定在0和1之间,而不论f的类。若f 是uint8类图像,则函数imadjust将乘以255来确定应用中的实际值。 gamma为矫正量为矫正量,它指定亮度变换函数曲线的形状,若gamma1,图像变暗。若省略则默认为1。负片图像: g1=imadjust(f,0,1,1,0);或g1=imcomplement(f)

5、;灰度增强图像: g2=imadjust(f,0.5,0.75,0,1);gamma变换图像: g3=imadjust(f, , ,2);对数和对比度拉伸变换对数和对比度拉伸变换 对数变换的应用主要压缩图像动态范围,输出高对比度的图像。对数变换的表达式为:对数变换的表达式为: g=c*log(1+double(f); 当执行一个对数变换时,期望将导致的压缩值还原为显示的全范围,可以执行: gs=im2uint8(mat2gray(g); 对比度拉伸变换函数可将输入值低于m的灰度级压缩为输出图像中较暗灰度级的较窄范围内;可将输入值高于m的灰度级压缩为输出图像中较亮灰度级的较窄范围内,从而输出一副

6、高对比度的图像。对比度拉伸变换函数的表达式:对比度拉伸变换函数的表达式: s=T(r)=1/1+(m/r)EE控制函数的斜率。编写亮度变换的一些实用函数 如何处理可变数量的输入和输出?如何处理可变数量的输入和输出? 检测输入到M函数的参量数目,可用: n=nargin 检测M函数的输出参量数目,可用: n=nargout 函数nargchk用于函数体中,用于检测传递的参量数目是否正确。 msg=nargchk(low,high,number) 通常写出具有可变数目的输入变量和输出变具有可变数目的输入变量和输出变量量的函数是十分有用的。例如,变量varargin和变量varargout。 fun

7、ctionm,n=testhv3(varargin); functionvarargout=testhv4(m,n,p); 当varargin用作一个函数的输入变量时,MATLAB会将其置入一个单元数组单元数组中。该数组接收由用户输入的变量数。 m,n=testhv3(f,0 0.5 1.5,A,label); 亮度变换的自定义函数intrans函数函数 function g=intrans(f,varargin) %intrans performs intensity (grey-level) transformations. % error(nargchk(2,4,nargin) clas

8、sin=class(f); if strcmp(class(f),double) &max(f(:)1& strcmp(varargin1,log) f=mat2gray(f); else f=im2double(f); endmethod=varargin1; switch method case neg g=imcomplement(f); case log if length(varargin)=1 c=1; elseif length(varargin)=2 c=varargin2; elseif length(varargin)=3 c=varargin2; classin= var

9、argin3; else error(Incorrect number of inputs for thelog option.) end g=c*(log(1+double(f); case gamma if length(varargin)g=intrans(f,stretch,mean2(im2double(f), 0.9);figure,imshow(g)亮度标度的M函数gscale g=gscale(f,method,low,high) %将图像输出映射到一个特定的范围。 method: full8, full16, minmax图像亮度(灰度)直方图图像亮度(灰度)直方图 直方图是

10、反映一副图像中的灰度级与出现这种灰度的概率之间的关系的图形。 假如一副图像在0,G内有L个灰度级,其直方图定义为: 是离散形式下的第K级灰度, 是灰度级的概率密度函数, 图像中出现K级灰度的像素数,n为图像中的像素总数。 3.3 直方图处理与函数绘图直方图处理与函数绘图1.直方图处理核心函数 imhist 格式:h=imhist(f,b) f为输入图像,h为其直方图,b为灰度级个数,默认值为256。若b=2,则亮度标度范围被分为两个部分:0至127和128至255。所得的直方图将只有两个值。 p=imhist(f,b)/numel(f) 为归一化的直方图。计算并绘制直方图 1.使用工具箱函数:

11、 imhist(f) 2.条形图绘制直方图 bar(horz,v,width) v是一个行向量,它包含将被绘制的点; horz 是一个与v有着相同维数的向量,它包含水平标度值的增量; width是一个值在0和1之间的数,决定条形图的宽度,默认值为0.8。 h=imhist(f); h1=h(1:10:256); horz=1:10:256; bar(horz,h1) axis(0 255 0 15000)%设置水平轴和垂直轴的最大值和最小值设置水平轴和垂直轴的最大值和最小值 set (gca,xtick,0:50:255) set (gca, ytick,0:2000:15000)%设置水平轴

12、和垂直轴的刻度设置水平轴和垂直轴的刻度 3.杆状图绘制直方图 stem(horz,v, color_linestyle_marker, fill) color_linestyle_marker的意义见表3.1。 h=imhist(g); h1=h(1:10:256); horz=1:10:256 stem(horz,h1,fill) set (gca,xtick,0:50:255) set (gca, ytick,0:2000:15000) 4.连续型直方图 h=imhist(f); plot(f) axis(0 255 0 15000) set (gca,xtick,0:50:255) se

13、t (gca, ytick,0:2000:15000)直方图均衡化直方图均衡化 假如一副给定的图像的灰度级r分布在0,1区间内,可以对任一个r值进行如下变换: s=T(r) 变换函数T(r)应满足下列条件: 1. T(r)单调增加; 2. T(r)位于 0,1区间内 分析可知,通过变换函数T(r)可以控制图像灰度级的概率密度函数,从而改变图像的灰度层次。 直方图均衡化处理是以累积分布函数累积分布函数为变换函数的。目的是把原始图像的灰度直方图从比较集中的某个灰度区间变成在全部灰度范围内的均匀分布。 直方图均衡化函数histeq g=histeq(f,nlev) f为输入图像, nlev为输出图像

14、指定的灰度级数。若nlev等于L,则histeq直接执行变换函数T(r)。若nlev小于 L,则histeq划分灰度级,以便能够得到较为平坦的直方图, nlev默认值为64。 直方图均衡化举例 imshow(f); figure,imhist(f) ylim(auto)%自动设定坐标轴的取值范围和刻度线 g=histeq(f,256); figure,imshow(g) figure,imhist(g) ylim(auto)求变换函数 hnorm=imhist(f)./numel(f); cdf=cumsum(hnorm); x=linspace(0,1,256); plot(x,cdf) a

15、xis(0 1 0 1) set(gca,xtick,0:.2:1) set(gca,ytick,0:.2:1) xlabel(input intensity values, fontsize,9) ylabel(output intensity values, fontsize,9) test(0.18,0.5,Transformation function, fontsize,9)直方图规定化直方图规定化 直方图均衡化通过扩展图像的灰度级到较宽亮度尺寸的范围来实现图像增强,但它只能产生近似均匀的直方图均匀的直方图结果;在不同的情况下,并不是总需要具有均匀直方图的图像,有时需要具有特定的直方

16、图特定的直方图的图像,以便能够对图像中的某些灰度级加以增强,这就是直方图规定化。算法讨论 直方图规定化函数直方图规定化函数 g=histeq(f,hspec) f 是输入图像,hspec为指定的直方图(一个由指定值构成的行向量),g为输出图像。其直方图近似等于指定的直方图hspec.空间邻域处理:空间邻域处理:(1)定义中心点(x,y);(2)仅对预先定义的以(x,y)为中心点的邻域内的像素进行运算; (3)令运算结果为该点处处理的响应。(4) 对图像中的每一点重复此步骤。3.4 线性空间滤波线性空间滤波线性空间滤波线性空间滤波 移动中心点会产生新的邻域,而每个邻域对应于输入图像上的一个像素。

17、若对邻域中像素的计算为线性运算线性运算时,则此运算称为线性空间滤波;否则称此运算为非线性空间滤波。线性滤波器线性滤波器 线性运算包括将领域中每个像素与相应的系数相乘,然后将结果累加,从而得到点(x,y)的响应。若邻域的大小为mn,则总共需要个mn系数,把这些系数排列为一个矩阵,称其为滤波器、掩膜、滤波掩膜。 滤波器的大小遵循奇数的原则,即滤波器的大小遵循奇数的原则,即m和和n都都应为奇数。应为奇数。相关和卷积操作相关和卷积操作 相关操作是滤波器在图像上顺序移动,执行每一个邻域的乘加运算。而卷积操作是指在图像中移动滤波器前,将滤波器旋转180度,再执行相关的乘加运算。 一维相关与卷积的操作一维相

18、关与卷积的操作 见图3.13 假设f的原点为其左侧的点,为求两个函数的相关,可移动滤波器,使滤波器的最右侧的点与f的原点重合,在执行乘加操作时,要在f中填充足够的0。二维相关与卷积的操作二维相关与卷积的操作 见图见图3.14 原点位于图像原点位于图像f(x,y)的左上角,执行相关的左上角,执行相关运算时,设置滤波器的右下角点,与运算时,设置滤波器的右下角点,与f(x,y)的的原点重合。原点重合。空间滤波函数空间滤波函数imfilter g=imfilter(f, w, filtering_mode, boundary_options, size_options) f是输入图像, w为滤波器,

19、g为滤波结果。 filtering_mode滤波过程使用相关还是卷积。 boundary_options用于处理边界充零问题,边界的大小由滤波器的大小决定。 size_options输出图像大小。使用函数使用函数imfilter对输入图像滤波对输入图像滤波 w=ones(31); f=double(a); gd=imfilter(f,w); imshow(gd, ) gr=imfilter(f,w,replicate); 使边缘为黑色 figure,imshow(gr, ) gs=imfilter(f,w,symmetric);使边缘变模糊 figure,imshow(gs, ) gc=imf

20、ilter(f,w,circular);使图案的黑暗部分靠近光亮部分 imshow(gc, ) p默认为默认为0replicatesymmetriccircularf为为uint8类类线性空间滤波器线性空间滤波器 线性空间滤波器可以通过使用函数fspecial来实现,用来生成滤波掩膜w。 w=fspecial(type,parameters)使用拉普拉斯滤波器增强图像使用拉普拉斯滤波器增强图像 w=fspecial(laplacian,0); f2=im2double(f); g2=imfilter(f2,w,replicate); imshow(g2, ) g=f2-g2; imshow(g)

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号