一种图像编码方法及装置与流程

文档序号:18899822发布日期:2019-10-18 21:47阅读:122来源:国知局
一种图像编码方法及装置与流程
本申请涉及图像压缩技术邻域,特别涉及一种图像编码方法及装置。
背景技术
:随着多媒体技术和网络的快速发展,人们对数字图像在质量、大小和应用上提出了更高的要求,希望能够用有限的空间和带宽资源存储并传播高质量图像。这就要求图像压缩技术不仅要有良好的压缩效率,还要保证图像在解压之后能够还原出原始图像的高质量。在某些应用邻域中,需要对图像进行无损压缩。尤其在医学邻域,如今,现代医学科技已经广泛地渗入到医学的各个环节,计算机和信息技术已经成为降低成本、提高效率和为患者提供优质护理的关键因素。大量数字化医学影像设备不断应用于医学临床,如计算机断层扫描(ct)、核磁共振成像(mri)、计算机放射摄影、数字放射摄影等等。医学影像设备所产生的医疗影像往往分辨率较高,文件占用存储空间较大。但由于医疗影像的特殊性,只能采用无损压缩方式,因此图像压缩算法的性能对于医疗影像的存储、传输、应用等具有重要的意义。相似的应用邻域还包括卫星遥感图像、文物图像等具有特殊要求图像的无损压缩。目前常用的无损压缩方式主要包括jpeg2000算法,jpeg2000算法以其高率失真性能和高主观图像质量得到广泛的应用。但是,由于jpeg2000算法某些环节的原因,导致压缩过程尤其是无损压缩过程耗时较久,压缩效率较低。因此,现有技术中亟需一种对jpeg2000算法的改进方法,以提升图像压缩的压缩效率。技术实现要素:本申请实施例的目的在于提供一种图像编码方法及装置,可以提高ebcot中t1层编码的编码效率,并提高jpeg2000的图片压缩效率。本申请实施例提供的一种图像编码方法及装置具体是这样实现的:一种图像编码方法,所述方法用于位平面编码过程中,包括:获取待编码的系数位的数值以及重要性状态信息;当所述系数位的数值为有效值且所述重要性状态信息为非重要状态时,将所述系数位的重要性状态信息更新为重要状态;将所述系数位的重要性状态信息由非重要状态转变成重要状态的消息发送至所述系数位的邻域系数位。一种图像编码方法,所述方法用于位平面编码过程中,包括:在位平面的第一编码过程中,统计位平面中数值连续为零的系数列的数量,其中,所述位平面中包括多个条带,每个条带中包括多个系数列,每个系数列中包括多个系数位,当所述系数列中的系数位均为零时,则所述系数列的数值为零;将所述系数列的数量进行编码,并存储生成的编码值。一种图像编码装置,所述装置用于位平面编码过程中,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现:获取位平面中待编码系数位的数值以及重要性状态信息;当所述系数位的数值为有效值且所述重要性状态信息为非重要状态时,将所述系数位的重要性状态信息更新为重要状态;将所述系数位的重要性状态信息由非重要状态转变成重要状态的消息发送至所述系数位的邻域系数位。一种图像编码装置,所述装置用于位平面编码过程中,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现:在位平面的第一编码过程中,统计位平面中数值连续为零的系数列的数量,其中,所述位平面中包括多个条带,每个条带中包括多个系数列,每个系数列中包括多个系数位,当所述系数列中的系数位均为零时,则所述系数列的数值为零;将所述系数列的数量进行编码,并存储生成的编码值。一种医学图像压缩方法,包括:获取待压缩的医学图像;对所述医学图像处理,其中包括:获取待编码的系数位的数值以及重要性状态信息;当所述系数位的数值为有效值且所述重要性状态信息为非重要状态时,将所述系数位的重要性状态信息更新为重要状态;将所述系数位的重要性状态信息由非重要状态转变成重要状态的消息发送至所述系数位的邻域系数位;输出压缩后的图像。本申请提供的图像编码方法及装置,可以将位平面中系数位重要性状态信息发生变化的消息主动同步至所述系数位的邻域系数位中。这样,在对所述系数位的邻域系数位进行编码时,在不需要对邻域系数位的重要性状态信息进行轮询的情况下,即可以快速了解到邻域系数位的重要性状态信息,可以缩短对各个系数位进行编码的时间,提高编码效率。进一步地,可以提高ebcot中t1层编码的编码效率,并提高jpeg2000的图片压缩效率。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本邻域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是现有技术中利用jpeg2000标准进行图像压缩的流程示意图;图2是ebcot中进行位平面扫描的流程示意图;图3是本申请提供的图像编码方法的一种实施例的流程示意图;图4是本申请提供的医疗图像中位平面中连零系数列的数量及其概率的对应关系;图5是本申请提供的利用本申请图像编码方法对连零系数列数进行编码的示意图;图6是本申请提供的图像编码装置的一种实施例的模块结构示意图。具体实施方式为了使本技术邻域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本邻域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。本申请可用于众多通用或专用的计算装置环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。为了方便本邻域技术人员理解本申请实施例提供的技术方案,下面先对技术方案实现的技术环境进行说明。图1是jpeg2000标准中对原始图像进行编码的流程示意图,如图1所示,在编码过程中,首先可以对原始图像数据进行前期预处理,再对预处理之后的图像数据进行离散小波变换,并生成离散小波系数。然后,可以对所述离散小波系数进行量化,再将量化之后的离散小波系数划分成小的码块单元,并对所述码块单元进行独立的嵌入式编码。在嵌入式编码方法中,优化的嵌入式块编码(embeddedblockcodingwithoptimizationteuncation,ebcot)不仅具有良好的压缩效果,而且生成的码率具有分辨率可伸缩性、质量可伸缩性、可随机访问及处理等优良的特性。上述优良特性使得ebcot成为jpeg2000标准中的编解码引擎,也是jpeg2000标准中的核心算法。如图1所示,ebcot可以包括两层编码,分别是块编码的第一层编码(tier1,t1)和分层装配的第二层编码(tier2,t2)。由上述可知,对原始图像数据进行离散小波变化之后,生成若干个子带系数。然后,还对所述子带系数进行量化,并将量化之后的子带系数划分成小的码块单元。那么,在第一层编码中,可以将所述小的码块单元进行二进制分层,并从最高有效位平面开始依次对每个位平面上的所有小波系数进行编码,具体的编码方式可以参考下文描述,在此不再赘述。在第一层编码中,主要包含三通道平面扫描、位平面编码、算术编码等步骤,且每个小波系数位只能经历上述步骤中的一个。在第二层编码中,可以对前面第一层编码所产生的数据流进行重新组织,以满足jpeg2000标准输出。根据率失真优化原则,采用pcrd优化算法思想,将所有码块的压缩尾流适当截取,组织成具有不同质量级的压缩位流层。每一层上的压缩位流连同其前面的所有层的压缩位流,可重构出一定质量的图像。在分层组织压缩位流时,需要对每个码块在每一层上的贡献信息进行编码。由于对码块进行独立编码,因此,可以根据需要随机获取并解码相应的码块压缩位流,重构出所需的图像区域。通过对jpeg2000标准中编码过程耗时的实际测算,如图2所示,t1编码占整个编码时间的78%,小波变换占11%,t2编码占5%,其他步骤占6%。因此,降低t1编码的时间复杂度对于提高jpeg2000标准的编码效率具有重要的作用。基于类似于上文描述的实际技术需求,本申请提供的图像编码方法可以缩短t1中位平面编码过程所耗费的时间,提高编码效率。本申请实施例提供的技术方案应用于客户端,客户端可以是独立的应用程序,还可以是嵌入在应用中的功能模块(如软件开发包)等,例如,可以是“天猫”、“淘宝”等移动终端app中的功能模块,等等。接下来对本申请实施例提供的具体实现方案进行详细介绍。在嵌入式编码算法中,首先对离散小波变换之后生成的子带系数进行量化,并将量化后的子带系数划分成若干个独立的编码块(codeblock)。在将量化后的子带系数划分成编码块之后,可以将编码块中的小波量化系数分解成多个二进制位平面,所述二进制位平面包括多个二进制系数位,所述多个二进制系数位对应于所述编码块中的一个小波系数值。表1是二进制位平面示意表格,其中,每一列可以表示一个二进制位平面,b1表示最高位平面,b2次高,依次向右,位平面的级数逐渐降低。表1中的每一行为对应于一个量化后的小波系数值,分别为w1、w2、……、w5,对于各个小波系数值来说,其最高位为符号位,其中,0表示该小波系数为正数,1表示该小波系数为负数。在上述多个位平面中,最高有效位平面为符号位平面,其余位平面为幅度位平面。表1小波系数位平面示意图b1b2b3b4w10101…w20010…w31101…w40000…w50010…如图2所示,在单个位平面中,每4行组成一个条带(stripe),条带的编码顺序由上至下。每个条带内,每列由上至下编码,各列由左至右编码。由于位平面编码是从具有非零元素的最高位平面(msb)开始编码直到最低的位平面(lsb)为止,因此对每个位平面上的所有小波系数位进行编码,即按照位平面从高到低的顺序进行的。因此,当压缩码流被截断时,码块可能丢失部分或者所有系数的低有效位,而只传输了对图像信息更重要的高有效位,符合了嵌入式编码的思想。码块中各个位平面中的每个系数位有一个与之相关的状态信息,称为重要状态位。所述重要状态位在码块开始编码时为0,随着位平面的编码,当该系数的幅度位由0变成1时,所述重要状态位也设置为1,并且在随后的位平面中该系数的状态都是“重要”的。位平面编码的一个重要作用是生成算术编码所需要的上下文,所述上下文用于算术编码过程中的概率选择,是影响算术编码性能的关键。引入上下文的目的是找出当前需要编码的比特与相邻的已编码比特之间的信息关系,将已编码比特的条件信息应用到将要编码的符号中,以达到更高的压缩比。上下文的状态与选择的邻居系数个数相关,两者是指数关系,如果选择的个数太多,会使上下文状态数量急剧增长。而且由于图像大小有限,当上下文状态过多时会因为没有足够多的样本用于学习,而无法准确估计待编码符号的条件概率,从而降低编码效率。因此为了有效反映当前系数和邻居系数已编码信息,ebcot算法中采用的上下文是由同一码块中八个相邻系数位的重要性状态值确定的,如表2所示,其中,x表示当前系数位的重要性状态,h0,h1表示水平邻域系数位的重要性状态,v0,v1表示垂直邻域系数位的重要性状态,d0,d1,d2,d3表示对角邻域系数位的重要性状态。所述重要状态位为二值变量,初始化时为0,当按从高位平面到低位平面的顺序编码过程中首次遇到该系数的第一个变为1的比特时,表示该系数已经重要。表2邻域系数位的重要性状态表d0v0d1h0xh1d2v1d3在ebcot算法中,位平面中的每一个系数位只会在下述三种编码过程中的一个进行编码,这三个编码过程依次包括重要性传播编码过程、幅度细化编码过程、清除编码过程。在对系数位进行编码之后,可以产生一对上下文和待编码位,并将所述上下文和所述待编码位送入后续的算术编码单元进行压缩编码处理,生成压缩码流。所述三种编码过程由四种基本编码算法组成:零编码、符号编码、幅度细化编码和清除编码。其中,零编码和符号编码被用于重要性传播编码过程,幅度细化编码用于幅度细化编码过程,清除编码、零编码和符号编码用于清除编码过程。在对位平面的系数位进行编码的过程中,所述系数位的重要性状态值可能发生变化。例如,当所述系数位位于小波系数的具有非零元素的最高位平面(msb)时,虽然所述系数位重要性状态值的初始化值为0,但当开始扫描到所述系数位时,则该系数位的重要性状态值由0变为1,即从“不重要的”变为“重要的”。在进行重要性传播编码过程和清除编码过程中进行编码的过程中,需要获取所述系数位的8个邻域的重要性状态值。例如,在重要性传播编码过程中的零编码算法过程中,需要对那些自身“不重要的”,但是邻域中有至少一个“重要的”系数位进行编码。也就是说,所述系数位的重要性状态值为0,但其八个邻域中的至少一个系数位的重要性状态值为1。同样地,在清除编码过程中也可能利用到零编码算法,因此,也会需要对类似状态的系数位进行编码。现有技术中的做法是,在需要确定系数位的邻域系数位的重要性状态值时,可以从存储器中依次查询各个邻域系数位的重要性状态值。如表2所示,若要确定系数位x的重要性状态值,则需要依次查询d0、d1、d2、d3、h1、h2、v1、v2等八个邻域系数位的重要性状态值。若八个邻域系数位中任何一个系数位的重要性状态值为1,则可以对所述系数位进行零编码计算。可以发现,上述查询方式比较被动,且会出现重复查询的情况,cpu资源消耗较多。在本申请的一个实施例中,可以将上述被动查询的方式变为主动同步的方式,下面结合附图对本申请所述的图像编码方法进行详细的说明。图3是本申请提供的图像编码方法的一种实施例的方法流程图。虽然本申请提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在所述方法中可以包括更多或者更少的操作步骤。在逻辑性上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本申请实施例提供的执行顺序。所述方法在实际中的图像编码过程中或者装置执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体地,所述方法可以包括:s301:获取位平面中待编码系数位的数值以及重要性状态信息。s303:当所述系数位的数值为有效值且所述重要性状态信息为非重要状态时,将所述系数位的重要性状态信息更新为重要状态。s305:将所述系数位的重要性状态信息由非重要状态转变成重要状态的消息发送至所述系数位的邻域系数位。由上述可知,系数位的重要状态位在码块开始编码时为0,随着位平面的编码,当该系数的幅度位由0变成1时,所述重要状态位也设置为1,并且在随后的位平面中该系数对应的系数位的状态都是“重要”的。下面通过一个示例说明,对于表1中的小波系数w2,对应的各个系数位的重要状态位的初始值均为零,当系数w2的幅度值由0变为1时,幅度值开始变化的系数位的重要状态位设置为1,即对于小波系数w2,在从b3开始向下的位平面上的系数位的重要状态位均为1。本实施例中,在位平面编码过程中,可以获取位平面中待编码系数位对应的数值以及重要性状态信息。当所述系数位的数值为有效值且所述重要性状态信息为非重要状态时,可以将所述系数位的重要性状态信息更新为重要状态。本实施例中,所述系数位的数值为有效值可以包括所述系数位对应的系数的幅值已经从0变为1,那么该系数对应的后续的系数位均为有效值。如对于表1中的系数w2,即使在b4平面中的数值为0,但是该系数在b3平面中的数值已经变为1,则在b4平面中的数值也为有效值。由于各个系数位的重要性状态信息的初始值均为非重要状态,那么当确定所述系数位的数值为有效值时,可以将所述系数位对应的重要性状态更新为重要状态,并将所述系数位的重要性状态信息由非重要状态转变成重要状态的消息发送至所述系数位的邻域系数位。由上述可知,在对各个系数位进行编码时,需要获取所述系数位的邻域系数位的重要性状态信息,若通过现有技术中逐个查询的方式,则需要耗费较多的时间。本实施例中,可以将所述系数位的重要性状态发生变化的消息主动发送至所述系数位的邻域系数位。具体地,在一个实施例中,可以设置各个系数位的环境标记信息,所述环境标记信息可以用于存储系数位的邻域系数位的重要性状态信息。例如在重要性传播编码过程中的零编码算法过程中,需要对那些自身“不重要的”,但是邻域中有至少一个“重要的”系数位进行编码。也就是说,在重要性传播编码过程中,所述系数位的邻域系数位中的一个发生变化,可以采用零编码算法对所述系数位进行编码,因此,设置所述系数位的环境标记信息,当某个邻域系数位的重要性状态信息发生变化,可以通过更新所述环境标记信息的方式来标记。这样在实际进行编码的过程中,可以避免逐个轮询各个邻域系数位的过程,提高编码效率。本申请提供的图像编码方法,可以将位平面中系数位重要性状态信息发生变化的消息主动同步至所述系数位的邻域系数位中。这样,在对所述系数位的邻域系数位进行编码时,在不需要对邻域系数位的重要性状态信息进行轮询的情况下,即可以快速了解到邻域系数位的重要性状态信息,可以缩短对各个系数位进行编码的时间,提高编码效率。进一步地,可以提高ebcot中t1层编码的编码效率,并提高jpeg2000的图片压缩效率。如图2所示,在码块的各个位平面内,数据流是每4个小波系数位作为一个系数列,以图2所示的扫描模式对系数位进行逐点扫描。选择这种扫描方法可以便于软硬件的有效实现,首先从上面开始按顺序对每四位进行成组处理,从第一位向下对第一系数列列的系数位进行扫描。接着,按相同方向对第二系数列的四位进行扫描,直到该代码块的最后一系数列。之后重复相同的扫描规程。也就是说,在垂直方向上以四位汇集成一个单位进行光栅扫描,每一组代码块为一个条带。若有n个位平面的话,位平面大小为x×y,扫描分为三个过程,除了第一个位平面是直接进入清除过程的,其他的都是要三个过程扫三遍的,也就是x×y×(3n-2)次,这种方式虽然很简单明了,但是效率不高。针对上述问题,现有技术中需要对扫描方式进行简化,典型的如列群省略法。在列群省略法中,可以将一个条带内的四个相邻系数列作为一个列群,在第一编码过程即重要性传播编码过程扫描时生成后续过程的列群标志。这样,在第二编码过程(即幅度细化编码过程)和第三编码过程(即清除编码过程)进行扫描时,可以根据第一编码过程所产生的列群标志进行列群或者列跳跃扫描,提高扫描效率。目前,常用的列群省略法还包括八列列群省略法,参照上述原理,即将小波系数每八个系数列作为一个单元,如果全零,即将列群标志标记为0,如果有值,则将列群标志标记为1,这样在第二编码过程或者第三编码过程进行扫描的过程中,可以跳过列群标志为0的8列,提高扫描效率。虽然上述四列列群省略法或者八列列群省略法确实可以节省一些不必要的扫描,但是很多图像实际上是像素非均匀分布的。尤其是医疗影像,如头颅ct等,往往是大片的黑色或者白色的像素。因此本申请中,根据对医疗影像的特征分析,对位平面的扫描方式进行改进。本实施例中,对若干医疗影像小波系数的位平面进行连零分析,通过jpeg2000原生算法的三过程扫描,可以统计得到医疗影像的连零次数,将其绘制成曲线,生成图4所示的医疗图像连零特性分析图。经过分析,8连零出现的频率仅为0.03%左右,概率并不高。通过图4还可以发现,连零情况比较随机,大于8连零的情况占比最高,说明8列列群省略法虽然可以有效地减少扫描次数,但还有很多改进的空间。经过进一步对图4中的曲线进行分析,发现连零超过63的频率很低,约为0.05%左右。因此采用6位的二进制数标识游程编码连零标识,基本格式为xxxxxx(x为二进制数)。6位的二进制数可以标识一个整数k(0≤k<64),也就是说,最多可以表示63个连零的情况。如图5所示,9个连0可以用游程编码001001表示,3个连0可以用游程编码000101表示。利用上述实施例方法,可以针对医疗影像的特征,对医疗影像形成的小波系数位平面上的连零系数列的数量进行编码。本实施例中,采用6位二进制的格式进行编码,使得可编码范围正好与医学影像的数据特征相匹配。在位平面扫描过程中的第一过程生成的连零系数列数的编码值,在进行第二编码过程和第三编码过程时,可以利用所述编码值进行多列跳跃扫描,提高扫描效率。本申请另一方面还提供一种图像编码装置,所述装置用于位平面编码过程中,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现:获取位平面中待编码系数位的数值以及重要性状态信息;当所述系数位的数值为有效值且所述重要性状态信息为非重要状态时,将所述系数位的重要性状态信息更新为重要状态;将所述系数位的重要性状态信息由非重要状态转变成重要状态的消息发送至所述系数位的邻域系数位。可选的,在本申请的一个实施例中,所述邻域系数位可以包括下述中的至少一种:水平邻域系数位、垂直邻域系数位、对角邻域系数位。可选的,在本申请的一个实施例中,所述处理器在实现步骤将所述系数位的重要性状态信息由非重要状态转变成重要状态的消息发送至所述系数位的邻域系数位之后,还可以包括:更新所述邻域系数位对应的环境标记信息,所述环境标记信息用于存储系数位的邻域系数位的重要性状态信息。可选的,在本申请的一个实施例中,所述处理器还可以实现:在所述位平面的第一编码过程中,统计位平面中数值连续为零的系数列的数量,其中,所述位平面中包括多个条带,每个条带中包括多个系数列,每个系数列中包括多个系数位,当所述系数列中的系数位均为零时,则所述系数列的数值为零;将所述系数列的数量进行编码,并存储生成的编码值。可选的,在本申请的一个实施例中,所述处理器在实现步骤将所述系数列的数量进行编码,并存储生成的编码值时可以包括:将所述系数列的数量按照六位二进制数的格式进行编码,并生成编码值;存储生成的所述编码值。可选的,在本申请的一个实施例中,所述处理器在实现步骤所述将所述系数列的数量进行编码,并存储生成的编码值之后,还可以包括:在所述位平面的第二编码过程和第三编码过程中,获取连续为零的系数列的数量的编码值;对所述编码值进行解码,获取所述连续为零的系数列的数量;根据所述数量,省略对所述连续为零的系数列的扫描。本申请另一方面还提供图像编码装置的另一个实施例,所述装置用于位平面编码过程中,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时可以实现:在位平面的第一编码过程中,统计位平面中数值连续为零的系数列的数量,其中,所述位平面中包括多个条带,每个条带中包括多个系数列,每个系数列中包括多个系数位,当所述系数列中的系数位均为零时,则所述系数列的数值为零;将所述系数列的数量进行编码,并存储生成的编码值。可选的,在本申请的一个实施例中,所述处理器在实现步骤将所述系数列的数量进行编码,并存储生成的编码值时可以包括:将所述系数列的数量按照六位二进制数的格式进行编码,并生成编码值;存储生成的所述编码值。可选的,在本申请的一个实施例中,所述处理器在实现步骤将所述系数列的数量进行编码,并存储生成的编码值之后,还可以包括:在所述位平面的第二编码过程和第三编码过程中,获取连续为零的系数列的数量的编码值;对所述编码值进行解码,获取所述连续为零的系数列的数量;根据所述数量,省略对所述连续为零的系数列的扫描。本申请另一方面还提供一种医学图像压缩方法,所述方法可以包括:获取待压缩的医学图像;使用jpeg2000压缩算法对所述医学图像处理,其中,在所述jpeg2000压缩算法的位平面编码过程中,包括:获取待编码的系数位的数值以及重要性状态信息;当所述系数位的数值为有效值且所述重要性状态信息为非重要状态时,将所述系数位的重要性状态信息更新为重要状态;将所述系数位的重要性状态信息由非重要状态转变成重要状态的消息发送至所述系数位的邻域系数位;输出压缩后的图像。可选的,在本申请的一个实施例中,在所述jpeg2000压缩算法的位平面编码过程中,还可以包括:在所述位平面的第一编码过程中,统计位平面中数值连续为零的系数列的数量,其中,所述位平面中包括多个条带,每个条带中包括多个系数列,每个系数列中包括多个系数位,当所述系数列中的系数位均为零时,则所述系数列的数值为零;将所述系数列的数量进行编码,并存储生成的编码值。本申请另一方面还提出一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时可以实现上述任一实施例所述的图像编码方法。所述计算机可读存储介质可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。本实施例所述的计算机可读存储介质有可以包括:利用电能方式存储信息的装置如,各式存储器,如ram、rom等;利用磁能方式存储信息的装置如,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、u盘;利用光学方式存储信息的装置如,cd或dvd。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。上述实施例阐明的模块,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本申请时可以把各模块的功能在同一个或多个软件和/或硬件中实现。当然,本申请中所述的某一单元模块也可以将实现同一功能的模块由多个子模块或子模块的组合实现。本邻域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构、类等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。通过以上的实施方式的描述可知,本邻域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,移动终端,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。本说明书中的各个实施例采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。本申请可用于众多通用或专用的计算机系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的电子设备、网络pc、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。虽然通过实施例描绘了本申请,本邻域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1