本发明属于图像处理技术领域,具体地说,涉及一种图像编码方法、编码装置、解码方法、解码装置及存储介质。
背景技术:
图像编码也称图像压缩,是指在满足一定质量(信噪比的要求或主观评价得分)的条件下,以较少比特数表示图像或图像中所包含信息的技术。其中图像编码系统的发信端基本上由两部分组成。首先,对经过高精度模-数变换的原始数字图像进行去相关处理,去除信息的冗余度;然后,根据一定的允许失真要求,对去相关后的信号编码即重新码化。一般用线性预测和正交变换进行去相关处理;与之相对应,图像编码方案也分成预测编码和变换域编码两大类。
由于移动通讯终端的屏幕变得更大,图像功能增强;移动通讯终端的尺寸变得更小,并且分辨率趋向高质量。从而,每像素可显示的色彩的数目也随之增加。用户界面(userinterface:ui)已经从单一图像发展为三维图像或动画。由于强烈地需要用于存储ui图像的内存空间的扩展,人们正在积极研究新的图片的编解码器。
如,中国专利申请号cn200610127973.7,公开了一种编码方法,包括:对当前待编码图像进行一次预测,得到一次残差图像及一次运动矢量;对一次残差图像进行二次预测,得到二次残差图像及二次运动矢量,并将二次残差图像、二次运动矢量及一次运动矢量写入压缩码流中。本发明还公开了一种解码方法,包括:从压缩码流中解码得到一次运动矢量、二次运动矢量和二次残差图像;根据二次运动矢量,对二次残差图像进行运动补偿,得到一次残差图像,并根据一次运动矢量,对一次残差图像进行运动补偿,得到重建图像。
又如,中国专利申请号cn201010233134.x,公开了一种编码方法,包括:接收待变换的数据;对所述待变换的数据进行第一变换,得到第一变换后的数据;对所述待变换的数据进行第二变换,得到第二变换后的数据;根据第一变换后的数据和第二变换后的数据确定调整参数,根据所述调整参数和第二变换的参数调整所述第一变换后的数据;将所述调整参数写入编码码流中;其中,所述第一变换和所述第二变换为针对不同尺寸的子块进行的变换。本发明实施例还公开了一种编码装置,以及解码方法和装置。该方法能够使图像数据经不同变换后的数值范围保持一致,从而在应用自适应块变换技术时,能够真实反映变换对数据的影响,来选择效果较优的变换,进而提高编码效率。
但是,上述方法,所输出图像数据容量小、编解码慢,无法满足大容量数据实时传输要求。
技术实现要素:
1、要解决的问题
针对现有的图像编码方法中,所输出的图像数据容量小、编解码慢,无法满足大容量数据实时传输要求的问题,本发明提供一种图像编码方法、编码装置、解码方法、解码装置及存储介质。编码方法通过获取待编码数据,将所述待编码数据转换为rgb颜色值格式;在指定像素区域内,以每个码元对应一种颜色值绘制编码区;在所述编码区设置一个基准点,以所述基准点为起点,绘制横向和纵向的颜色校准线,从而输出编码图像,对图像数据重新编码,对其的冗余信息进行去除,使得重新编码后的新格式信息占用存储空间更小,解决了在互联网传输中占用带宽大的问题;且这种新格式文件小、编码快、解码快、文件少,在网络传输过程不仅大大地减少的带宽,而且编解码速度更快更加适用于移动设备渲染。
2、技术方案
为解决上述问题,本发明采用如下的技术方案。
本发明第一方面提供一种图像编码方法,包括:
s102:获取待编码数据,将所述待编码数据转换为rgb颜色值格式;
s104:在指定像素区域内,以每个码元对应一种颜色值绘制编码区;
s106:在所述编码区设置一个基准点,以所述基准点为起点,绘制横向和纵向的颜色校准线,从而输出编码图像。
优选的,所述s102步骤包括:
获取待编码数据,将所述待编码数据转换为十六进制的字符串;
以所述字符串中的每两位确定一个数据段,以每三个所述数据段确定一个数据单元,其中所述数据单元对应唯一的颜色值。
优选的,所述s104步骤包括:在m*n像素区域范围内,以每x2个像素点区域作为一个码元,每个码元以一个数据单元对应的颜色值填充,从而形成了一个表示
其中x表示像素点;m表示码元横向像素点个数;n表示码元竖向像素点个数。
优选的,所述s106步骤包括:
以编码区的顶点为基准点,根据所述基准点的向上的临近像素,构造横向颜色校准线;根据所述基准点的向左的临近像素,构造纵向颜色校准线,再根据所述横向颜色校准线与所述纵向颜色校准线输出所述编码图像。
本发明第二方面提供一种图像编码装置,包括:
格式转换模块,用于获取待编码数据,将所述待编码数据转换为rgb颜色值格式;
绘制编码区模块,用于在指定像素区域内,以每个码元对应一种颜色值绘制编码区;
图像输出模块,用于在所述编码区设置一个基准点,以所述基准点为起点,绘制横向和纵向的颜色校准线,从而输出编码图像。
本发明第三方面提供一种图像解码方法,包括:
s202:获取所述输出图像数据;
s204:查找所述输出图像的基准点,再对所述输出图像做翻转和矫正;
s206:根据所述横向颜色校准线以及纵向颜色校准线对数据区内的码元进行颜色校准;
s208:解析所述数据区内每个码元的颜色,将颜色值按特定拆分规则转换成输出数据。
优选的,所述步骤s206包括:
以所述横向颜色校准线与纵向颜色校准线每个像素与预定颜色的差值作为校准依据;校准所述横向颜色校准线与纵向颜色校准线中每个像素点在所述编码区域内的汇聚点像素的颜色值。
优选的,所述的步骤s208包括:
在校准颜色后编码区域,以从左到右、从上到下的顺序逐个读取码元中的颜色,解析每个码元rgb颜色值,转换输出数据。
本发明第四方面提供一种图像解码装置,包括:
数据获取模块,用于获取所述输出图像数据
查找模块,用于查找所述输出图像的基准点,再对所述输出图像做翻转和矫正
校准模块,用于根据所述横向颜色校准线以及纵向颜色校准线对数据区内的码元进行颜色校准;
解析单元,用于解析所述数据区内每个码元的颜色,将颜色值按特定拆分规则转换成输出数据。
本发明第五方面提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当上述的方法。
3、有益效果
相比于现有技术,本发明的有益效果为:
(1)本发明通过获取待编码数据,将所述待编码数据转换为rgb颜色值格式;在指定像素区域内,以每个码元对应一种颜色值绘制编码区;在所述编码区设置一个基准点,以所述基准点为起点,绘制横向和纵向的颜色校准线,从而输出编码图像,对图像数据重新编码,对其的冗余信息进行去除,使得重新编码后的新格式信息占用存储空间更小,解决了在互联网传输中占用带宽大的问题;且这种新格式文件小、编码快、解码快、文件少,在网络传输过程不仅大大地减少的带宽,而且编解码速度更快更加适用于移动设备渲染;
(2)本发明提供的解码方法,使得重新编码后的新格式信息只需要一次记取后按一定的存储格式解码即可,不再需要像原格式的方式按行逐一记取并解码,这使得对编解码的速度有了大大的提升;
(3)本发明将待编码数据分段、以三段组合成一个数据单元,将每个数据单元的数据转换为rgb颜色值,将rgb颜色填充码元,以码元的rgb颜色来表示数据,这种方式在同规格尺寸的图像中所能表达的数据远高于以二维码或者直接在图像中显示文字的方式所能表示的数据,提高了图像的数据容量。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。附图中:
图1为本发明实施例的一种图像编码方法流程示意图;
图2为本发明实施例的一种图像解码方法流程示意图;
图3为本发明实施例的编码装置结构示意图;
图4为本发明实施例的解码装置结构示意图;
图5为本发明实施例的待编码数据格式转换示意图;
图6为本发明实施例的绘制编码区示意图;
图7为本发明实施例的编码图像示意图。
具体实施方式
下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。
在本申请中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。在本发明的描述中,“多个”的含义是两个以上,除非另有明确具体的限定。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。
具体实现中,本发明实施例中描述的终端包括但不限于诸如具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的移动电话、膝上型计算机或平板计算机之类的其它便携式设备。还应当理解的是,在某些实施例中,所述设备并非便携式通信设备,而是具有触摸敏感表面(例如,触摸屏显示器和/或触摸板)的台式计算机。
在接下来的讨论中,描述了包括显示器和触摸敏感表面的终端。然而,应当理解的是,终端可以包括诸如物理键盘、鼠标和/或控制杆的一个或多个其它物理用户接口设备。
终端支持各种应用程序,例如以下中的一个或多个:绘图应用程序、演示应用程序、文字处理应用程序、网站创建应用程序、盘刻录应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息收发应用程序、锻炼支持应用程序、照片管理应用程序、数码相机应用程序、数字摄影机应用程序、web浏览应用程序、数字音乐播放器应用程序和/或数字视频播放器应用程序。
可以在终端上执行的各种应用程序可以使用诸如触摸敏感表面的至少一个公共物理用户接口设备。可以在应用程序之间和/或相应应用程序内调整和/或改变触摸敏感表面的一个或多个功能以及终端上显示的相应信息。这样,终端的公共物理架构(例如,触摸敏感表面)可以支持具有对用户而言直观且透明的用户界面的各种应用程序。
实施例1
如图1所示,本实施例提供一种图像编码方法,包括:
s102:获取待编码数据,将所述待编码数据转换为rgb颜色值格式;
如图5所示,具体的,获取待编码数据,将所述待编码数据转换为十六进制的字符串,这里的待编码数据可以是图片信息,如bmp,jpg,png,tif,gif,pcx,tga,exif,fpx,等格式,在此不做限定。
以所述字符串中的每两位确定一个数据段,以每三个所述数据段确定一个数据单元,其中所述数据单元对应唯一的颜色值,本是实施例中,例如待编码数据的十进制为“171195181”,转换为16进制为“abc3b5”,确定的颜色值为“绿色”。
s104:在指定像素区域内,以每个码元对应一种颜色值绘制编码区;
具体的,如图6所示,在m*n像素区域范围内,以每x2个像素点区域作为一个码元,每个码元以一个数据单元对应的颜色值填充,从而形成了一个表示
其中x表示像素点;m表示码元横向像素点个数;n表示码元竖向像素点个数。
即x是1时是一个像素点是一个码元,x是2时,一个长为2宽为2的矩形区域(4个像素点)为一个码元。以正方形区域作为一个码元,图像解析时实现逻辑更简单。
s106:在所述编码区设置一个基准点,以所述基准点为起点,绘制横向和纵向的颜色校准线,从而输出编码图像;
具体的,如图7所示,以编码区的顶点为基准点,根据所述基准点的向上的临近像素,构造横向颜色校准线;进一步的,以基准点向上的临近两个像素,每个像素向右画一条线,线的长度为m个像素,两条线分别以#000000、#ffffff两种颜色填充,作为横向颜色校准线。
根据所述基准点的向左的临近像素,构造纵向颜色校准线,再根据所述横向颜色校准线与所述纵向颜色校准线输出所述编码图像。进一步的,基准点向左的临近两个像素,每个像素向下画一条线,线的长度为n个像素,两条线分别以#000000、#ffffff两种颜色填充,作为纵向颜色校准线;最终输出(m 2)*(n 2)像素的编码图像。
实施例2
如图2所示,本实施例提供一种图像解码方法,包括:
s202:获取所述输出图像数据;
具体的,所述输出图像数据为实施例1的方法,获得的编码图像。
s204:查找所述输出图像的基准点,再对所述输出图像做翻转和矫正;
具体的,先找到图像的基准点,再根据基准点的位置做图像的翻转、矫正;确保基准点在图像的左顶点。
s206:根据所述横向颜色校准线以及纵向颜色校准线对数据区内的码元进行颜色校准;
具体的,以所述横向颜色校准线与纵向颜色校准线每个像素与预定颜色的差值作为校准依据;校准所述横向颜色校准线与纵向颜色校准线中每个像素点在所述编码区域内的汇聚点像素的颜色值。进一步,以横向、纵向颜色校准线每个像素与#000000、#ffffff两种颜色的差值作为校准依据,校准横向、纵向颜色校准线每个像素点在编码区域内的汇聚点像素的颜色值。
s208:解析所述数据区内每个码元的颜色,将颜色值按特定拆分规则转换成输出数据。
具体的,在校准颜色后编码区域,以从左到右、从上到下的顺序逐个读取码元中的颜色,解析每个码元rgb颜色值,转换输出字符串数据。
实施例3
如图3所示,本实施例提供一种图像编码装置,包括:
格式转换模块10,用于获取待编码数据,将所述待编码数据转换为rgb颜色值格式;
绘制编码区模块20,用于在指定像素区域内,以每个码元对应一种颜色值绘制编码区;
图像输出模块30,用于在所述编码区设置一个基准点,以所述基准点为起点,绘制横向和纵向的颜色校准线,从而输出编码图像。
实施例4
如图4所示,本实施例提供一种图像解码装置,包括:
数据获取模块60,用于获取所述输出图像数据
查找模块70,用于查找所述输出图像的基准点,再对所述输出图像做翻转和矫正
校准模块80,用于根据所述横向颜色校准线以及纵向颜色校准线对数据区内的码元进行颜色校准;
解析单元90,用于解析所述数据区内每个码元的颜色,将颜色值按特定拆分规则转换成输出数据。
实施例5
本实施例提供了一种计算机可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行实施例1和/或实施例2所述的方法。
具体的,所述计算机可读存储介质可以是前述实施例所述的终端的内部存储单元,例如终端的硬盘或内存。所述计算机可读存储介质也可以是所述终端的外部存储设备,例如所述终端上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述计算机可读存储介质还可以既包括所述终端的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的终端和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露终端和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
1.一种图像编码方法,其特征在于,包括:
s102:获取待编码数据,将所述待编码数据转换为rgb颜色值格式;
s104:在指定像素区域内,以每个码元对应一种颜色值绘制编码区;
s106:在所述编码区设置一个基准点,以所述基准点为起点,绘制横向和纵向的颜色校准线,从而输出编码图像。
2.根据权利要求1所述一种图像解码方法,其特征在于,所述s102步骤包括:
获取待编码数据,将所述待编码数据转换为十六进制的字符串;
以所述字符串中的每两位确定一个数据段,以每三个所述数据段确定一个数据单元,其中所述数据单元对应唯一的颜色值。
3.根据权利要求1所述一种图像解码方法,其特征在于,所述s104步骤包括:在m*n像素区域范围内,以每x2个像素点区域作为一个码元,每个码元以一个数据单元对应的颜色值填充,从而形成了一个表示
其中x表示像素点;m表示码元横向像素点个数;n表示码元竖向像素点个数。
4.根据权利要求3所述一种图像解码方法,其特征在于,所述s106步骤包括:
以编码区的顶点为基准点,根据所述基准点的向上的临近像素,构造横向颜色校准线;根据所述基准点的向左的临近像素,构造纵向颜色校准线,再根据所述横向颜色校准线与所述纵向颜色校准线输出所述编码图像。
5.一种图像编码装置,其特征在于,包括:
格式转换模块,用于获取待编码数据,将所述待编码数据转换为rgb颜色值格式;
绘制编码区模块,用于在指定像素区域内,以每个码元对应一种颜色值绘制编码区;
图像输出模块,用于在所述编码区设置一个基准点,以所述基准点为起点,绘制横向和纵向的颜色校准线,从而输出编码图像。
6.一种图像解码方法,其特征在于,所述
s202:获取所述输出图像数据;
s204:查找所述输出图像的基准点,再对所述输出图像做翻转和矫正;
s206:根据所述横向颜色校准线以及纵向颜色校准线对数据区内的码元进行颜色校准;
s208:解析所述数据区内每个码元的颜色,将颜色值按特定拆分规则转换成输出数据。
7.根据权利要求6所述一种图像解码方法,其特征在于,所述步骤s206包括:
以所述横向颜色校准线与纵向颜色校准线每个像素与预定颜色的差值作为校准依据;校准所述横向颜色校准线与纵向颜色校准线中每个像素点在所述编码区域内的汇聚点像素的颜色值。
8.根据权利要求7所述的图像解码方法,其特征在于,所述的步骤s208包括:
在校准颜色后编码区域,以从左到右、从上到下的顺序逐个读取码元中的颜色,解析每个码元rgb颜色值,转换输出数据。
9.一种图像解码装置,其特征在于,包括:
数据获取模块,用于获取所述输出图像数据
查找模块,用于查找所述输出图像的基准点,再对所述输出图像做翻转和矫正
校准模块,用于根据所述横向颜色校准线以及纵向颜色校准线对数据区内的码元进行颜色校准;
解析单元,用于解析所述数据区内每个码元的颜色,将颜色值按特定拆分规则转换成输出数据。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-4和/或如权利要求6-8任一项所述的方法。
技术总结