CN103491375A - 基于binDCT算法的JPEG压缩*** - Google Patents

基于binDCT算法的JPEG压缩*** Download PDF

Info

Publication number
CN103491375A
CN103491375A CN201310205175.1A CN201310205175A CN103491375A CN 103491375 A CN103491375 A CN 103491375A CN 201310205175 A CN201310205175 A CN 201310205175A CN 103491375 A CN103491375 A CN 103491375A
Authority
CN
China
Prior art keywords
data
module
bindct
coding
input
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.)
Granted
Application number
CN201310205175.1A
Other languages
English (en)
Other versions
CN103491375B (zh
Inventor
刘昊
赵琳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Southeast University
Original Assignee
Southeast University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Southeast University filed Critical Southeast University
Priority to CN201310205175.1A priority Critical patent/CN103491375B/zh
Publication of CN103491375A publication Critical patent/CN103491375A/zh
Application granted granted Critical
Publication of CN103491375B publication Critical patent/CN103491375B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

本发明公开了一种基于binDCT的JPEG压缩***重点改进在压缩算法方面,采用的算法为新兴binDCT算法。在这种算法中,所有系数为二进制和所有的乘法被代替为移位和加法操作,因此可以更简单和快速的通过硬件和软件实现。通过二进制DCT算法降低了DCT转换的复杂性,同时相对传统算法,本发明以牺牲一定的图像质量作为代价,提高图像的压缩率,因而可以广泛应用与类似无线头监控等各种无线多媒体传感网***中。

Description

基于binDCT算法的JPEG压缩***
技术领域
本发明涉及一种图像压缩***,具体涉及一种面向无线传感网的低开销、高压缩率且基于binDCT算法的JPEG压缩***。 
背景技术
从20世纪60年代起,随着电子技术和计算机技术的不断提高和普及,应用数字方法进行图像处理(数字图像处理)进入了高速发展时期。图像的数字化处理表示使得图像信号可以高质量地传输,并便于图像的检索、分析、处理和存储。但是,数字图像的表示需要大量的数据空间,因而必须进行数据压缩编码。 
经过30多年的基础研究,图像压缩编码研究从20世纪80年代末90年代初进入新的时期。一方面进入到实用化的研究,另一方面继续深入理论研究。 
实用化方面的研究集中在国际标准化组织和国际电信联盟ITU联合制订的几个标准上,有力地推动了实用开发工作。于1988年形成草案,1990年通过的ITU-TH.261建议,是图像压缩编码技术走向实用化的重要一步,它是图像压缩编码40年研究成果的结品。进入90年代后相继提出了一系列图像国际压缩编码的标准。这些建议普遍采用的混合编码技术是当今最实用的高效编码方法,得到了广泛的推广与应用。图像压缩技术的发展趋势是:算法更复杂,压缩率更高,JPEG的压缩率在l:20左右,JPEG2000的压缩率将为l:200或更高,MPEG压缩标准也已经过几代发展,从MPEG-1到MPEG-2,到现在的MPEG-4,压缩算法越来越复杂,运算量越来越大,压缩率也越来越高。 
无线多媒体传感器网络(WMSN)是在传统无线传感器网络(WSN)的基础上发展起来的具有音频、视频、图像等多媒体信息感知功能的新型传感器网络。在无线多媒体传感网中,拥有一个高效的处理视频流的JPEG IP核十分重要。 
在无线多跳的环境中,未压缩的原始视频流需要极大的带宽。因此,很明显对于多媒体传感器网络需要有效的无损压缩技术。传统的应用于无线和有线的视频编码技术是基于通过源编码器采用统计学方法减少比特产生速 率。为达到这个目的,编码器通过帧内压缩技术减少一帧内的冗余信息,同时也有采用帧间压缩技术(也称为预测编码或运动估计)减少连续振之间的冗余信息。 
国际上对JPEG编码器的研究主要是集中在这几个方面:压缩算法改进,可重构芯片以及IP核重架构。动态可重构允许在运行时有选择的替代某些逻辑块,用以提高FPGA的面积利用率。关于可重构芯片的方法。一般是基于混合硬件/软件架构。将其中计算密集型的应用程序组件映射到特定的硬件内核中。这些内核同台的分配FPGA资源。而剩余的由软件实现。通过这种方法以牺牲少量性能的方式来减少更多的面积。再有就是通过修改IP核的架构来实现低开销的编码器,例如Qihui Zhang提到一种新的架构方式,将二维DCT计算模块利用分别的部分允许两个一维连续变换进行行列分解,其中间结果与一个平行内存换位,可达到较高的运行频率,并通过额外的SIPO,PISO以及寄存器bank来实现。 
但是目前的JPEG的研究热点为优化处理器速度和得到高质量的图像。此种设计和无线传感网的低开销和图像高压缩率要求相悖,并且这些方法具有较高的复杂度,实现较为复杂。 
发明内容
本发明目的在于针对现有技术所存在的不足提供一种基于binDCT算法的JPEG压缩***,其解决了目前图像压缩***的低压缩率、高开销和高复杂度等问题。 
为了解决现有技术中的这些问题,本发明提供的技术方案是: 
一种基于binDCT算法的JPEG压缩***,所述JPEG压缩***包括binDCT模块、Zigzag模块、量化模块、编码模块和控制器模块,在***工作过程中, 
binDCT模块根据binDCT算法,将输入的8×8数据块进行binDCT变换,并将输出数据送入Zigzag模块; 
Zigzag单元将输入的变换后的矩阵按照Zigzag的顺序重新排列,然后将输出数据送至量化模块; 
量化模块将输出数据乘以量化矩阵的倒数矩阵,完成量化后将数据输入至编码模块; 
编码模块将量化模块输出数据拆分为直流分量和交流分量,对直流分量和交流分量采用不同的编码方式,分别完成差分编码和变长编码以及墒编码;控制模块负责产生所有模块的逻辑控制信号和时序控制信号,最后将编码的数据进行输出。 
对于上述技术方案,发明人还有进一步的优化实施方案。 
作为优化,binDCT模块在对图像数据进行离散余弦变换的时候采用binDCT矩阵,将DCT变换的所有乘法操作变换为移位和加法操作,binDCT模块将数据每八个作为一组,先进行行变换后,再进行列变化,完成一维变换后,再进行二维变换,最终完成binDCT变换。 
作为优化,Zigzag模块采用了两个ram,采用乒乓操作,乒乓操作的处理主要是把输入数据流通过输入数据选择单元等时地分配到数据缓冲区zigram0和zigram1中。 
更进一步,Zigzag模块首先将输入的数据流缓存到zigram0,然后通过输入数据选择,进行切换,并将输入的数据流缓存到zigram1,与此同时,还要将zigram0的数据通过输出数据选择单元的选择,送到量化模块进行处理;之后再在第三个周期通过输入数据选择单元的再次切换,将输入的数据流缓存到zigram0,与此同时,再一次将zigram1的数据通过输出数据选择单元的切换,送到量化模块进行处理;如此循环,周而复始。 
作为优化,量化模块的量化器不断产生地址信号,从量化系数表中读取量化系数,量化系数表包括存放亮度信号Y的量化系数表和色度信号UV的两个量化系数表,在量化系数表中存放的是相应量化步长的倒数,量化模块直接将binDCT系数与读取的量化系数相乘。 
作为优化,编码模块将数据拆分为DC分量和AC分量;其中DC值采用差分编码的方式,经过量化后的AC数据会出现大量连续的零,对AC数据用游程编码(RLE),大量的零就可以用比较少的数据来表示,减少使用的比特数,然后对AC数据进行VLC编码,根据VLI码的大小进行哈夫曼编码,而AC分量进行VLC编码,根据AC系数的VLC码的大小和游程长度从哈夫曼码表中查得相应的哈夫曼码 
作为优化控制器模块为通过用户输入8个寄存器控制整个编码,通过用户设定输入图像的MCU格式和数量、每个分量对应的量化表和哈夫曼表以 及产生编码开始和停止信号等,对整个编码过程进行时序和逻辑控制。 
相对于现有技术中的方案,本发明的优点是: 
本发明所描述的基于binDCT的JPEG压缩***重点改进在压缩算法方面,采用的算法为新兴binDCT算法。在这种算法中,所有系数为二进制和所有的乘法被代替为移位和加法操作,因此可以更简单和快速的通过硬件和软件实现。通过二进制DCT算法降低了DCT转换的复杂性,同时相对传统算法,本发明以牺牲一定的图像质量作为代价,提高图像的压缩率,因而可以广泛应用与类似无线头监控等各种无线多媒体传感网***中。 
附图说明
下面结合附图及实施例对本发明作进一步描述: 
图1为本发明实施例的JPEG压缩***的总体结构示意图;
图2为本发明实施例中的binDCT矩阵;
图3为本发明实施例中的binDCT模块框图;
图4是本发明实施例中的像素矩阵输入顺序;
图5是本发明实施例中的Zigzag模块框图;
图6是本发明实施例中的量化模块框图;
图7是本发明实施例中的编码模块框图;
图8是本发明实施例中的huff模块状态机框图;
图9是本发明实施例中的pack模块状态机框图;
图10是本发明实施例中的控制器模块框图。
具体实施方式
以下结合具体实施例对上述方案做进一步说明。应理解,这些实施例是用于说明本发明而不限于限制本发明的范围。实施例中采用的实施条件可以根据具体厂家的条件做进一步调整,未注明的实施条件通常为常规实验中的条件。 
实施例: 
本实施例描述了一种基于binDCT算法的JPEG压缩***,其总体结构如图1所示,所述JPEG压缩***包括binDCT模块、Zigzag模块、量化模 块、编码模块和控制器模块,在***工作过程中, 
binDCT模块根据binDCT算法,将输入的8×8数据块进行binDCT变换,并将输出数据送入Zigzag模块; 
Zigzag单元将输入的变换后的矩阵按照Zigzag的顺序重新排列,然后将输出数据送至量化模块; 
量化模块将输出数据乘以量化矩阵的倒数矩阵,完成量化后将数据输入至编码模块; 
编码模块将量化模块输出数据拆分为直流分量和交流分量,对直流分量和交流分量采用不同的编码方式,分别完成差分编码和变长编码以及墒编码;控制模块负责产生所有模块的逻辑控制信号和时序控制信号,最后将编码的数据进行输出。 
如上所述,整个JPEG压缩***分为两个部分,一个是压缩编码部分,一个是控制部分。压缩编码部分的输入数据为待编码原始数据,经过binDCT模块、Zigzag模块、量化模块、编码模块,最后得到最终数据;控制部分的输入为地址和控制输入,主要是便于配置JPEG IP核的寄存器,对图像编码过程进行控制,控制部分最后得输出数据。 
binDCT模块中的核心变量,binDCT矩阵如图2所示。通过对矩阵观察可以发现,binDCT矩阵具有对称性的特征。将其中一样的值采用系数C0-C11进行替换,可以将矩阵转换。根据binDCT的算法,整个binDCT变换只需要通过加法和移位可以实现,将整个binDCT模块的结构如图3所示。 
binDCT模块包括7个模块。其中dctctrl模块为控制模块,负责产生控制信号,mulh、selecth、sumh三个模块对数据进行一维水平binDCT变换,mulv、selectv、sumv三个模块对数据进行一维垂直binDCT变换。zigram0和zigram1为zigzag模块的外挂ram。dctram为dct模块的外挂ram。mulv和mulh模块负责对输入的像素和binDCT系数矩阵的系数进行相乘。由于采用的是补码运算,因此通过简单的移位和加法,将所有的系数同输入的像素值进行相乘。首先对输入像素减去128。使得输入像素的范围为-128-128之间,为偶函数。输入的为正数,减去128之后,数据可能为负数,因此在减去128的同时需要将负数转换为补码。同时输入的像素输入为八位,为了提高运算精度,需要对数据进行位扩展,最后二维变换完成后,再截去扩展位。 
输入性像素是通过一个一个的8×8的矩阵进行输入的。输入的顺序是按行输入的,如图4所示,输入顺序为X00,X01……X07……X70……X77。 
selcth和selcth的功能是将mulh和mulv相乘得出的结果按照矩阵的顺序进行排列。sumh和sumv模块负责每列相乘的结果加上符号,再进行求和运算。dctctrl模块负责产生selcth、selctv、sumh和sumv模块的控制信号,同时产生dctram的地址信号,完成行变换结果的转置。dctctrl模块的主要输入信号为时钟信号clk,同步的起始信号strt。按行输入的,每一个时钟输入一个像素。dctctrl同时完成了对行变换的转置。分别采用4个三位计数器来实现地址转换。其中ahh和ahl组成了memh信号,avh和avl组成了memv信号,这两个信号分别是dctram的地址输入和输出信号。由于memh信号和memv信号计数方法不同,因此写入地址和读出地址的不同,完成了矩阵的转置。 
Zigzag模块的输入为binDCT模块的输出数据。本发明采用了两个ram,采用乒乓操作。乒乓操作的处理主要是把输入数据流通过输入数据选择单元等时地分配到数据缓冲区zigram0和zigram1中。即首先将输入的数据流缓存到zigram0,然后通过输入数据选择,进行切换,并将输入的数据流缓存到zigram1,与此同时,还要将zigram0的数据通过输出数据选择单元的选择,送到量化模块进行处理。之后,再在第三个周期通过输入数据选择单元的再次切换,将输入的数据流缓存到zigram0,与此同时,再一次将zigram1的数据通过输出数据选择单元的切换,送到量化模块进行处理。如此循环,周而复始。Zigzag模块分为三个部分,两个zigram和一个控制信号产生模块zigzag。它的框图可见图5。 
由于binDCT模块的输出数据并不是Y,而是Y的转置,因此第一步是是利用Zigzag模块对Y进行转置。实现转置非常简单,利用一个计数器x对输入数据进行计数,由于数据输入是按行输入的。只需要将x的高三位和第三位进行颠倒,再进行存储数据,即可以得到Y的转置。第二步用Zigzag模块按照Zigzag的顺序产生读信号。通过对图像进行zigzag排序后,将高频分量和低频分量分离。将矩阵除以JPEG标准中定义的量化矩阵即可得到量化结果。 
但是在硬件电路中,乘法比除法更容易实现,且耗费的硬件电路更少。 因此用乘法代替除法,来代替量化的操作,求得量化矩阵的倒数矩阵。 
由于求倒后,系数较少,因此将存储的系数矩阵的系数放大2n倍后存储。通过这种方式,将除法操作转换为乘法操作。由于图像的不同分量对应不同的量化矩阵,故在JPEG IP核中固化两个量化表,针对不同分量采用不同量化表进行量化。由于系数进行了放大,因此量化表的值存了两个数值,一个为放大后的数,一个为放大2n倍的n。量化模块的框图可见图6。图中f1和f2代表函数。图6中总共有两个函数,f1主要功能是根据控制信号,提前相应的量化表值,将量化表值进行分离,分离为量化表放大值和移位值sh。将zigzag模块的输出和量化表值输入到mul模块中,将两个数进行相乘,完成量化操作。将得到的值muli输入进f2,根据sh的值进行移位操作,右移操作,得到原始值ym。再将ym输入状态机1,将这个数进行取整操作后送到输出,最后得到量化后的值。 
编码模块中,对于数据的DC分量和AC分量采用不同的编码方式。首先对DC分量进行差分编码,然后对结果进行变长编码,同时对AC分量进行变长编码,最后进行哈夫曼编码。最终完成所有数据的编码,将数据打包输出为enc。其中哈夫曼编码,采用的为静态哈夫曼表,即将所需要的表值固化在IP核中。我们将所有的编码相关的模块放在一个总模块中。由于JPEG压缩的处理是按照一个一个的8×8块进行处理的,再输入最后一个处理块的时候,需要一个信号提示为最后一个块,这个信号为last信号。并且不同分量对应不同的哈夫曼表,因此需要一个信号标志当前颜色分量。编码模块的框图可见图7。 
经过量化后的分量输入给变成模块,len模块对其中的DC分量进行差分编码。len模块完成对DC数据的差分编码和AC数据的游程编码。huff模块完成对DC系数的差分值进行VLI编码,对AC系数的值进行VLC编码,并且根据DC系数VLI码的大小,从Huffman码表中查得相应的Huffman码,根据AC系数的VLC码的大小和游程长度从Huffman码表中查得相应的Huffman码。由于从huff模块输出值长度不定,因此需要pack模块进行打包。最后为了让编码后的数据符合JPEG标准,需要对数据添加标志位,这个功能由aflag模块完成。store模块主要负责缓存编码过程中产生的数据,将数据送给aflag模块进行处理。 
len模块主要是完成DC系数的差分编码,并计算数据中的ZRL,以及对AC进行变长编码。len模块中,设计了一个异步FIFO,用以缓存编码数据。 
huff模块的主要功能是计算哈夫曼表值的地址。同时产生ZRL和EOB。每当产生连续16个0系数则产出一个ZRL。为了得到更高的压缩率,所有的ZRL代码被丢弃用一个单一的EOB取代。对于每个数据进行单时钟编码,并将ZRL码推入一个很浅的FIFO中,如果模块以0值终结,则刷新并被EOB码代替。从哈夫曼表中提取的哈夫曼值传递给pack模块进行打包。 
在进行哈夫曼编码的时候,需要根据特殊情况进行特别处理,例如在编码最后或者需要***重启标志位的时候。因此在模块内部设计一个状态机进行模拟。状态机的框图可见图8。 
总共设计了6种状态,分别是waits、normal、padr、padf、restrt和flsh。其中waits状态为等待状态,在模块同步重启或者异步重启或者清除信号有效的时候,一直为这个状态。当len模块的FIFO不为空的时候,意味着stuff模块有数据进行处理的时候,进入normal状态。当初始寄存器设计为***重启位的时候,即restart信号有效的时候,进入padr状态,准备***重启标志位。padr状态后,***重启标志位,完成后进入normal状态。在normal状态中,若已经处理到最后一个处理块的时候,若最后编码得到的数据不到32位,需要进行位填充,满足字节对齐的条件,因此若final_sig为1的时候,进入padf状态。padf状态完成后,需要补充EOB标志位,进入flsh状态。 
pack模块主要是完成将编码后的哈夫曼码值(hcode)和len模块计算得到的DC和AC变长编码后的值(fvalue)进行打包,打包成32位的数据进行输出。pack模块中的状态机主要目的是区分重启标志位***状况。状态机框图可见图9。 
从图9可以看到,总共有idle、restrt、flushc和flush1四个状态。此状态机是为了***restart标志位和图像结尾的位填充进行服务的。若异步或同步重置或清除信号有效的时候,为idle状态。在idle状态的时候,若flush=1,即需要进行末尾填充的时候,进入flush1状态。根据相应的剩余数据的大小,补充相应大小的0xf,直到补足32位。flush1状态结束后,进入flushc状态, 进行连续的f填充。在idle状态时,若restart=1则进入restrt状态。***额外的32位数据。***完毕后,若flush=1且dout_vldi=1,则进入flushc状态;若flush=1且dout_vldi=0,则进入flush1状态;若flush=0且dout_vldi=1,则进入idle状态,表示reatart标志位***完毕,进入正常编码。 
aflag模块的功能主要是从存储模块读取编码得到的32位数据和它的标志位,同时输出编码数据。通过的它的标志位状态,aflag模块决定是否将为0xff的数据扩展为0xff00。只有当0xff这个比特不为标志位的时候进行。 
store模块包含4bit深度,36bit宽度的FIFO。每个FIFO中包含4字节的数据和4bit的标志位字节。由于最终产生的enc数据为8位数据,故用这个FIFO来缓存编码产生的32位数据。可以同时读写数据,不产生拥堵。 
控制器模块从用户输入的寄存器配置中读取数据,将之转换为相应的时序控制信号和逻辑控制信号。控制模块的框图可见图10。图10中,输入信号为din为用户输入的寄存器配置数据,eover信号来自编码模块。当编码完成的时候产生eover信号。首先从输入寄存器中提取相应的逻辑控制信号输出。得到相应寄存器信号r1-r7和控制寄存器组。同时产生当前的颜色分量信号col1和它的延迟信号col2和模块控制信号nextcomp,代表输入新的颜色组件。然后通过颜色分量选择相应的哈夫曼表,得到哈夫曼表控制信号colh。最后根据colh信号和寄存器配置信号选择相应的当前哈夫曼表hti作为中心模块的输入。其次,产生当前颜色分量数量的控制信号ncol。将此信号通过查询寄存器得到颜色分量数量colsel。再次,将mcu的计数器mcucnt和mc转变为内核启动信号go和内核停止信号stp。图中状态负责生成控制模块的状态。此状态机总共有7个状态。分别为空闲状态ectrl_ewait、开始编码状态ectrl_estart、第一个DCT编码状态ectrl_edctw1、第二个DCT编码状态ectrl_edctw2、第二个DCT编码状态延迟状态ectrl_nx3w、正常编码状态ectrl_enc和最后一个MCU的编码状态ectrl_ende。 
若go信号有效,即内核启动信号有效则进入开始编码状态。若en信号有效,en信号来自于编码模块,当变长编码的FIFO非空且未满的时候有效。进入第一个DCT编码状态。当en=1且nx0=1则进入第二个DCT编码状态。当再次en=1且nx0=1的时候进入ectrl_enx3w状态。当en=1且nx3=1的时候,进入编码状态。当finali信号有效的时候,进入最后一个MCU编码状 态。 
上述实例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人是能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的保护范围之内。 

Claims (7)

1.一种基于binDCT算法的JPEG压缩***,其特征在于,所述JPEG压缩***包括binDCT模块、Zigzag模块、量化模块、编码模块和控制器模块,在***工作过程中,
binDCT模块根据binDCT算法,将输入的8×8数据块进行binDCT变换,并将输出数据送入Zigzag模块;
Zigzag单元将输入的变换后的矩阵按照Zigzag的顺序重新排列,然后将输出数据送至量化模块;
量化模块将输出数据乘以量化矩阵的倒数矩阵,完成量化后将数据输入至编码模块;
编码模块将量化模块输出数据拆分为直流分量和交流分量,对直流分量和交流分量采用不同的编码方式,分别完成差分编码和变长编码以及墒编码;控制模块负责产生所有模块的逻辑控制信号和时序控制信号,最后将编码的数据进行输出。
2.根据权利要求1所述的基于binDCT算法的JPEG压缩***,其特征在于,binDCT模块在对图像数据进行离散余弦变换的时候采用binDCT矩阵,将DCT变换的所有乘法操作变换为移位和加法操作,binDCT模块将数据每八个作为一组,先进行行变换后,再进行列变化,完成一维变换后,再进行二维变换,最终完成binDCT变换。
3.根据权利要求1所述的基于binDCT算法的JPEG压缩***,其特征在于,Zigzag模块采用了两个ram,采用乒乓操作,乒乓操作的处理主要是把输入数据流通过输入数据选择单元等时地分配到数据缓冲区zigram0和zigram1中。
4.根据权利要求3所述的基于binDCT算法的JPEG压缩***,其特征在于,Zigzag模块首先将输入的数据流缓存到zigram0,然后通过输入数据选择,进行切换,并将输入的数据流缓存到zigram1,与此同时,还要将zigram0的数据通过输出数据选择单元的选择,送到量化模块进行处理;之后再在第三个周期通过输入数据选择单元的再次切换,将输入的数据流缓存到zigram0,与此同时,再一次将zigram1的数据通过输出数据选择单元的切换,送到量化模块进行处理;如此循环,周而复始。
5.根据权利要求1所述的基于binDCT算法的JPEG压缩***,其特征在于,量化模块的量化器不断产生地址信号,从量化系数表中读取量化系数,量化系数表包括存放亮度信号Y的量化系数表和色度信号UV的两个量化系数表,在量化系数表中存放的是相应量化步长的倒数,量化模块直接将binDCT系数与读取的量化系数相乘。
6.根据权利要求1所述的基于binDCT算法的JPEG压缩***,其特征在于,编码模块将数据拆分为DC分量和AC分量;其中DC值采用差分编码的方式,经过量化后的AC数据会出现大量连续的零,对AC数据用游程编码(RLE),大量的零就可以用比较少的数据来表示,减少使用的比特数,然后对AC数据进行VLC编码,根据VLI码的大小进行哈夫曼编码,而AC分量进行VLC编码,根据AC系数的VLC码的大小和游程长度从哈夫曼码表中查得相应的哈夫曼码。
7.根据权利要求1所述的基于binDCT算法的JPEG压缩***,其特征在于,控制器模块为通过用户输入8个寄存器控制整个编码,通过用户设定输入图像的MCU格式和数量、每个分量对应的量化表和哈夫曼表以及产生编码开始和停止信号等,对整个编码过程进行时序和逻辑控制。
CN201310205175.1A 2013-05-29 2013-05-29 基于binDCT算法的JPEG压缩*** Expired - Fee Related CN103491375B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310205175.1A CN103491375B (zh) 2013-05-29 2013-05-29 基于binDCT算法的JPEG压缩***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310205175.1A CN103491375B (zh) 2013-05-29 2013-05-29 基于binDCT算法的JPEG压缩***

Publications (2)

Publication Number Publication Date
CN103491375A true CN103491375A (zh) 2014-01-01
CN103491375B CN103491375B (zh) 2018-11-02

Family

ID=49831294

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310205175.1A Expired - Fee Related CN103491375B (zh) 2013-05-29 2013-05-29 基于binDCT算法的JPEG压缩***

Country Status (1)

Country Link
CN (1) CN103491375B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103957426A (zh) * 2014-04-11 2014-07-30 河海大学 一种rgb565真彩色图像有损压缩及解压方法
CN110659014A (zh) * 2018-06-29 2020-01-07 赛灵思公司 乘法器及神经网络计算平台

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217665A (zh) * 2008-01-14 2008-07-09 上海广电(集团)有限公司中央研究院 一种视频系数的并行扫描方法
CN101261619A (zh) * 2001-08-30 2008-09-10 诺基亚有限公司 变换及后续量化的实现
CN102036075A (zh) * 2010-12-29 2011-04-27 东南大学 一种图像及数字视频编码及解码方法
US8145000B2 (en) * 2007-10-29 2012-03-27 Kabushiki Kaisha Toshiba Image data compressing method and image data compressing apparatus
CN102547368A (zh) * 2011-12-16 2012-07-04 宁波大学 一种立体图像质量客观评价方法
CN102655593A (zh) * 2011-03-04 2012-09-05 Vixs***公司 具有通用视频解码装置的视频解码器和与该解码器一起使用的方法
CN102801947A (zh) * 2012-07-02 2012-11-28 西南科技大学 一种基于h264的语义信息传输与保护方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101261619A (zh) * 2001-08-30 2008-09-10 诺基亚有限公司 变换及后续量化的实现
US8145000B2 (en) * 2007-10-29 2012-03-27 Kabushiki Kaisha Toshiba Image data compressing method and image data compressing apparatus
CN101217665A (zh) * 2008-01-14 2008-07-09 上海广电(集团)有限公司中央研究院 一种视频系数的并行扫描方法
CN102036075A (zh) * 2010-12-29 2011-04-27 东南大学 一种图像及数字视频编码及解码方法
CN102655593A (zh) * 2011-03-04 2012-09-05 Vixs***公司 具有通用视频解码装置的视频解码器和与该解码器一起使用的方法
CN102547368A (zh) * 2011-12-16 2012-07-04 宁波大学 一种立体图像质量客观评价方法
CN102801947A (zh) * 2012-07-02 2012-11-28 西南科技大学 一种基于h264的语义信息传输与保护方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
李扬: "基于LFSR重新播种的SoC测试数据压缩方法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *
钟广军、成礼智、陈火旺: "双正交重叠交换的整数实现算法与图形压缩", 《电子学报》 *
陈孟儒: "JPEG图像压缩算法的VLSI低功耗实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103957426A (zh) * 2014-04-11 2014-07-30 河海大学 一种rgb565真彩色图像有损压缩及解压方法
CN110659014A (zh) * 2018-06-29 2020-01-07 赛灵思公司 乘法器及神经网络计算平台
CN110659014B (zh) * 2018-06-29 2022-01-14 赛灵思公司 乘法器及神经网络计算平台

Also Published As

Publication number Publication date
CN103491375B (zh) 2018-11-02

Similar Documents

Publication Publication Date Title
CN101908035B (zh) 视频编解码方法、gpu及其与cpu的交互方法及***
US5659362A (en) VLSI circuit structure for implementing JPEG image compression standard
CN102088603B (zh) 用于视频编码器的熵编码器及其实现方法
CN105120293A (zh) 基于cpu和gpu的图像协同解码方法及装置
GB2530311A (en) Data compression
CN105578190A (zh) 应用于视频硬解码的无损压缩方法及***
CN1235483A (zh) 预测滤波器
CN101431691A (zh) 高动态范围图像的快速并行压缩方法
CN103491375B (zh) 基于binDCT算法的JPEG压缩***
CN1258169A (zh) 流水线离散余弦变换设备
WO2020114283A1 (zh) 数据处理方法及装置
CN100370835C (zh) 用于视频数据压缩的***和方法
CN103152567A (zh) 一种任意阶数指数哥伦布编码器及其方法
Lienhart et al. An FPGA-based video compressor for H. 263 compatible bit streams
CN105472395B (zh) 一种基于离散Krawtchouk正交多项式的图像无损压缩方法
CN1207917C (zh) 适用于jpeg2000标准的高速低功耗mq编码器
Sarkhawas et al. Variable quality factor jpeg image compression using dynamic partial reconfiguration and microblaze
Husemann et al. Optimized solution to accelerate in hardware an intra H. 264/SVC video encoder
CN101458679A (zh) 统一反向离散余弦变换(idct)微码处理器引擎
CN105007490B (zh) 基于OmapL138芯片的Jpeg压缩算法
CN100563341C (zh) 图像和视频编码中多尺度兼容处理装置及其方法
Liu et al. A high throughput JPEG2000 entropy decoding unit architecture
TWI524778B (zh) H.264視訊編碼器
CN112073729B (zh) 模型更新方法、装置、电子设备及计算机可读存储介质
KR20030047769A (ko) 향상된 산술 코딩/디코딩을 위한 장치

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20181102

Termination date: 20200529