图像压缩方法及其装置制造方法及图纸

技术编号:21552779 阅读:41 留言:0更新日期:2019-07-07 00:39
本发明专利技术提供一种图像压缩方法及其装置。所述方法包括:取得图像区块,其中图像区块包括多个像素,各像素包括多个通道数据;依据图像区块的图像压缩率定义多个根节点;将各像素的各通道数据划分至前述根节点对应的多个群组中,其中各群组的结构为二叉树;若前述群组中存在空树,将前述群组中的非空树划分为多个子树,并以前述子树取代空树及非空树,以更新群组及根节点;构建各群组的中心值,并决定各群组中的各通道数据的群组索引值;编码各群组的中心值,并将各通道数据以对应的中心值及群组索引值来表征,以压缩各通道数据。

Image Compression Method and Device

【技术实现步骤摘要】
图像压缩方法及其装置
本专利技术是有关于一种图像压缩方法及其装置,且特别是有关于一种基于二叉树原理所进行的图像压缩方法及其装置。
技术介绍
在现有技术中,图像压缩一般是利用空间的冗余性或通道间的冗余性来对图像进行压缩。然而,图像的部分区块可能存在数据差别较大,使得空间或通道间几乎不存在冗余。在此情况下,传统的图像压缩方法可能难以得到较好的压缩质量,进而可能会造成部分数据在压缩后出现较大的失真或偏差。一般而言,较大的偏差多半是归因于通道数据经压缩后在数个最高有效位(mostsignificantbit,MSB)上所产生的误差。因此,对于本领域技术人员而言,针对图像区块内数据差别较大的情况,如何设计一种可以尽可能地保证最高有效位数据的无损编码的图像压缩机制实至关重要。
技术实现思路
有鉴于此,本专利技术提供一种图像压缩方法及其装置,其可藉由保留通道数据的数个最高有效位来提升图像压缩的质量。本专利技术提供一种图像压缩方法,包括:取得一图像区块,其中图像区块包括多个像素,各像素包括多个通道数据;依据图像区块的一图像压缩率定义多个根节点;将各像素的各通道数据划分至前述根节点对应的多个群组中,其中各群组的结构为二叉树;若前述群组中存在至少一空树,将前述群组中的至少一非空树划分为多个子树,并以前述子树取代至少一空树及至少一非空树,以更新前述群组及前述根节点;构建各群组的一中心值,并决定各群组中的各通道数据的群组索引值;编码各群组的中心值,并将各通道数据以对应的中心值及群组索引值来表征,以压缩各通道数据。本专利技术提供一种图像压缩装置,包括存储电路及处理器。存储电路存储多个模块。处理器耦接该存储电路,存取该些模块以执行下列步骤:取得一图像区块,其中图像区块包括多个像素,各像素包括多个通道数据;依据图像区块的一图像压缩率定义多个根节点;将各像素的各通道数据划分至前述根节点对应的多个群组中,其中各群组的结构为二叉树;若前述群组中存在至少一空树,将前述群组中的至少一非空树划分为多个子树,并以前述子树取代至少一空树及至少一非空树,以更新前述群组及前述根节点;构建各群组的一中心值,并决定各群组中的各通道数据的群组索引值;编码各群组的中心值,并将各通道数据以对应的中心值及群组索引值来表征,以压缩各通道数据。基于上述,本专利技术提出的图像压缩方法及其装置可利用二叉树原理将图像区块内的所有数据分成数个群组,从而尽可能的保证了最高有效位信息的无损编码,降低了压缩后的误差。为让本专利技术的上述特征和优点能更明显易懂,下文特举实施例,并配合附图作详细说明如下。附图说明图1是依据本专利技术的一实施例绘示的图像压缩装置功能方块图。图2是依据本专利技术的一实施例绘示的图像压缩方法流程图。图3A是依据本专利技术的一实施例绘示的依据图像压缩率定义根节点的示意图。图3B是依据图3A绘示的将各通道数据划分至对应于各根节点的群组的示意图。图3C是依据图3B绘示的更新后群组及根节点的示意图。图3D是依据图3C绘示的更新后群组及根节点的示意图。图4是依据本专利技术的一实施例绘示的更新群组并据以构建中心值的示意图。【符号说明】100:图像压缩装置102:存储电路104:处理器311、312:叶子G1、G2、G3、G4、G5、G6、G7、G8:群组R1、R2、R3、R4、R5、R6、R7、R8:根节点R11、R12:子节点S210~S260:步骤具体实施方式请参照图1,其是依据本专利技术的一实施例绘示的图像压缩装置功能方块图。在本实施例中,图像压缩装置100包括存储电路102及处理器104。在不同的实施例中,图像压缩装置100可以是手机、智能型手机、个人计算机(personalcomputer,PC)、笔记本电脑(notebookPC)、网本型计算机(netbookPC)、平板计算机(tabletPC)、数字相机或是其他类似的智能型装置,但可不限于此。存储电路102可为任意型式的固定式或可移动式随机存取存储器(RandomAccessMemory,RAM)、只读存储器(Read-OnlyMemory,ROM)、闪存(Flashmemory)、硬盘或其他类似装置,而可用以储存计算机可擦写软件、图像、程序模块及其他信息。处理器104耦接于存储电路102,并可为通用处理器、专用处理器、传统的处理器、数字信号处理器、多个微处理器(microprocessor)、一个或多个结合数字信号处理器核心的微处理器、控制器、微控制器、专用集成电路(ApplicationSpecificIntegratedCircuit,ASIC)、现场可编程门阵列(FieldProgrammableGateArray,FPGA)、任何其他种类的集成电路、状态机、基于进阶精简指令集机器(AdvancedRISCMachine,ARM)的处理器以及类似品。请参照图2,其是依据本专利技术的一实施例绘示的图像压缩方法流程图。本实施例的方法可由图1的图像压缩装置100执行,以下即搭配图1所示的组件来说明本方法的步骤细节。首先,在步骤S210中,处理器104可取得图像区块。在本实施例中,处理器104可在接收一张完整的图像帧之后,将此图像帧区分为具同样尺寸的多个图像区块。为便于说明本专利技术的精神,以下将仅基于处理器104所取得的其中一个图像区块进行说明。在以下实施例中,所考虑的图像区块的尺寸假设(但不限于)为8x2(即,长、宽分别为8个像素及2个像素,共16个像素),每个像素可具有3个通道数据(分别对应R、G、B),而各通道数据例如可包括8个比特。在上述假设下,一个图像区块中总共存在48(即,8x2x3)个通道数据,而这48个通道数据对应的比特总数为384(即,48x8)(即,实现上述图像区块的无损压缩所需的比特数)。在步骤S220中,处理器104可依据图像区块的图像压缩率定义多个根节点。请参照图3A,其是依据本专利技术的一实施例绘示的依据图像压缩率定义根节点的示意图。在本实施例中,假设用于压缩上述图像区块的图像压缩率为2,则根节点R1、R2、R3、R4、R6、R7及R8可分别包括000、001、010、011、100、101、110及111,如图3A所示。在其他实施例中,图像压缩率亦可依设计者的需求而调整,而据以定义的根节点亦可呈现为不同的态样。举例而言,假设用于压缩上述图像区块的图像压缩率为3,则前述根节点可包括00、01、10及11。举另一例而言,假设用于压缩上述图像区块的图像压缩率为6,则前述根节点可包括0、1,但本专利技术可不限于此。在步骤S230中,处理器104可将各像素的各通道数据划分至前述根节点对应的多个群组中,其中各群组的结构为二叉树。详细而言,请参照图3B,其是依据图3A绘示的将各通道数据划分至对应于各根节点的群组的示意图。在本实施例中,假设前述48个通道数据中包括1个「00000011」的通道数据,则此通道数据因高3位为「000」而将被划分至根节点R1(即,「000」)所属的群组G1中,并依据二叉树的一般建构原则而形成群组G1中的叶子311。另外,假设前述48个通道数据中包括2个「00000100」的通道数据,则此2个通道数据同样将因高3位为「000」而被划分至根节点R1(即,「000」)所属的群组G1中,并依据二叉树的一般建构原则而形本文档来自技高网...

【技术保护点】
1.一种图像压缩方法,包括:取得一图像区块,其中该图像区块包括多个像素,每个像素包括多个通道数据;依据该图像区块的一图像压缩率定义多个根节点;将每个像素的每个通道数据划分至所述根节点对应的多个群组中,其中每个群组的结构为二叉树;若所述群组中存在至少一空树,将所述群组中的至少一非空树划分为多个子树,并以所述子树取代该至少一空树及该至少一非空树,以更新所述群组及所述根节点,其中每个非空树至少具有左子树及右子树;构建每个群组的一中心值,并决定每个群组中的每个通道数据的群组索引值;以及编码每个群组的该中心值,并将每个通道数据以对应的该中心值及该群组索引值来表征,以压缩每个通道数据。

【技术特征摘要】
1.一种图像压缩方法,包括:取得一图像区块,其中该图像区块包括多个像素,每个像素包括多个通道数据;依据该图像区块的一图像压缩率定义多个根节点;将每个像素的每个通道数据划分至所述根节点对应的多个群组中,其中每个群组的结构为二叉树;若所述群组中存在至少一空树,将所述群组中的至少一非空树划分为多个子树,并以所述子树取代该至少一空树及该至少一非空树,以更新所述群组及所述根节点,其中每个非空树至少具有左子树及右子树;构建每个群组的一中心值,并决定每个群组中的每个通道数据的群组索引值;以及编码每个群组的该中心值,并将每个通道数据以对应的该中心值及该群组索引值来表征,以压缩每个通道数据。2.如权利要求1所述的方法,其中该图像压缩率为2,且所述根节点包括000、001、010、011、100、101、110及111。3.如权利要求2所述的方法,其中若所述像素中的一特定像素的最高3比特相同于所述根节点中的一特定根节点,则该特定像素被划分至该特定根节点在所述群组中所对应的一特定群组。4.如权利要求1所述的方法,其中该图像压缩率为3,且所述根节点包括00、01、10及11。5.如权利要求4所述的方法,其中若所述像素中的一特定像素的最高2比特相同于所述根节点中的一特定根节点,则该特定像素被划分至该特定根节点在所述群组中所对应的一特定群组。6.如权利要求1所述的方法,其中将所述群组中的该至少一非空树划分为所述子树,并以所述子树取代该至少一空树及该至少一非空树的步骤包括:(a)从该至少一非空树中选择特定非空树;(b)将该特定非空树划分为第一子树及第二子树;(c)以该第一子树及该第二子树取代该特定非空树及该至少一空树中的特定空树,以更新所述群组;(d)以该第一子树的根节点取代该特定非空树在所述根节点中对应的一第一根节点,并以该第二子树的根节点取代该特定空树在所述根节点中对应的一第二根节点,以更新所述根节点;(e)重复(a)、(b)、(c)、(d),直至所述群组中不存在非空树。7.如权利要求6所述的方法,其中该特定非空树的叶子数量在该至少一非空树中是最多的。8.如权利要求7所述的方法,其中若存在多个该特定非空树,则将多个该特定非空树中子树数量最少的一者划分为该第一子树及该第二子树。9.如权利要求8所述的方法,其中若多个该特定非空树具有相同的子树数量,从多个该特定非空树中任选其一以划分为该第一子树及该第二子树。10.如权利要求1所述的方法,其中构建每个群组的该中心值的步骤包括:对于所述群组中的特定群组而言,取得该特定群组在所述根节点中所对应的特定根节点;选择该特定根节点下的特定子节点;基于该特定根节点及该特定子节点之间差异的最高比特将该特定子节点填补至特定长度;以及定义填补后的该特定子节点为该特定群组的该中心值。11.如权利要求10所述的方法,其中该特定子节点的叶子数量在该特定根节点的多个子节点中是最多的。12.如权利要求11所述的方法,其中该特定子节点的子树数量在该特定根节点的所述子节点中是最少的。13.如权利要求12所述的方法,其中若该特定根节点的所述子节点具有相同的该叶子数量及该子树数量,从所述子节点中任选其一作为该特定子节点。14.如权利要求10所述的方法,其中若该最高比特为第一值,则在该特定子节点之后填补至少一第二值,以将该定子节点填补至该特定长度,其中该第一值与每个第二值反相。15.如权利要求10所述的方法,其中该特定长度为8比特。16.如权利要求1所述的方法,其中决定每个群组中的每个通道数据的该群组索引值的步骤包括:取得所述通道数据中的第1个通道数据,并据以定义所述群组中的第1个群组,其中所述第1个群组默认为所述第1个通道数据所属的群组;以1个比特表示所述通道数据中的第2个通道数据是位于所述第1个群组或所述群组中的第2个群组。17.如权利要求16所述的方法,更包括:以2个比特表示所述通道数据中的第3个通道数据是位于所述第1个群组、所述第2个群组或所述群组中的第3个群组;以及以2个比特表示所述通道数据中的第4个通道数据是位于所述第1个群组、所述第2个群组或所述第3个群组。18.如权利要求17所述的方法,更包括:以3个比特表示所述通道数据中的第i个通道数据是位于所述群组中的第j个群组,其中i为介于5及X之间的整数,X为所述通道数据的总数,j为介于1至Y之间的整数,Y为所述群组的总数。19.如权利要求1所述的方法,其中当该图像区块中的所述像素的数量为16,每个像素的所述通道数据的数量为3,且该图像压缩率为2时,编码每个群组的该中心值的步骤包括:对于所述群组中的第n个群组而言,将所述第n个群组对应的该中心值以其高m位表示,其中:其中n为介于1至Y之间的整数,Y为所述群组的总数,mod(a,b)为以a除以b的余数。20.如权利要求1所述的方法,其中当该图像区块中的所述像素的数量为16,每个像素的所述通道数据的数量为3,且该图像压缩率为3或6时,编码每个群组的该中心值的步骤包括:对于所述群组中的第n个群组而言,对所述第n个群组对应的该中心值进行一无损编码,其中n为介于1至Y之间的整数,Y为所述群组的总数。21.一种图像压缩装置,包括:存储电路,存储多个模块;以及处理器,...

【专利技术属性】
技术研发人员:刘硕硕赵永涛王伟
申请(专利权)人:上海兆芯集成电路有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1