CN102687509B - 使用jpeg-ls的可调节压缩 - Google Patents
使用jpeg-ls的可调节压缩 Download PDFInfo
- Publication number
- CN102687509B CN102687509B CN200980163183.6A CN200980163183A CN102687509B CN 102687509 B CN102687509 B CN 102687509B CN 200980163183 A CN200980163183 A CN 200980163183A CN 102687509 B CN102687509 B CN 102687509B
- Authority
- CN
- China
- Prior art keywords
- bit stream
- jpeg
- difference
- compress technique
- produces
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 230000006835 compression Effects 0.000 title claims abstract description 51
- 238000007906 compression Methods 0.000 title claims abstract description 51
- 238000000034 method Methods 0.000 claims abstract description 86
- 230000000007 visual effect Effects 0.000 claims abstract description 51
- 238000012937 correction Methods 0.000 claims description 25
- 230000008859 change Effects 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 8
- 230000006837 decompression Effects 0.000 description 18
- 230000004044 response Effects 0.000 description 16
- 238000005516 engineering process Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 8
- 238000012360 testing method Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 241001504519 Papio ursinus Species 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 239000000843 powder Substances 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
- H04N19/36—Scalability techniques involving formatting the layers as a function of picture distortion after decoding, e.g. signal-to-noise [SNR] scalability
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
- H04N21/2343—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
- H04N21/234327—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
- H04N21/4402—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
- H04N21/440227—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by decomposing into layers, e.g. base layer and one or more enhancement layers
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
使用原始可视比特流产生至少包括第一比特流和第二比特流的全局比特流。通过使用具有损失因子“n”的JPEG-LS压缩技术压缩所述原始可视比特流,来产生所述第一比特流。通过使用JPEG-LS无损压缩技术压缩差值比特流,来产生所述第二比特流,其中差值比特流包括原始可视比特流和第一比特流之间的差值。在信道上接收全局比特流之后使用重构比特流再造可视显示,其中通过使用JPEG-LS无损压缩技术解压缩至少第一比特流来产生重构比特流。使用JPEG-LS无损压缩技术解压缩第二比特流,并且通过添加解压缩的第二比特流可以提高显示品质。
Description
背景技术
诸如JPEG-LS技术之类的联合图像专家组(JPEG)压缩技术提供了针对静止图像的无损或接近无损视频和图像压缩。标准JPEG-LS压缩技术提供了比诸如JPEG-LS2000、H.264/AVC以及CALIC等其它无损压缩技术的性能大致更好的无损压缩性能。该标准JPEG-LS压缩技术提供了具有低实施复杂性的高品质视频和图像压缩,以及大致良好的压缩性能。然而,目前的JPEG-LS压缩技术通常无法建立可调节的视频流并组织多线程传输。随着视频和图像处理以及通信技术的发展,在JPEG-LS压缩技术中,可能期望这样的可调节技术。
附图说明
在附图中通过示例的方式而并非限制的方式示出了在此描述的本发明。为了示出的简单和清楚,附图中所示出的元件不必按比例绘出。例如,为了清楚,一些元件的尺寸可能相对于其它元件被扩大。另外,在认为适当的情况下,在附图之中重复附图标记以表示相应或类似的元件。
图1示出了根据一实施例包括编解码器150的网络接口卡NIC100,该编解码器150可以支持可调节JPEG-LS压缩技术。
图2是示出了根据一实施例由编解码器150执行以支持可调节JPEG-LS压缩技术的操作的流程图。
图3A和图3B示出了根据一实施例编解码器150可以执行以支持可调节JPEG-LS压缩技术的编码和解码技术。
图4示出了根据一实施例使用可调节JPEG-LS压缩技术支持编码的编解码器110的编码器120。
图5是示出了根据一实施例编码器120使用可调节JPEG-LS压缩技术来执行图像或视频的编码的操作的流程图。
图6示出了根据一实施例使用可调节JPEG-LS压缩技术进行解码的编解码器150的解码器130。
图7是示出了根据一实施例在使用可调节JPEG-LS压缩技术进行图像或视频的解码时解码器130要执行的操作的流程图。
图8A和图8B示出了根据一实施例分别针对计算机图形和逼真图像的标准JPEG-LS和H.263/AVS的率失真图。
图9示出了根据一实施例针对损失因子“n”的不同值的可调节JPEG-LS和标准JPEG-LS的性能图。
图10示出了根据一实施例支持网络接口卡100的计算机系统,该网络接口卡100可以支持JPEG-LS压缩技术。
具体实施方式
以下描述描述了例如用于压缩视频和图像的可调节JPEG-LS压缩技术。在以下描述中,阐述诸如逻辑实现、资源分区或共享或复制实现、系统组件的类型和相互关系、以及逻辑分区或整合选择之类的许多特定细节,以便提供对本发明更加全面的理解。然而,本领域技术人员将理解,在没有这些特定细节的情况下,也可以实施本发明。在其它实例中,未详细示出控制结构、门级电路以及全软件指令序列,以便不会使本发明不清楚。本领域技术人员在阅读了所包括的描述的情况下将能够在未进行过度实验的情况下实现适当的功能。
在说明书中对“一个实施例”、“实施例”、“示例性实施例”的引用表示所描述的实施例可以包括特定的特征、结构、或特性,但是并非每个实施例必须包括该特定的特征、结构、或特性。而且,这样的短语不必指同一实施例。此外,当结合一个实施例来描述特定的特征、结构或特性时,均认为改变这些特征、结构或特性以与其它实施例结合处于本领域技术人员的知识范围内,而无论是否清楚描述。
本发明的实施例可以以硬件、固件、软件或其任意组合来实现。本发明的实施例也可以实现为存储在机器可读介质上的指令,该指令可以由一个或多个处理器读取和执行。机器可读存储介质可以包括用于以机器(例如,计算设备)可读形式来存储或传输的信息的任何机制。
例如,机器可读存储介质可以包括只读存储器(ROM)、随机存取存储器(RAM)、磁盘存储介质、光存储介质、闪存设备、电、光形式的信号。此外,固件、软件、例程以及指令可以在此描述为执行某些动作。然而,应当理解,这样的描述仅为了方便的目的,并且事实上这样的动作产生于执行该固件、软件、例程以及指令的计算设备、处理器、控制器以及其它设备。
在一个实施例中,编解码器可以包括支持可调节JPEG-LS压缩和解压缩技术的编码器和解码器。在一个实施例中,编码器可以通过使用标准有损JPEG-LS压缩技术压缩原始可视比特流(P0)来产生第一比特流(P1)。编码器还可以通过压缩第一比特流和原始可视比特流的差值(d=P0~P1)的偏移版本(Dsu)来产生第二比特流(P2)。在一个实施例中,可以通过使用无损或接近无损的JPEG-LS压缩技术压缩“Dsu”,来产生第二比特流(P2)。在一个实施例中,编码器可以产生可以包括第一比特流和第二比特流的单个全局比特流,并且该全局比特流可以在稳定或非稳定通信有线或无线通信信道上发送。在一个实施例中,响应于接收到全局比特流,解码器可以通过从全局比特流获取至少第一比特流来重构原始可视比特流。在一个实施例中,解码器可以使用标准JPEG-LS压缩技术解压缩第一比特流,并且随后增加使用无损或接近无损压缩技术解码的第二比特流的解压缩元素。
在一个实施例中,编解码器可以使用渐进式方法来提供SNR可调节性,该SNR可调节性可以支持诸如多流和优先传输之类的特征。在一个实施例中,用于提供SNR可调节性的渐进式方法可以允许解码器接收、提取以及解码全局比特流的一部分。在一个实施例,渐进式方法可以在压缩之后,提供至少两个输出比特流(P1和P2)。在一个实施例中,第一比特流(P1)可以在接收端解码之后,提供重构图像的基础品质。然而,可以使用第二比特率(P2)来改善重构图像的品质。
例如,如果解码器仅使用第一比特流(P1)来产生重构图像,则可视品质水平(42dbPSNR)可以是令人满意的。然而,如果解码器使用第一比特流和第二比特流来产生重构图像,则重构图像的品质可以接近于理想品质(即,重构图像可以等于原始图像)。在有损传输的情况下,第二比特流可能丢失,并且重构图像可能仍满足令人满意或可接受的可视品质水平。在一个实施例中,JPEG-LS压缩技术可以包括运行长度编码(运行模式)、非线性渐进(常规模式)、基于自适应情况的统计建模(常规模式)、戈隆布熵编码以及这样的其它类似技术。在一个实施例中,可以以硬件、软件、固件或其组合来实现上述可调节JPEG-LS压缩技术。
图1中示出了可以支持可调节JPEG-LS压缩技术的网络接口卡NIC100的实施例。在一个实施例中,NIC100可以包括处理模块110、编解码器150以及耦合至信道180的信道接口170。在一个实施例中,信道180可以包括有线或无线信道,该信道可以是稳定或非稳定的。在一个实施例中,当以发送模式操作时,处理模块110可以将视频或图像比特流(以下称为“原始可视比特流”)提供至编解码器150。在一个实施例中,处理模块110可以将原始可视比特流(P0)存储在编码器缓冲器125的第一部分125-1中。在一个实施例中,当以接收模式操作时,处理模块110可以获取存储在解码器缓冲器135中的数据比特,并且在将可视数据呈现在显示设备上或将可视数据存储在显示设备的显示缓冲器中之前执行进一步的处理。
在一个实施例中,编解码器150可以包括耦合至编码器缓冲器125的编码器120,和耦合至解码器缓冲器135的解码器130。在一个实施例中,编码器120可以获取存储在编码器缓冲器125的第一部分125-1中的原始可视比特流(P0),并且可以通过使用具有损失因子“n”的标准JPEG-LS压缩技术压缩P0来产生第一比特流(P1)。在一个实施例中,编码器120可以通过使用无损或接近无损JPEG-LS压缩技术压缩基于原始可视比特流(P0)和第一比特流(P1)之间的差值而产生的差值比特流(d=P0~P1)的上偏移版本,来产生第二比特流(P2)。在一个实施例中,编码器120可以将第一和第二比特流打包在单个全局比特流中。在一个实施例中,编码器120可以将全局比特流存储在编码器缓冲器125的第二部分125-2中。在一个实施例中,编码器120可以使用渐进式方法来提供SNR可调节性。
在一个实施例中,当处于发送模式时,耦合至编码器120的信道接口170可以在信道180上发送全局比特流之前从第二部分125-2中获取全局比特流。在一个实施例中,当处于接收模式时,耦合至信道180的信道接口170可以接收来自信道180的全局比特流,并且将全局比特流存储在解码器缓冲器135的第二部分135-2中。在一个实施例中,信道180也可以包括波动的无线信道。
在一个实施例中,解码器130可以获取存储在解码器缓冲器135的第二部分135-2中的至少部分全局比特流。在一个实施例中,可以从包括在另一系统中的传输模块中(例如,网络接口卡的编解码器)接收全局比特流。在一个实施例中,解码器130可以获取存储在第二部分135-2中的第一比特流和第二比特流。在一个实施例中,解码器130可以通过使用标准的接近无损JPEG-LS压缩技术解码第一比特流,来产生第一解码比特流/中间比特流(Is)。然而,中间比特流可能会包括失真,该失真可能由于在发送端的编码器中执行的有损压缩而造成,或由于信道特性而造成。在一个实施例中,解码器130可以通过使用无损或接近无损JPEG-LS压缩技术解码第二比特流,来产生失真校正比特流(Cs)。在一个实施例中,解码器130可以产生重构比特流,该重构比特流通过将失真校正比特流(Cs)添加至中间比特流(Is)而基本上类似于原始可视比特流。在一个实施例中,解码器130可以将重构的比特流存储在解码器缓冲器135的第一部分135-1中。
图2中示出了支持可调节JPEG-LS压缩技术的编解码器150的操作的实施例。在模块210中,编码器120可以通过使用具有损失因子“n”的标准JPEG-LS压缩原始可视比特流(P0)来产生第一比特流(P1),并且通过使用以无损或接近无损的压缩模式使用JPEG-LS的原始可视比特流和第一比特流的差值比特流(d=P0~P1)来产生第二比特流(P2)。在模块220中,解码器130响应于接收到包括第一和第二比特流的全局比特流,来使用至少一个第一比特流产生重构比特流。
图3A和图3B中分别示出了当成功接收两个比特流(第一和第二比特流)与仅成功接收第一比特流时的支持可调节JPEG-LS压缩技术的编解码器150的实施例。在图3A中,在一个实施例中,JPEG-LS模块320可以接收原始可视比特流P0,并且可以产生第一比特流P1。在一个实施例中,可以提供第一比特流P1和原始可视比特流P0作为对差值检测模块325的第一输入和第二输入。在一个实施例中,差值检测模块325可以产生差值比特流d(=P0-P1),并且在通过损失因子“n”上偏移差值比特流“d”之后,可以将上偏移的差值比特流(Dsu)提供至无损压缩模块330。在一个实施例中,无损压缩模块330可以在将第二比特流(P2)提供至解码器130之前,产生第二比特流(P2)和第一比特流(P1)。
在一个实施例中,解码器130可以成功地接收第一和第二比特流,并且产生重构比特流,该重构比特流可以基本上类似于原始可视比特流。在一个实施例中,第一解压缩模块340可以接收第一比特流(P1),并且通过使用标准的接近无损JPEG-LS压缩技术解压缩第一比特流,来产生第一解码比特流/中间比特流(Is)。在一个实施例中,第二压缩模块350可以响应于接收到第二比特流,产生失真校正比特流(Cs)。在一个实施例中,加法器345可以接收第一解码比特流(Is)和失真校正比特流(Cs),并且可以产生完美品质(即,峰值信噪比PSNR=α,其中α可以表示无穷大)的重构比特流。
图3B在许多方面类似于图3A,下面描述图3A与图3B之间的差别。在一个实施例中,由无损压缩模块330产生的第二比特流可以不到达解码器130。在一个实施例中,第一解压缩模块340可以产生第一解码比特流,该第一解码比特流可以用于产生重构比特流。在一个实施例中,重构比特流可以用于产生显示,并且显示的图像或视频可以具有高品质(即,PSNR>42db(分贝))。
图4中示出了支持可调节JPEG-LS压缩技术的编码器120的实施例。在一个实施例中,编码器120可以包括编码器接口410、编码器控制单元415、因子n压缩模块420、差值比特流产生器430、上偏移器450以及无损压缩模块480。在一个实施例中,编码器接口410能够支持编码器120和处理模块110以及信道接口模块170之间的数据交换。在一个实施例中,如模块510中所示,编码器接口410可以直接从处理模块110接收原始可视比特流,或者响应于接收到来自编码器控制单元415的控制信号,从编码器缓冲器125的第一部分125-1获取原始可视比特流。
在一个实施例中,编码器接口410可以将原始可视比特流传递至因子n压缩模块420。作为响应,编码器接口410可以接收来自因子n解压缩模块420的第一比特流和来自无损压缩模块480的第二比特流。在一个实施例中,编码器接口410可以响应于接收到来自编码器控制单元415的第二控制信号将第一和第二比特流传送至编码器缓冲器125的第二部分125-2。
在一个实施例中,编码器接口410可以将第一比特流和第二比特流打包在单个全局比特流中,以使得可以在接收端分别地提取第一和第二比特流中的每一个。在一个实施例中,编码器接口410可以在通信信道180上发送全局比特流之前,针对全局比特流执行协议转换,以支持多流和优先传输。在一个实施例中,该转换可以针对第一比特流(P1)使用更强的误差校正码来表示更大级别的误差保护。此外,相比于第二比特流(P2)的重新传输的数量,对第一比特流(P1)的重新传输的数量可以更多。在一个实施例中,可以执行关于全局比特流的协议转换,以支持诸如IEEE802.11a/b/g、IEEE802.12.3c、以及使用60GHz技术针对无线个域网(WPAN)中的千兆无线传输的下一代毫米波规范(NGmS)之类的传输标准。
在一个实施例中,如图5的模块530中所示,响应于接收到来自编码器控制单元415的“开始压缩”信号,因子n压缩模块420可以通过使用具有损失因子n的JPEG-LS压缩技术压缩原始可视比特流,来产生第一比特流(P1)。在一个实施例中,损失因子“n”可以等于诸如﹛2,3,4…k﹜之类的正整数值。
在一个实施例中,如模块550中所示,响应于接收到来自编码器控制单元415的“差值产生”信号,差值比特流产生器430可以通过确定P0和P1之间的差值,来产生差值比特流(d=P0~P1)。在一个实施例中,差值比特流可以包括通过由因子n压缩模块420执行的压缩操作所丢失的数据。在一个实施例中,例如,原始可视比特流可以表示视频帧或图像的像素。在一个实施例中,原始可视比特流的大小可以等于3,00,000字节(未压缩图像大小=在RGB表示中100×100像素×3字节/像素=3,00,000字节),并且第一比特流的大小可以等于100,000字节(=300,000字节/3.0的压缩比)。然而,例如,具有损失因子“n=2”的压缩技术可能会在压缩原始可视比特流时造成某些像素值丢失,并且在那些丢失的像素中的信息可能会永久性的失去。在一个实施例中,差值比特流(d)可以包括在执行压缩时可能由因子n压缩模块420丢弃的这样的像素数据。在一个实施例中,可以通过逐像素地从P0减去P1来确定差值比特流。在一个实施例中,P0的像素值可以存在于范围(0-255)中,并且P1的像素值也可以存在于(0-255)的范围中。然而,差值比特流(d)的像素值可以存在于(-255至+255)的范围中,并且JPEG-LS技术针对正像素值操作。在一个实施例中,可以通过上偏移将-255至+255的范围转换为正的像素值范围。在一个实施例中,可以将差值比特流(d)提供给上偏移器450。
在一个实施例中,如模块570中所示,响应于接收到来自编码器控制单元415的“上偏移信号”以及来自差值比特流产生器430的差值比特流,上偏移器450可以通过以因子“m”上偏移差值比特流(d),来产生上偏移的差值比特流(Dsu)。在一个实施例中,上偏移差值比特流Dsu可以等于(d+m),其中“m”可以等于255。关于上偏移,像素值范围可以从(-255至+255)偏移至(0至511),并且Dsu可以包括比特流,在该比特流中,9比特可以表示像素,并且JPEG-LS能够处理9比特/像素表示。在一个实施例中,为了使用标准JPEG-LS-LS处理差值比特流(d),表示可视信息的像素的值的理想范围存在于范围[0-255]中。在一个实施例中,上偏移差值比特流Dsu可以作为输入提供至无损压缩模块480。
在一个实施例中,如模块580中所示,响应于接收到来自编码器控制单元415的“产生第二流”信号以及来自上偏移器450的Dsu,无损压缩模块480可以通过使用无损或接近无损JPEG-LS-LS压缩技术压缩上偏移比特流,来产生第二比特流。在以上示例中,无损压缩模块480可以通过压缩上偏移的差值信号(Dsu)来产生第二比特流(P2)。在一个实施例中,第二比特流(P2)在压缩之后的大小和第一比特流(P1)在压缩之后的大小可以提供可以表示总压缩的压缩值。在一个实施例中,如模块590中所示,编码器控制单元415可以将第一比特流(P1)和第二比特流(P2)打包在单个全局比特流中,并且编码器接口410在编码器控制单元415的控制下,可以将全局比特流存储在编码器缓冲器125的第二部分125-2中。
图6中示出了支持可调节JPEG-LS压缩技术的解码器130的实施例。在一个实施例中,解码器130可以包括解码器接口610、解码器控制单元615、第一解压缩模块620、第二解压缩模块630、下偏移器650、以及加法器680。在一个实施例中,第一解压缩模块620可以解压缩第一比特流,并且第二解压缩模块630可以解压缩第二比特流,并且分别描绘了两个解压缩模块620和630。然而,在其它实施例中,可以提供单个解压缩来对第一和第二比特流解压缩。
在一个实施例中,解码器接口610可以支持解码器130和处理模块110以及信道接口模块170之间的数据交换。在一个实施例中,如图7的模块710中所示,解码器接口610可以直接从信道接口170接收全局比特流,或者获取包括第一比特流和第二比特流的至少部分全局比特流。在一个实施例中,解码器接口170可以响应于接收到来自解码器控制单元615的控制信号,从解码器缓冲器135的第二部分135-2获取至少第一比特流。
在一个实施例中,解码器接口610可以将从全局比特流中获取的比特流提供给第一解压缩模块620或第二解压缩模块630中的一个。在一个实施例中,解码器接口610可以从全局比特流获取第一比特流和第二比特流中的至少一个,并且将第一比特流提供至第一解压缩模块620,将第二比特流提供至第二解压缩模块630。在另一实施例中,解码器接口610可以从全局比特流获取第一比特流,并且可以将第一比特流提供至第一解压缩模块620。在完成解码之后,在一个实施例中,解码器接口610可以响应于接收到来自解码器控制单元615的第二控制信号,将重构比特流存储至解码器缓冲器135的第一部分135-1。
在一个实施例中,如图7的模块730中所示,响应于接收到来自解码器控制单元615的“第一开始解压缩”信号,第一解压缩模块620可以通过以无损或接近无损压缩模式使用JPEG-LS压缩技术解压缩第一比特流(P1)来产生第一解码流(DeS1)。在一个实施例中,可以通过解压缩第一比特流(P1)来产生第一解码比特流。
在一个实施例中,如图7的模块750中所示,响应于接收到来自解码器控制单元615的“第二开始解压缩”信号,第二解压缩模块630可以通过以无损或接近无损压缩模式使用JPEG-LS压缩技术解压缩第二比特流(P2)来产生失真校正比特流(Cs)。在一个实施例中,可以通过解压缩第二比特流来产生失真校正比特流。在一个实施例中,失真校正比特流(Cs)基本类似于由图4的差值比特流产生器430产生的差值比特流。
在一个实施例中,如模块770中所示,响应于接收到来自解码器控制单元615的“下偏移”信号,下偏移器650可以通过以因子“m”偏移失真校正比特流(Cs,其可以约等于d),来产生下偏移比特流(Dsd)。在一个实施例中,下偏移差值比特流(Dsd)可以等于(d-m)。在一个实施例中,下偏移差值比特流(Dsd)可以提供为到加法器680的输入。
在一个实施例中,如模块780中所示,响应于接收到来自解码器控制单元615的“误差校正”信号,加法器680可以通过将下偏移比特流(Dsd)加至第一解码比特流,来产生重构比特流。在一个实施例中,重构比特流可以基本类似于原始可视比特流。因此,使用重构比特流的重构图像的品质可以随着峰值信噪比(PSNR)等于阿尔法(α=无穷大)而近乎完美。
在一个实施例中,如模块790中所示,解码器控制单元615可以使得解码器接口610将重构比特流存储在解码器缓冲器135-1的第一部分。在一个实施例中,处理模块110可以获取存储在解码器缓冲器135-1的第一部分中的重构比特流,并且使用重构比特流再造可视信息。在一个实施例中,再造可视信息可以基本上类似于由原始可视比特流表示的可视信息。此外,JPEG-LS压缩技术可以提供低复杂和高压缩性能。
图8A和图8B中分别示出了针对计算机图形和逼真图像的标准JPEG-LS和H.264/AVC的率失真曲线图。在图8A中,PSNR是沿着y轴810绘制的,而以MBps为单位的比特率是沿着x轴820绘制的。绘制线830可以表示对于200至800MBps的比特率变化的H.264/AVC压缩技术的变化。绘制线830示出了针对200至800MBps的比特率变化,PSNR的变化处于32.5与45之间。在一个实施例中,绘制线840可以表示对于200至600MBps的比特率变化,标准JPEG-LS压缩技术的变化。在一个实施例中,绘制线840示出了针对200至600MBps的比特率变化,PSNR的变化处于39与49之间。可以容易地发现,JPEG-LS-LS情况下的计算机图形的PSNR高于H.264/AVC压缩技术的PSNR。
在图8B中,PSNR是沿着y轴810绘制的,而以MBps为单位的比特率是沿着x轴820绘制的。绘制线880可以表示对于200至800MBps的比特率变化的H.264/AVC压缩技术的变化。绘制线880示出了针对200至800MBps的比特率变化,PSNR的变化处于37.5与47之间。在一个实施例中,绘制线860可以表示对于200至750MBps的比特率变化,标准JPEG-LS压缩技术的变化。在一个实施例中,绘制线860示出了针对200至750MBps的比特率变化,PSNR的变化处于35与50之间。可以容易地发现,对于在JPEG-LS-LS情况下的逼真图像的PSNR高于H.264/AVC压缩技术的PSNR。
图9中示出了针对不同损失因子“n1”、“n2”、“n3”等的可调节压缩JPEG-LS和标准JPEG-LS的性能曲线图。在一个实施例中,绘制标记沿着x轴920的测试影片和沿着y轴910的压缩率(CR)的变化的图。在一个实施例中,绘制线930表示在使用标准JPEG-LS压缩技术时,对于不同测试影片(诸如电影、微风、高尔夫球、勒拿河(lena)、飞机、狒狒以及胡椒粉)的压缩率的变化。在一个实施例中,绘制线940、950、970以及980分别表示在使用具有损失因子n=1、n=2、n=3以及n=4的可调节JPEG-LS压缩技术时,对于不同测试影片(诸如电影、微风、高尔夫球、勒拿河(lena)、飞机、狒狒以及胡椒粉)的压缩率的变化。可以注意到,对于可调节JPEG-LS压缩技术的每个测试影片的压缩率随着损失因子“n”变化。例如,对于针对损失因子n=1、2、3以及4的可调节JPEG-LS压缩技术而言,标准JPEG-LS压缩技术的电影的压缩率分别是2.7(951)、2.55(941)、2.38(971)以及2.2(981)。
在一个实施例中,用于测试影片的第一比特流和第二比特流的大小(总数的百分比)可以提供如下:
电影:P1=49%;Dsu=51%
微风:P1=45%;Dsu=55%
高尔夫球:P1=46%;Dsu=54%
勒拿河:P1=59%;Dsu=41%
飞机:P1=54%;Dsu=46%
狒狒:P1=69%;Dsu=31%
胡椒粉:P1=61%;Dsu=39%
参照图10,计算机系统1000可包括通用处理器1002,该通用处理器1002包括单指令多数据(SIMD)处理器以及图形处理器单元(GPU)1005。在一个实施例中,处理器1002除了执行各种其它任务或存储指令序列以提供机器可读存储介质1025中的增强操作之外,还可以通过获取存储在机器可读存储介质1025中的可调节JPEG-LS压缩码1026,来支持上述可调节JPEG-LS压缩技术。然而,指令序列也可以存储在存储器1020中或任何其它合适的存储介质中。在一个实施例中,可以由处理器1002或GPU1005来支持上述的可调节JPEG-LS压缩技术。
尽管图10中示出了分开的图形处理器单元GPU1005,但是,在某些实施例中,作为另一示例,处理器1002可以用于执行增强操作。操作计算机系统1000的处理器1002可以是耦合至逻辑1030的一个或多个处理器核心。逻辑1030可以耦合至一个或多个可以为计算机系统1000提供接口的I/O设备1060和1070。例如,在一个实施例中,逻辑1030可以是芯片组逻辑。逻辑1030耦合至存储器1020,该存储器1020可以是任意种类的存储器,包括光学、磁性或半导体存储器。图形处理器单元1005通过帧缓冲器耦合至显示器1040,该帧缓冲器可以存储编解码器1071中的缓冲器的内容。
在此描述的可调节JPEG-LS技术可以以各种硬件架构来实现。在一个实施例中,可以使用编解码器1071中的编码器-解码器组合来实现可调节JPEG-LS压缩技术。在一个实施例中,当NIC1070处于发送模式时,编解码器1071可以使用由CPU1002或GPU1005产生的原始可视比特流来产生第一和第二比特流,并且将包括第一和第二比特流的全局比特流提供至信道接口1074。在一个实施例中,当NIC1070处于接收模式时,编解码器1071可以使用从信道接口1074接收的至少部分全局比特流来产生第一解码比特流和/或失真校正比特流。在一个实施例中,编解码器1071可以使用第一解码比特流和/或失真校正比特流来产生重构比特流。例如,可调节JPEG-LS压缩技术可以集成在逻辑1030中。可替换地,可以使用分立或集成的图形处理器。作为另一实施例,可以由通用处理器来实现可调节JPEG-LS压缩技术,该通用处理器包括多核处理器或作为存储在机器可读介质中的一组软件指令。
在一个实施例中,计算机系统1000可以表示台式计算机系统、膝上型计算机系统、相机系统、蜂窝电话、移动互联网设备(MID)、上网本、个人数字处理(PDA)或任何其它这类的类似系统。在一个实施例中,计算机系统1000可以支持基于软件的应用,该应用可以使用可调节JPEG-LS压缩技术。
Claims (12)
1.一种执行压缩的方法,包括:
接收表示可视信息的原始可视比特流;
通过使用具有损失因子的JPEG-LS压缩技术压缩所述原始可视比特流,来产生第一比特流;
确定所述原始可视比特流和所述第一比特流之间的差值,以产生差值比特流;
通过使用无损JPEG-LS压缩技术压缩所述差值比特流,来产生第二比特流;
产生至少包括所述第一比特流和所述第二比特流的全局比特流;以及
在通信信道上发送所述全局比特流之前,转换所述全局比特流以支持多流和优先传输,其中,相比于所述全局比特流中的所述第二比特流,针对所述全局比特流中的所述第一比特流使用更强的误差校正码,
其中,所述全局比特流用于,在接收端上被接收到之后再造可视显示,其中,所述可视显示是使用重构的比特流来再造的,所述重构的比特流是使用至少第一解码比特流产生的,其中,所述第一解码比特流是通过使用无损JPEG-LS压缩技术解压缩从所接收到的全局比特流中提取出的所述第一比特流产生的。
2.根据权利要求1所述的方法,其中,所述重构的比特流是通过将失真校正比特流加至所述第一解码比特流产生的,其中,所述失真校正比特流是通过使用无损JPEG-LS压缩技术解压缩从所接收到的全局比特流中提取出的所述第二比特流产生的。
3.根据权利要求1所述的方法,其中,通过使用无损JPEG-LS压缩技术压缩所述差值比特流来产生第二比特流包括通过使用无损JPEG-LS压缩技术压缩所述差值比特流的上偏移版本来产生所述第二比特流,其中,所述上偏移版本是通过以所述损失因子偏移所述差值比特流产生的,其中,执行偏移所述差值比特流以恢复所述差值比特流的像素值的范围。
4.根据权利要求2所述的方法,其中,被加至所述第一解码比特流的所述失真校正比特流是该失真校正比特流的下偏移版本,其中,所述下偏移版本是通过使用所述损失因子偏移所述失真校正比特流来产生的。
5.一种执行压缩的装置,包括:
用于接收表示可视信息的原始可视比特流的单元;
用于通过使用具有损失因子的JPEG-LS压缩技术压缩所述原始可视比特流,来产生第一比特流的单元;
用于确定所述原始可视比特流和所述第一比特流之间的差值,以产生差值比特流的单元;
用于通过使用无损JPEG-LS压缩技术压缩所述差值比特流,来产生第二比特流的单元;
用于产生至少包括所述第一比特流和所述第二比特流的全局比特流的单元;以及
用于在通信信道上发送所述全局比特流之前,转换所述全局比特流以支持多流和优先传输的单元,其中,相比于所述全局比特流中的所述第二比特流,针对所述全局比特流中的所述第一比特流使用更强的误差校正码,
其中,所述全局比特流用于,在接收端上被接收到之后再造可视显示,其中,所述可视显示是使用重构的比特流来再造的,所述重构的比特流是使用至少第一解码比特流产生的,其中,所述第一解码比特流是通过使用无损JPEG-LS压缩技术解压缩从所接收到的全局比特流中提取出的所述第一比特流产生的。
6.根据权利要求5所述的装置,其中,所述重构的比特流是通过将失真校正比特流加至所述第一解码比特流产生的,其中,所述失真校正比特流是通过使用无损JPEG-LS压缩技术解压缩从所接收到的全局比特流中提取出的所述第二比特流产生的。
7.根据权利要求5所述的装置,其中,通过使用无损JPEG-LS压缩技术压缩所述差值比特流来产生第二比特流包括通过使用无损JPEG-LS压缩技术压缩所述差值比特流的上偏移版本来产生所述第二比特流,其中,所述上偏移版本是通过以所述损失因子偏移所述差值比特流产生的,其中,执行偏移所述差值比特流以恢复所述差值比特流的像素值的范围。
8.根据权利要求6所述的装置,其中,被加至所述第一解码比特流的所述失真校正比特流是该失真校正比特流的下偏移版本,其中,所述下偏移版本是通过使用所述损失因子偏移所述失真校正比特流来产生的。
9.一种用于执行压缩的装置,包括:
耦合至通信信道的编码器,其中,所述编码器包括:
编码器接口,所述编码器接口用于接收表示可视信息的原始可视比特流,
因子n压缩模块,所述因子n压缩模块耦合至所述编码器接口,其中,所述因子n压缩模块用于通过使用具有损失因子的JPEG-LS压缩技术压缩所述原始可视比特流来产生第一比特流,
差值比特流产生器,所述差值比特流产生器用于通过确定所述原始可视比特流和所述第一比特流之间的差值来产生差值比特流,
无损压缩模块,所述无损压缩模块耦合至所述编码器接口,其中,所述无损压缩模块用于通过使用无损JPEG-LS压缩技术压缩所述差值比特流来产生第二比特流,
其中,所述编码器接口还用于产生至少包括所述第一比特流和所述第二比特流的全局比特流,
其中,所述编码器接口还用于在通信信道上发送所述全局比特流之前,转换所述全局比特流以支持多流和优先传输,其中,相比于所述全局比特流中的所述第二比特流,针对所述全局比特流中的所述第一比特流使用更强的误差校正码,
其中,所述全局比特流用于,在接收端上被接收到之后再造可视显示,其中,所述可视显示是使用重构的比特流来再造的,所述重构的比特流是使用至少第一解码比特流产生的,其中,所述第一解码比特流是通过使用无损JPEG-LS压缩技术解压缩从所接收到的全局比特流中提取出的所述第一比特流产生的。
10.根据权利要求9所述的装置,其中,所述重构的比特流是通过将失真校正比特流加至所述第一解码比特流产生的,其中,所述失真校正比特流是通过使用无损JPEG-LS压缩技术解压缩从所接收到的全局比特流中提取出的所述第二比特流产生的。
11.根据权利要求9所述的装置,其中,通过使用无损JPEG-LS压缩技术压缩所述差值比特流来产生第二比特流包括通过使用无损JPEG-LS压缩技术压缩所述差值比特流的上偏移版本来产生所述第二比特流,其中,所述编码器还包括耦合至所述差值比特流产生器的偏移器,其中,所述偏移器用于通过以所述损失因子偏移所述差值比特流来产生所述上偏移版本,其中,执行偏移所述差值比特流以恢复所述差值比特流的像素值的范围。
12.根据权利要求10所述的装置,其中,被加至所述第一解码比特流的所述失真校正比特流是该失真校正比特流的下偏移版本,其中,所述下偏移版本是通过使用所述损失因子偏移所述失真校正比特流来产生的。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/RU2009/000578 WO2011053178A1 (en) | 2009-10-27 | 2009-10-27 | Scalable compression using jpeg-ls |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102687509A CN102687509A (zh) | 2012-09-19 |
CN102687509B true CN102687509B (zh) | 2016-08-03 |
Family
ID=42357526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200980163183.6A Expired - Fee Related CN102687509B (zh) | 2009-10-27 | 2009-10-27 | 使用jpeg-ls的可调节压缩 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9105074B2 (zh) |
KR (1) | KR20120083501A (zh) |
CN (1) | CN102687509B (zh) |
WO (1) | WO2011053178A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011053178A1 (en) | 2009-10-27 | 2011-05-05 | Intel Corporation | Scalable compression using jpeg-ls |
CN102970531B (zh) * | 2012-10-19 | 2015-04-22 | 西安电子科技大学 | Jpeg-ls近无损图像压缩编码器硬件实现方法 |
KR102085270B1 (ko) * | 2013-08-12 | 2020-03-05 | 삼성전자 주식회사 | 가장 작은 왜곡 값을 갖는 해상도를 선택하는 이미지 처리 방법과 상기 방법을 수행하는 장치들 |
CN109218726B (zh) * | 2018-11-01 | 2020-04-07 | 西安电子科技大学 | 激光诱导击穿光谱图像有损无损联合压缩方法 |
CN114205584A (zh) * | 2020-09-17 | 2022-03-18 | 华为技术有限公司 | 一种图像处理方法、装置、设备及计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1457551A (zh) * | 2001-03-05 | 2003-11-19 | 皇家菲利浦电子有限公司 | 压缩信号的设备和方法 |
CN101132531A (zh) * | 2006-08-21 | 2008-02-27 | 美国西门子医疗解决公司 | 用于医学图像的基于快速jpeg-ls的压缩方法 |
CN101442673A (zh) * | 2008-12-19 | 2009-05-27 | 太原理工大学 | 贝尔模板图像编码与解码方法 |
CN101449278A (zh) * | 2003-12-05 | 2009-06-03 | 新泽西理工学院 | 在空间域中的健壮可逆数据隐藏和数据恢复的系统和方法 |
CN101490746A (zh) * | 2006-07-18 | 2009-07-22 | 汤姆森许可贸易公司 | 有损编码信号及所述信号的无损编码扩展数据的音频比特流数据结构布置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6198842B1 (en) * | 1997-06-19 | 2001-03-06 | International Business Machines Corporation | Multi-spectral image compression with bounded loss |
JP3469438B2 (ja) * | 1997-08-28 | 2003-11-25 | カスタム・テクノロジー株式会社 | 画像信号の処理方法及び装置、記録媒体 |
EP1185081A1 (de) * | 2000-08-30 | 2002-03-06 | Gretag-Macbeth AG | Verfahren und Vorrichtung zur Herstellung eines digitalen Farbbilds |
ITMO20030053A1 (it) * | 2003-03-04 | 2004-09-05 | Alcom Algoritmi Compressione Dati S Rl | Dispositivo e metodo di codifica e decodifica per la compressione e decompressione di dati digitali. |
WO2011053178A1 (en) | 2009-10-27 | 2011-05-05 | Intel Corporation | Scalable compression using jpeg-ls |
-
2009
- 2009-10-27 WO PCT/RU2009/000578 patent/WO2011053178A1/en active Application Filing
- 2009-10-27 KR KR1020127013516A patent/KR20120083501A/ko not_active Application Discontinuation
- 2009-10-27 US US13/504,572 patent/US9105074B2/en not_active Expired - Fee Related
- 2009-10-27 CN CN200980163183.6A patent/CN102687509B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1457551A (zh) * | 2001-03-05 | 2003-11-19 | 皇家菲利浦电子有限公司 | 压缩信号的设备和方法 |
CN101449278A (zh) * | 2003-12-05 | 2009-06-03 | 新泽西理工学院 | 在空间域中的健壮可逆数据隐藏和数据恢复的系统和方法 |
CN101490746A (zh) * | 2006-07-18 | 2009-07-22 | 汤姆森许可贸易公司 | 有损编码信号及所述信号的无损编码扩展数据的音频比特流数据结构布置 |
CN101132531A (zh) * | 2006-08-21 | 2008-02-27 | 美国西门子医疗解决公司 | 用于医学图像的基于快速jpeg-ls的压缩方法 |
CN101442673A (zh) * | 2008-12-19 | 2009-05-27 | 太原理工大学 | 贝尔模板图像编码与解码方法 |
Non-Patent Citations (1)
Title |
---|
Simple method for enhancing the performance of lossy plus lossless image compression schemes;Nasir D. Memon et. al.;《Journal of Electronic Imaging》;19930731;第2卷(第3期);第245-246页 * |
Also Published As
Publication number | Publication date |
---|---|
US20130142446A1 (en) | 2013-06-06 |
CN102687509A (zh) | 2012-09-19 |
US9105074B2 (en) | 2015-08-11 |
KR20120083501A (ko) | 2012-07-25 |
WO2011053178A1 (en) | 2011-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106899861B (zh) | 一种图片文件处理方法及其设备、系统 | |
CN109600618B (zh) | 视频压缩方法、解压缩方法、装置、终端和介质 | |
US20210211728A1 (en) | Image Compression Method and Apparatus | |
CN101990095B (zh) | 压缩文件生成方法和设备、相关的相机模块和终端 | |
CN106170922B (zh) | 数据的源编码和解码的设备和方法 | |
CN103124350B (zh) | 基于rle的图像压缩方法及装置 | |
CN102687509B (zh) | 使用jpeg-ls的可调节压缩 | |
CN101170685B (zh) | 一种网络视频传输方法 | |
CN103581665A (zh) | 转码视频数据 | |
CN103581684A (zh) | 压缩编码和解码方法及装置 | |
CN111510739A (zh) | 一种视频传输方法及装置 | |
CN109151503B (zh) | 一种图片文件处理方法及其设备 | |
US9819957B2 (en) | Method and apparatus for decoding a progressive JPEG image | |
CN101267566A (zh) | 图像编码方法和装置 | |
CN101395924A (zh) | 利用有损内嵌压缩进行差异编码 | |
CN105306941B (zh) | 一种视频编码方法 | |
US8131091B2 (en) | Method and apparatus for compressing text and image | |
CN110855990B (zh) | 图像编码、解码方法、计算机设备和图像处理系统 | |
KR20070008516A (ko) | 휴대형 단말기에서의 이미지 처리방법 및 장치 | |
CN201418137Y (zh) | 一种星载图像无损压缩处理系统 | |
KR100620606B1 (ko) | 알앤디 최적화를 이용한 제이팩 영상의 양자화 테이블설계방법 | |
CN101141638A (zh) | 用于移动设备的活动图像压缩方法 | |
KR100625670B1 (ko) | 그림 데이터 압축 방법과 장치 및 그 기록매체 | |
CN116896651A (zh) | 码率自适应的视频语义通信方法及相关装置 | |
CN115529465A (zh) | 图像传输方法、系统、装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20160803 Termination date: 20181027 |
|
CF01 | Termination of patent right due to non-payment of annual fee |