空间维独立的干涉多光谱图像无损及近无损编码方法

文档序号:7596779阅读:256来源:国知局
专利名称:空间维独立的干涉多光谱图像无损及近无损编码方法
技术领域
本发明涉及图像压缩编码技术领域,特别是一种空间维独立的无损、近无损编码方法,用于各种干涉多光谱图像的压缩编码。
背景技术
随着航天遥感技术和卫星成像技术的迅速发展,出现了一种新型遥感技术——光谱成像技术,引发了卫星遥感技术领域的革命性的飞跃。光谱成像技术将光学、光谱学、精密机械、电子技术以及计算机技术融于一体,能获得被测目标的空间维和光谱维的丰富信息,因而在经济建设和军事上均有极高的应用价值。它利用成像光谱仪在连续光谱段上对同一目标同时成像,从而直接反映出被观测对象的光谱特征。
成像光谱仪(Imaging Spectrometer)是一种新型的航空遥感设备,兼有成像仪和光谱仪的功能,可以同时获得两维空间信息与一维光谱信息,其成像原理如图8所示。成像光谱仪中,一束入射光线经过干涉仪,分解成两束具有一定光程差的光线并进行干涉叠加。成像光谱仪采用行推扫的方式产生干涉图像,由于在一行上各点的光程差不同,从而在成像平面形成具有数条状干涉条纹的多光谱图像。在成像时,地面的一个点形成一列光谱,当载有成像光谱仪的飞行器扫过地面上的一列光点时,就得到一幅完整的干涉多光谱图像,飞行器不断的推扫,形成一系列干涉多光谱图像。根据傅里叶变换光谱学的原理,干涉图与光源的光谱分布之间存在傅里叶变换关系。
根据成像原理,干涉多光谱图像具有以下两个特点1.干涉多光谱图像具有很高的空间分辨率和光谱分辨率,数据量很庞大。目前的地面分辨率可达8米,光谱分辨率可达三百个谱段,且随着成像光谱仪分辨率的提高,图像数据急剧增加,这些对实时传输和记录都造成巨大的压力。众所周知,所需要传输的庞大的图像数据率与有限的卫星数传能力是一对矛盾,为了解决这个矛盾,就必须采用图像压缩编码技术来满足图像数据实时传输的要求。在实际应用中,压缩过程要求在星上进行,所以采用的压缩编码方法的复杂度不能过高,否则不利于实现实时压缩。
2.干涉多光谱图像具有较弱的空间相关性和较强的谱间相关性,另外它在水平及垂直方向的相关程度不同,垂直方向相关程度高于水平方向相关程度。基于此,在对干涉多光谱图像进行压缩编码时,应充分利用其谱间相关性进行去相关。
另外,考虑实际信道传输的情况,干涉多光谱图像经压缩编码后形成的码流通过卫星信道下传时,由于信道的不稳定,有可能出现误比特的情况。而错误的比特信息就会对恢复图像的重建产生错误传播,降低了恢复图像的质量。因此,在对多光谱图像进行压缩编码时,应保证采用的压缩编码方法具有良好的抗误码性能。
目前针对干涉多光谱图像压缩编码方法的研究,在国内外都尚不多见。比如法国学者Corinne Mailhes、Paul Vermande、Francis Castanie在1990年J.Optics(Paris)期刊发表的文章Spectral Image Compression(vol.21,No.3,1990,pp.121-132)中提出的基于AR模型的干涉多光谱图像压缩编码方法。该方法是对干涉多光谱图像的每一列光谱采用AR模型进行预测拟合,然后对拟合的差值进行量化编码。假如图像数据精度为12比特,预测采用10阶AR模型,则原始数据中的第1个点不进行编码,直接12比特输出,紧接着9个预测点的值分别量化为8比特输出,后续的拟合差值均量化为2比特输出。该方法能比较有效的对干涉多光谱图像数据进行压缩,并且对各列光谱独立编码,有较强的抗误码能力。但是,AR模型的建立过程比较复杂,相应的计算复杂度很高,若采用40阶AR模型,需40×40阶矩阵的乘除运算,并且,该方法不能自适应调整AR模型的系数,对每一列光谱进行压缩时都需要重新建立AR模型,计算相应的AR模型系数,如此复杂的运算不利于星上的实时编码。若减少AR模型的阶数,可相应的降低运算量,但预测精度也随之降低,导致量化效果变差,恢复图像质量降低。可见该方法的编码效率比较低。
另外,国际流行的无损近无损图像压缩标准JPEG-LS也可用于对干涉多光谱图像的压缩。该方法是一种基于自适应预测、上下文模型和Golomb编码的空域压缩算法,采用上下文模型对当前输入的数据进行分类,选择不同的编码方式及相应的编码控制,编码当前像素时,先扫描过去的数据,以前面接收的像素为条件,通过分配当前像素的条件概率,推测出当前像素值。在编码时,将较短的码字分配给概率较大的事件,相应的概率较小的事件分配以较长的码字。由于JPEG-LS采用了上下文建模和自适应编码技术,其编码效率相当高,在无误码的情况下,其压缩性能优于其它无损压缩方法。但是,JPEG-LS在编码过程中没有作任何变换,而是基于预测思想,其解码完全依赖于已解码数据,因此,在传输压缩码流过程中一旦出现比特错误,对应样点的错误重建将导致上下文出错,并影响上下文的自适应调整出错,从而导致误码传播,致使后续解码不正确。可见,JPEG-LS不具有抗误码的能力,不适宜对干涉多光谱图像的压缩。
发明的技术方案本发明的目的是提供一种空间维独立的干涉多光谱图像无损近无损编码方法,以克服现有方法在对干涉多光谱图像进行压缩编码时算法复杂度高、编码效率低、抗误码能力差和恢复图像质量较低的不足。
实现本发明目的的技术关键是对干涉多光谱图像按空间维划分成独立的光谱列,对每一列光谱独立进行编码,并设计有效的压缩码流结构,以实现无损、近无损压缩,并将误码扩散限定在一列范围内。
本发明首先根据输入图像的宽度、高度确定图像压缩码流的结构,再根据该码流的结构按如下步骤进行编码进行编码第一步,根据输入图像的宽度、高度、图像数据精度、所需压缩倍数及压缩包包头长度确定总编码门限T,即T=w×h×pr-l]]>其中w为原始图像的宽度h为原始图像的高度p为图像数据的精度r为所需的压缩倍数l为压缩包包头长度;第二步,由输入图像数据的最大值确定出整幅图像的最大比特平面数max_bp;第三步,根据所述最大比特平面数max_bp,对输入图像的所有数据进行预处理,即首先对所有图像数据进行循环移位,然后沿空间维方向将每一列数据按比特平面的重要性拆分成两列数据,即重要比特平面序列和非重要比特平面序列,并计算非重要比特平面中的有效平面数valid_bp;第四步,对所有重要比特平面序列进行编码,即对每一列重要比特平面序列sigsi差分处理后,再进行游程编码,并随时将当前编码输出的总比特数与总编码门限T进行比较,如果当前编码输出的总比特数达到总编码门限T,则停止编码并打包输出所有编码码流;如果所有重要比特平面序列全部编码结束后,仍未达到总编码门限T,则进行第五步;第五步,对非重要比特平面序列进行编码,使编码输出的总比特数达到总编码门限T或者对所有非重要比特平面序列全部编码完毕,停止全部编码,并打包输出所有编码码流。
上述图像压缩码流分为一系列独立的压缩包,每个压缩包包括包头和压缩包码流,包头长度固定,压缩包码流长度与输入图像相关,该压缩包码流进一步分为码流头信息和编码比特流。该码流头信息包括原始图像的最大比特平面数max_bp、所有重要比特平面序列的编码比特平面数表bp及实际编码比特长度表len,该长度表len重复存储最少3遍,其中最大比特平面数max_bp和各个重要比特平面序列的编码比特平面数的最佳表示位数均为4比特,各个重要比特平面序列的编码长度的最佳表示位数为11比特;该编码比特流包括重要比特平面编码比特流和非重要比特平面编码比特流,该重要比特平面编码比特流由多列重要比特平面序列比特流组成,每一列比特流又分为结构相同的多组,每一组包括k个符号位以及k个点在m个重要比特平面的编码输出比特。
上述循环移位处理是将所有输入图像数据循环左移(N-max_bp)位,N为图像数据的精度,使简单图像数据中的重要部分均位于较高的比特平面,优先对其进行编码,以满足无损压缩的要求。
上述第三步中计算非重要比特平面中的有效平面数valid_bp是根据整幅图像的最大比特平面数max_bp与重要比特平面的个数m的比较结果进行计算,即max_bp>m,则valid_bp=max_bp-m;max_bp≤m,则valid_bp=0。
上述第四步中的差分处理是依次将每一列重要比特平面序列sigsi中每一个点的值减去前一个点的值,得到一个相应的差分序列ssi,具体计算公式为,
其中sigsi(j)为重要比特平面序列sigsi中第j个点的值ssi(j)为差分序列ssi中第j个点的值sign(j)为ssi(j)相应的符号位。
上述第四步中的游程编码过程为(1)统计差分序列ssi的最大比特平面数,作为本列的编码比特平面数;(2)将差分序列ssi按每k个点一组分割成t组依次编码,要求满足k×t=h,h为图像的高度;(3)对每一组,先依次输出k个点的符号位,再按比特平面由高到低的顺序编码每一个比特平面上的k个比特,如果该k比特全部为0,则输出一个0比特,否则先输出一个1比特,然后依次输出该k比特,直到编完该差分序列ssi所有的点或者到达总编码门限T结束编码;(4)将本列的编码比特平面数和本列的实际编码长度写入码流头信息。
上述第五步中对非重要比特平面序列errsi的编码是,对非重要比特平面,按比特平面由高到低的顺序依次扫描,在当前比特平面上,如果valid_bp等于0,结束全部编码;如果valid_bp大于0,按列依次输出各非重要比特平面序列在当前比特平面上的所有比特,并将valid_bp减1后进入下一个比特平面的编码过程,直到valid_bp为0或者达到总编码门限T,结束全部编码。
本发明由于没有复杂的矩阵运算或者上下文预测,因而相对于现有技术,复杂度低,硬件实现简单,编码速度和效率都比较高,且恢复图像质量满足应用要求。表1给出了本发明对10幅实测的干涉多光谱图像进行2倍压缩时的实际压缩倍数和恢复图像峰值信噪比。由表1可见,在2倍压缩时恢复图像的峰值信噪比(PSNR)均能达到60dB左右,足以满足应用要求,同时可见对一些简单图像还可以实现无损压缩。此外,由于本发明采取了空间维独立的编码方法,以及对所有重要比特平面序列sigsi的编码比特长度表len重复存储的方法,使得当码流在信道传输过程中产生比特误码时,无论该误码位于码流的头信息还是压缩比特流中,图像重建时的误码扩散都被限定在一列范围之内,大大提高了抗误码能力,如图6、7所示。本发明非常适合于星上干涉多光谱图像的无损、近无损实时压缩应用。
表1峰值信噪比



图1是本发明的编码流程框2本发明的硬件系统示意3是本发明对一列光谱进行高低位拆分预处理的示意4是本发明编码码流的结构框5(a)是本发明任意一列重要比特平面序列的编码扫描顺序示意5(b)是本发明所有重要比特平面序列的编码扫描顺序示意5(c)是本发明各非重要比特平面序列在一个比特平面上的编码扫描顺序示意5(d)是本发明非重要比特平面的编码扫描顺序示意6是误码率为10-5时,本发明与JPEG-LS对60幅干涉多光谱图像压缩的恢复图像峰值信噪比(PSNR)的比较曲线7是误码率为10-5时,本发明与JPEG-LS对同一幅干涉多光谱图像压缩的恢复图像对比图,其中图7(a)为60幅干涉多光谱图像中的一幅输入图像,图7(b)为误码率为10-5时,采用本发明方法得到的恢复图像,图7(c)为误码率为10-5时,采用JPEG-LS方法得到的恢复图像
图8是成像光谱仪成像原理图具体实施方式
本实施例采用输入图像的宽度和高度均为128像素,图像数据的精度为12比特,压缩倍数为2倍,包头长度指定为120比特,则总编码门限T应为128×128×12/2-120=98184比特,该总编码门限T也是压缩包码流长度的上限,但对于简单图像,实际的压缩包码流长度可低于总编码门限T。将该图像数据的12个比特平面按照重要性划分,其中较高的8个比特平面为重要比特平面,较低的4个比特平面为非重要比特平面。并对重要比特平面序列进行差分处理后的序列按每8个点一组分割成16组依次编码。
设定编码码流由各个独立的压缩包组成,如图4所示,一个压缩包对应一幅输入图像的压缩编码数据。每个压缩包包括包头和压缩包码流,其中包头长度固定为120比特,压缩包码流又分为两部分,即码流头信息和编码比特流,其中码流头信息包括原始图像的最大比特平面数max_bp、所有重要比特平面序列的编码比特平面数表bp和重复存储3遍的实际编码比特长度表len,编码比特流则包括重要比特平面编码比特流以及非重要比特平面编码比特流。由于图像宽度为128,所以重要比特平面序列的总个数为128。由于图像数据最多有12个比特平面,采用二进制表示时,用4个比特足以表示,因而码流头信息中的最大比特平面数max_bp和各个重要比特平面序列的编码比特平面数均用4比特表示,各个重要比特平面序列的编码长度均不超过16384比特,故采用11比特表示,从而编码比特平面数表bp的总长度为512比特,编码比特长度表len的总长度为4224比特,因此码流头信息的总长度为4740比特。
本实施例对图1所示的编码方法采用XILINX ISE 5.1集成开发软件和VHDL语言,在XILINX公司的XCV600e-6BG432现场可编程门阵列(FPGA)芯片上实现,即由该芯片组成变换器、预处理器和比特平面编码器硬件电路,如图2所示。其中,预处理器包括循环移位处理器和高低位拆分处理器,比特平面编码器包括重要比特平面序列编码器和非重要比特平面序列编码器。整个硬件实现编码的过程如下1.将一幅图像的串行数据流经过变换器实现串并转换,形成128×128个并行图像数据,每个图像数据用12比特表示,并统计这16384个数据的最大值,根据最大值确定将整幅图像的最大比特平面数max_bp,即等于用二进制表示这个最大值所需的比特位数。
2.将所有变换后的图像数据送入预处理器进行预处理,首先由循环移位处理器完成对图像数据的循环移位,即根据在变换器中统计得到的整幅图像的最大比特平面数max_bp,将所有图像数据循环左移(12-max_bp)位,使简单图像数据中的重要比特部分均提升至较高的比特平面,优先对其进行编码,以满足无损压缩的要求,再送入高低位拆分处理器;高低位拆分处理器对循环移位后的数据,沿空间维方向,将每一列数据按比特平面的重要性拆分成两列数据,即重要比特平面序列和非重要比特平面序列,其中重要比特平面序列由8个比特平面组成,非重要比特平面序列由4个比特平面组成,然后根据整幅图像的最大比特平面数max_bp与重要比特平面的个数8的比较结果进行计算非重要比特平面中的有效平面数valid_bp,即max_bp>8,则valid_bp=max_bp-8;max_bp≤8,则valid_bp=0;设拆分处理前的第i列数据记为si,si包括128个数据点,每一个数据点包括12个比特平面,在12个比特平面中,位于最上面的高8个比特平面为重要比特平面,将si中所有数据点的高8比特平面组成重要比特平面序列,记为sigsi,其余低4个比特平面组成非重要比特平面序列,记为errsi,如图3所示。在图3中,3个框的每一列表示相应序列中一个点的值的二进制表示,而每一行代表一个比特平面,越高层的比特平面越重要,随着比特平面的降低,重要性随之递减。由于图像数据精度为N,因而拆分前序列具有N个比特平面,其序号由低到高依次为0、1、…N-1,其中,低N-m个比特平面为非重要比特平面,其序号从0到N-m-1,相应的高m个比特平面为重要比特平面,其序号从N-m到N-1。经过高低位拆分处理,拆分前序列的高m个比特平面单独组成一个新的序列,称为重要比特平面序列,该序列具有m个比特平面,其序号由低到高依次为0、1、…m-1,而拆分前序列的低N-m个比特平面则单独组成另一个新的序列,称为非重要比特平面序列,该序列具有N-m个比特平面,其序号由低到高依次为0、1、…N-m-1。如果拆分前序列si中第j点si(j)的值为629,相应的二进制表示为001001110101,其中最左边的0比特位于最高比特平面,即第11比特平面,而最右边的1比特位于最低比特平面,即第0比特平面。si(j)中前8位表示重要比特平面,而后4位表示非重要比特平面。按比特平面的重要性将si(j)拆分成两部分,一部分为前8个比特00100111,相应的十进制表示为39,记为sigsi(j),表示重要比特平面序列sigsi的第j点;另一部分为后4个比特0101,相应的十进制表示为5,记为errsi(j),表示非重要比特平面序列errsi的第j点。
3.经过预处理器得到两路输出数据,一路数据为重要比特平面序列,送入重要比特平面序列编码器,其编码输出送入非重要比特平面序列编码器;另一路数据为非重要比特平面序列,直接送入非重要比特平面序列编码器进行编码,并打包输出所有编码码流。
在重要比特平面序列编码器中,先对输入的第i列重要比特平面序列sigsi进行差分处理,即依次将该重要比特平面序列sigsi中每一个点的值减去前一个点的值,从而得到一个相应的差分序列ssi,设sigsi(j)为重要比特平面序列sigsi中第j个点的值,ssi(j)为差分序列ssi中第j个点的值,sign(j)为ssi(j)相应的符号位,如果sigsi(j)<sigsi(j-1),即相减的差值为负数,则将相应的符号位sign(j)置1,并对差值取反,即ssi(j)=0-(sigsi(j)-sigsi(j-1));若sigsi(j)>sigsi(j-1),即差值为正数,则直接将符号位sign(j)置0,具体计算公式为, 然后判断该差分序列ssi是否全部为0,若全部为0,则该列的编码比特平面数和编码长度均为0,将其直接写入码流头信息并跳过对差分序列ssi的编码;若不全部为0,则差分序列ssi按比特平面由高到低的顺序,依次对m个比特平面进行游程编码。进行游程编码时,先统计本列的编码比特平面数,即为差分序列ssi的最大比特平面数。本实施例中差分序列ssi按每8个点一组分割成16组依次编码,对每一组,先依次输出其中8个点的符号位,再按比特平面由高到低的顺序依次编码每一个比特平面上的8个比特,如果该8比特全部为0,则编码输出一个0比特,否则先输出一个1比特,继而依次输出该8比特,直到编完该差分序列ssi所有的点或者到达总编码门限T结束编码,最后将该列的编码比特平面数和编码长度写入码流头信息。
4.如果所有128列重要比特平面序列全部编码结束后,仍未达到总编码门限T,则由非重要比特平面序列编码器对128列非重要比特平面序列进行编码,编码时按比特平面由高到低的顺序依次扫描低4个非重要比特平面,当扫描到某一个比特平面时,首先判断非重要比特平面中的有效平面数valid_bp是否大于0,如果valid_bp等于0,结束全部编码,并打包输出所有编码码流;如果valid_bp>0,即128列非重要比特平面序列在当前比特平面上的比特值均为有效,此时按列依次输出各非重要比特平面序列在当前比特平面上的所有比特,然后有效非重要比特平面数valid_bp减1,进入下一个比特平面的编码过程,直到valid_bp为0或者达到总编码门限T,结束全部编码,并打包输出所有编码码流。
参照图5(a),设第i列重要比特平面序列为sigsi,图中方框的水平方向表示重要比特平面序列的各个点,其序号从左到右依次为0、1、…h-1,垂直方向则表示重要比特平面序列的各个比特平面,从下往上依次为0、1、…m-1。将序列sigsi的h个点分为t组,序号从0到t-1,每一组包括k个点,图中每一个小方框表示一个分组。对重要比特平面序列sigsi的编码扫描顺序如下首先编码第0组,按比特平面重要性由高到低的顺序,依次编码该组中0到k-1这k个点在第m-1、m-2、…、0比特平面上的比特值,编码完该组的m个比特平面后,以同样的顺序编码第1组、第2组,……,直到编码完所有t个组,结束第i列重要比特平面序列sigsi的编码。
图5(b)和图5(c)中的方框均表示整幅图像大小,宽度为w,高度为h,水平方向为空间维方向,垂直方向为光谱维方向。不同之处在于图5(b)中各点包含m个重要比特平面,而图5(c)中各点仅包含一个非重要比特平面。
参照图5(b),沿空间维方向共有w列重要比特平面序列,其序号依次为0、1、…w-1,其中每一列重要比特平面序列沿光谱维方向均包括h个点,其序号分别为0、1、…h-1。各重要比特平面序列独立编码,其编码扫描顺序为,首先编码第0列重要比特平面序列,相应的编码顺序参照图5(a)中的顺序,然后编码第1列、第2列,……,直到编码完所有w列重要比特平面序列。
参照图5(c),沿空间维方向共有w列非重要比特平面序列,其序号依次为0、1、…w-1,其中每一列非重要比特平面序列沿光谱维方向均包括h个点,其序号分别为0、1、…h-1。在任一非重要比特平面上,各非重要比特平面序列按从左到右的顺序依次扫描输出。
参照图5(d),图中方框的垂直方向表示非重要比特平面序列的各个比特平面,其序号从下往上依次为0、1、…N-m-1,对这N-m个非重要比特平面扫描时,先扫描第N-m-1比特平面,该比特平面上的扫描顺序参照图5(c)中的顺序,然后扫描下一个比特平面,直到第0比特平面。
图6、7均为本发明与JPEG-LS方法的抗误码效果比较图,参照图6,在10-5误码率情况下,对60幅干涉多光谱图像分别采用本发明方法和JPEG-LS方法进行压缩,通过对恢复图像的峰值信噪比(PSNR)的比较可见,在有误码的情况下,采用本发明方法得到的恢复图像的峰值信噪比(PSNR),虽然比无误码情况下的峰值信噪比(PSNR)有不同程度的下降,但都保持在30dB以上,而且有将近一半的图像,其峰值信噪比(PSNR)几乎没有什么降低,所有图像的峰值信噪比(PSNR)均远远高于在相同误码率下采用JPEG-LS方法得到的恢复图像的峰值信噪比(PSNR)。
参照图7,图7(a)为60幅干涉多光谱图像中的一幅输入图像,图7(b)为误码率为10-5时,采用本发明方法得到的恢复图像,图7(c)为误码率为10-5时,采用JPEG-LS方法得到的恢复图像。显而易见,当码流产生误码时,采用本发明方法得到的恢复图像几乎没有产生误码扩散,其解码产生的错误仅仅局限在一列范围之内,并不影响后续解码过程,因此产生误码的那一列之后的其他所有列均可以正确恢复。而采用JPEG-LS方法得到的恢复图像则完全失真,误码扩散非常严重。由此可见,本发明方法可以大大降低误码扩散,提高恢复图像质量。
对于本领域的专业人员来说,在了解了本发明内容和方法后,能够在不背离本发明的原理和范围的情况下,根据本发明的方法进行形式和细节上的各种修正和改变,但是这些基于本发明的修正和改变仍在本发明的权利要求保护范围之内。
权利要求
1.一种空间维独立的多光谱图像无损、近无损压缩编码方法,首先根据输入图像的宽度、高度确定图像压缩码流的结构,再根据该码流的结构按如下步骤进行编码第一步,根据输入图像的宽度、高度、图像数据精度、所需压缩倍数及压缩包包头长度确定总编码门限T,即T=w×h×pr-l]]>其中w为原始图像的宽度h为原始图像的高度p为图像数据的精度r为所需的压缩倍数l为压缩包包头长度;第二步,由输入图像数据的最大值确定出整幅图像的最大比特平面数max_bp;第三步,根据所述最大比特平面数max_bp,对输入图像的所有数据进行预处理,即首先对所有图像数据进行循环移位,然后沿空间维方向将每一列数据按比特平面的重要性拆分成两列数据,即重要比特平面序列和非重要比特平面序列,并计算非重要比特平面中的有效平面数valid_bp;第四步,对所有重要比特平面序列进行编码,即对每一列重要比特平面序列sigsi差分处理后,再进行游程编码,并随时将当前编码输出的总比特数与总编码门限T进行比较,如果当前编码输出的总比特数达到总编码门限T,则停止编码并打包输出所有编码码流;如果所有重要比特平面序列全部编码结束后,仍未达到总编码门限T,则进行第五步;第五步,对非重要比特平面序列进行编码,使编码输出的总比特数达到总编码门限T或者对所有非重要比特平面序列全部编码完毕,停止全部编码,并打包输出所有编码码流。
2.根据权利要求1所述的编码方法,其特征在于所述的图像压缩码流分为一系列独立的压缩包,每个压缩包包括包头和压缩包码流,包头长度固定,压缩包码流长度与输入图像相关,该压缩包码流进一步分为码流头信息和编码比特流。
3.根据权利要求2所述的编码方法,其特征在于所述的码流头信息包括原始图像的最大比特平面数max_bp、所有重要比特平面序列的编码比特平面数表bp及实际编码比特长度表len,该长度表len重复存储最少3遍,其中最大比特平面数max_bp和各个重要比特平面序列的编码比特平面数的最佳表示位数均为4比特,各个重要比特平面序列的编码长度的最佳表示位数为11比特。
4.根据权利要求2所述的编码方法,其特征在于所述的编码比特流包括重要比特平面编码比特流和非重要比特平面编码比特流,该重要比特平面编码比特流由多列重要比特平面序列比特流组成,每一列比特流又分为结构相同的多组。
5.根据权利要求1所述的编码方法,其特征在于所述的循环移位处理是将所有输入图像数据循环左移(N-max_bp)位,N为图像数据的精度,使简单图像数据中的重要部分均位于较高的比特平面,优先对其进行编码,以满足无损压缩的要求。
6.根据权利要求1所述的编码方法,其特征在于第三步中计算非重要比特平面中的有效平面数valid_bp是根据整幅图像的最大比特平面数max_bp与重要比特平面的个数m的比较结果进行计算,即max_bp>m,则valid_bp=max_bp-m;max_bp≤m,则valid_bp=0。
7.根据权利要求1所述的编码方法,其特征在于第四步中的差分处理是依次将每一列重要比特平面序列sigsi中每一个点的值减去前一个点的值,得到一个相应的差分序列ssi,具体计算公式为, 其中sigsi(j)为重要比特平面序列sigsi中第j个点的值ssi(j)为差分序列ssi中第j个点的值sign(j)为ssi(j)相应的符号位。
8.根据权利要求1所述的编码方法,其特征在于第四步中的游程编码过程为(1)统计差分序列ssi的最大比特平面数,作为本列的编码比特平面数;(2)将差分序列ssi按每k个点一组分割成t组依次编码,要求满足k×t=h,h为图像的高度;(3)对每一组,先依次输出k个点的符号位,再按比特平面由高到低的顺序编码每一个比特平面上的k个比特,如果该k比特全部为0,则输出一个0比特,否则先输出一个1比特,然后依次输出该k比特,直到编完该差分序列ssi所有的点或者到达总编码门限T结束编码;(4)将本列的编码比特平面数和本列的实际编码长度写入码流头信息。
9.根据权利要求1所述的编码方法,其特征在于第五步中对非重要比特平面序列errsi的编码是,对非重要比特平面,按比特平面由高到低的顺序依次扫描,在当前比特平面上,如果valid_bp等于0,结束全部编码;如果valid_bp大于0,按列依次输出各非重要比特平面序列在当前比特平面上的所有比特,并将valid_bp减1后进入下一个比特平面的编码过程,直到valid_bp为0或者达到总编码门限T,结束全部编码。
全文摘要
本发明涉及一种图像压缩编码方法,主要解决复杂度和抗误码问题。该编码方法首先确定图像压缩码流的结构,及总编码门限T和整幅图像的最大比特平面数max_bp,再对输入图像的所有数据进行循环移位和高低位拆分预处理,之后,依次对所有重要比特平面序列进行独立编码,在编码过程中,如果当前编码输出的总比特数达到总编码门限T,则停止编码并打包输出所有编码码流;反之,对非重要比特平面序列进行编码,直到达到总编码门限T或者对所有非重要比特平面序列全部编码完毕后,停止全部编码并打包输出所有编码码流。本发明具有复杂度低,硬件实现简单,抗误码能力强的优点,适合于各种干涉多光谱图像的无损、近无损压缩,尤其适合于星上图像的实时压缩。
文档编号H04N1/41GK1622590SQ20041007338
公开日2005年6月1日 申请日期2004年12月15日 优先权日2004年12月15日
发明者李云松, 刘凯, 吴成柯, 王柯俨, 曹斌 申请人:西安电子科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1