ezw算法
① 图像压缩编码论文
数字图像压缩技术的研究及进展
摘要:数字图像压缩技术对于数字图像信息在网络上实现快速传输和实时处理具有重要的意义。本文介绍了当前几种最为重要的图像压缩算法:JPEG、JPEG2000、分形图像压缩和小波变换图像压缩,总结了它们的优缺点及发展前景。然后简介了任意形状可视对象编码算法的研究现状,并指出此算法是一种产生高压缩比的图像压缩算法。关键词:JPEG;JPEG2000;分形图像压缩;小波变换;任意形状可视对象编码一 引 言 随着多媒体技术和通讯技术的不断发展,多媒体娱乐、信息高速公路等不断对信息数据的存储和传输提出了更高的要求,也给现有的有限带宽以严峻的考验,特别是具有庞大数据量的数字图像通信,更难以传输和存储,极大地制约了图像通信的发展,因此图像压缩技术受到了越来越多的关注。图像压缩的目的就是把原来较大的图像用尽量少的字节表示和传输,并且要求复原图像有较好的质量。利用图像压缩,可以减轻图像存储和传输的负担,使图像在网络上实现快速传输和实时处理。 图像压缩编码技术可以追溯到1948年提出的电视信号数字化,到今天已经有50多年的历史了[1]。在此期间出现了很多种图像压缩编码方法,特别是到了80年代后期以后,由于小波变换理论,分形理论,人工神经网络理论,视觉仿真理论的建立,图像压缩技术得到了前所未有的发展,其中分形图像压缩和小波图像压缩是当前研究的热点。本文对当前最为广泛使用的图像压缩算法进行综述,讨论了它们的优缺点以及发展前景。二 JPEG压缩 负责开发静止图像压缩标准的“联合图片专家组”(Joint Photographic Expert Group,简称JPEG),于1989年1月形成了基于自适应DCT的JPEG技术规范的第一个草案,其后多次修改,至1991年形成ISO10918国际标准草案,并在一年后成为国际标准,简称JPEG标准。1.JPEG压缩原理及特点 JPEG算法中首先对图像进行分块处理,一般分成互不重叠的 大小的块,再对每一块进行二维离散余弦变换(DCT)。变换后的系数基本不相关,且系数矩阵的能量集中在低频区,根据量化表进行量化,量化的结果保留了低频部分的系数,去掉了高频部分的系数。量化后的系数按zigzag扫描重新组织,然后进行哈夫曼编码。JPEG的特点优点:(1)形成了国际标准;(2)具有中端和高端比特率上的良好图像质量。缺点:(1)由于对图像进行分块,在高压缩比时产生严重的方块效应;(2)系数进行量化,是有损压缩;(3)压缩比不高,小于50。 JPEG压缩图像出现方块效应的原因是:一般情况下图像信号是高度非平稳的,很难用Gauss过程来刻画,并且图像中的一些突变结构例如边缘信息远比图像平稳性重要,用余弦基作图像信号的非线性逼近其结果不是最优的。2. JPEG压缩的研究状况及其前景 针对JPEG在高压缩比情况下,产生方块效应,解压图像较差,近年来提出了不少改进方法,最有效的是下面的两种方法:(1)DCT零树编码 DCT零树编码把 DCT块中的系数组成log2N个子带,然后用零树编码方案进行编码。在相同压缩比的情况下,其PSNR的值比 EZW高。但在高压缩比的情况下,方块效应仍是DCT零树编码的致命弱点。(2)层式DCT零树编码 此算法对图像作 的DCT变换,将低频 块集中起来,做 反DCT变换;对新得到的图像做相同变换,如此下去,直到满足要求为止。然后对层式DCT变换及零树排列过的系数进行零树编码。 JPEG压缩的一个最大问题就是在高压缩比时产生严重的方块效应,因此在今后的研究中,应重点解决 DCT变换产生的方块效应,同时考虑与人眼视觉特性相结合进行压缩。三 JEPG2000压缩 JPEG2000是由ISO/IEC JTCISC29标准化小组负责制定的全新静止图像压缩标准。一个最大改进是它采用小波变换代替了余弦变换。2000年3月的东京会议,确定了彩色静态图像的新一代编码方式—JPEG2000图像压缩标准的编码算法。1.JPEG2000压缩原理及特点 JPEG2000编解码系统的编码器和解码器的框图如图1所示。编码过程主要分为以下几个过程:预处理、核心处理和位流组织。预处理部分包括对图像分片、直流电平(DC)位移和分量变换。核心处理部分由离散小波变换、量化和熵编码组成。位流组织部分则包括区域划分、码块、层和包的组织。 JPEG2000格式的图像压缩比,可在现在的JPEG基础上再提高10%~30%,而且压缩后的图像显得更加细腻平滑。对于目前的JPEG标准,在同一个压缩码流中不能同时提供有损和无损压缩,而在JPEG2000系统中,通过选择参数,能够对图像进行有损和无损压缩。现在网络上的JPEG图像下载时是按“块”传输的,而JPEG2000格式的图像支持渐进传输,这使用户不必接收整个图像的压缩码流。由于JPEG2000采用小波技术,可随机获取某些感兴趣的图像区域(ROI)的压缩码流,对压缩的图像数据进行传输、滤波等操作。2.JPEG2000压缩的前景 JPEG2000标准适用于各种图像的压缩编码。其应用领域将包括Internet、传真、打印、遥感、移动通信、医疗、数字图书馆和电子商务等。JPEG2000图像压缩标准将成为21世纪的主流静态图像压缩标准。四 小波变换图像压缩1.小波变换图像压缩原理小波变换用于图像编码的基本思想就是把图像根据Mallat塔式快速小波变换算法进行多分辨率分解。其具体过程为:首先对图像进行多级小波分解,然后对每层的小波系数进行量化,再对量化后的系数进行编码。小波图像压缩是当前图像压缩的热点之一,已经形成了基于小波变换的国际压缩标准,如MPEG-4标准,及如上所述的JPEG2000标准 。2.小波变换图像压缩的发展现状及前景 目前3个最高等级的小波图像编码分别是嵌入式小波零树图像编码(EZW),分层树中分配样本图像编码(SPIHT)和可扩展图像压缩编码(EBCOT)。(1)EZW编码器 1993年,Shapiro引入了小波“零树”的概念,通过定义POS、NEG、IZ和ZTR四种符号进行空间小波树递归编码,有效地剔除了对高频系数的编码,极大地提高了小波系数的编码效率。此算法采用渐进式量化和嵌入式编码模式,算法复杂度低。EZW算法打破了信息处理领域长期笃信的准则:高效的压缩编码器必须通过高复杂度的算法才能获得,因此EZW编码器在数据压缩史上具有里程碑意义。(2)SPIHT编码器 由Said和Pearlman提出的分层小波树集合分割算法(SPIHT)则利用空间树分层分割方法,有效地减小了比特面上编码符号集的规模。同EZW相比,SPIHT算法构造了两种不同类型的空间零树,更好地利用了小波系数的幅值衰减规律。同EZW编码器一样,SPIHT编码器的算法复杂度低,产生的也是嵌入式比特流,但编码器的性能较EZW有很大的提高。(3)EBCOT编码器优化截断点的嵌入块编码方法(EBCOT)首先将小波分解的每个子带分成一个个相对独立的码块,然后使用优化的分层截断算法对这些码块进行编码,产生压缩码流,结果图像的压缩码流不仅具有SNR可扩展而且具有分辨率可扩展,还可以支持图像的随机存储。比较而言,EBCOT算法的复杂度较EZW和SPIHT有所提高,其压缩性能比SPIHT略有提高。
小波图像压缩被认为是当前最有发展前途的图像压缩算法之一。小波图像压缩的研究集中在对小波系数的编码问题上。在以后的工作中,应充分考虑人眼视觉特性,进一步提高压缩比,改善图像质量。并且考虑将小波变换与其他压缩方法相结合。例如与分形图像压缩相结合是当前的一个研究热点。
五 分形图像压缩 1988年,Barnsley通过实验证明分形图像压缩可以得到比经典图像编码技术高几个数量级的压缩比。1990年,Barnsley的学生A.E.Jacquin提出局部迭代函数系统理论后,使分形用于图像压缩在计算机上自动实现成为可能。1. 分形图像压缩的原理 分形压缩主要利用自相似的特点,通过迭代函数系统(Iterated Function System, IFS)实现。其理论基础是迭代函数系统定理和拼贴定理。 分形图像压缩把原始图像分割成若干个子图像,然后每一个子图像对应一个迭代函数,子图像以迭代函数存储,迭代函数越简单,压缩比也就越大。同样解码时只要调出每一个子图像对应的迭代函数反复迭代,就可以恢复出原来的子图像,从而得到原始图像。2.几种主要分形图像编码技术 随着分形图像压缩技术的发展,越来越多的算法被提出,基于分形的不同特征,可以分成以下几种主要的分形图像编码方法。(1)尺码编码方法 尺码编码方法是基于分形几何中利用小尺度度量不规则曲线长度的方法,类似于传统的亚取样和内插方法,其主要不同之处在于尺度编码方法中引入了分形的思想,尺度 随着图像各个组成部分复杂性的不同而改变。(2)迭代函数系统方法 迭代函数系统方法是目前研究最多、应用最广泛的一种分形压缩技术,它是一种人机交互的拼贴技术,它基于自然界图像中普遍存在的整体和局部自相关的特点,寻找这种自相关映射关系的表达式,即仿射变换,并通过存储比原图像数据量小的仿射系数,来达到压缩的目的。如果寻得的仿射变换简单而有效,那么迭代函数系统就可以达到极高的压缩比。(3)A-E-Jacquin的分形方案 A-E-Jacquin的分形方案是一种全自动的基于块的分形图像压缩方案,它也是一个寻找映射关系的过程,但寻找的对象域是将图像分割成块之后的局部与局部的关系。在此方案中还有一部分冗余度可以去除,而且其解码图像中存在着明显的方块效应。3.分形图像压缩的前景 虽然分形图像压缩在图像压缩领域还不占主导地位,但是分形图像压缩既考虑局部与局部,又考虑局部与整体的相关性,适合于自相似或自仿射的图像压缩,而自然界中存在大量的自相似或自仿射的几何形状,因此它的适用范围很广。六 其它压缩算法 除了以上几种常用的图像压缩方法以外,还有:NNT(数论变换)压缩、基于神经网络的压缩方法、Hibert扫描图像压缩方法、自适应多相子带压缩方法等,在此不作赘述。下面简单介绍近年来任意形状纹理编码的几种算法[10]~ [13]。(1)形状自适应DCT(SA-DCT)算法 SA-DCT把一个任意形状可视对象分成 的图像块,对每块进行DCT变换,它实现了一个类似于形状自适应Gilge DCT[10][11]变换的有效变换,但它比Gilge DCT变换的复杂度要低。可是,SA-DCT也有缺点,它把像素推到与矩形边框的一个侧边相平齐,因此一些空域相关性可能丢失,这样再进行列DCT变换,就有较大的失真了[11][14][15]。(2)Egger方法 Egger等人[16][17]提出了一个应用于任意形状对象的小波变换方案。在此方案中,首先将可视对象的行像素推到与边界框的右边界相平齐的位置,然后对每行的有用像素进行小波变换,接下来再进行另一方向的小波变换。此方案,充分利用了小波变换的局域特性。然而这一方案也有它的问题,例如可能引起重要的高频部分同边界部分合并,不能保证分布系数彼此之间有正确的相同相位,以及可能引起第二个方向小波分解的不连续等。(3)形状自适应离散小波变换(SA-DWT) Li等人提出了一种新颖的任意形状对象编码,SA-DWT编码[18]~[22]。这项技术包括SA-DWT和零树熵编码的扩展(ZTE),以及嵌入式小波编码(EZW)。SA-DWT的特点是:经过SA-DWT之后的系数个数,同原任意形状可视对象的像素个数相同;小波变换的空域相关性、区域属性以及子带之间的自相似性,在SA-DWT中都能很好表现出来;对于矩形区域,SA-DWT与传统的小波变换一样。SA-DWT编码技术的实现已经被新的多媒体编码标准MPEG-4的对于任意形状静态纹理的编码所采用。 在今后的工作中,可以充分地利用人类视觉系统对图像边缘部分较敏感的特性,尝试将图像中感兴趣的对象分割出来,对其边缘部分、内部纹理部分和对象之外的背景部分按不同的压缩比进行压缩,这样可以使压缩图像达到更大的压缩比,更加便于传输。七 总结 图像压缩技术研究了几十年,取得了很大的成绩,但还有许多不足,值得我们进一步研究。小波图像压缩和分形图像压缩是当前研究的热点,但二者也有各自的缺点,在今后工作中,应与人眼视觉特性相结合。总之,图像压缩是一个非常有发展前途的研究领域,这一领域的突破对于我们的信息生活和通信事业的发展具有深远的影响。
参考文献:[1] 田青. 图像压缩技术[J]. 警察技术, 2002, (1):30-31.[2] 张海燕, 王东木等. 图像压缩技术[J]. 系统仿真学报, 2002, 14(7):831-835.[3] 张宗平, 刘贵忠. 基于小波的视频图像压缩研究进展[J]. 电子学报, 2002, 30(6):883-889.
[4] 周宁, 汤晓军, 徐维朴. JPEG2000图像压缩标准及其关键算法[J]. 现代电子技术, 2002, (12):1-5.[5] 吴永辉, 俞建新. JPEG2000图像压缩算法概述及网络应用前景[J]. 计算机工程, 2003, 29(3):7-10.[6] J M Shaprio. Embedded image coding using zerotree of wavelet coefficients[J]. IEEE Trans. on Signal Processing, 1993, 41(12): 3445-3462.[7] A Said, W A Pearlman. A new fast and efficient image codec based on set partitioning in hierarchical trees[J]. IEEE Trans. on Circuits and Systems for Video Tech. 1996, 6(3): 243-250.[8] D Taubman. High performance scalable image compression with EBCOT[J]. IEEE Transactions on Image Processing, 2000, 9(7): 1158–1170.[9] 徐林静, 孟利民, 朱建军. 小波与分行在图像压缩中的比较及应用. 中国有线电视, 2003, 03/04:26-29.[10] M Gilge, T Engelhardt, R Mehlan. Coding of arbitrarily shaped image segments based on a generalized orthogonal transform[J]. Signal Processing: Image Commun., 1989, 1(10): 153–180.[11] T Sikora, B Makai. Shape-adaptive DCT for generic coding of video[J]. IEEE Trans. Circuits Syst. Video Technol., 1995, 5(1): 59–62.[12] T Sikora, S Bauer, B Makai. Efficiency of shape-adaptive 2-D transforms for coding of arbitrarily shaped image segments[J]. IEEE Trans. Circuits Syst. Video Technol., 1995, 5(3): 254–258.[13]邓家先 康耀红 编着 《信息论与编码》
② 图像融合的matlab源代码
一、小波入门简介
(1)小波分析的起源、发展与应用
http://blog.csdn.net/chenyusiyuan/archive/2007/11/09/1876282.aspx
(2)感受小波
http://blog.csdn.net/chenyusiyuan/archive/2007/11/02/1864195.aspx
二、小波变换与信号分解重构专题
(1)小波变换与信号分解重构
http://blog.csdn.net/chenyusiyuan/archive/2007/11/09/1876329.aspx
(2)自己动手编写小波信号分解与重构的Matlab程序
http://blog.csdn.net/chenyusiyuan/archive/2007/11/13/1881781.aspx
(3)用自编的程序实现小波图像分解与重构
http://blog.csdn.net/chenyusiyuan/archive/2007/11/13/1881940.aspx
三、小波图像融合专题
(1)小波图像融合综述
http://blog.csdn.net/chenyusiyuan/archive/2007/11/14/1883889.aspx
(2)小波图像融合的Matlab实现示例
http://blog.csdn.net/chenyusiyuan/archive/2007/11/16/1888808.aspx
四、小波图像压缩专题
(1)基于小波变换的图像压缩技术初探
http://blog.csdn.net/chenyusiyuan/archive/2007/11/12/1881231.aspx
(2)零树小波图像压缩专题
http://blog.csdn.net/chenyusiyuan/archive/2007/11/15/1886395.aspx
(3)嵌入式小波零树(EZW)算法的过程详解和Matlab代码
http://blog.csdn.net/chenyusiyuan/archive/2007/11/29/1907584.aspx
(4)多级树集合分裂(SPIHT)算法的过程详解与Matlab实现
http://blog.csdn.net/chenyusiyuan/archive/2007/12/07/1923334.aspx
(5)讨论:一种基于状态位图的SPIHT改进算法
http://blog.csdn.net/chenyusiyuan/archive/2007/12/11/1930419.aspx
另外,附件 Wavelet.rar 给出了几个Matlab程序,分别是:
1、基于低频融合策略的小波图像融合程序(Imfus.rar);
2、嵌入式零树小波(EZW)算法的图像压缩编解码程序(EZW.rar);
3、多级树集合分裂(SPIHT)算法的图像压缩编解码程序(SPIHT.rar);
4、一种SPIHT改进算法(Mod-SPIHT.rar)。
其中都包含了基本的小波图像分解与重构程序,使用的是基本的Haar小波,根据Mallat算法编写。
matlab的小波变换源代码可以用来做图像分析:
http://x.soso.com/cgi-bin/show_detail?Hash=
http://www.pudn.com/downloads76/sourcecode/windows/csharp/detail282742.html
③ matlab小波融合程序
1、基于低频融合策略的小波图像融合程序(Imfus.rar);
2、嵌入式零树小波(EZW)算法的图像压缩编解码程序(EZW.rar);
3、多级树集合分裂(SPIHT)算法的图像压缩编解码程序(SPIHT.rar);
4、一种SPIHT改进算法(Mod-SPIHT.rar)。
其中都包含了基本的小波图像分解与重构程序,使用的是基本的Haar小波,根据Mallat算法编写。
④ 求EZW编码算法实现图像压缩的matlab实现源代码,急急急!!!!谢谢各位高人
邮箱在哪里嵌入式零数小波
⑤ 小波算法
Function wavelet(s,wname,n,options);
Begin
{
功能:
一维序列小波消噪。
参数:
s:一维序列
wname:小波函数名
现有小波函数名(小波函数的选取依靠经验)
Daubechies:
'db1' , 'db2', ... ,'db45' 'db1' 就是haar 小波函数
Coiflets :
'coif1', ... , 'coif5'
Symlets :
'sym2' , ... , 'sym8'
Biorthogonal:
'bior1.1', 'bior1.3' , 'bior1.5'
'bior2.2', 'bior2.4' , 'bior2.6', 'bior2.8'
'bior3.1', 'bior3.3' , 'bior3.5', 'bior3.7'
'bior3.9', 'bior4.4' , 'bior5.5', 'bior6.8'.
Reverse Biorthogonal:
'rbio1.1', 'rbio1.3' , 'rbio1.5'
'rbio2.2', 'rbio2.4' , 'rbio2.6', 'rbio2.8'
'rbio3.1', 'rbio3.3' , 'rbio3.5', 'rbio3.7'
'rbio3.9', 'rbio4.4' , 'rbio5.5', 'rbio6.8'.
n :分解层数
options : 选项
选择字段说明
array('brief':1, // 默认为1 采用简单剔除高频谐波 达到消噪的目的
// 如果为 0 采用估计序列噪音标准差剔除噪音,
'sigma':0, // 为0 默认采用 序列的高阶谐波估计标准差;也可自己输入值
'which':1, // 以 某一层谐波作为噪音估计的数据,默认第一层
'alpha':2, // 阈值惩罚系数,默认为2
"thr":0, // 阈值大小,默认0 采用谐波估计,也可以直接给出
'sorh':'s', // 阈值方式设置,'s' 软阈值,'h'硬阈值 默认为's'
);
返回结果:
一维数字数组,消噪后的序列。
范例:
s := array(2484.82690429688,2479.05493164063,2482.34301757813,2437.794921875,
2447.7548828125,2512.962890625,2443.05688476563,2433.15893554688,
2393.18310546875,2415.05395507813,2392.06201171875,2365.34301757813,
2359.21997070313,2344.787109375,2348.51611328125,2420.00,2438.7900390625,
2431.375,2440.40209960938,2383.48510742188,2377.51196289063,2331.36596679688,
2317.27490234375,2370.3330078125,2409.67211914063,2427.47998046875,
2435.61401367188,2473.40991210938,2468.25,2470.01904296875,2504.10791015625,
2508.09008789063,2528.2939453125,2509.79907226563,2503.8359375,2524.9189453125,
2479.53588867188,2481.083984375,2528.71411132813,2529.76098632813,2466.958984375,
2463.0458984375,2416.56201171875,2415.1298828125,2412.625,2395.06494140625,
2397.55395507813,2380.22412109375,2383.03393554688,2412.39306640625,
2333.4140625,2386.86010742188,2360.6640625,2333.22900390625,2325.90502929688,
2332.72998046875,2329.82006835938,2315.27001953125,2291.544921875,2248.59008789063,
2228.52490234375,2180.89501953125,2224.84008789063,2218.23510742188,2215.92993164063,
2191.14794921875,2186.29711914063,2204.78393554688,2190.11010742188,2166.205078125,
2170.01293945313,2173.56103515625,2199.4169921875,2169.38989257813,2148.45190429688,
2163.39501953125,2225.88989257813,2285.74389648438,2276.0458984375,2275.01000976563,
2244.580078125,2206.19311523438,2298.3759765625,2266.38403320313,2296.07495117188,
2319.11791992188,2285.0380859375,2292.61010742188,2268.080078125,2312.55590820313,
2330.40502929688,2331.13598632813,2291.90209960938,2347.53002929688,2349.58911132813,
2351.98095703125,2351.85498046875,2344.77099609375,2366.70190429688,2356.86010742188,
2357.18090820313,2363.59692382813,2381.42993164063,2403.5869140625,2409.55395507813,
2439.6279296875,2447.05688476563,2451.85693359375,2428.48706054688,2426.11499023438,
2460.69311523438);
n := 2;
options := array('brief':1,'sigma':0,'which':1,'alpha':2,"thr":0,'sorh':'s');
return wavelet(s,wname,n,options) ;
天软数学组
20120627
}
if not ifarray(options) then options := array();
defaut := wavedefaut() union options;
cout := 4;
cl:=wavedec(s,n,wname); //小波分解
if defaut['brief']=1 then
ret :=wrcoef('a',cl[0],cl[1],wname,n);
else
begin
//***************小波消噪*************************************************
k := defaut['which']; //标准差估计选项 ,k 为 1 到 n的整数 默认为1;
if defaut['sigma']=0 then sigma := wnoisest(cl[0],cl[1],k);
else //通过小波第k层细节系数(谐波)估计 ,噪音标准差
sigma := defaut['segma'];
if defaut['alpha']=0 then alpha :=2; // alpha 惩罚因子 大于1 的数 一般为默认2;
else alpha := defaut['alpha'];
if defaut['thr']=0 then
thr := wbmpen(cl[0],cl[1],sigma,alpha); //噪音信号全局阈值
else thr := defaut['thr'];
sorh := defaut['sorh'];
ret:=wdencmp('gbl',cl[0],cl[1],wname,n,thr,sorh)[0]; //采用软阈值和近似信号进行消噪;
end //第一个参数为'gbl'为扩展接口备用,可以随意输入
return ret;
end;
function wavedefaut();
begin
return array('brief':1,'sigma':0,'which':1,'alpha':2,
"thr":0,'sorh':'s'
);
end
⑥ matlab 图像压缩问题
通常进行小波压缩重构后的图像是与原图像相同尺寸的,除非你将其它高频系数都删去不用。压缩后的图像如果是xcomp的话,直接用size就行了吧。
据我所知xcomp应该不是重构后的图像,只是去噪后的图像,还得进行重构才能得到真正重构的图像。
那可能是我孤陋寡闻了,不过要评价是否被压缩了不是看图像的大小变了没有,而是看压缩后的图像占多少空间,即所占字节数,与原图所占空间相比,这样可以算出被压缩了多少了
那这样的话我看你要修改一下你的参数了,比如thr等应该是阈值吧。如果他里边的数据都成片的相同,应该说已经阈值分割了呀。那我就不太了解了。
⑦ 指纹识别是怎么进行的
导语:指纹识别技术通常使用指纹的总体特征如纹形、三角点等来进行分类,再用局部特征如位置和方向等来进行用户身份识别。尽管指纹只是人体皮肤的小部分,但是,它蕴涵着大量的信息。那么,接下来就让我们一起来具体的了解以下关于指纹识别是怎么进行的内容吧。文章仅供大家的参考!
指纹识别是怎么进行的
1.指纹图像的获取
指纹图像的采集是自动指纹识别系统的重要组成部分。早期的指纹采集都是通过油墨按压在纸张上产生的。20世纪80年代,随着光学技术和计算机技术的发展,现代化的采集设备开始出现。
传感器是一种能把物理量或化学量变成便于利用的电信号的器件。在测量系统中它是一种前置部件,它是被测量信号输入后的第一道关口,是生物认证系统中的采集设备。
这些传感器根据探测对象的不同,可分为光学传感器、热敏传感器和超声传感器;根据器件的不同,可分为CMOS器件传感器和CCD器件传感器。它们的工作原理都是:将生物特征经过检测后转化为系统可以识别的图像信息。在生物认证系统中,可靠和廉价的'图像采集设备是系统运行正常、可靠的关键。
2.指纹图像的增强
常见的预处理方法如下:
(1)采用灰度的均衡化,可以消除不同图像之间对比度的差异。
(2)使用简单的低通滤波消除斑点噪声、高斯噪声。
(3)计算出图像的边界,进行图像的裁剪,这样可以减少多余的计算量,提高系统的速度。
常用图像增强算法具体包括以下几种:
(1)基于傅里叶滤波的低质量指纹增强算法;
(2)基于Gabor滤波的增强方法;
(3)多尺度滤波方法;
(4)改进的方向图增强算法;
(5)基于知识的指纹图像增强算法;
(6)非线性扩散模型及其滤波方法;
(7)改进的非线性扩散滤波方法。
目前最新的分割算法有以下几种:
(1)基于正态模型进行的指纹图像分割算法;
(2)基于马尔科夫随机场的指纹图像分割算法;
(3)基于数学形态学闭运算的灰度方差法;
(4)基于方向场的指纹图像分割算法。
3.指纹特征的提取
近年来,新的指纹特征提取算法主要包括以下几种:
(1)基于Gabor滤波方法对指纹局部特征的提取算法。
(2)基于CNN通用编程方法对指纹特征的提取算法。
(3)基于IFS编码的图像数字化技术,即建立IFS模型,计算源图像与再生图像之间的相似性,快速提取指纹图像的特征。
(4)基于脊线跟踪的指纹图像特征点提取算法。该算法可以直接从灰度指纹图像中有效提取细节点和脊线骨架信息。
(5)基于小波变换和ART(自适应共振理论)神经网络的指纹特征提取算法。
4.指纹图像的分类与压缩
常用的指纹分类技术有以下几种:
(1)基于规则的方法,即根据指纹奇异点的数目和位置分类。
(2)基于句法的方法。这种方法的语法复杂,推导语法的方法复杂、不固定。这种方法已经逐渐被淘汰了。
(3)结构化的方法,即寻找低层次的特征到高层次的结构之间相关联的组织。
(4)统计的方法。
(5)结合遗传算法和BP神经元网络的方法。
(6)多分类器方法。
常用的压缩算法有以下两种:
(1)图像压缩编码方法:包括无损压缩(熵编码)和有损压缩(量化)。
(2)基于小波变换的指纹压缩算法:包括WSQ算法、DjVu算法、改进的EZW算法等。
5.指纹图像的匹配
传统的指纹匹配算法有很多种:
(1)基于点模式的匹配方法:如基于Hough变换的匹配算法、基于串距离的匹配算法、基于N邻近的匹配算法等。
(2)图匹配及其他方法:如基于遗传算法的匹配、基于关键点的初匹配等。
(3)基于纹理模式的匹配:如PPM匹配算法等。
(4)混合匹配方法等。
近几年,又出现了如下新的匹配算法:
(1)基于指纹分类的矢量匹配。该法首先利用指纹分类的信息进行粗匹配,然后利用中心点和三角点的信息进一步匹配,最后以待识别图像和模板指纹图像的中心点为基准点,将中心点与邻近的36个细节点形成矢量,于是指纹的匹配就转变为矢量组数的匹配。
(2)基于PKI(Public Key Infrastructure,公钥基础设施)的开放网络环境下的指纹认证系统。
(3)实时指纹特征点匹配算法。该算法的原理是:通过由指纹分割算法得到圆形匹配限制框和简化计算步骤来达到快速匹配的目的。
(4)一种基于FBI(Federal Bureauof Investigation)细节点的二次指纹匹配算法。
(5)基于中心点的指纹匹配算法。该算法利用奇异点或指纹有效区域的中心点寻找匹配的基准特征点对和相应的变换参数,并将待识别指纹相对于模板指纹作姿势纠正,最后采用坐标匹配的方式实现两个指纹的比对。
⑧ 小波算法是什么
王卫国 郭宝龙
(西安电子科技大学机电工程学院,西安 710071)
摘 要 随着互联网的普及和图象应用范围的不断扩大,对图象的编码提出了新的要求,即不仅要求具有高的压缩比,还要求有许多新的功能,如渐进编解码、从有损压缩到无损压缩等。嵌入式零树小波编码较好地实现了这一思想,因此奠定了它在图象编码中的地位。近年来,在嵌入式零树小波编码(EZW)算法的基础上出现了许多新的改进算法,如多级树集合分裂算法(SPIHT),集合分裂嵌入块编码(SPECK),可逆的嵌入小波压缩法(CREW)等.本文对这些算法从原理到性能进行了比较和讨论,说明了嵌入式图象编码的研究方向。
关 键 词 图象编码 嵌入式 零树 小波变换
On Embedded Zerotree Wavelets Coding and other Improved Algorithms
WANG Wei-guo, GUO Bao-long
(School of Mechano-Electronic Engineering,Xidian Univ.,Xi’an 710071)
Abstract With the extensive application of internet and image,some new requirements on image coding,such as high compression rate ,pregressive codec,and compression from lossy to lossless ,are to be satisfied.These functions can be performed well by EZW(Embedded Zerotree Wavelets) coding.On the bases of EZW,many newly improved algorithms have been developed in recent years.They can illustrated by algorithms like SPIHT(Set Partitioning in Hierarchical Trees),SPECK(Set Partitioned Embedded block coder),In this paper,the writer discusses the principles and performances of these algorithms,thus explains the research tendency in the area of embedded image coding.
Keywords Image coding,Embedded,Zerotree,Wavelet transform
0. 引言
在基于小波变换的图象压缩方案中,嵌入式零树小波 EZW(Embedded Zerotree Wavelets)[1]编码很好地利用小波系数的特性使得输出的码流具有嵌入特性。它的重要性排序和分级量化的思想被许多编码算法所采用。近年来,在对EZW改进的基础上,提出了许多新的性能更好的算法,如多级树集合分裂算法(SPIHT :Set Partitioning In Hierarchical Trees)[2],集合分裂嵌入块编码(SPECK:Set Partitioned Embedded bloCK coder),可逆嵌入小波压缩算法(CREW:Compression with Reversible Embedded Wavelets)[3] 。本文对这些算法进行了原理分析、性能比较,说明了嵌入式小波图象编码的研究方向。
⑨ 从数字图像处理技术角度谈谈对指纹识别的认识
这是我自己以前收集的资料 但愿能有帮助哈
理论分析与设计
4.1 指纹图像表示
从指纹传感器输出的是指纹原始图像,其数据量比较大。这对整个指纹识别系统的处理和存储都是个不小的负担。在远程采集系统中,对通信带宽会造成较大负荷。因此需要对指纹图像进行压缩存储。指纹图像压缩一般经过图像变换、量化和编码等过程。解压需经过解码、量化解码和反变换等过程。
压缩后的指纹图像需确保指纹特征信息的不丢失不损坏。理论上来讲采用无损压缩算法是最理想的。但经过实践证明,对于分辨率不是很高的指纹图像来说,采用无损压缩的压缩比很低。通常情况下采用JEPG、WSQ和EZW三种压缩算法。
4.2 指纹图像处理
4.2.1 指纹图像增强
刚获得的图象有很多噪音。这主要由于平时的工作和环境引起的。指纹还有一些其他的细微的有用信息,我们要尽可能的使用。指纹图像增强的目的主要是为了减少噪音,增强嵴峪对比度,使得图像更加清晰真实,便于后续指纹特征值提取的准确性.
指纹图像增强常用的是平滑和锐化处理。
(1)平滑处理
平滑处理是为了让整个图像取得均匀一致的明暗效果。平滑处理的过程是选取整个图像的象素与其周围灰阶差的均方值作为阈值来处理的。这种做法实现的是一种简单的低通滤波器。
实验表明:一般的自然图像相邻像素的灰度相关性约为0.9。因此在图像受到白噪声干扰时,以像素的邻域平均值代替中心像素,是一个去除噪声的好办法。算法是: 。其中f(x,y)表示被噪声污染的原始图像,大小为N*N,g(n,m)是平滑后的图像,S是处理点(x,y)邻域中点的坐标(不包括(x,y)点)的集合,而M是集合S内坐标点的总数。例如,以(x,y)点为中心,取单位距离构成的邻域,其中点的坐标集合为:s={(x,y+1),(x,y-1),(x+1,y),(x-1,y)}。
经验表明,邻域越大,去噪声的能力就越强,不过,从中也可以看出,邻域越大,图像就越模糊。因此,需要寻找既可以去噪声,又可以保持图像清晰度的办法,这就是阀值方法,算法是: ,其中T值是一个规定的非负阀值。只有当变化较大时(大于T),图像才进行邻域滤波;而当变化不明显时,仍然保留原先的值,这样可以减少图像的模糊。
当被处理点为边界点时,邻域平均后该点的灰度迅速下降,这样就导致边界模糊。修改方案是根据参与平均的像素的特点赋予不同的权值,即采用加权平均法: ,其中w(n,m)是加权系数。
可以根据图像的相关性,按照以下的方法确定权值:
a:给当前处理的中心像素较大的权值,其他像素的权值较小。
b:按两像素间的距离确定权值,距离处理像素近的权值较大,距离处理像素较远的权值小。
c:按和被处理像素的灰度接近程度确定权值,约接近的权值越大。
下面是几个按照以上思路设计的典型的加权平均算子。为了不使整个图像的亮度变亮,设计此类算子的时候需要将权值归一化。
A:中心加权算子。
B:中心和四邻点加权算子。
C:按灰度近似程度加权算子。
其中:
综合以上讨论可以看出:
A:平滑滤波器就是一种低通滤波器,模板的所有系数都是正数。
B:在设计滤波器时通常还要求行列数为奇数,保障中心定位性能。
C:空域低通滤波的去噪能力与它的模板大小有关,模板越大,去噪能力越强。
D:空域低通滤波具有平滑的效果,在去除噪声的同时模糊了图像边缘和细节。
(2)锐化处理
锐化和平滑恰恰相反,它是通过增强高频分量来减少图象中的模糊,因此又称为高通滤波。锐化处理在增强图象边缘的同时增加了图象的噪声。锐化技术可分为空域和时域两种手段,空域的基本方法是微分处理,频域技术是运用高通滤波。
图像处理中最常用的微分方法是计算梯度。给定义一个函数f(x,y),在坐标f(x,y)在f的梯度定义为一个矢量G[f(x,y)]:
梯度G[f(x,y)]是函数f(x,y)最大增加率的方向,梯度矢量的幅度(梯度的模)为: ,其中 表示在矢量方向上每单位距离f(x,y)的最大值,通常用来表示f的梯度。
最常用的是Laplacian算子,即对图象进行二阶微分的计算:
。可以看出,它是个标量,具有各向同性的性质。
典型的Laplacian模板及其变形模板如下图所示。这三个模板在形式上有些区别,增强能力也不同,但都体现了二阶微分的特征。
4.2.2指纹图像二值化
在原始灰阶图像中,各象素的灰度是不同的,并按一定的梯度分布。在实际处理中只需要知道象素是不是嵴线上的点,而无需知道它的灰度。所以每一个象素对判定嵴线来讲,只是一个“是与不是”的二问题。所以,指纹图像二值化是对每一个象素点按事先定义的阈值进行比较,大于阈值的,使其值等于1(假定),小于阈值的,使其值等于0。图像二值化后,不仅可以大大减少数据量,而且使后面的处理过程少受干扰,大大简化其后的处理。
4.2.3指纹图像细化
图像细化就是将嵴的宽度降为单个像素的宽度,得到嵴线的骨架图像的过程。这个过程进一步减少了图像数据量,清晰化了嵴线形态,为之后的特征值提取作好准备。由于我们所关心的不是嵴线的粗细,而是嵴线的有无。因此,在不破坏图像连通性的情况下必须去掉多余的信息。因而应先将指纹嵴线的宽度采用逐渐剥离的方法,使得嵴线成为只有一个象素宽的细线,这将非常有利于下一步分析。
4.3 指纹特征值提取
A:指纹特征值
指纹特征值是指纹算法的基础数据,是指纹算法最重要的数据结构。不论是特征点匹配算法,还是线对或点集匹配算法,都是指纹算法程序中最核心的数据结构。指纹特征值模板一定程度影响着指纹算法的效率和精度,体现了算法的优劣。一个好的特征值模板能用最小的数据量表示最多的指纹特征信息,能用最少的特征点信息,区分出两个指纹的不同。
B:提取
指纹特征值提取是对指纹的特征信息(总体和局部的)进行选择、编码,形成二进制数据的过程。指纹特征点的提取方法是指纹算法的核心。一般采用8邻域法对二值化、细化后的指纹图像抽取特征点,这种方法将嵴上的点用"1"表示,峪(背景)用"0"表示,将待测点(i,j)的八邻域点进行循环比较,若"0","1"变化有六次,则此待测点为分叉点,若变化两次,则为端点。通过这个过程可以记录下来指纹的所有特征点。
通常一个指纹的特征点在100~150之间,在形成指纹特征值模板(也就是特征值的有序集合)时,尽量多的提取特征点对于提高准确性是有很大帮助的。
⑩ 图表注解翻译。谢谢,不过我没积分了。
Figure 2.1 Image Coding Classification Figure 2.2 DPCM encoding schematic Fig.2.3 typical transform coding system framework chart 2.1 subjective score table Figure 2.4 encoder DCT-based processing steps Figure 2.5 decoder DCT-based processing steps Figure 3.1 Mallat decomposition algorithm schematic diagram 3.2 wavelet coding / decoder framework Figure 3.3 Schematic diagram of two-dimensional image wavelet decomposition Fig.3.4 Schematic diagram of two-dimensional image wavelet reconstruction Fig.3.5 1-3 wavelet decomposition Figure 3.6 bitplane divided matrix diagram Fig.4.1 3 wavelet zerotree structure Figure 4.2 c level wavelet coefficients scans 4.3 EZW coding flow chart 4.1 coefficient coding table a) original image b) wavelet decomposition image energy distribution chart 4.4 wbarb decomposition 4.2 EZW algorithm uses two types of wavelet basis, respectively, when the results of comparative chart of the peak 4.5 letter noise ratio (PSNR) and pixel bit rate (bpp) to improve the relationship between the Figure 4.6 coding algorithm flowchart Figure 4.7 Distribution of wavelet coefficients 3 d) to improve the algorithm, the first scan Figure 4.8 EZW algorithm and improved algorithm Table 4.1 Comparison of different algorithms A comparative chart of the experimental results of 4.7 EZW algorithm reconstructed image Figure 4.9-noise ratio and compression ratio curve (dotted line for the EZW algorithm curve, solid line for the improved algorithm curve) themselves with the last black and white artwork to you.