具有接近最佳质量的低复杂度图像译码方法和系统的制作方法

文档序号:6480027阅读:376来源:国知局
专利名称:具有接近最佳质量的低复杂度图像译码方法和系统的制作方法
技术领域
本发明涉及图像译码领域,特别涉及具有接近最佳质量的低复杂度图像译码方法和系统。
背景技术
包含包括文本、音频、视频的多种内容类型的多媒体为网络运营者提供了突出的商业和收益机会。较高带宽的可用性和分组交换互联网协议(IP)技术的使用使得可以传送更为丰富的内容,其包括文本、语音、静止以及活动图形、照片、视频剪贴、音乐的多种组合。为了利用这种市场潜能,网络运营者必须满足客户的关于质量和可靠性的预期。服务器级别的媒体译码对于在如今的异构网络一其由移动终端、蜂窝电话、计算机和其它电子装置组成——中呈现多媒体应用是关键的。媒体的改写(adaptation)和译码必须在服务提供者级别进行,这是因为个体装置常常是资源受限的,并且很少能够由自身对媒体进行改写。这对服务提供者来说是重要问题,因为他们将在未来的几年中不得不面对非常急剧的通信量增长,该增长远远超过单从新硬件能够获得的加速。例如,多媒体消息传送服务提供了服务器侧的改写,以便确保终端之间的互操作性。S. Coulombe 禾口 G. Grassel 在 2004 年 7 月 IEEE Communications Magazine (IEEE 通信杂志),42 卷,7 期,120-1 页发表的 “Multimedia adaptation for the multimedia messaging service”(用于多媒体消息传送服务的多媒体改写)中讨论了多媒体消息传送所需要的改写。由于大多数通信量涉及JPEG和GIF图像,所以最频繁的与图像有关的互操作性问题不涉及图像格式,而是涉及超出接收终端性能的分辨率或文件大小。例如, 某些移动电话的有限的存储器要求图像低于特定大小或分辨率,以便得到接收和显示。另外,图像的高度和宽度应当使得其能被具有给定的一组特性的终端适应。改变图像的分辨率或进行缩放以满足终端性能是具有公知解决方案的问题。然而,相对于终端约束的最佳图像质量仍是一项挑战,因为JPEG中使用的质量因子(QF)(或GIF中使用的颜色数)、感知的质量和压缩后的文件大小之间不存在良好建立的关系。将缩放而不是单纯的分辨率改写作为实现文件大小缩减的附加手段使得该问题更加具有挑战性。几项研究已经调查了对于可视内容的文件大小(或比特率)缩减这一问题。例子包括Z. Lei和N. D. Georganas在 Proceedings of the IEEE CCECE 2002 (IEEE CCECE 会议文集 200 ,Canadian Conference on Electrical and Computer Engineering 2002 (电子和计算机工程加拿大会议 2002), 第 2 卷,968-973 页上的名为 “Accurate bit allocation and rate control for DCT domain video transcoding”(用于DCT域视频译码的精确比特分配和速率控制)的论文、 J. Ridge 在 2003 年 9 月的 Signal Processing Image communication(信号处理图像通信),第 18 卷,第 8 期,621-639 页上发表的名为 “Efficient transform-domain size and resolution reduction of images”(图像的有效变换域大小和分辨率降低)的论文以及 V. Ratnakar与V. Ivashin在2001 年5月的名为"File size bounded JPEG transcoder”(文件大小有限制的JPEG代码转换器)的美国专利US6,233,359。这些研究的结果显示,通过对量化参数进行改写而不是通过缩放,可实现缩小。对于大多数研究,这是有意义的,因为它们在低比特率视频的背景下进行,其中,分辨率常常被限制在几种预定格式。然而,即使在静止图片编码的背景下,缩放作为一种改写策略,也没有被考虑。例如,Ridge提供了用于缩放于是缩小JPEG图像的文件大小的优良方法,但没有组合考虑估计缩放和质量降低。这看起来是一个大的缺点,因为使用户体验最大化的最佳策略可能是缩小图片并将之以较高的QF压缩,而不是简单地用较低的QF对之进行再压缩。在女王大学,金斯敦,加拿大,2008 年,Proceedings of the 24th Queen' s Biennial Symposium on Communications (第 24 界女王二年一届的通信研讨会会刊)上发表的“Computationally efficient algorithms for predicting the file size of JPEG images subject to changes of quality factor and scaling"(用于预测受到质量因子和缩放改变的JPEG图像的文件大小的计算上有效的算法)中,申请人Meven Pigeon和M6phane Coulombe已经提出了估计受到缩放和QF 改变的JPEG图像的压缩文件大小的方法。需要注意的是,QF和缩放的几种组合导致同样的近似文件大小,带来了哪种组合将使用户体验或图像质量最大化的问题。在讨论本发明如何解决较早时讨论的问题之前,给出了对典型的现有技术译码环境的简短介绍。JPEG是用于对包含在MMS消息中的图像进行压缩的普遍技术。JPEG标准提供了通用图像压缩方法。如所公知的那样,JPEG压缩是“有损”的,也就是说,压缩后的图像不会包含100%的原始图像中所包含的数字信息。信息的损失可通过设置压缩过程中的质量因子受到控制。较低的质量因子等价于较高的压缩,通常带来较小的图像文件大小。 相反,较高的质量因子带来较大的图像文件大小,通常带来图像的较高的感知“质量”。举例而言,图1示出了多媒体消息传送(MMS)系统体系结构100,其包含起始节点 102、服务递送平台104、目的地节点106以及改写引擎108。起始节点102能够通过网络 “A”110与服务递送平台104通信。类似地,目的地节点106能够通过网络“B” 112与服务递送平台104通信。网络“A”与“B”仅为实例,示出它们以便说明可能的一组连接性,许多其它的配置也是可能的。例如,起始和目的地节点(102和106)可能够通过一个网络与服务递送平台104通信;起始节点102可直接连接到服务递送平台104,而没有中间网络等。改写引擎108可通过链路114直接与服务递送平台104相连,如图1所示,或者, 可通过网络与其连接,或者,可被嵌入在服务递送平台104中。在简化的情况下,起始节点102可发送目的地是目的地节点106的(多媒体)消息。该消息通过网络“A”110被转发到服务递送平台104,消息从服务递送平台104经由网络“B”112被发送到目的地节点106。起始与目的地节点(102与106)例如可以是无线装置,网络“A”与“B”(110与112)在这种情况下可以是无线网络,服务递送平台104可提供多媒体消息转发服务。在另一实例中,起始节点102可以是内容提供商的服务器,其通过数据网络连接到服务递送平台104。因此,网络“A”110可以是互联网,而网络“B”112可以是服务于目的地节点106——其可以是无线装置——的无线网络。在 Stephane Coulombe 禾口 Guido Grassel 的论文“Multimedia Adaptation for the Multimedia Messaging Service”(多媒体消息传送服务的多媒体改写),IEEE Communications Magazine (IEEE 通信杂志),第 42 卷,第 7 期,第 120-1 页,2004 年 7 月中,给出了多媒体消息传送服务(MMS)的服务器侧改写的概览。
特别在图像的情况下,起始节点102所发送的消息可包含图像,特别是JPEG编码图像。目的地节点106的性能可能不包括以其原始格式显示图像的能力,例如,由于像素数——即图像的分辨率——方面图像的高度或宽度超过目的地节点106中的显示装置或终端的大小或分辨率。为了使目的地节点106能够对其进行接收和显示,在图像被传递到目的地节点106之前,可在改写引擎108中的图像译码器116中对其进行修改。图像译码器 116对图像的修改典型地可包括缩放,即改变图像的分辨率,以及压缩。因此,工业中存在对这样的改进的用于图像译码的方法和系统的需求其解决了较早时讨论的现有技术的限制,并将图像质量和译码速度考虑在内。

发明内容
因此,本发明的目的在于提供一种用于具有接近最优质量的图像低复杂度译码 (例如包含在MMS消息中的图像的译码)的改进方法和系统。一种将输入图像译码为输出图像用于终端上的显示的方法,包含以下步骤(al) 在译码之前,产生数据组,数据组包含译码参数,译码参数通过对训练图像组T中的一组训练图像执行最优质量译码以便为每个训练图像产生最高质量已译码训练图像而生成,同时满足终端的特性;(bl)提取输入图像的特征,并获得终端的特性;(Cl)通过使用在步骤 (bl)中提取的输入图像的特征和终端特性,从在步骤(al)中生成的数据组中选择译码参数;以及(dl)通过使用在步骤(Cl)中选择的译码参数,将输入图像译码为输出图像。步骤(al)包含生成数据组,数据组包含译码参数,译码参数与终端特性和输入图像特征的组合对应。步骤(bl)包含提取输入图像的特征,输入图像特征包括质量因子QF(I),其表征输入图像的编码保真度;图像文件大小S(I);图像宽度W(I);以及图像高度H⑴。选择译码参数的步骤(cl)包含选择表征输出图像编码保真度的译码质量因子QFT,以及表征由于译码引起的图像分辨率变化的译码缩放因子zT。步骤(al)中生成的数据组包含N个多维矩阵,其包含以下中的一个或多个第一矩阵,存储对于来自训练图像组T的一个或多个训练图像子组的平均最优质量因子QFA,每个QFA都被确定为在对相应的训练图像子组中的训练图像进行最优质量译码期间使用的QFT的平均;第二矩阵,存储对于一个或多个训练图像子组的平均最优缩放因子zA,每个zA都被确定为在对相应的训练图像子组中的训练图像进行最优质量译码期间使用的zT的平均;以及第三矩阵,存储对于一个或多个训练图像子组的平均图像质量度量QA,对于相应的训练图像子组,每个QA都被确定为质量度量的平均,指示训练图像与在最优质量译码期间生成的相应的最高质量已译码训练图像之间的相似度。每个矩阵通过下列索引中的两个或多个来索引第一索引,指示输入图像的质量因子QF(I);第二索引,指示观看缩放因子zV,其表征由于输出图像的观看条件引起的图像分辨率变化;以及第三索引,指示最大相对图像大小“smax”,其表征输出图像关于输入图像的相对大小。步骤(al)还包含(a7)选择QF(I)、zV和"smax"的组合;(a7_i)对于所选择的zV与“smax”的组合,使用质量因子等于QF(I)的训练图像子组,生成平均最优质量因子QFA和平均最优缩放因子zk ; (a7-ii)在由所选的QF(I)、zV和“smax”的组合索引的位置上,在第一矩阵中存储QFA,在第二矩阵中存储zA ;以及(a7-iii)以预定的间隔改变 0卩(1)、"和“細狀”,重复(a7)与(a7-iii)之间的步骤,包括步骤(a7)在内,直到已经使用 T QF(I)、zV和“smax”的所有组合。该方法包含(a8-i)对于所选的zV和“smax”的组合,使用质量因子等于QF(I)的训练图像子组,生成平均图像质量度量QA,包括对于该训练图像子组中的每个训练图像,确定对于最高质量已译码训练图像的质量度量;以及(a8-ii) 在由所选的QF(I)、zV和“smax”的组合索引的位置上,在第三矩阵中存储QA ;在步骤(a7) 之后且在步骤(a7_iii)之前执行步骤(a8_i)和(a8_ii)。步骤(a7_i)还包含(a9)对于该训练图像子组中的每个训练图像,确定产生最高质量已译码训练图像的译码质量因子 QFT和译码缩放因子zT ;以及(b9)使用在步骤(a9)中确定的用于训练图像的译码质量因子QFT和译码缩放因子zT,确定平均最优质量因子QFA和平均最优缩放因子zA。步骤(a9) 还包含(alO)选择译码参数,译码参数包含译码质量因子QFT、译码缩放因子zT的组合; (alO-i)对于所选的QFT和zT的组合,对训练图像进行译码,以便产生经过译码的训练图像;(alO-ii)对于在步骤(alO-i)中生成的经过译码的训练图像,确定质量度量,质量度量指示训练图像和经过译码的训练图像之间的相似度;(alO-iii)以预定的间隔改变QFT和 zT,并重复(alO)到(alO-iii)之间包括步骤(alO)在内的步骤,直到已经使用了 QFT和zT 的所有组合;以及(alO-iv)选择步骤(alO-ii)中产生的最高质量度量的QFT和zT。步骤 a-10(i)还包含(all)通过应用所选择的缩放因子zT,对训练图像进行解压缩和缩放;以及(bll)通过应用所选择的质量因子QFT,对在步骤(all)中产生的被解压缩和缩放的训练图像进行压缩。步骤(a-lOii)还包含(12a)通过应用再度缩放因子zR,对已译码训练图像进行解压缩和缩放,以便产生图像J’ ; (12b)通过应用观看缩放因子zV,对已译码训练图像进行解压缩和缩放,以便产生图像L’;以及(12c)通过分别使用图像J'和L’,生成质量度量,其指示训练图像与已译码训练图像之间的相似度。zR等于zV/zT。步骤12(c)包含,通过使用图像J’和图像L’,确定结构相似性(SSIM,Mructural SIMilarity)索引。步骤(a8-i)还包含检索存储在第一矩阵中的平均最优质量因子QFA和存储在第二矩阵中的平均最优缩放因子zA;(al5-i)使用在步骤(al5)中检索的QFA和zA对训练图像进行译码,以便产生已译码训练图像;(al5-ii)判断已译码训练图像是否满足终端特性; (al5-iii)以第一与第二矩阵中可用的下一个较小的“smax”值,重复(al5)到(al5_iii)、 包括步骤(aK)在内的步骤,直到已译码训练图像满足终端特性;以及(bK)确定满足终端特性的在步骤(al5_i)中生成的已译码训练图像的质量度量。步骤(al5_ii)包含判断已译码训练图像的图像文件大小是否低于或等于由终端支持的最大图像文件大小S(D)。步骤 (dl)还包含(al7)使用终端特性以及在步骤(bl)中提取的输入图像的特征H(I)、W(I)、 S(I)、QF(I),确定zV和“SmaX”;(bl7)以在步骤(bl)中检索的QF(I)以及在步骤(al7) 中确定的zV和smax为索引,检索存储在第一矩阵中的平均最优质量因子QFA,以及存储在第二矩阵中的平均最优缩放因子ZA; (bl7-i)分别将在步骤(bl7)中检索的QFA和zA用作译码质量因子QFT和译码缩放因子zT,对输入图像进行译码,以产生输出图像;(bl7-ii) 检查输出图像是否满足终端的特性;以及(bl7-iii)以在第一与第二矩阵中可用的下一个较小的“smax”值,重复(bl7)到(bl7_iii)之间包括步骤(bl7)在内的步骤,直到输出图像满足终端特性;以及(cl7)在由与步骤(bl7-i)中生成的满足终端特性的输出图像对应的QF(I) ,smax和zV索引的位置上,检索存储在第三矩阵中的平均图像质量QA。终端特性包含最大图像文件大小S(D)、终端宽度W(D)以及终端高度H(D),步骤(al7)还包含选择表征输出图像的编码保真度的译码质量因子QFT以及表征图像中的变化的译码缩放因子zT, 其包含(al8)将zV设置为(W(D)/W(I)),(H(D)/H(I)))和1中的最小值;以及(bl8)将“smax”设置为(S(D)/S(I))与1中的最小值。步骤(al)还包含(al9)选择译码参数,包括译码质量因子QFT和译码缩放因子zT的组合;(al9-i)对于所选择的QFT和zT的组合,对训练图像进行译码,以产生经过译码的训练图像;(al9_ii)确定在步骤(al9_i)中生成的已译码训练图像的质量度量,其指示训练图像与已译码训练图像之间的相似度;(al9_iii) 以预定的间隔改变QFT和zT,并重复(al9)到(al9_ii)之间包括步骤(al9)在内的步骤, 直到已经使用了 QFT和ZT的所有组合;以及(al9-iv)选择在步骤(al9_ii)中产生最高质量度量的QFT和zT。步骤a_19(i)还包含(a20)通过应用所选择的缩放因子zT,对训练图像进行解压缩和缩放;以及0^20)通过应用所选择的质量因子QFT,对在步骤(a20)中产生的被解压缩和缩放的训练图像进行压缩。步骤(a_19ii)还包含(a21)通过应用再度缩放因子zR,对经过译码的训练图像进行解压缩和缩放,以便产生图像J’ ; (b21)通过应用观看缩放因子zV,对经过译码的训练图像进行解压缩和缩放,以便产生图像L’,其中,观看缩放因子zV表征由于输出图像的观看条件引起的图像分辨率变化;以及(c21)通过分别使用图像JlP L’,生成指示训练图像和已译码训练图像之间的相似度的质量度量。zR等于zV/ zT。步骤(c21)包含通过使用图像J’和图像L’,确定结构相似性(SSIM)索引。
一种系统,具有处理器和计算机可读存储介质,用于将输入图像译码为输出图像用于终端上的显示,该系统包含(a24)训练图像库,其被存储在计算机可读介质上,包含具有训练图像的训练图像组T ; (b24)离线数据组生成器,包含存储在计算机可读存储介质中的计算机可读指令,在输入图像的译码之前生成数据组,该数据组包含译码参数,译码参数由来自训练图像组T的一组训练图像的最优质量译码生成,对于每个训练图像产生最高质量已译码训练图像,同时满足终端的特性;(c24)数据组库,其被存储在计算机可读存储介质中,存储由离线数据组生成器(b24)产生的数据组;(d24)在线译码器,包含存储在计算机可读存储介质中的计算机可读指令,其通过使用终端特性和输入图像的特征,从存储在数据组库(cM)中的数据组选择译码参数,并通过使用所选择的译码参数,将输入图像译码为输出图像。数据组包含与终端特性和输入图像特征的组合对应的译码参数。译码参数包含译码质量因子QFT,其表征输出图像的编码保真度;以及译码缩放因子zT,其表征由于译码产生的图像分辨率的变化。数据组包含N个多维矩阵,其包含下列中的一个或多个第一矩阵,存储对于来自训练图像组T的一个或多个训练图像子组的平均最优质量因子QFA,每个QFA都被确定为在对相应的训练图像子组中的训练图像进行最优质量译码期间使用的QFT的平均;第二矩阵,存储对于一个或多个训练图像子组的平均最优缩放因子ζΑ,每个ζΑ都被确定为在对相应的训练图像子组中的训练图像进行最优质量译码期间使用的zT的平均;以及第三矩阵,存储对于一个或多个训练图像子组的平均图像质量度量 QA,对于相应的训练图像子组,每个QA都被确定为质量度量的平均,指示训练图像与在最优质量译码期间生成的对应的最高质量已译码训练图像之间的相似度。每个矩阵通过下列索引中的两个或多个来索引第一索引,指示质量因子QF(I),其表征输入图像的编码保真度;第二索引,指示观看缩放因子zV,其表征由于输出图像观看条件引起的图像比辨率变化;以及第三索引,指示最大相对图像大小“smax”,其表征输出图像关于输入图像的相对大小。离线数据组生成器0^24)包含(a29)图像特征提取单元,提取训练图像组T中的训练图像的特征;0^29)第一质量察觉参数选择单元,选择QFT和zT,并通过使用由图像特征提取单元04)提取的特征,确定平均最优质量因子QFA和平均最优缩放因子zA ;(c29)译码单元,通过使用由第一质量察觉参数选择单元0^29)选择的QFT和zT,将训练图像译码为已译码训练图像;以及(d29)质量评估单元,对由译码单元(c-29)生成的已译码训练图像确定质量度量,质量度量指示训练图像和已译码训练图像之间的相似度。第一质量察觉参数选择单元0^29)还包含计算装置,用于确定平均图像质量度量QA。译码单元(c29)包含(a31)解压缩与缩放单元,通过将缩放因子zT应用到训练图像,产生经过解压缩和缩放的训练图像;以及(b31)压缩单元,通过将译码质量因子QFT应用到经过解压缩和缩放的训练图像,产生经过译码的训练图像。质量评估单元(d29)包含(a3》第二解压缩与缩放单元,通过应用再度缩放因子zR,对已译码训练图像进行解压缩和缩放;(b32)第三解压缩与缩放单元,通过应用观看缩放因子zV,对训练图像进行解压缩和缩放;以及(c3》质量度量计算单元,计算已译码训练图像的质量度量。质量度量计算单元(c3》包含计算装置,用于确定指示训练图像与已译码训练图像之间的相似性的结构相似性(SSIM)索引。在线译码器(d24)包含(a34)图像特征提取单元,提取输入图像的特征;(b34)最优参数预测单元, 通过使用由图像特征提取单元(a34)提取的输入图像特征和终端特性,检索存储在第一矩阵中的平均最优质量因子QFA和存储在第二矩阵中的平均最优缩放因子zA ; (c34)第二质量察觉参数选择单元,通过使用由最优参数预测单元(b34)检索的zA和QFA,确定译码质量因子QFT和译码缩放因子zT,并检索存储在第三矩阵中的平均图像质量QA;以及(d34)译码单元,通过使用由第二质量察觉参数选择单元(c34)选择的QFT和zT,将输入图像译码为输出图像。计算机可读存储介质,具有在其上存储的计算机可读程序代码指令,当由计算机程序执行时,执行如上面所介绍的方法的步骤。一种系统,具有由通信网络连接的多个计算节点,每个节点都包含处理器和计算机可读存储介质,用于将输入图像译码为用于终端上的显示的输出图像,系统包含(a36) 训练图像库,其包含存储在第一节点的计算机可读存储介质上的具有训练图像的训练图像组T ; (b36)离线数据组生成器,其包含存储在第二节点的计算机可读介质上的计算机可读指令,用于在对输入图像进行译码之前产生数据组,数据组包含译码参数,译码参数通过来自训练图像组T的一组训练图像的最优质量译码生成,对于每个训练图像产生最高质量已译码训练图像,同时满足终端的特性;(c36)数据组库,在第三节点的计算机可读存储介质上存储由离线数据组生成器(b36)产生的数据组;以及(d36)在线译码器,包含存储在第四节点的计算机可读介质上的计算机可读指令,用于通过使用终端特性和输入图像特征,从存储在数据组库(c36)中的数据组选择译码参数,并使用所选择的译码参数将输入图像译码为输出图像。该方法中的步骤(bl)包含提取输入图像的特征,包括输入图像的若干颜色、图像文件大小s(l)、图像宽度W(I)以及图像高度H(I)。因此,提供了改进的具有接近最优质量的低复杂度图像译码系统和方法。


由下面对实施例的介绍,将会明了本发明的进一步的特征和优点,参照附图并仅仅以举例的方式介绍实施例,在附图中图1示出了现有技术的多媒体消息传送系统体系结构100的实例;
图2示出了根据本发明的实施例将输入图像译码为输出图像用于终端上的显示的系统200 ;图3显示出图2的离线数据组生成器204的功能部件;图4显示出图2的在线译码器208的功能部件;图5示出了一流程图,其用于说明根据本发明的实施例用于将输入图像译码为输出图像用于终端上的显示的方法的步骤;图6示出了一流程图,其用于说明图5的步骤“生成数据组”;图7示出了一流程图,其用于说明图6的步骤“计算平均值,QFA和zA” ;图8示出了一流程图,其用于说明图7的步骤“计算最佳QFT和最佳zT,,;图9示出了一流程图,其用于说明图6的步骤“计算平均值QA” ;图10示出了一流程图,其用于说明图9的步骤“计算与所选择的训练图像对应的质量度量”;图11示出了一流程图,其用于说明图5的步骤“由数据组选择译码参数并对输入图像进行译码”;图12示出了用于说明本发明的实施例的方法的与80的QF⑴对应的第一矩阵的 “片段”(slice);图13示出了用于说明本发明的实施例的方法的与80的QF⑴对应的第二矩阵的 “片段”;图14示出了用于说明本发明的实施例的方法的与80的QF⑴对应的第三矩阵的 “片段”。
具体实施例方式本发明的重点在于,在JPEG译码中将质量因子和缩放因子相结合,以满足终端的分辨率和图像文件大小约束,同时,使质量度量最大化。便利起见,下面提供本申请使用的术语表。术语表H⑶终端高度H⑴输入图像的图像高度QA:训练图像子组的平均图像质量度量,其被确定为质量度量的平均,指示训练图像子组中在训练图像和训练图像最优质量译码过程中生成的相应的最高质量已译码训练图像之间的相似度QFA:训练图像子组的平均最优质量因子,其被确定为训练图像子组中训练图像的最优质量译码过程中使用的译码质量因子(QFT)的平均QF(I)输入图像的质量因子,其表征输入图像的编码保真度(fidelity)QFT 译码质量因子,其表征输出图像的编码保真度S⑶终端支持的最大图像文件大小S(D)S⑴输入图像的图像文件大小smax 最大相对图像大小,其表征输出图像关于输入图像的相对大小SSIM 结构相似性索引功能,其用于比较两个图像的相似性
T 图像训练组WO))终端宽度W⑴输入图像的图像宽度zA 训练图像子组的平均最优缩放因子,其被确定为训练图像子组中训练图像的最优质量译码过程中使用的译码缩放因子(zT)的平均zT 译码缩放因子,其表征由于将输入图像译码为输出图像造成的图像分辨率变化zV 观看缩放因子,其表征由于输出图像的观看条件造成的图像分辨率变化zR 再度缩放因子,其被确定为zV与zT的比将介绍在JPEG图像译码问题的背景下本发明中使用的符号。I为JPEG压缩图像,QF(I), S(I)^ff(I)以及H(I)分别为其质量因子、图像文件大小(压缩后)、图像宽度、 图像高度。注意,将假设 QF 符合 T. Lane、P. Gladstone、L. Ortiz、J. Boucher、L. Crocker、 J.Minguillon、G. Phillips、D. Rossi 和 G. Weijers 于 1998 年在 “The independent JPEG group software release 6b”(独立JPEG组软件版本6b)中介绍的独立JPEG组的定义。 独立 JPEG 组(IJG)软件和文档可见于 http://w驟.iig. org/ 以及 http //www, i jg. org/ files。IJG JPEG代码为事实(defacto)标准实施方式,因为其被大多数浏览器和图像观看器使用,并且是可自由获取的。经过译码的图像被显示在具有一组特性的终端或装置上。术语终端和装置在本申请中可互换地使用。对于终端或装置D,特性包括终端支持的最大图像文件大小S(D)、终端宽度W(D)、终端高度H(D)。令0 < ζ彡1是外观保留(aspect-preserving)缩放(scaling) 因子,或缩放(zoom)因子。JPEG译码操作——表示为τ (I, QFT, zT)——是将由译码质量因子QFT和译码缩放因子zT的应用得到的被压缩图像返回为JPEG图像I的函数,其中,译码质量因子QFT表征已译码图像的编码保真度和压缩激进性,因此表征文件大小,译码缩放因子zT表征由于译码引起的图像分辨率变化。质量因子(在独立JPEG组的程序库中以 0——100的量级)控制JPEG编码器中使用的量化步骤,并影响每个频率分量的分辨率减小到什么程度。通过使用频率分量的好的分辨率(小量化步骤),高质量因子在编码形式上导致图像的高保真度再现。另一方面,通过使用频率分量的不佳分辨率(大量化步骤),低质量因子在编码形式上导致图像的低保真度再现。通常一概丢弃高频率分量(图像细节)。 较大的质量因子将导致较大的已压缩文件大小。因此,质量因子控制压缩的激进度,并最终表征重建的图像的期望保真度。JPEG译码操作τ (I, QFT, zT)被定义为在终端D上可行,如果对于图像I以及译码参数QFT和ζΤ,满足由终端特性施加的下列约束的话S( τ (I, QFT, zT)) ^ S(D)ff( τ (I, QFT, zT)) ^ W(D)H( τ (I, QFT,zT)) ( H(D)注意,S⑴、W⑴和H(X)分别指对于函数τ所产生的已译码图像,图像大小、图像高度和图像宽度。用于将输入图像译码为输出图像以便终端上的显示的系统200在图2中显示。系统200包含训练图像库202、离线数据组生成器204、数据组库206和在线译码器208。在执行多媒体图像的译码之前,离线数据组生成器204使用存储在训练图像库202中的训练图像组T,并产生存储在数据组库206中的数据组。T包含多个图像样本,其用于生成包含在数据组中的译码参数和预测的图像质量。离线数据组生成器204和训练图像库202仅仅用于确定数据组。一旦数据组被生成,仅仅在线译码器208用于对MMS消息进行处理。在线译码器208使用存储在数据组库206中的数据组、终端的特性以及输入图像的特征,以选择将在对MMS消息中的图像的译码中使用的译码参数。本发明的实施例的系统可包含通用或专用计算机,其具有CPU和计算机可读介质,例如存储器,或者,作为替代的是,系统可以以固件或固件与专用计算机的组合(例如用于专用计算机的固件)来实现。训练图像库202和数据组库206各自被存储在计算机可读存储介质中。离线数据组生成器204和在线译码器208包含存储在计算机可读存储介质中的计算机可读指令。图3示出了离线数据组生成器204的功能部件,图4示出了在线译码器208的功能部件。这些功能部件包含具有固件的单元,或者,作为替代的是,包含存储在计算机可读存储介质中的计算机软件代码。这些计算机可读介质——其上存有用于执行本发明的实施例的方法的步骤的指令,并构成系统200的功能部件——可包括计算机存储器、DVD、CD-ROM、 软盘等。或者,系统可具有由通信网络连接的多个计算节点,每个节点包含处理器和计算机可读存储介质,用于如下面将要详细介绍的那样将输入图像译码为用于在终端上显示的输出图像。图3所示离线数据组生成器204包含计算机可读指令,其被存储在计算机可读存储介质内,并由处理器执行。离线数据组生成器204包含图像特征提取单元302、第一质量察觉参数选择单元304、译码单元306以及质量评估单元308。图像特征提取单元302获得训练图像L并提取其特征,特征包括表征训练图像的编码保真度的质量因子QF(L)、图像文件大小S(L)、图像宽度W(L)以及图像高度H(L),其被提供给第一质量察觉参数选择单元304。注意,S(L)是训练图像编码期间进行的压缩之后获得的文件大小,并将被称为图像文件大小。除了训练图像L的特征以外,第一质量察觉参数选择单元304使用参数QF(I)、 smax与zV以及由质量评估单元308计算的质量度量,以及由译码单元306产生的经过译码的训练图像。zV是观看缩放因子,其表征由于输出图像观看条件引起的图像分辨率变化, 而smax表征译码后获得的图像的相对大小。包含smax的计算在内的这些参数的进一步的讨论将稍后在本文档内提供。第一质量察觉参数选择单元304确定与给定的终端特性和训练图像L的特征对应的最优译码参数组。最优译码参数包含质量因子和缩放因子,其对应于为训练图像L产生最高质量已译码训练图像的最优质量译码。第一质量察觉参数选择单元304还为此最高质量已译码图像确定质量度量。通过对训练图像组T中的给定训练图像子组使用这些最优译码参数和质量度量,可计算关于该子组的平均最优参数值,包括平均最优质量因子QFA、平均最优缩放因子zA和平均图像质量度量QA。这样的训练图像子组可对应于例如具有给定质量因子的训练图像。第一质量察觉参数选择单元304包含一过程或功能,该过程或功能包含计算机可读指令,其在提供计算装置的处理器上执行,用于确定平均图像质量度量QA和平均最优译码参数。第一质量察觉参数选择单元304使用迭代方法 (下面详细讨论),对每次迭代选择译码质量因子QFT和译码缩放因子zT。来自第一质量察觉参数选择单元304的zT和QFT由译码单元306用于对输入训练图像L进行处理。译码页
单元306又包含第一解压缩与缩放单元310和压缩单元312。第一解压缩与缩放单元310 接收作为输入的训练图像L,并应用由第一质量察觉参数选择单元304产生的zT,以便进行训练图像L的解压缩和缩放。第一解压缩与缩放单元310的输出由压缩单元312使用,压缩单元312应用由第一质量察觉参数选择单元304生成的译码质量因子QFT,以产生经过译码的训练图像J,经过译码的训练图像J被呈现给质量评估单元308的输入。质量评估单元 308包含第二解压缩与缩放单元314和第三解压缩与缩放单元318以及质量度量计算单元 316。作为译码单元306的输出的经过译码的训练图像J以及训练图像L都在质量评价之前被缩放。我们定义将训练图像L与其已译码版本进行比较的质量度量,关于观看缩放因子zV的已译码训练图像J(被使用译码缩放因子zT译码)将由于输出图像的观看条件引起的图像分辨率变化表征为QzV (L, J) = SSIM (R (L, ζV),R (J, zV/zT))其中,SSIM是用于比较两图像的相似性的结构相似性索弓丨,并且例如由^10U Wang、Alan Conrad Bovik、Hamid Rahim SheiWi 和 Eero P. Simoncelli 在 2004 年 4 月在 IEEE Transactions on Image Processing(IEEE 图像处理学报)第 13 卷第 4 期第 600—612 页发表白勺“Image quality assessment :from error visibility to structural similarity”(图像质量评估从误差可见性到结构相似性)定义。R(I,z)为一算子,其对 I进行解压缩,并使用缩放因子ζ对其进行缩放。根据该定义以及图3,对于相等的图像分辨率,应当满足下面的公式zV = zT 女 zR其中,zV彡1,因为不想在比较质量时增大原始图像的分辨率,且其中,zT彡1对于满足终端特性所施加的约束来说是必需的。由观看缩放因子zV (zT ^zV ^l)控制的输出图像的观看条件在用户对译码操作结果的感知方面扮演了值得注意的角色。例如,当zV =1时,我们比较处于原始输入训练图像L的分辨率的图像,且zR = 1/zT当zT < zV < 1时,比较分辨率处于原始训练图像和经过译码的训练图像J的分辨率之间的图像。质量度量计算单元316包含一过程或功能,其包含计算机可读指令,该指令在处理器上执行,因此提供了用于确定SSIM索引的计算装置。第二解压缩与缩放单元314 通过使用缩放因子zR对已译码训练图像J进行缩放,以产生图像J’,而第三解压缩与缩放单元318通过使用观看缩放因子zV对输入训练图像L进行缩放,以产生图像L’。质量度量计算单元316取得图像J’和L’,并使用这两个图像确定SSIM索引,以产生被提供给质量察觉参数选择单元304的质量度量QzV (L’,J’)。每个功能部件——离线数据组生成器204使用的训练图像库202以及离线数据组生成器204和在线译码器208均使用的数据组库206——都包含计算机存储介质,例如存储器、盘、DVD、⑶-ROM、软盘等。作为替代的是,训练图像库202和数据组库206可包含具有处理器和计算机存储介质的独立计算机,处理器执行存储在计算机可读介质中的指令,该计算机通过接口连接到其他系统部件(如图2所示)。这样的连接可以是本地的,或者,在用于训练图像库202或数据组库206的计算机位于远程位置的情况下,可以跨互联网。图4所示的在线译码器208包含计算机可读指令,其被存储在计算机可读介质中, 并由处理器执行。在线译码器208包含图像特征提取单元302、最优参数预测单元402、第二质量察觉参数选择单元404以及译码单元306。图像特征提取单元302和译码单元306 与离线数据组生成器204中使用的完全相同。唯一的区别在于,我们现在关心的是来自MMS 消息的输入图像的译码,这与离线数据生成器204的情况下使用的对训练图像的译码形成对比。图像特征提取单元302提取将被译码的输入图像I的特征,并将所提取的特征传送到最优参数预测单元402和第二质量察觉参数选择单元404。这些特征包括表征输入图像的编码保真度的质量因子QF(I)、图像文件大小S(I)、图像宽度W(I)以及图像高度H(I)。使用输入图像的特征,最优参数预测单元402从存储在数据组库206中的数据组检索平均最优编码参数,并将它们传送到第二质量察觉参数选择单元404。图像的译码是一迭代过程, 其在已译码图像满足终端特性所施加的约束的情况下停止。最优参数预测单元402、第二质量察觉参数选择单元404和译码单元306在此迭代过程中彼此协作。第二质量察觉参数选择单元404负责生成由译码单元306使用的译码参数。第二质量察觉参数选择单元404 使用由最优参数预测单元402检索的信息和由译码单元306产生的已译码图像的特性。从最优参数预测单元402获得的参数值被传送到执行译码操作的译码单元306。已译码图像被转送到第二质量察觉参数选择单元404,其检查输出图像的大小,以决定迭代是否应当停止。其将关于迭代“状态”的这一决定传送到最优参数预测单元402。如果迭代将继续,则最优参数预测单元402从数据组检索新的译码参数值,并将这些译码参数值转发到第二质量察觉参数选择单元404。否则,仅仅从数据组检索输出图像的预测质量,并将其转发给第二质量察觉参数选择单元404,第二质量察觉参数选择单元404与输出图像(在最后迭代中产生)以及最后迭代中使用的QFT和zT值结合地输出此值。输出图像被称为“接近最优” 的,因为其由具有这样的值的译码参数产生该值接近数据组中记录的平均最优值。本文档中将在下面介绍的系统的实验分析显示,此“接近最优”图像的质量度量确实接近于由最优质量译码获得的输出图像的质量度量。在图5所示流程图500的帮助下,阐释用于将输入图像编码为在终端上显示的输出图像的方法的步骤。该方法包含两个步骤。在输入图像的译码之前,方框504中介绍的方法的步骤仅仅执行一次,而在输入图像的译码过程中执行方框506中介绍的方法的步骤。 注意,当被配置为对多媒体流中的图像进行译码时,过程可对作为多媒体流一部分的多个输入图像继续执行方框506中的操作。在开始时(502),过程500使用存储在训练图像库202中的训练图像组,以生成包含与终端特性和训练图像特征的多种组合对应的平均最优译码参数和平均图像质量的数据组(方框504)。虚线框表示此操作在进行MMS图像的译码操作之前,由离线数据组生成器204离线执行。在生成数据组之后,在MMS消息处理(由在线译码器208执行)期间,过程500从数据组选择译码参数(方框506),并对输入图像进行译码。过程500在由方框506 执行的操作结束时结束并退出(方框508)。在图6所示流程图600的帮助下进一步阐释图5的步骤“生成数据组”(方框504)。 过程600的目标是,对QF(I) ,smax和zV——其值以固定的间隔变化——的多种组合,生成最优译码参数和图像质量。如较早时讨论的,参数smax表征在译码后获得的图像(例如, 经过译码的训练图像和输出图像)相对于被译码图像(例如训练图像或输入图像)的大小的相对大小。其被定义为,对于给定的特定终端,译码后图像的最大可接受相对大小,并由下式给出
smax = min ((S (D)/S (I)), 1)其中,I是被译码图像,D是在其上已译码图像将被显示的终端。在开始时(方框60 ,过程600选择三个参数QF (I)、smax和zV的初始组合(方框 604)。接着,过程600对于该组合计算最优译码参数QFA和zA的平均值(方框606)。QFA 和zA的值分别被存储在第一与第二矩阵中(方框608)。第一与第二矩阵中的位置被用于存储这些值,其中,所述位置由此次迭代中使用的QF(I)、smaX和zV的值索引。接下来计算平均图像质量度量QA,并将其存储在第三矩阵中由此次迭代中使用的QF(I) ,smax和zV的值索引的位置中(610)。过程600于是检查是否存在需要考虑的更多的QF(I)、smax和zV 的组合(方框611)。如果是,则过程600从方框611 “是”退出,选择QF (I)、smax和zV的下一个组合(方框612),并循环回到方框606的开始处。否则,过程600从方框611 “否” 退出,并退出(方框614)。在图7所示流程图700的帮助下,阐释图6的方法步骤“计算平均值、QFA和zA”(方框 606)。在开始时(方框70 ,过程700得到与过程600中选择的参数组合对应的参数zV 和smax (方框702),并再现由终端特性施加的约束。过程700于是准备好开始对具有质量因子QF⑴的训练图像组T中的每个训练图像进行处理的迭代。来自T的第一训练图像被存储在L中(方框704)。注意,存储在L中的图像也被称为图像L。于是,过程700提取存储在L中的训练图像的特征(方框706)并初始化参数(方框708),以便计算为满足终端约束,将用于对存储在L中的训练图像进行译码的QFT和zT的最佳值(方框710)。QFT的最佳值BestQFT和zT的最佳值BestzT是这样的译码参数其对应于训练图像组T中的训练图像的最优质量译码,同时满足下列约束捕获的终端特性,其中,该最优质量译码产生最高质量的已译码训练图像zT ( zVS( τ (L, QFT, zT) ( smaxQFT和zT的这些最佳值被存储(方框714),过程700检查T中是否存在具有等于 QF(I)的质量因子的更多的训练图像(方框716)。如果是这样,则过程700从方框716“是” 退出,在L中存储来自T的下一个图像,并回到方框706的入口(方框712)。否则,过程 700从方框716 “否”退出,由具有等于QF(I)的质量因子的训练图像子组计算平均值QFA 和zA (方框718),返回这些值(方框720)并退出(方框722)。通过以下面的方式使用训练图像组T中的训练图像,计算最优译码参数的平均值QFA = (1/Ν) Σ LeTQFI QFTbest (L)且zA = (1/Ν) Σ L e TQFI zTbest (L)其中,TQFI是T的子组,其包含具有等于QF⑴的质量因子的训练图像,N为此子组的基数,QFTbest (L)和ZTbest (L)是较早时介绍的在过程600的方框614中对第L个训练图像存储的BestQFT和BestzT值。注意,在QFA和zA的计算中,可使用替代性迭代过程。在每次迭代期间,代替为每个训练图像单独存储BestQFT和BestzT的是,BestQFT和BestzT的值可以以下面的方式在变量BestQFTacc禾口 BestzTacc中累积
BestQFTacc = BestQFTacc+BestQFTBestzTacc = BestzTacc+BestzT由于N个这样的BestQFA和BestzT的值被累积QFA = BestQFTacc/NzA = BestzTacc/N在图8示出的流程图800的帮助下,进一步阐释图7中的方法步骤“确定BestQFT 和BestzT” (方框710)。过程800逐步地改变zT和QFT,并生成这些参数的所有可能的组合,以确定哪个参数组合对于给定的训练图像(存储在L中)带来已译码训练图像(存储在J中)的最优质量。在开始时(方框80 ,通过检查是否存在更多可行的可用于译码的 zT、QFT对,过程800开始迭代(方框804)。注意,为了使这样的对是可行的,zT应当小于或等于zV。如果另外的可行的zT、QFT对可用,则过程800从方框804 “是”退出,并得到下一个zT、QFT对(方框806)。给定的训练图像于是被译码为存储在J中的已译码训练图像 (方框808)。在下面的讨论中,经过译码的训练图像被称为J。接下来,检查已译码训练图像J的大小(方框810)。如果其不满足smax施加的大小约束,则过程800从方框810“否” 退出,回到方框804的入口。否则,过程从方框810 “是”退出,将zV用作缩放因子,对L中的训练图像进行解压缩,以产生存储在L’中且被称为L’的图像(方框81幻。在接下来的步骤中,将zR用作缩放因子,过程800对已译码训练图像J进行解压缩,以产生存储在J’ 中并被称为J’的图像(方框814)。于是,过程800通过使用SSIM索引来计算质量度量 QzV(L,,J,)(方框816)。QzV(L’,J’)的值越高,已译码训练图像的质量就越好。于是,将 QzV(L’,J’ )与存储在BestQ中的值进行比较,BestQ包含到目前为止计算得到的最高质量度量(方框818)。如果QzV(L’,J’)高于BestQ,则过程800从方框818 “是”退出,分别在变量BestQ、BestQFT以及BestzT中记录QzV(L,,J,)、QFT和ζT的值(方框820),并回到方框804的入口。否则,过程800跳过方框820中的操作,并简单地回到方框804的入口。 如果方框804中作出的测试返回“假”,则不存在要被检查的另外的zT、QFT对,并且过程从方框804 “否”退出,返回存储在BestQ、BestQFT、BestzT中的值(方框822)并退出(方框 824)。在图9所示流程图9的帮助下,进一步阐释图6所示步骤“计算平均值,QA” (方框609)。在开始时(方框902),过程900从训练图像组T选择具有等于QF(I)的质量因子的第一图像(方框904)。接着,累积质量度量被初始化为0(方框906)。于是,通过使用确定SSIM索引的功能,过程900计算与所选择的训练图像对应的质量度量(方框908),并相应地更新累积质量度量(方框910)。接着,检查T中是否存在具有质量度量QF(I)的更多图像(方框912)。如果是这样,则从T选择具有这样的质量因子的另一图像(方框918), 并且过程900回到方框908的入口。否则,过程900从方框912 “否”退出,由累积质量度量计算QA的值(方框914),并退出(方框916)。QA被计算为QA=累积质量度量/N其中,N是具有等于QF(I)的质量因子的训练图像子组中的训练图像数。在图10所示流程图1000的帮助下,进一步阐释图9的步骤“计算所选择的训练图像的质量度量”(方框908)。在开始时(方框1002),由QF⑴、smaX以及zV的值索引的位置,过程1000得到分别存储在第一与第二矩阵中的QFO和zO的值(方框1004)。接着,确定译码参数QFT被设置为QFO,zT被设置为zO (方框1006)。于是,使用这些QFT和zT值对图像进行译码(方框1008)。接着,检查已译码训练图像的文件大小是否对于终端过大 (方框1010)。如果是这样,则过程1000从方框1010 “是”退出,将smax的值设置为在第一与第二矩阵中使用的下一个较小值(方框1014),并回到方框1004的入口。否则,过程从方框1010 “否”退出,通过应用用于确定SSIM索引的函数来计算已译码图像的质量度量 (方框1012)并退出(方框1016)。如较早时讨论的,为了以相等的分辨率将经过译码的训练图像与训练图像相比较,两图像必须被适当地缩放。通过使用zV来缩放训练图像,而通过使用zR来缩放已译码训练图像,其中τΝ和zR满足下面的关系zV = zT 女 zR在图11所示流程图1100的帮助下,进一步阐释图5中的步骤“由数据组和译码输入图像选择译码参数”(方框506)。在开始时(方框1101),过程1100获得终端的特性(方框1102)和输入图像的特征(方框1103)接着,以下面的方式计算smax和zV的值(方框 1104)smax = min ((S (D)/S (I)), 1)以及zV = min ((W(D) /W(I)), (H (D)/(HI)), 1)这样的smax值对应于,给定终端D,对于图像I的最大可接受相对大小,而所选择的zV带来终端所支持的最大分辨率。通过从第一与第二矩阵读取由QF⑴、smax和zV索引的QFO和zO的值(方框 1106),开始确定译码参数以实现已译码图像的接近最优图像质量的迭代。于是,QFT被设置为QF0,并且zT被设置为zO(方框1108)。于是,用等于QFT的质量因子和缩放因子zT对输入图像进行译码(方框1112)。接下来检查已译码图像的文件大小(方框1114)。如果该大小太大以至于不能满足终端特性所施加的约束,则过程1100从方框1114 “是”退出, 识别第一与第二矩阵中下一个smax较小值,回到方框1106的入口。否则,过程1100从方框1114 “否”退出,返回预测的图像质量、译码中使用的QFT和zT的值以及最后经过译码的图像(方框1116)并退出(方框1118)。通过将QF(I)、smax和zV用作索引变量,从第三矩阵容易地检索预测的图像质量。注意,本发明实施例的方法的重要特征在于对图像预先计算并存储预测的质量度量。由于确定质量度量中使用的SSIM索引计算起来成本巨大,应当将其预先计算到阵列中,该阵列的索引是经过量化的参数。这些经过量化的参数包括被量化的zV、被量化的 QF(I)以及被量化的smax。参数的量化导致彼此接近的参数值的分组以及将这些参数值用一个值来表示。为了实现预先计算,使用图像训练组T中的图像。对于T中的每个训练图像L,使用以固定间隔变化的不同QFT和zT,应用大量的变换。记录得到的对于已译码训练图像的图像文件大小和质量度量。对于每次译码,在由观看缩放因子zV代表的观看条件下,形成特征矢量t,其包含训练图像L、QF(L)、W(L)、H(L)、S(L)、QFT、zT、观看缩放因子 zV、得到的已译码训练图像的文件大小S( τ (L,QFT,zT))以及已译码训练图像的质量度量 QzV(L, T(I,QFT, zT))。令所有这些矢量构成已译码图像组U。基于SSIM索引,对于经过量化的QF(I)、经过量化的QFT、经过量化的zT和经过量化的zV的质量预测由下式给出SSIM-Q= (1/Μ) Σ t e ^ SSIM(R(L(t), zV(t)), R( τ (L(t), QFT(t), zT(t)), (zV/zT)))其中,U’为已译码图像组U中参数落在量化微元(cell),经过量化的QF(I)、经过量化的QFT、经过量化的zT和经过量化的zV内的所有已译码训练图像的子组,M是组U,的基数,L(t)返回训练图像L、QFT(t)即译码QFT和zT(t)即由矢量t应用的译码缩放因子。下面提供在图像译码中使用本发明的实施例的方法和系统的实例。所使用的数据组WMeven Pigeon和St6phane Coulombe在女王大学,金斯敦,加拿大,2008年, Proceedings of the 24th Queen' s Biennial Symposium on Communications ( 24 If· 女王二年一届的通信研讨会会刊)中的"Computationally efficient algorithms for predicting the file size of JPEG images subject to changes of quality factor and scaling"(用于预测经受缩放和质量因子改变的JPEG图像的文件大小的计算有效的算法)中介绍的大量图像得出。由于从多媒体应用采样的典型JPEG图像的大型数据库不可用,所以开发搜寻器(crawler)以便从流行的web站点提取图像。所组合的训练图像组包含几万个JPEG文件。其中没有受损的文件,并且所有的元数据(EXIF)都被移除。为了生成第一、第二禾口第三矩阵,通过使用可从http//www. imagemagick. org/获得的"ImageMagick command-line tools” QmageMagick命令行工具)中介绍的hageMagick的命令行工具, 对每个训练图像执行多个译码操作。与80的QF(I)对应的每个矩阵的“片段”在图12-14 中示出。这样的片段是由zV和smax索引的二维矩阵。这些矩阵片段被用在这里提供的实例中。考虑具有S(D) = 30500, W(D) = 640,H(D) = 480 的装置,以及输入图像 I,Lena 具有 S(I) = 43266, W(I) = 512,H(I) = 512 以及 QF(I) = 80关于图像Lena的信息可从以下获得http://sipi.usc.edu/database/database.cgi ? volume = misc&image = 12http://www. cs. emu. edu/ chuck/lennapg/步骤1 计算 smax = min(30500/43266,1) 0· 7 且zV = min (640/512,480/512,1) = 90%步骤2 使用图12所示的第一矩阵片段,得到QFT=第一矩阵片段
= 70 (69. 3到参数分辨率的舍入值)。注意,第一矩阵片段是对应于QF(I) =80的二维矩阵。此二维矩阵的行对应于smax的值,而列对应于zV的值。使用图13所示的第二矩阵片段,得到zT =第二矩阵片段
= 80%注意,第二矩阵片段是对应于QF(I) = 80的二维矩阵。该二维矩阵的行对应于 smax的值,而列对应于zV的值。步骤3 以等于QFT的质量因子和等于zT的缩放因子对图像进行译码。在译码之后,获得输出图像,其具有相对于输入图像的0.53的相对图像文件大小。步骤4:由于已译码图像满足终端特性施加在图像文件大小的约束(0.53 < 0. 70),进行到步骤5。步骤5 返回接近最优参数QFO = 70和z0 = 80%,通过使用这些参数获得的输出图像,τ (1,70,80%)以及对于已译码图像的预测图像质量=0.84,其是从图14所示第三矩阵片段读取的(第三矩阵片段[
=0. 84]) 0对输入图像执行最优质量译码导致0. 85的图像质量。因此,对于Lena来说,我们得到具有接近最优质量的图像(0.84 vs 0.85,大约1%的误差)。用大量其它图像重复了仿真试验,每次试验得到非常小的误差。本发明的实施例提供以下优点实现了与从输入图像的最优质量译码所获得的接近的高质量输出图像;译码所需时间相比于最优质量译码所需的小得多;由于上述两个优点,在产生类似质量的输出图像的同时,图像可保持与最优质量译码系统相比高得多的MMS消息速率;以及故障率——其是对系统不能找到满足约束的解决方案的频度的指示——可被设计为任意希望的低值。尽管已经详细介绍了本发明的特定实施例,但是应当明了,所介绍的实施例是说明性而不是限制性的。在不脱离本发明的范围的情况下,在其更为广泛的方面,可在所附权利要求的范围内作出多种对说明书所介绍以及附图所示实施例的修改和变化。例如,可在图像质量测量中使用除本文档所介绍的SSIM以外的质量度量。尽管本文档所给出的讨论主要集中在JPEG图像上,但是本发明的实施例的方法和系统可适用于处理以其它格式编码的数字图像,例如图形交换格式(GIF)和便携网络图形(PNG)。例如在GIF图像的情况下,图像中的颜色数需要代替本方法和系统中的QF (I)、QFT和QFA使用,以便将输入图像译码为输出图像。尽管已经详细介绍了本发明的实施例,但是本领域技术人员将会明了,在所附权利要求的范围内,可做出对实施例的修改和变型。
权利要求
1.一种将输入图像译码为输出图像用于终端上的显示的方法,包含以下步骤(al)在译码之前,生成数据组,该数据组包含译码参数,所述译码参数通过在训练图像组T中的一组训练图像上执行最优质量译码以便为每个训练图像产生最高质量译码训练图像、同时满足终端的特性而生成;(bl)提取输入图像的特征,并获得终端的特性;(cl)通过使用在步骤(bl)中提取的输入图像特征和终端特性,从在步骤(al)中生成的数据组选择译码参数;以及(dl)通过使用在步骤(cl)中选择的译码参数,将输入图像译码为输出图像。
2.根据权利要求1的方法,其中,步骤(al)包含生成数据组,数据组包含译码参数,该译码参数与终端特性以及输入图像特征的组合对应。
3.根据权利要求1或2的方法,其中,步骤(bl)包含提取输入图像的特征,输入图像的特征包括表征输入图像的编码保真度的质量因子QF(I)、图像文件大小S (I)、图像宽度 W(I)以及图像高度H(I)。
4.根据权利要求1-3中任意一项的方法,其中,选择译码参数的步骤(cl)包含选择表征输出图像的编码保真度的译码质量因子QFT以及表征由于译码引起的图像分辨率变化的译码缩放因子zT。
5.根据权利要求1-4中任意一项的方法,其中,在步骤(al)中生成的数据组包含N个多维矩阵,其包含下列中的一个或多个第一矩阵,存储对于来自训练图像组T的一个或多个训练图像子组的平均最优质量因子QFA,每个QFA都被确定为在对相应的训练图像子组中的训练图像进行最优质量译码期间使用的QFT的平均;第二矩阵,存储对于一个或多个训练图像的子组的平均最优缩放因子zA,每个zA都被确定为在对相应的训练图像子组中的训练图像进行最优质量译码期间使用的zT的平均; 以及第三矩阵,存储对于一个或多个训练图像子组的平均图像质量度量QA,对于相应的训练图像子组,每个QA都被确定为质量度量的平均,指示训练图像与在最优质量译码期间生成的相应的最高质量译码训练图像之间的相似度。
6.根据权利要求5的方法,其中,每个矩阵都通过下列索引中的两个或多个来索引 第一索引,指示输入图像的质量因子QF(I);第二索引,指示表征由于输出图像的观看条件引起的图像分辨率变化的观看缩放因子zV ;第三索引,指示表征输出图像关于输入图像的相对大小的最大相对图像大小“smax”。
7.根据权利要求6的方法,其中,步骤(al)还包含 (a7)选择 QF(I)、zV 和"smax"的组合;(a7-i)对于所选择的zV与“smax”的组合,使用质量因子等于QF(I)的训练图像的子组,生成平均最优质量因子QFA和平均最优缩放因子zA ;(a7-ii)在由QF(I)、zV和“smax”的所选组合索引的位置上,在第一矩阵中存储QFA, 在第二矩阵中存储zA ;以及(a7-iii)以预定的间隔改变0 (1)、"和“細狀”,重复(a7)与(a7_iii)之间包括步骤(a7)在内的步骤、,直到已经使用了 QF(I)、zV和“smax”的所有组合。
8.根据权利要求7的方法,包含(a8-i)对于zV和“smax”的所选组合,使用质量因子等于QF(I)的训练图像的子组,生成平均图像质量度量QA,包括对于该训练图像子组中的每个训练图像确定对于最高质量译码训练图像的质量度量;以及(a8-ii)在由QF(I)、zV和“smax”的所选组合索引的位置上,在第三矩阵中存储QA ; 在步骤(a7)之后且在步骤(a7_iii)之前执行步骤(a8_i)和(a8_ii)。
9.根据权利要求7或8的方法,其中,步骤(a7-i)还包含(a9)对于该训练图像子组中的每个训练图像,确定产生最高质量译码训练图像的译码质量因子QFT和译码缩放因子zT ;以及(b9)使用在步骤(a9)中确定的用于训练图像的译码质量因子QFT和译码缩放因子 zT,确定平均最优质量因子QFA和平均最优缩放因子zL·
10.根据权利要求9的方法,其中,步骤(a9)还包含(alO)选择译码参数,译码参数包含译码质量因子QFT与译码缩放因子zT的组合; (alO-i)对于QFT和zT的所选组合,对训练图像进行译码,以便产生已译码训练图像; (alO-ii)对于在步骤(alO-i)中生成的已译码训练图像确定质量度量,质量度量指示训练图像和已译码训练图像之间的相似度;(alO-iii)以预定的间隔改变QFT和zT,并重复(alO)到(alO-iii)包括步骤(alO) 在内的步骤,直到已经使用了 QFT和zT的所有组合;以及(alO-iv)选择步骤(alO-ii)中产生最高质量度量的QFT和zT。
11.根据权利要求10的方法,其中,步骤(a-10i)还包含(all)通过应用所选择的缩放因子zT,对训练图像进行解压缩和缩放; (bll)通过应用所选择的质量因子QFT,对在步骤(all)中产生的被解压缩和缩放的训练图像进行压缩。
12.根据权利要求10或11的方法,其中,步骤(a-lOii)还包含(12a)通过应用再度缩放因子zR,对已译码训练图像进行解压缩和缩放,以便产生图像J,;(12b)通过应用观看缩放因子zV,对已译码训练图像进行解压缩和缩放,以便产生图像L’ ;以及(12c)通过分别使用图像J'和L’,生成质量度量,其指示训练图像与已译码训练图像之间的相似度。
13.根据权利要求12的方法,其中,zR等于zV/zT,且其中,步骤12(c)包含,通过使用图像J’和图像L’,确定结构相似性(SSIM)索引。
14.根据权利要求8-13中任意一项的方法,其中,步骤(a8-i)还包含(al5)检索存储在第一矩阵中的平均最优质量因子QFA和存储在第二矩阵中的平均最优缩放因子zA ;(al5-i)使用在步骤(al5)中检索的QFA和zA对训练图像进行译码,以便产生已译码训练图像;(al5-ii)判断已译码训练图像是否满足终端特性;(al5-iii)以第一与第二矩阵中可用的下一个较小的“smax”值,重复(al5)到 (al5-iii)包括步骤(aM)在内的步骤,直到已译码训练图像满足终端特性;以及(bl5)确定满足终端特性的在步骤(al5_i)中生成的已译码训练图像的质量度量。
15.根据权利要求6-14中任意一项的方法,其中,步骤(dl)还包含(al7)使用终端特性以及在步骤(bl)中提取的输入图像的特征H(I)、W(I)、S(I)、 和 “smax”;(bl7)以在步骤(bl)中检索的QF⑴以及在步骤(al7)中确定的zV和smax为索引, 检索存储在第一矩阵中的平均最优质量因子QFA,以及存储在第二矩阵中的平均最优缩放因子ZA;(bl7-i)分别将在步骤(bl7)中检索的QFA和zA用作译码质量因子QFT和译码缩放因子zT,对输入图像进行译码,以产生输出图像; (bl7-ii)检查输出图像是否满足终端的特性;(bl7-iii)以在第一与第二矩阵中可用的下一个较小的“smax”值,重复(bl7)到 (bl7-iii)之间包括步骤(bl7)在内的步骤,直到输出图像满足终端特性;以及(cl7)在由与步骤(bl7-i)中生成的满足终端特性的输出图像对应的QF(I)、smax和 zV索引的位置上,检索存储在第三矩阵中的平均图像质量QA。
16.根据权利要求6-15中任意一项的方法,其中,终端特性包含最大图像文件大小 S(D)、终端宽度W(D)以及终端高度H(D),该方法还包含(al8)将zV设置为(W (D)/W (I)), (H (D)/H (I)))和1中的最小值;以及 (bl8)将“smax”设置为(S(D)/S(I))与1中的最小值。
17.一种具有处理器和计算机可读存储介质的系统,用于将输入图像编码为用于终端上的显示的输出图像,该系统包含(a24)存储在计算机可读介质中的训练图像库,其包含具有训练图像的训练图像组T ; (b24)离线数据组生成器,包含存储在计算机可读存储介质中的计算机可读指令,在输入图像的译码之前生成数据组,该数据组包含译码参数,译码参数由来自训练图像组T的一组训练图像的最优质量译码生成,对于每个训练图像产生最高质量译码训练图像,同时满足终端的特性;(c24)数据组库,其存储在计算机可读存储介质中,存储由离线数据组生成器0^24)产生的数据组;以及(d24)在线译码器,包含存储在计算机可读存储介质中的计算机可读指令,其通过使用终端特性和输入图像的特征,从存储在数据组库(cM)中的数据组选择译码参数,并通过使用所选择的译码参数将输入图像译码为输出图像。
18.根据权利要求17的系统,其中,数据组包含与终端特性及输入图像特征的组合对应的译码参数;并且其中,译码参数包含译码质量因子QFT,其表征输出图像的编码保真度;译码缩放因子zT,其表征由于译码引起的图像分辨率变化。
19.根据权利要求18的系统,其中,数据组包含N个多维矩阵,其包括下列中的一个或多个第一矩阵,存储对于来自训练图像组T的一个或多个训练图像子组的平均最优质量因子QFA,每个QFA都被确定为在对相应的训练图像子组中的训练图像进行最优质量译码期间使用的QFT的平均;第二矩阵,存储对于一个或多个训练图像子组的平均最优缩放因子zA,每个zA都被确定为在对相应的训练图像子组中的训练图像进行最优质量译码期间使用的zT的平均;以及第三矩阵,存储对于一个或多个训练图像子组的平均图像质量度量QA,对于相应的训练图像子组,每个QA都被确定为质量度量的平均,指示训练图像与在最优质量译码期间生成的对应的最高质量译码训练图像之间的相似度。
20.根据权利要求19的系统,其中,每个矩阵通过下列索引中的两个或多个来索引 第一索引,指示表征输入图像的编码保真度的质量因子QF(I);第二索引,指示表征由于输出图像的观看条件引起的图像分辨率变化的观看缩放因子 zV;以及第三索引,指示表征输出图像关于输入图像的相对大小的最大相对图像大小“smax”。
21.根据权利要求17-20中任意一项的系统,其中,离线数据组生成器0^24)包含 (a29)图像特征提取单元,提取训练图像组T中的训练图像的特征;(b29)第一质量察觉参数选择单元,选择QFT和zT,并通过使用由图像特征提取单元 (24)提取的特征,确定平均最优质量因子QFA和平均最优缩放因子zA ;(c29)译码单元,通过使用由第一质量察觉参数选择单元0^29)选择的QFT和zT,将训练图像译码为译码训练图像;以及(d29)质量评估单元,对于由译码单元(c-29)生成的已译码训练图像确定质量度量, 质量度量指示训练图像和已译码训练图像之间的相似度。
22.根据权利要求21的系统,其中,译码单元(c29)包含(a31)解压缩与缩放单元,通过将缩放因子zT应用到训练图像,产生经过解压缩和缩放的训练图像;以及(b31)压缩单元,通过将译码质量因子QFT应用到被解压缩和缩放的训练图像,产生已译码训练图像。
23.根据权利要求21或22的系统,其中,质量评估单元(d29)包含(a32)第二解压缩与缩放单元,通过应用再度缩放因子zR,对已译码训练图像进行解压缩和缩放;(b32)第三解压缩与缩放单元,通过应用观看缩放因子zV,对训练图像进行解压缩和缩放;以及(c32)质量度量计算单元,计算已译码训练图像的质量度量
24.根据权利要求23的系统,其中,质量度量计算单元(c32)包含计算装置,用于确定指示训练图像与已译码训练图像之间的相似性的结构相似性(SSIM)索引。
25.一种计算机可读存储介质,具有在其上存储的计算机可读程序代码指令,当由计算机执行时,执行如权利要求1-16中任意一项所述方法的步骤。
全文摘要
提出了一种方法和系统,其用于图像的具有接近最优质量的低复杂度译码,以便显示在终端上。在译码之前生成有效的译码参数,并基于输入图像特征和终端特性来检索译码参数,实现与最优质量译码所产生的接近的输出图像质量。处理时间相比于最优质量译码所需的处理时间要小得多。
文档编号G06T9/00GK102246209SQ200880132296
公开日2011年11月16日 申请日期2008年12月23日 优先权日2008年12月12日
发明者S·库隆布, S·皮金 申请人:高等技术学校
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1