数字图像处理学3.ppt
文本预览下载声明
图像增强的概念 图像增强是数字图像处理的基本内容之一。 图像增强是指按特定的需要突出一副图像中的 某些信息,同时,削弱或去除某些不需要的信 息的处理方法。其主要目的是使处理后的图像 对某种特定的应用来说,比原始图像更适用。 应该明确的是增强处理并不能增强原始图像的 信息,其结果是增强对某种信息的辨别能力。 图像增强技术基本上可分为两大类:一类是 空域处理法;一类是频域处理法。 空域法是直接对图像的像素进行处理,基本 上是以灰度映射变换为基础的。所用的映射变 换取决于增强的目的,例如增加图像的对比度 ,改善图像的灰度层次等处理均属空域法处理。 空域法处理的表达式: g(x,y)=T[f(x,y)] 其中f(x,y)为输入图像,g(x,y)为输出图像, T是对图像f进行增强处理的操作符。若T是定义 在每个点(x,y)上的,则T是点操作;若T是定义 在点(x,y)的指定邻域内,则T是模板操作。 由于亮度函数仅取决于亮度的值,而与 (x,y)无关,所以亮度变换函数通常可以写做 s=T(r) 其中,r表示图像f中相应点(x,y)的亮度,s表 示图像g中相应点(x,y)的亮度。 函数imadjust 函数语法: g=imadjust (f, [low_in high_in], [low_out high_out], gamma) 该函数将图像f中的亮度值映射到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,图像变亮;若 gamma1,图像变暗。若省略则默认为1。 负片图像: g1=imadjust(f,[0,1],[1,0]); 或g1=imcomplement(f); 灰度增强图像: 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的灰度级压缩为输出图像 中较亮灰度级的较窄范围内,从而输出一副高 对比度的图像。对比度拉伸变换函数的表达式: s=T(r)=1/1+(m/r)^E E控制函数的斜率。 编写亮度变换的一些实用函数 如何处理可变数量的输入和输出? 检测输入到M函数的参量数目,可用: n=nargin 检测M函数的输出参量数目,可用: n=nargout 函数nargchk用于函数体中,用于检测传递的 参量数目是否正确。 msg=nargchk(low,high,number) 通常写出具有可变数目的输入变量和输出变 量的函数是十分有用的。例如,变量varargin和 变量varargout。 function[m,n]=testhv3(varargin); function[varargout]=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-
显示全部