数字图像处理
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字图像处理又称为计算机图像处理,它最早出现于20世纪50年代,当时的电子计算机已经发展到一定水平,人们开始利用计算机来处理图形和图像信息。
数字图像处理作为一门学科大约形成于20世纪60年代初期。
图像处理的基本目的是改善图像的质量,它以人为对象,以改善人的视觉效果为目的。
图像处理中,输入的是质量低的图像,输出的是改善质量后的图像,常用的图像处理方法有图像增强、复原、编码、压缩等。
图像是人类获取和交换信息的主要来源,因此,图像处理的应用领域必然涉及到人类生活和工作的方方面面。
随着人类活动范围的不断扩大,图像处理的应用领域也将随之不断扩大。
航天和航空技术方面的应用数字图像处理技术在航天和航空技术方面的应用,除了上面介绍的JPL对月球、火星照片的处理之外,另一方面的应用是在飞机遥感和卫星遥感技术中。
许多国家每天派出很多侦察飞机对地球上有兴趣的地区进行大量的空中摄影。
对由此得来的照片进行处理分析,以前需要雇用几千人,而现在改用配备有高级计算机的图像处理系统来判读分析,既节省人力,又加快了速度,还可以从照片中提取人工所不能发现的大量有用情报。
我国也陆续开展了以上诸方面的一些实际应用,并获得了良好的效果。
在气象预报和对太空其它星球研究方面,数字图像处理技术也发挥了相当大的作用。
文化艺术方面的应用目前这类应用有电视画面的数字编辑,动画的制作,电子图像游戏,纺织工艺品设计,服装设计与制作,发型设计,文物资料照片的复制和修复,运动员动作分析和评分等等,现在已逐渐形成一门新的艺术--计算机美术。
数字图像处理技术,主要研究的内容:图像变换、图像编码压缩、图像增强和复原、图像分割、图像分类(识别)等。
(1) 图像变换。
由于图像阵列很大,直接在空间域中进行处理,涉及计算量很大。
因此,往往采用各种图像变换的方法,如傅立叶变换、沃尔什变换、离散余弦变换等间接处理技术,将空间域的处理转换为变换域处理,不仅可减少计算量,而且可获得更有效地处理(如傅立叶变换可在频域中进行数字滤波处理)。
目前新兴研究的小波变换在时域和频域中都具有良好的局部化特性,它在图像处理中也有着广泛而有效的应用。
(2)图像编码压缩。
图像编码压缩技术可减少描述图像的数据量(即比特数),以便节省图像传输、处理时间和减少所占用的存储器容量。
压缩可以在不失真的前提下获得,也可以在允许的失真条件下进行。
编码是压缩技术中最重要的方法,它在图像处理技术中是发展最早且比较成熟的技术。
(3)图像增强和复原。
图像增强和复原的目的是为了提高图像的质量,如去除噪声,提高图像的清晰度等。
图像增强不考虑图像降质的原因,突出图像中所感兴趣的部分。
如强化
图像高频分量,可使图像中物体轮廓清晰,细节明显:如强化低频分量可减少图像中噪声影响。
图像复原要求对图像降质的原因有一定的了解,一般讲应根据降质过程建立“降质模型”,再采用某种滤波方法,恢复或重建原来的图像。
(4)图像分割。
图像分割是数字图像处理中的关键技术之一。
图像分割是将图像中有意义的特征部分提取出来,其有意义的特征有图像中的边缘、区域等,这是进一步进行图像识别、分析和理解的基础。
虽然目前已研究出不少边缘提取、区域分割的方法,但还没有一种普遍适用于各种图像的有效方法。
因此,对图像分割的研究还在不断深入之中,是目前图像处理中研究的热点之一。
(5)图像描述。
图像描述是图像识别和理解的必要前提。
作为最简单的二值图像可采用其几何特性描述物体的特性,一般图像的描述方法采用二维形状描述,它有边界描述和区域描述两类方法。
对于特殊的纹理图像可采用二维纹理特征描述。
随着图像处理研究的深入发展,已经开始进行三维物体描述的研究,提出了体积描述、表面描述、广义圆柱体描述等方法。
(6) 图像分类(识别)。
图像分类(识别)属于模式识别的范畴,其主要内容是图像经过某些预处理(增强、复原、压缩)后,进行图像分割和特征提取,从而进行判决分类。
图像增强
图像增强是指按特定的需要突出一幅图像中的某些信息,同时削弱或去除某些不需要的信息,它是一种将原来不清晰的图像变得清晰或强调某些感兴趣的特征,抑制不感兴趣的特征,使之改善图像质量丰富信息量,加强图像判读和识别效果的图像处理方法。
图像增强就是增强图像中用户感兴趣的信息,其主要目的有两个:一是改善图像的视觉效果,提高图像成分的清晰度;二是使图像变得更有利于计算机处理。
图像增强的方法图像增强技术基本上可分成两大类:频域处理法和空域处理法。
频域处理法的基础是卷积定理,它是将图像看作波,然后利用信号处理中的手段对图像波进行处理。
空域处理法的基础是灰度映射变换,它是直接针对图像中的像素进行处理,所用到的映射变换取决于增强的目的,例如增加图像的对比度,改善图像的灰度层次等处理均属于空域处理法的范畴。
线性空域锐滤波法是一种经典且有效的图像增强技术。
最常用的线性空域锐化滤波器是一种线性高通滤波器,其工作原理在于让图像的低频分量受到抑制而不影响高频分量,由于低频分量对应于图像中灰度值缓慢变化的区域,和图像的整体特性无关,仅与图像整体对比度以及
平均灰度值等有关系,所以该滤波器把这些分量滤去后,使得图像进一步锐化,然后通过增强图像中被模糊的细节以达到目标和背景易于分离的目的。
在空域内进行滤波是利用模板和图像进行卷积来实现的,其主要步骤如下:
(1) 将模板在图像中漫游,实现模板的中心与图像中某个像素位置重合;
(2)将模板上系数与模板下的图像的对应像素相乘;
(3) 将所有乘积的结果相加;
(4) 将相加之和(模板的输出响应)赋给图像中对应模板中心位置的像素。
例如图3-1(a )给出一幅原始图像的一部分,其中x s 表示像素的灰度值,图3-1(b )是一个3×3 的模板,
模板内的n k 表示为模板系数。
如将0k 所在位置与图像中灰度值为0s 的像素重合(即把模
板中心放在图中的(x ,y) 位置),则模板的输出响应R 表示为:881100S K S K S K R +++= ,并且把R 值赋给增强图像,作为(x ,y) 位置处的灰度值,如图3-1(c )所示如果对原图像的每个像素都这样进行处理就可以得到所有位置增强后的新灰度值如果我们在设计滤波器时给每个K 赋予不同的值,就可得到不同的高通或低通效果,如图3-2 所示。
(a ) (b) (c)
图3-1 模板的输出响应 图3-2 模板的输出效果
图像锐化原理
在图像增强过程中, 通常利用各类图像平滑算法消除噪声, 图像的常见噪声主要有加性噪声、乘性噪声和量化噪声等。
一般来说, 图像的能量主要集中在其低频部分, 噪声所在的频段主要在高频段, 同时图像边缘信息也主要集中在其高频部分。
这将导致原始图像在平滑处理之后,图像边缘和图像轮廓模糊的情况出现。
为了减少这类不利效果的影响,就需要利用图像锐化技术,使图像的边缘变得清晰。
图像锐化处理的目的是为了使图像的边缘、轮廓线以及图像的细节变得清晰,经过平滑的图像变得模糊的根本原因是因为图像受到了平
均或积分运算,因此可以对其进行逆运算(如微分运算) 就可以使图像变得清晰。
从频率域来考虑,图像模糊的实质是因为其高频分量被衰减,因此可以用高通滤波器来使图像清晰。
图像的模糊实质就是图像受到平均或积分运算造成的,因此可以对图像进行逆运算如微分运算来使图像清晰化。
从频谱角度来分析,图像模糊的实质是其高频分量被衰减,因而可以通过高通滤波操作来清晰图像。
但要注意,能够进行锐化处理的图像必须有较高的性噪比,否则锐化后图像性噪比反而更低,从而使得噪声增加的比信号还要多,因此一般是先去除或减轻噪声后再进行锐化处理。
图像的锐化一般有两种方法:一种是微分法,另外一种是高通滤波法。
拉普拉斯锐化法是属于常用的微分锐化法
拉普拉斯算子
拉普拉斯算子是一种在图像锐化处理中很重要的算法。
拉普拉斯算子是与一个边缘方向无关的边缘点检测算子。
它对孤立像素的响应要比对边缘或线的响应强烈,因此使用该算子进行图像锐化之前需要对图像作平滑处理。
拉普拉斯运算是偏导数运算的线性组合,而且是一种各向同性(旋转不变)的线性运算。
设▽²f 为拉普拉斯算子,则:
22222y f x f
f ∂∂+∂∂=∇
(3-1)
对于离散数字图像f(i ,j), 其一阶偏导数为:
()
()()()()
()()()
1,,,,,1,,,--=∆=∂∂--=∆=∂∂j i f j i f j i f y j i f j i f j i f j i f x
j i f y x (3-2)
则其二阶偏导数为:
()()()()()()()
()()()()()
j i f j i f j i f j i f j i f y j i f j i f j i f j i f j i f j i f x
j i f y y x x ,21,1,,1,,,2,1,1,,1,2222
--++=∆-+∆=∂∂--++=∆-+∆=∂∂ (3-3)
所以,拉普拉斯算子▽²f 为:
()()()()()j i f j i f j i f j i f j i f y f x f
f ,41,1,,1,122222--=++++-=∂∂+∂∂=∇
(3-4)
对于扩散现象引起的图像模糊,可以用下式来进行锐化
()()()j i f k j i f j i g ,,,2∇-=τ
(3-5)
这里kτ是与扩散效应有关的系数。
该系数取值要合理,如果kτ 过大,图像轮廓边缘会产生过冲;反之如果kτ过小,锐化效果就不明显。
采用拉普拉斯锐化算法来实现数字图像的锐化,其基本的公式如公式(3-5)所示。
考虑到kτ是与扩散效应有关的系数,在本实现算法中我令,令kτ=1,则变换公式为:
)()()()()()1,1,,1,1,5,--+-+---=j i f j i f j i f j i f j i f j i g (3-6) 用模板表示如下:拉普拉斯算子可以表示成模板的形式,如图3-3 所示。
同梯度算子进行锐化一样,拉普拉斯算子也增强了图像的噪声, 但与梯度法相比,拉普拉斯算子对噪声的作用较梯度减弱。
图3-3 拉普拉斯算子
这样拉普拉斯锐化运算完全可以转换成模板运算。
模板取样将直接影响锐化的效果。
常用的模板还有:
图3-4 常用拉普拉斯算子1 图3-5 常用拉普拉斯算子2
基于DSP 的算法实现
1、锐化的总流程图
根据这个矩阵,我们在CCS2 软件用C 语言来实现这个算法。
图3-6 主程序流程图3-7 子程序流程利用不同参数调用构造图像的函数产生图像,对产生的图像调用锐化子程序完成锐化,完成图像的锐化。
其中锐化子程序主要是对产生的图像数据中每一个象素用拉普拉斯算子进行运算,得出一组新的图像数据。
这样循环构造图像和调用图像锐化3次,对不同的图像数据进行锐化,比较不同图像锐化后的效果。
2、锐化程序的实现
在这里设计了一个主函数和3个子函数,子函数分别问为Readimage、InitImage和Laplace,InitImage.c用于初始化图像,Laplace.c用于对图像锐化的计算。
Readimage用于读取图像。
其具体实现方法如下。
(1)程序主函数
如图3-6主程序流程图,主程序中运用了InitImage和Laplace子函数完成了图像的读取和锐化过程。
首先用不同参数调用图像函数产生图像。
然后调用锐化子程序来对图像中每个像素进行拉普拉斯运算生成检测图。
(2)图像读取的程序实现
在初始化图像子函数中,先进行初始化变量,然后使用多分支选择语句,接着构建一个16级灰度栏信息,16个灰度不同的圆重叠在一起的图像图像,以及初始化2个实物图。
其中运用了函数ReadImage对文档中已有的图像进行载入,实行检测。
在读取图像子函数中,先进行初始化变量,然后打开文件,将图像的指针变量定位在1078L处,对1078L指针值以下的数据进行读取,读取图像后,将文件关闭。
该程序先进行变量初始化,定义指针变量,
使用判断语句打开文件。
打开文件后,先对图像的存储地址进行定位,然后对指针变量进行赋值,使用循环语句读取图像信息,读取完毕后关闭文件。
(3)对像素进行拉普拉斯算法运算的流程图及程序
初始化工作变量,然后定位像素。
对像素进行拉普拉斯运算。
然后移位针对其他像素进行拉普拉斯运算。
该程序初始化工作变量,然后定位相似并且赋予初值。
并且对像素进行拉普拉斯运算。
语句中用来两个for语句和一个移位来实现像素运算初值转换。
从而实现针对图像中每个像素进行拉普拉斯运算。
图3-8 InitIimage子函数流程
图3-9 ReadImage 子函数设计流程图3-10 拉普拉斯算法实现流
程
图片锐化效果比较
本程序通过三副图像来验证图像的锐化效果。
通过InitImage子函数生成调用图像。
再经
过Laplace函数针对图像中每个像素进行拉普拉斯运算。
下面对锐化前后图像进行对比。
图3-11 锐化前灰度条图3-12 锐化后灰度条比较灰度条图3-11和图3-12,可知由于图像由16级灰度条组成,在灰度的交接处存在不太明显的边缘,拉普拉斯锐化突出了这些灰度条连接的地方,使得在原先暗影区和亮区的不太明显的分界变得明显了。
图3-13 锐化前人物轮廓图3-14 锐化后人物轮廓比较人物轮廓图3-13 和图3-14,可得锐化后人物轮廓变得更为明显。
图3-15 锐化前手机图图3-16 锐化后手机图
比较手机图3-15和图3-16,锐化手的纹路被显示出来了。
在实际应用过程中,图像锐化效果不理想是因为图像信噪比小,要用较高的kτ 才能得到清晰的图像。
kτ(与扩散效应有关的系数)该系数取值要合理kτ过小,锐化效果就不明显。
直方图均衡化算法
图像预处理中,通常采用直方图均衡化和直方图规定化、线性和非线性灰度变换法提高图像的对比度,该算法首先对直方图进行平滑处理以消除直方图中因噪声而引入的随机干扰点,然后进行直方图均衡化,增大图像的对比度,接着在整个显示范围内对图像灰度级进行等间距排列,使输出图像的灰度动态范围达到最大灰度变化范围,最后对整幅图像中值滤波,滤除图像中被增强的噪声
直方图均衡化
绘制直方图,横轴代表灰度级, 纵轴代表每一灰度级所占像素个数如图3-22。
用以下公式可表示直方图:
()1...,1,0,-==L
k n n s p k k (3-15)
其中k s 表示图像第k 级灰度值,k n 对应K 值灰度级的像素数,n 是图像的像素总数,L 表示图像的灰度级总数如256=L 等,通过直方图3-22可看出图象具有各灰度级的像素分布以及动态范围。
图3-22 直方图
直方图均衡化的算法,这里以256级灰度图像为例,说明如下:
(1) 统计原始灰度图的直方图的各灰度级k s 的像素k n (k = 0,1,2,… 255) ;
(2) 用()i k s n n s p k k s 255,...,1,0,2550;=≤≤=计算原始直方图,计算量大;
(3) 用(2)中的结果来计算累计直方图,255,...,1,0,255
0==∑
-k n n t k k x 计算量大;
(4) 取整扩展x t =int [ (N - 1) x t 0.5] k = t +;
(5) 由(4)计算结果,建立映射对应关系(sk →tk ) 即将原始灰度图中灰度为sk 的替换成新直方图中灰度为tk ( k = 0,1,2,…255 ),如t 0= 1,则s 0 => t1 = 1或0灰度级=>1灰度级;
(6) 统计新直方图各灰度级象素nk ,注意几个原始灰度级映射到同一个新直方图灰度级时,此新直方图灰度级像素是几个原始灰度级象素的和。
如: 3 => 6,4=> 6,则n 6 =n 3+n 4;
(7) 用p s ( s ) = n k / n s 计算新直方图或均衡化后的直方图,可知新直方图灰度级减少,各灰度级概率突出和增大拉宽,结果是增强了图像的对比度以及增加了原灰度值的动态范围,把原始图像的直方图变成均匀分布的形式。
直方图规定化
直方图均衡化处理方法的效果还是很不错的,从实现算法上也可以看出其优点主要在于能自动增强整幅图像的对比度,但具体的增强效果也因此不易控制,只能得到全局均衡化处理的直方图。
在实际应用中,往往要根据不同的要求得到特定形状的直方图分布,以有选择的对某灰度范围进行局部范围内的对比度增强,此时可以采用对直方图的规定化处理。
直方图的规定化处理主要有三个步骤:
(1)用()1,...,0,0-==∑
=M k s p t k
t t s k 公 对原始直方图进行累积灰度均衡化计算。
(2)规定需要的直方图如图3-23。
图3-23 需要规定的直方图
用公式()N l u p v l
t j u t ,...,1,0,0==∑
=按第 1 步的方法计算规定的直方图进行累积灰度
均衡化的变换,规定直方图灰度级少计算少。
一般只考虑规定直方图灰度级小于或等于原始
直方图灰度级的情况。
(3)将所有原始直方图都对应映射到规定的直方图上,即将所有第1 步的
ps (si) 有8个灰度级都对应到第2步的3个灰度级pu (uj) 上,有两种对应计算方法: (SML)单映射规则和(GML)组映射规则,由规则计算结果确定原始每级映射对应关系,再归化合成计算对应到规定直方图的新概率后就形成新的变换增强直方图。
两种对应方法比较复杂,也是直方图规定化处理的难点,计算量也大。
下面重点说明(SML)单映射规则和(GML)组映射规则两种对应方法的简便理解算法:其实两种对应方法都是将原始直方图的M 个灰度级都对应归化到规定直方图的N 个灰度级上,对应规则都可使用下列公式依此找到使原始累积直方图和规定累积直方图之差绝对值最小的k 或L ,只是两种映射规则计算方向不同,效果也不同。
对于(SML) 单映射规则:先从小到大依次找到能使下式最小的k 和ls :
)()1,...,1,0,1...,1,0,0-=-=-∑∑
==N l M k u p s p l l l u k
o l l s , (3-16)
然后将 ps(si)对应到pu(u i)中去.对于(GML) 组映射规则: 设有一个整数函数I(l),l=0,1,……,N-1 ,满足0 ≤ I (0) ≤……≤ I (N −1) ≤ M −1。
现在要确定能使下式达到最小的I(l) :
()()
()1,...,1,0,0-=-∑∑
==N l u p s p l l l u l l o l l s
(3-17)
在要确如果 l=0,则将其i 从0 到I(0)的ps(si)对应到pu(uj)去;如果l≥1,则将其i 从I(l-1)+1到I(l)的ps(si)都对应到pu(uj)去。
实验结果及分析
(a) 原图 (b) 直方图均衡算法 (c) 改进增强算法
图3-24 飞机图像处理结果
(a) 原图(b) 直方图均衡算法(c) 改进增强算法
图3-25 猫图像处理结果
处理的图片如图3-24和图3-25,其中平滑系数α=0.4。
结果在目标对比度和细节方面好于直方图均衡法。
其中:(a)为原图及其直方图,(b)是采用直方图均衡化法的处理结果,(c)是文中方法的结果。
图3-24中可看到(b)的右侧天空被过增强,且噪声很大,(c)在增强目标的同时较好的抑制了噪声,观察(c)的直方图可看到灰度级在0~255,即在图像的最大动态范围内均匀等间隔分布。
图3-25中的(c)图,猫的右眼以及图像的整体效果均好于(b),可见算法在增强整幅图像的同时也增强细节,并且有效地抑制了噪声。