图像压缩算法性能的测试与分析工具

合集下载

图像处理算法的性能评估与优化方法

图像处理算法的性能评估与优化方法

图像处理算法的性能评估与优化方法图像处理算法在计算机视觉、计算机图形学以及其他相关领域中扮演着重要的角色。

在实际应用中,人们既关注算法的准确性,也关注算法的运行效率。

因此,评估和优化图像处理算法的性能就显得尤为重要。

本文将介绍图像处理算法的性能评估方法,并提出一些优化方法,以便提高算法的运行效率。

首先,我们来介绍图像处理算法性能评估的常用方法。

在评估图像处理算法的性能时,可根据以下几个方面进行评价:1. 准确性评估:图像处理算法的准确性是衡量其性能的关键指标之一。

准确性评估可以通过与已标记好的参考图像进行比较来完成。

常用的评估指标包括平均绝对误差(MAE)、均方误差(MSE)和结构相似性指标(SSIM)等。

这些指标可以帮助我们判断算法在复杂图像处理任务中的准确性。

2. 运行时间评估:图像处理算法的运行时间是另一个重要的性能指标。

运行时间的评估可以通过记录算法在不同输入图像上的运行时间来实现。

常用的方法是使用计时工具来测量算法的运行时间。

此外,还可以通过分析算法的时间复杂度来预估其运行时间。

3. 内存占用评估:图像处理算法的内存占用也是一个需要考虑的问题。

内存占用评估可以通过记录算法在不同输入图像上的内存占用情况来实现。

可以使用内存监测工具来监测算法的内存使用情况。

针对图像处理算法的性能评估结果,我们可以采取一些优化方法来提高算法的运行效率。

以下是一些常用的优化方法:1. 并行计算:通过利用多核处理器和并行计算技术,可以大大加速图像处理算法的运行速度。

并行计算可以将计算任务分解为多个子任务,并同时执行这些子任务,从而提高算法的并行性。

2. 算法优化:通过对算法的细节进行优化,可以降低其运行时间和内存占用。

例如,可以使用更高效的排序算法、使用空间换时间的数据结构,或者通过优化矩阵运算等方式来提高算法的效率。

3. 数据预处理:在图像处理算法之前,可以对输入图像进行预处理,以减少算法的计算量。

预处理可以包括图像降噪、图像压缩等操作,以便减少算法需要处理的数据量。

图像压缩算法性能的测试与分析工具

图像压缩算法性能的测试与分析工具

图像压缩算法性能的测试与分析工具1蔡正兴,张虹中国矿业大学计算机科学与技术学院,江苏徐州 (221008)摘要:本文研究了图像压缩算法性能的评价方法,提出了图像压缩算法性能的测试算法,包括横向比较测试和纵向分解测试,并在此基础上设计并实现了压缩算法性能的测试与分析工具。

该工具能够测试和分析压缩算法的性能,并自动生成各种分析图表,为用户提供了方便,具有较大的实用价值。

为了提高评价的效率、准确性和全面性,文中提出了测试图像的选择方法和测试结果的分析方法,具有一定的理论意义。

关键词:压缩性能,测试方法,分析方法,图像选择方法1. 引言近年来,图像压缩得到快速发展[1],各种算法层出不穷,比如有损的压缩算法可以在低失真的条件下达到高压缩比[2,3],而无损的压缩算法则可以保证重建图像的无失真[4]。

因此在实际应用中得知各种压缩算法的性能及特点是必要的。

在评价图像压缩算法性能时主要考虑压缩比、重建质量、时间复杂度、空间复杂度和实现代价这几个方面[5],其中较为重要的是压缩比、重建质量和时间复杂度。

为了计算这些压缩性能指标,常常使用一些工具软件,比如在图像处理领域广泛使用的MATLAB系列软件,它提供了大量的内置函数[6],操作方便,功能强大,但它不是评价图像压缩算法性能的专业工具,需要进行二次开发,不能有效的分析和评价压缩性能。

其次,利用性能指标来评价压缩方法,尽管方便快捷,但还不能反映图像压缩算法的全部特点。

例如,在考虑变换编码系统的失真性质时,一般采用MSE(均方误差),有时利用MSE计算得到的重建质量很好,但视觉效果却不好,这是因为MSE对图像中的失真显著性不敏感[7],可见,性能指标仅仅是对压缩算法进行宏观上的评价,无法评价每个过程对压缩性能的影响。

再次,在评价压缩性能时,不可避免地要使用测试图像,用户在选择测试图像时带有随机性,不利于全面地评价压缩方法。

针对这些不足,本文设计了图像压缩算法性能的测试与分析工具——AutoTA。

数据压缩实验报告(3篇)

数据压缩实验报告(3篇)

第1篇一、实验目的1. 了解数据压缩的基本原理和方法。

2. 掌握常用数据压缩算法的应用。

3. 分析不同数据压缩算法的性能和适用场景。

二、实验环境1. 操作系统:Windows 102. 编程语言:Python3. 数据压缩工具:Huffman编码、LZ77、LZ78、RLE、JPEG、PNG三、实验内容1. Huffman编码2. LZ77编码3. LZ78编码4. RLE编码5. 图像压缩:JPEG、PNG四、实验步骤1. Huffman编码(1)设计Huffman编码树,计算每个字符的频率。

(2)根据频率构建Huffman编码树,为每个字符分配编码。

(3)将原始数据按照Huffman编码进行编码,得到压缩数据。

(4)解压缩:根据编码表还原原始数据。

2. LZ77编码(1)设计LZ77编码算法,查找匹配的字符串。

(2)将原始数据按照LZ77编码进行编码,得到压缩数据。

(3)解压缩:根据编码表还原原始数据。

3. LZ78编码(1)设计LZ78编码算法,查找匹配的字符串。

(2)将原始数据按照LZ78编码进行编码,得到压缩数据。

(3)解压缩:根据编码表还原原始数据。

4. RLE编码(1)设计RLE编码算法,统计连续字符的个数。

(2)将原始数据按照RLE编码进行编码,得到压缩数据。

(3)解压缩:根据编码表还原原始数据。

5. 图像压缩:JPEG、PNG(1)使用JPEG和PNG工具对图像进行压缩。

(2)比较压缩前后图像的质量和大小。

五、实验结果与分析1. Huffman编码(1)压缩前后数据大小:原始数据大小为100KB,压缩后大小为25KB。

(2)压缩效率:压缩比约为4:1。

2. LZ77编码(1)压缩前后数据大小:原始数据大小为100KB,压缩后大小为35KB。

(2)压缩效率:压缩比约为3:1。

3. LZ78编码(1)压缩前后数据大小:原始数据大小为100KB,压缩后大小为30KB。

(2)压缩效率:压缩比约为3.3:1。

压缩算法在图像处理中的应用与优化研究

压缩算法在图像处理中的应用与优化研究

压缩算法在图像处理中的应用与优化研究随着科技的不断发展,图像处理已经成为现代生活中不可或缺的一部分。

因为相机、摄像机、智能手机等成为人们生活中的重要设备,大量图像数据的处理也成为一项必要的技术。

但是,处理和存储大量的图像数据需要大量的计算资源和存储空间。

为了解决这一问题,压缩算法成为图像处理中不可或缺的一部分。

本文将重点讨论压缩算法在图像处理中的应用和优化研究。

一、压缩算法的基本概念压缩算法是一种将数据尽可能地缩小的算法。

通过压缩算法处理后,数据占用的存储空间减小,传输速度变快,并且资源的利用效率也会提高。

在图像数据处理中,分为两种压缩方式:无损压缩和有损压缩。

无损压缩是指没有损失原始信息的压缩方式。

这种压缩方式不会影响图像质量,图像恢复能力很强。

无损压缩算法主要有:LZW、Huffman、RLE、等。

有损压缩是指压缩过程中会舍弃一些数据,以使压缩后的图像既小巧又美观。

这种压缩方式会影响图像质量。

有损压缩算法主要有:JPEG、MPEG、AVI、GIF等。

二、压缩算法在图像处理中的应用在图像处理中,大量的图像数据需要处理和存储。

通过压缩算法,图像数据量减小,存储和传输的速度将得到提升。

压缩算法在图像处理中的应用可以概括为以下几点:1、图像编辑在图像编辑中,如果不经过压缩处理,很难将数据传输到另一个设备或者存储到传统的储存设备上。

因此,图像处理者需要对数据进行压缩,以便于传输和存储图像数据。

无损压缩通常用于图像编辑,如Logos、报告、版面布局等使用非常广泛。

2、图像传输在图像传输中,压缩的算法可以大大提高传输速度,减小数据容量。

这种方式被广泛运用于图像通信和图像存储,可以在不损害图像质量的情况下大幅度地缩短传输时间。

3、图像存储在图像存储中,压缩算法可以将图像数据尽可能地压缩,减少计算机系统的存储空间。

在存储图像更大数据时,有损压缩技术通常被使用。

4、互联网应用在互联网应用中,图像压缩非常普遍。

通过压缩文件大小,互联网传输更方便和快速。

图像压缩算法的性能比较与分析

图像压缩算法的性能比较与分析

图像压缩算法的性能比较与分析一、引言图像是数字媒体中的重要形式之一。

图像文件通常非常大,当它们用于互联网、移动设备和存储时,大尺寸的图像会带来许多问题,例如占用太多的存储空间、传输速度缓慢、带宽限制等。

为了解决这些问题,图像压缩技术被广泛应用。

目前,常用的图像压缩算法有无损压缩和有损压缩两种类型。

它们在不同情况下有着相应的应用。

本文将介绍图像压缩的基本概念和不同算法的性能比较与分析。

二、基本概念2.1 无损压缩无损压缩是指对图像进行压缩,在压缩后的文件进行解压缩还原的图像与原始图像之间没有任何差异的压缩方法。

这种压缩方法是分析原始图像的重复模式,并学会使用更简单的指令表示这些模式。

无损压缩通常不会去掉图像本身中的任何信息,只是减小了文件的大小。

2.2 有损压缩有损压缩是指对图像进行压缩,在压缩后的文件进行解压缩还原的图像与原始图像之间有些许差异的压缩方法,这种差异可以通过人的肉眼来识别。

有损压缩方法通常通过去掉不重要的图像信息来减小文件大小。

2.3 像素在数字图像中,图像被分成很多缩小的单元格,这些单元格被称为像素。

每个像素包含有颜色和亮度信息。

2.4 分辨率在数字图像中,分辨率是指图像所包含的像素数量。

通常来说,分辨率越高,图像就越清晰。

三、图像压缩算法3.1 LZW算法LZW算法是最常用的无损压缩算法之一。

它基于一种字典,包含了所有可用的数据。

在使用LZW算法压缩图像时,其将存储在图像中的像素数据序列替换为相应的压缩代码。

如果LZW算法的压缩率足够高,则它可以有效地减少图像的大小。

3.2 JPEG算法JPEG是一种有损压缩算法。

它是基于离散余弦变换的,也被称为DCT算法。

JPEG算法通过分离图像中不同区域的颜色和亮度信息来减少文件大小。

在JPEG算法中,亮度信息被整合为一种通道(Y通道),而颜色信息被分离成另外两种通道(U和V通道)。

JPEG算法可以根据压缩比例的要求进行优化。

3.3 PNG算法PNG是Portable Network Graphics的缩写,是一种无损压缩算法。

分形几何在图像压缩中的评估指标

分形几何在图像压缩中的评估指标

分形几何在图像压缩中的评估指标图像压缩是数字图像处理领域中的重要研究内容之一。

传统的图像压缩方法,如JPEG和JPEG2000,主要基于变换编码技术,通过对图像进行变换和量化,去除冗余信息以实现压缩效果。

然而,这些方法在高压缩比下容易产生失真,特别是对于细节信息的保存。

为了解决传统压缩方法存在的问题,分形几何被引入到图像压缩中。

分形几何是研究复杂自相似结构的数学理论,可以用来描述和分析图像中的局部纹理特征。

在图像压缩中,分形几何通过寻找并复制图像的自相似区域来完成压缩过程,从而实现较高的压缩比同时保持图像质量。

为了评估分形压缩算法在图像压缩中的性能,需要一些合适的评估指标。

以下是常用的几个评估指标:1. 峰值信噪比(Peak Signal-to-Noise Ratio,PSNR)峰值信噪比是衡量原始图像和压缩图像之间差异性的常用指标。

它通过计算两幅图像的均方误差来表示压缩引起的失真程度,数值越大表示图像质量越好。

2. 均方根误差(Root Mean Square Error,RMSE)均方根误差也是衡量图像失真程度的指标,它是原始图像和压缩图像像素之间差异的均方根值。

与PSNR类似,值越小表示图像质量越好。

3. 结构相似性指数(Structural Similarity Index,SSIM)结构相似性指数是一种衡量图像相似性的指标,包括亮度、对比度和结构信息。

与PSNR和RMSE不同,SSIM考虑了感知因素,在一定程度上能够更好地评估压缩图像的质量。

4. 信息熵(Entropy)信息熵是用来衡量图像信息量的指标,即图像中的平均信息密度。

在图像压缩中,压缩比与信息熵成反比,因此信息熵可以用来评估分形压缩算法的效果。

除了这几个评估指标外,还有一些其他的指标也可用于评估分形压缩算法的性能,如结构相似性比(Structural Similarity Ratio,SSR)、压缩比、重构误差等。

总结起来,分形几何在图像压缩中的评估指标主要包括峰值信噪比、均方根误差、结构相似性指数和信息熵。

图像无损压缩算法研究

图像无损压缩算法研究

图像无损压缩算法研究第一章:引言图像压缩技术的发展使得图像在存储和传输方面更加高效。

无损压缩算法通过减少图像文件的大小,同时保持图像质量不受影响,从而实现对图像的高效压缩。

无损压缩算法广泛应用于数字图像处理、电视广播、远程监控、医学图像存储和互联网传输等领域。

本文旨在探讨图像无损压缩算法的研究现状和发展趋势。

第二章:图像无损压缩算法综述本章首先介绍图像压缩的基本原理和目标,然后综述了当前常用的图像无损压缩算法。

其中包括哈夫曼编码、算术编码、预测编码、差分编码和自适应编码等。

对每种算法的原理、优点和缺点进行了详细的分析和比较。

第三章:小波变换与图像无损压缩算法小波变换是一种重要的数学工具,在图像无损压缩算法中得到了广泛的应用。

本章介绍了小波变换的基本概念和原理,并详细介绍了小波变换在图像压缩中的应用。

重点讨论了小波系数的编码方法和解码方法,以及小波变换在图像无损压缩中的优化算法。

第四章:自适应编码在图像无损压缩中的应用自适应编码是一种基于概率统计的编码方法,具有较好的压缩效果和灵活性。

本章介绍了自适应编码的基本原理和常见的算法,如算术编码、自适应霍夫曼编码和自适应等长编码等。

特别说明了自适应编码在图像无损压缩中的应用,包括颜色映射编码、熵编码和像素值编码等。

第五章:基于预测的图像无损压缩算法预测编码是一种基于差值的编码方法,通过对图像中的像素进行预测,将预测误差进行编码,从而实现图像的高效压缩。

本章介绍了常见的预测编码算法,如差分编码和预测误差编码等。

详细讨论了这些算法的原理、优点和局限性,并提出了一些改进方法和思路。

第六章:图像无损压缩算法的性能评估和比较本章分析了图像无损压缩算法的性能评估指标和方法,并对常见的图像无损压缩算法进行了性能比较。

主要包括压缩比、失真度和计算复杂度等方面的评估标准。

通过对比实验和分析,得出了各种算法在不同场景下的适用性和优劣势。

第七章:图像无损压缩算法的发展趋势本章展望了图像无损压缩算法的发展趋势,并提出了一些可能的研究方向。

图像压缩算法性能优化研究

图像压缩算法性能优化研究

图像压缩算法性能优化研究随着数字图像的普及和应用的广泛,图像压缩算法在各个领域中得到了广泛的应用。

压缩是指通过减少图像数据的存储量或传输带宽,以确保信息的高效存储和传输。

图像压缩算法的性能优化是一个重要的研究课题,对于提高图像传输速度和提升图像质量都具有重要意义。

一、图像压缩算法的基本原理图像压缩算法的基本原理主要包括两个方面:无损压缩和有损压缩。

无损压缩是指在压缩过程中不丢失原始图像的任何信息,数据在解压缩后可以完全恢复。

常见的无损压缩算法有Huffman编码、LZW编码等。

有损压缩则是指在压缩过程中会出现信息丢失,但是在可接受范围内。

有损压缩算法的目标是在保持图像质量的同时,尽量减少数据量。

常见的有损压缩算法有JPEG、JPEG2000等。

二、图像压缩算法的性能评价指标图像压缩算法的性能评价主要包括压缩比、失真度和计算复杂度等指标。

压缩比是指原始图像与压缩后图像的大小比例,压缩比越大,表示算法的压缩效果越好。

失真度是指原始图像与压缩后图像之间的差异,可以通过均方根误差、峰值信噪比等指标进行评价。

计算复杂度则是指算法在压缩和解压缩过程中所需要的计算资源,包括时间和空间复杂度。

三、图像压缩算法性能优化方法为了提高图像压缩算法的性能,研究者们提出了许多优化方法。

其中,一种常见的方法是通过数学变换来提高压缩效果。

例如,JPEG算法中使用了离散余弦变换(DCT)将图像从时域转换到频域,减少了图像的冗余度。

另外,为了提高压缩比,可以通过增加量化的精度来减少数据量。

当然,这也会导致较大的失真。

因此,在优化图像压缩算法时,需要在压缩比和失真度之间进行权衡。

此外,基于深度学习的图像压缩算法近年来也得到了广泛的研究。

深度学习算法可以学习到图像的潜在特征,从而提取出更具有表示能力的特征来进行压缩。

此类算法虽然在压缩比和失真度上取得了很好的效果,但是其计算复杂度较高。

四、图像压缩算法性能优化的挑战和展望虽然图像压缩算法已经取得了不错的成果,但是仍然面临着一些挑战。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

图像压缩算法性能的测试与分析工具1蔡正兴,张虹中国矿业大学计算机科学与技术学院,江苏徐州 (221008)摘要:本文研究了图像压缩算法性能的评价方法,提出了图像压缩算法性能的测试算法,包括横向比较测试和纵向分解测试,并在此基础上设计并实现了压缩算法性能的测试与分析工具。

该工具能够测试和分析压缩算法的性能,并自动生成各种分析图表,为用户提供了方便,具有较大的实用价值。

为了提高评价的效率、准确性和全面性,文中提出了测试图像的选择方法和测试结果的分析方法,具有一定的理论意义。

关键词:压缩性能,测试方法,分析方法,图像选择方法1. 引言近年来,图像压缩得到快速发展[1],各种算法层出不穷,比如有损的压缩算法可以在低失真的条件下达到高压缩比[2,3],而无损的压缩算法则可以保证重建图像的无失真[4]。

因此在实际应用中得知各种压缩算法的性能及特点是必要的。

在评价图像压缩算法性能时主要考虑压缩比、重建质量、时间复杂度、空间复杂度和实现代价这几个方面[5],其中较为重要的是压缩比、重建质量和时间复杂度。

为了计算这些压缩性能指标,常常使用一些工具软件,比如在图像处理领域广泛使用的MATLAB系列软件,它提供了大量的内置函数[6],操作方便,功能强大,但它不是评价图像压缩算法性能的专业工具,需要进行二次开发,不能有效的分析和评价压缩性能。

其次,利用性能指标来评价压缩方法,尽管方便快捷,但还不能反映图像压缩算法的全部特点。

例如,在考虑变换编码系统的失真性质时,一般采用MSE(均方误差),有时利用MSE计算得到的重建质量很好,但视觉效果却不好,这是因为MSE对图像中的失真显著性不敏感[7],可见,性能指标仅仅是对压缩算法进行宏观上的评价,无法评价每个过程对压缩性能的影响。

再次,在评价压缩性能时,不可避免地要使用测试图像,用户在选择测试图像时带有随机性,不利于全面地评价压缩方法。

针对这些不足,本文设计了图像压缩算法性能的测试与分析工具——AutoTA。

AutoTA的目标是自动地对图像压缩算法进行测试与分析,并生成各种分析图表,全面的评价图像压缩算法的性能。

AutoTA具有广泛的应用前景,科研人员利用AutoTA可横向比较各种压缩算法的性能,也可纵向分析压缩算法的特点;工程技术人员也可以根据AutoTA的测试结果,在实际应用中选择合适的图像压缩算法。

2. 压缩算法性能指标压缩性能指标是评价压缩算法的重要方面,也是AutoTA分析图像压缩算法性能的重要依据,下面将描述相关的性能指标。

2.1压缩比压缩比是指压缩过程中输入数据量和输出数据量之比,反映了图像压缩算法的压缩性能,当压缩比小于1时为正压缩,当压缩比大于1时为负压缩。

压缩比的计算公式为:1本课题得到国家自然科学基金项目(编号:60372102)、教育部博士点基金项目(编号:20030290011)、软件新技术国家重点实验室课题(编号:A200309)资助。

=输入文件大小压缩比输出文件大小…………………..…………….1 这里输入文件指的是原始文件,输出文件指的是压缩后的文件。

值得注意的是,这种度量方法必须指明输入输出的显示形式,否则将是不可靠的[8]。

2.2峰值信噪比在有损图像压缩中,峰值信噪比用来衡量与原始图像相比较的重建图像的质量,与人类视觉系统所察觉到的误差有有限的近似关系[7],易于计算,定义为:2(21)PSNR=10lg B MSE− …………………………………2 其中B 表示该图像的色深,MSE 为原图像和恢复图像的失真均方差,定义为:1212112121200121([,][,]) N N n n MSE n n n n N N χχ−−∧===−∑∑ (3)其中12[,]n n χ表示原图像在处数值, []表示重建图像在处数值。

12[,]n n ∧χ21,n n 12[,]n n 2.3时间复杂度时间复杂度是指图像压缩算法编解码的速度,希望编解码的速度很快。

在许多应用中,编解码将在不同的时间,不同的地点和不同的系统中运行[8],因此编解码速度对评价压缩算法的效率和通用性具有重要的意义。

AutoTA 中采用读取CPU 中的存储器值的方法来计算编解码时间,描述如下:在压缩或解压缩算法运行前,先读取CPU 内部64位计数器的值并存储;在压缩或解压缩算法运行结束后,再次读取CPU 内部64位计数器的值并存储;将两次的存储值相减,得到运行的时钟周期数,用该值除CPU 的频率就得到算法运行的时间。

计算公式为:2T T T H−=1 ………………………………………………....4 其中表示算法运行结束时CPU 计数器的值,表示算法运行前CPU 计算器的值,H 代表CPU 的频率。

2T 1T 还有一些压缩性能指标如空间复杂度,实现代价等无法精确衡量,本文暂不讨论。

3. AutoTA 系统设计3.1系统结构AutoTA 以目前常见的几种压缩算法为测试和分析对象,主要包括离散余弦变换(DCT)算法、离散小波变换(DWT)算法、哈夫曼编码算法、算法编码算法、JPEG 压缩算法和JPEG2000压缩算法。

在实现这些压缩算法的同时,重点在于实现对图像压缩算法的测试和分析,测试的目的在于获得性能指标等数据,而分析则是利用这些数据对压缩性能进行评价,因此AutoTA 应该具备[9][7]图像压缩算法的测试功能、分析功能、测试图像选择功能、图像压缩质量控制功能、性能指标的计算功能、压缩算法的分解功能等。

由此,图像压缩算法的性能测试与分析工具可划分为五个部分:初始化设定、测试图像选择、压缩算法实现、参数计算和性能分析。

初始化部分选择待测试的压缩算法和测试策略,进行压缩图像的质量控制和性能指标的选择;测试图像选择主要是系统根据设定的测试算法自动的选择测试图像;压缩算法实现部分根据要求实现相应的压缩算法;参数计算部分进行性能指标的计算或者跟踪压缩算法每一步的数据变化;性能分析部分根据测试策略和计算得到的各种数据,自动生成各种性能分析图表。

系统结构如图1所示。

图1 AutoTA 系统框架3.2工作原理由AutoTA的框架图可知,用户需要选择测试策略,并指定待测试的压缩算法,可以是一种或多种,由测试策略确定;确定压缩算法后,用户需要进行系统参数的设置,这和具体的测试策略有关,比如恢复图象质量,跟踪数据块大小等;然后,AutoTA将自动地选择测试图像,并调用指定的图像压缩算法,计算需要的参数,如性能指标等,并存储于数据库中;最后系统将分析这些数据,并绘制图表。

3.3 AutoTA的实现技术AutoTA的关键在于压缩算法的测试方法,测试图像的选择方法和测试结果的分析方法。

以下将详细介绍它们的实现算法。

3.3.1 AutoTA测试方法为了全面的评价图像压缩算法,避免利用性能指标评价压缩算法的误差,本文提出了两种测试方法: 横向比较测试和纵向分解测试。

横向比较测试是将待评价的图像压缩算法与其他压缩算法进行比较,比较的内容是压缩性能指标;纵向分解测试是将待评价图像压缩算法分步骤实现,并记录每一步的数据,纵向观察数据的变化。

测试方法是AutoTA的基础,它决定整个系统的流程。

下面给出测试策略的实现算法:1)系统初始化。

令n=0,testmethod=0,imagemethod=3,imagecount=1,imagequality=100,blocksize=4,x=0,y=0。

其中n表示测试次数,为正整数;testmethod表示测试策略,0代表横向比较测试,1代表分解测试,为布尔型数;imagemethod表示测试图像的选择方法,1代表同类图像,2代表不同类图像,3代表随机选取,为正整数;imagecount表示测试图像的数目,为正整数;imagequality表示压缩图像质量,其值在0到100之间变化,值越大表示图像质量越好;blocksize表示跟踪的块大小,为正整数且是2的方幂;x,y表示跟踪块的起始位置,为整数且大于等于0。

2)选择测试策略,即设定testmethod。

3)设定测试图像选择方法,即设定imagemethod。

4)对测试策略进行判断。

if testmethod=0,则设定测试次数n;设定imagecount为n;设定imagequality;选择需要计算的性能指标,包括PSNR、压缩比、压缩时间等。

调用测试图像选择算法;循环调用相应的图像压缩方法,循环次数为n;计算选择的性能指标,并存入数据库;调用压缩结果分析算法。

else设定n=1;设定imagecount为n;设定blocksize和x,y;设定imagequality;调用测试图像选择算法;调用相应的图像压缩方法;记录每一步变换后,跟踪块的数据,并存入数据库中;调用压缩结果分析算法。

end5)算法结束。

3.3.2测试图像选择方法测试图像对全面而准确地评价压缩算法具有重要意义,因为任何一种压缩算法都不可能对所有的图像都适用,因此在测试压缩算法时,需要有针对性地选择测试图像,本文认为测试图像的选择应遵循以下几个原则:1) 测试图像要包括多种类型;2) 每幅测试图像需要有多种特性,比如说在一幅以连续色调为主的图像中有一些离散色调,或者在大多数图像像素相似的情况下,有一些跳跃的像素等等;3) 测试图像应有不同的大小。

这里的大小是指图像的高度与宽度的乘积。

为了符合这些原则,本文提出了基于图像特征的测试图像选择方法。

该方法首先对图像进行颜色空间的转换,由RGB空间转换为HSV空间,然后对HSV空间进行区域分类,并使用区域生长算法对图像进行分割和合并,将得到一系列的块,计算各个块的尺寸,色度平均值和均方差,并作为该图像的特征,最后利用特征值选择符合要求的图像。

下面先给出颜色空间转换方法和区域生长方法的描述。

3.3.2.1颜色空间转换及色度空间划分规则一般认为R,G,B颜色空间与人眼的感知差异很大,这里采用较好符合人眼感知特性的HSV颜色模型。

首先将图像中每一像素的r,g,b值转换为h,s,v值(h∈[0,2π],s∈[0,1],v∈[0,1]),然后将转换后将色彩空间划分为三部分[10]:黑色区域:所有v<20%的颜色均归入黑色,令h=0,s=0,v=0;白色区域:所有s<20%且v>70%的颜色归入白色,令h=0,s=0,v=1;彩色区域:位于黑色区域和白色区域以外的颜色,其h, s, v值保持不变。

3.3.2.2 区域生长算法区域生长算法[11]主要用于图像分割与合并,描述如下:①将图像分成等面积的单元.②从左上角的第1个单元开始与其相邻的单元进行颜色比较,若两者相似且符合归并准则,那么就将两者归并形成一个小片,并且计算该小片的平均颜色.若相邻的某单元与其颜色不相似,则将该单元标以“未完成”.③继续将小片与其相邻单元逐个进行颜色比较,凡是与小片相似者并入小片使小片逐渐生长扩大,直到没有再可归并的单元为止.然后将此生长完毕的小片标以“已完成”.④对于下一个“未完成”的单元重复上面生长小片的步骤,直到所有的单元都已被标记为“已完成”.区域生长方法的关键是要使用合适的相邻单元合并的门限,本文设定颜色(c1,c2,c3)的距离门限为0.5[12],进一步提高区域生长方法的精度需要利用区域间的特征进行单元合并等后处理工作[13],这里不作讨论。

相关文档
最新文档