CN106484753A - 数据处理方法 - Google Patents
数据处理方法 Download PDFInfo
- Publication number
- CN106484753A CN106484753A CN201610398639.9A CN201610398639A CN106484753A CN 106484753 A CN106484753 A CN 106484753A CN 201610398639 A CN201610398639 A CN 201610398639A CN 106484753 A CN106484753 A CN 106484753A
- Authority
- CN
- China
- Prior art keywords
- encoded
- character
- space
- symbol
- space encoder
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/174—Redundancy elimination performed by the file system
- G06F16/1744—Redundancy elimination performed by the file system using compression, e.g. sparse files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明实施例提出了数据处理方法,所述方法包括:获取当前待编码字符,根据静态统计模型,对当前待编码字符对应的初始编码空间进行划分,以获得下一待编码字符对应的初始编码空间;将下一待编码字符作为当前待编码字符,根据所述字符的统计模型,对当前待编码字符对应的初始编码空间进行划分,以获得下一待编码字符对应的初始编码空间,直到待编码数据中字符全部编码完毕,获得编码结果;根据第一系数,待编码数据中各个字符出现的频率,各个符号的累积频度以及初始编码空间的大小计算编码系数;将所述编码系数,所述编码结果以及待编码数据长度作为编码输出。所述方法进一步提高了数据的压缩率,使得压缩效果更好。
Description
技术领域
本发明涉及数据处理领域,具体而言,涉及无损数据处理方法。
背景技术
当前区间编码以及算术编码虽然能对数据进行一定程度的压缩,但是其压缩率并不高。
发明内容
有鉴于此,本发明实施例的目的在于提供无损数据处理方法,以解决上述问题。
第一方面,本发明实施例提供的一种数据处理方法,所述方法包括:对初始编码空间进行空间扩展得到扩展后的空间,根据所述字符的静态统计模型,对扩展后的初始编码空间进行划分,以获得当前待编码字符对应的编码空间;对所述当前编码字符对应的编码空间进行扩展,得到扩展后的编码空间;根据所述字符的统计模型,对所述扩展后的编码空间进行划分,以获得下一待编码字符对应的编码空间;将下一待编码字符作为当前待编码字符,直到所述待编码数据中字符全部编码完毕,获得编码结果;将所述编码结果、待编码数据长度以及第一统计参数作为编码输出,所述第一统计参数为所述待编码数据中包含1的个数。
第二方面,本发明实施例提供的一种数据处理方法,所述方法包括:获取编码输出,所述编码输出包括编码结果、待编码数据长度以及第一统计参数,所述第一统计参数为所述待编码数据中包含1的个数;根据初始解码空间的大小、所述各个符号的累积频度、第二统计参数以及第一系数获得当前解码空间,所述第二统计参数为待编码数据中包含字符种类的个数,所述第一系数为常数或者根据函数关系式计算的函数值,所述符号的累积频度是指符号值小于所述符号的值的其它符号的频度之和;根据第一统计参数、待编码数据长度、根据第一系数的增量函数关系得到解码阈值;将所述编码结果与所述解码阈值进行比较,得到解码输出;更新当前解码空间,更新解码阈值,得到更新后的解码阈值,判断所述编码结果是否大于等于所述更新后的解码阈值,得出解码输出,直到所述第一统计参数为零,解码完成。
与现有技术相比,本发明实施例提供的数据处理方法,通过在编码时对编码空间进行扩展,来改变编码输出,使得编码输出进一步被压缩,压缩率变大。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本发明实施例提供的一种数据处理终端的方框图。
图2是本发明第一实施例提供的一种数据处理方法的流程图。
图3是本发明第一实施例提供的一种数据处理方法的部分流程图。
图4是本发明第二实施例提供的一种数据处理方法的流程图。
图5是本发明第一实施例提供的一种数据处理装置的功能模块示意图。
图6是本发明第二实施例提供的一种数据处理装置的功能模块示意图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
如图1所示,是数据处理终端的方框示意图。所述数据处理终端包括数据处理装置、存储器220、存储控制器230、处理器240。
所述存储器220、存储控制器230、处理器240各元件相互之间直接或间接地电性连接,以实现数据的传输或交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。所述数据处理装置包括至少一个可以软件或固件(firmware)的形式存储于所述存储器中或固化在所述服务器200的操作系统(operating system,OS)中的软件功能模块。所述处理器240用于执行存储器220中存储的可执行模块,例如所述数据处理装置包括的软件功能模块或计算机程序。
其中,存储器220可以是,但不限于,随机存取存储器(Random Access Memory,RAM),只读存储器(Read Only Memory,ROM),可编程只读存储器(Programmable Read-OnlyMemory,PROM),可擦除只读存储器(Erasable Programmable Read-Only Memory,EPROM),电可擦除只读存储器(Electric Erasable Programmable Read-Only Memory,EEPROM)等。其中,存储器220用于存储程序,所述处理器240在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的服务器所执行的方法可以应用于处理器中,或者由处理器实现。
处理器240可能是一种集成电路芯片,具有信号的处理能力。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(NetworkProcessor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
图2示出了本发明一实施例提供的一种数据处理方法的流程图,所述方法包括:
步骤S301,对初始编码空间进行空间扩展得到扩展后的空间,根据所述字符的静态统计模型,对扩展后的初始编码空间进行划分,以获得当前待编码字符对应的编码空间;
优选的,所述静态统计模型为所述待编码数据中各个字符出现的频度的统计模型。
例如:定义S表示符号集合;Ls表示S集合符号个数,例如待编码数据为010001010010,则s={0,1},Ls=2,假设静态模型为:fk=1,k∈[0,Ls),则:f0=1,f1=1。
可以理解的是,可以把结束符也作为符号算进所述符号集合中,即此时静态模型fk=1,k∈[0,Ls),Ls=3,s={0,1,2},其中符号集合S中的2代表结束符,在解码时,可以将解码出所述结束符作为标志来判断解码是否结束。
其中,对初始编码空间进行空间扩展得到扩展后的空间的实施方式有多种,例如可以将初始编码空间的大小乘以第一系数得到扩展后的空间大小,扩展后的空间的下限与初始编码空间的下限相同,扩展后的空间的上限为所述扩展后的下限加上扩展后的空间大小。
步骤S302,对所述当前编码字符对应的编码空间进行扩展,得到扩展后的编码空间;根据所述字符的统计模型,对所述扩展后的编码空间进行划分,以获得下一待编码字符对应的编码空间。
其中,所述对所述当前编码字符对应的编码空间进行扩展,得到扩展后的编码空间的实施方式有多种,下面简单介绍两种实施方式,但是,可以理解的是,并不局限于此。
请参阅图3,第一种实施方式可以是,所述对所述当前编码字符对应的编码空间进行扩展,得到扩展后的编码空间,包括:
步骤S311,根据所述当前编码字符对应的编码空间的空间大小以及第一系数,得到扩展后的编码空间的空间大小;
其中,所述第一系数为常数或者根据函数关系式计算的函数值。
例如,假设所述第一系数为αn,其中,αn可以为常数,即αn的值不随划分区间的次数改变,或者αn=f(n),f为一种函数关系,即αn的值随着划分区间的次数改变,假设αn=1.5*n。
可以理解的是,R′n=Rn*αn,其中R′n表示将n次区间划分后得到的区间进行扩展后得的的扩展后的区间大小,Rn为表示n次区间划分后得到的区间大小。
假设αn=1.5,第一次划分后,若R1=10,R1’=R1*1.5=15,对于第二次划分后,若R1=2,R1’=R1*1.5=3。
对于αn=1.5*n而言,第一次划分后,若R1=10,R1’=R1*1.5*n=15,对于第二次划分后,若R1=2,R1’=R1*1.5*n=6。
例如,当所述当前编码字符对应的编码空间的空间大小为R′len,第一系数为αlen,则扩展后的编码空间的空间大小为:R′len=Rlen-1*αlen。
也可以根据下述公式进行实施:
其中,R′n为划分n次后的编码区间大小,R0为所述初始编码空间的区间大小,αi为第一系数,Ls为第二统计参数,所述第二统计参数为待编码数据中包含字符种类的个数。
步骤S312,根据所述初始编码空间的区间大小、所述各个符号的累积频度、第二统计参数以及第一系数,获得所述扩展后的编码空间的下限值,所述第二统计参数为待编码数据中包含字符种类的个数,所述符号的累积频度是指符号值小于所述符号的值的其它符号的频度之和。
作为一种实施方式,获得所述扩展后的S集合中第一个符号编码空间的下限值可以根据下述公式得到:
第二个符号:编码区间下限为第一个符号区间下限加上R′n,以此类推。
其中,L′n为扩展后的编码空间的下限值,R0为所述初始编码空间的区间大小,为所述各个符号的累积频度,Ls为第二统计参数,αj为第一系数。
步骤S313,根据所述扩展后的编码空间的下限以及所述扩展后的编码空间的区间大小,得的所述扩展后的编码空间的上限。
假设所述扩展后的编码空间的下限为l′len,所述扩展后的编码空间的区间大小为R′len,所述扩展后的编码空间的上限H′len=L′len+R′len-1。
作为第二种所述方式,所述对所述当前编码字符对应的编码空间进行扩展,得到扩展后的编码空间,包括:根据所述初始编码空间的区间大小、所述各个符号的累积频度、第二统计参数以及第一系数,获得所述扩展后的编码空间的下限值以及上限值,所述第二统计参数为待编码数据中包含字符种类的个数,所述符号的累积频度是指符号值小于所述符号的值的其它符号的频度之和。
其中,获得所述扩展后的编码空间的下限值以及上限值可以根据下述公式得到:
其中,L′n为扩展后的编码空间的下限值,H′n为扩展后的编码空间的上限值,R0为所述初始编码空间的区间大小,为所述各个符号的累积频度,Ls为第二统计参数,αj为第一系数。
可以理解的是,第一系数αn=αn-1时,αn是属于常数,αn的增量即αn=α。计算划分n次后的编码区间大小R′n,以及对应的编码区间的下限值L′n的公式变化如下:
当α′n≠αn时,αn是属于动态值,αn的增量可增可减,由函数f约定。
计算划分n次后的编码区间大小R′n,以及对应的编码区间的下限值L′n,上限值H′n,可以直接使用公式:
进行运算即可。其中,L′n为扩展后的编码空间的下限值,H′n为扩展后的编码空间的上限值,R0为所述初始编码空间的区间大小,为所述各个符号的累积频度,Ls为第二统计参数,αj为第一系数。
优选的,在对所述当前编码字符对应的编码空间进行扩展,得到扩展后的编码空间之后,所述方法还包括:计算所述扩展后的编码空间的下限和所述扩展后的编码空间的上限,从高位到地位数值相同的数值;判断所述从高位到地位数值相同的数值是否为零;如果否,则将所述扩展后的编码空间的下限的最高位作为编码结果,并将所述扩展后的编码空间再次进行扩展,获得下一待编码字符对应的编码空间。如果是,则将所述扩展后的编码空间作为下一待编码字符对应的编码空间。
其中,所述将所述扩展后的编码空间再次进行扩展,包括:将所述扩展后的编码空间的上限以及下限同时乘以一个数值。
其中,在二进制中,同乘的数值m可以取值为2,十进制中同乘的数值m可以取值10,十六进制中,同乘的数值m可以取值16,当然,可以理解是,同时乘以一个数值m的取值可以有多种,并不局限于上述实施例。
步骤S303,将下一待编码字符作为当前待编码字符,直到所述待编码数据中字符全部编码完毕,获得编码结果;
其中,所述编码结果可以是最后一个待编码字符对应的编码空间内的任意一个值,若最后一个待编码字符对应的编码空间内为[L′n,H′n],则编码结果V′可以取值为:L′n≤V′<H′n。优选的,取区间中从高位到低位非0数字最少的。
也可以将所述最后一个待编码字符对应的编码空间的下限作为编码结果,即V′=L′n。
步骤S304,将所述编码结果、待编码数据长度以及第一统计参数作为编码输出,所述第一统计参数为所述待编码数据中包含1的个数。
例如:假设对符号序列1010000110010101000100010进行编码,定义S表示符号集合;Ls表示S集合符号个数;那么每个符号出现的概率全部是按照进行计算,L当前区间的下限;H当前编码区间的上限;R为当前编码区间大小,其中R=H-L;Len表示待压缩数据的总长度。Rmax在初始编码空间中是一个正整数,在算术编码中是1。
编码步骤如下:
首先,初始化相关参数,由于当前的字符串中只有0和1,所以S∈{0,1},那么Ls=2。定义Rmax=100000000000,可以理解的是Rmax取值可以相对较大,T0=Ls,fk=1,k∈[0,Ls)即f0=1,f1=1,H0=R0=Rmax、L0=0。设定α0=1.1这里采用静态系数,即αn=α0。Len=0(待编码数据长度),Count=0(第一统计参数,即所述待编码数据中包含1的个数)。对初始编码空间进行扩展得到扩展后的空间R0=Rmax*α0=110000000000。根据所述字符的静态统计模型,对扩展后的初始编码空间进行划分,得到
U′0=[0,54999999999],U′1=[55000000000,110000000000]。
接着,获取第1个待编码字符1。此时待编码字符1对应的编码空间为U′1,,对待编码字符1对应的编码空间为U′1进行扩展,根据公式
得R1=30250000000;得到扩展后的编码空间;根据所述字符的统计模型,对所述扩展后的编码空间进行划分后得到
U′0=[55000000000,85249999999],U′1=[85250000000,115500000000]。
并更新统计值:Count=Count+1,Len=Len+1。
然后获取第2个待编码字符0,同理计算出R2=16637500000,得到扩展后的编码空间;根据所述字符的统计模型,对所述扩展后的编码空间进行划分后得到U′0=[55000000000,71637499999],U′1=[71637500000,88275000000]。并更新统计值:Count=Count+0(由于此时待编码字符为0,因此count的值不加1),Len=Len+1。
以此类推,得到下表:
最后编码结果取值V′=730429,当αn=α0=1.1时,比起传统的编码结果63118085,少2个数值,提高25%的压缩比。将V′,Count,Len作为编码输出。
值得注意的是,对于第一系数是根据函数关系式计算的函数值,则需要输出α0和函数关系式,或者提前在两端进行约定。
因此,本发明实施例提供的数据处理方法,通过在编码时对编码子空间范围的改变,来改变编码输出,使得编码输出进一步被压缩,压缩率变大。
图4示出了本发明第二实施例提供的一种数据处理方法的流程图,所述方法包括:
步骤S401,获取编码输出,所述编码输出包括编码结果、待编码数据长度以及第一统计参数,所述第一统计参数为所述待编码数据中包含1的个数;
可以理解的是,所述编码输出是与上一实施例中的编码输出相对应的。
步骤S402,根据初始解码空间的大小、所述各个符号的累积频度、第二统计参数以及第一系数获得当前解码空间,所述第二统计参数为待编码数据中包含字符种类的个数,所述第一系数为常数或者根据函数关系式计算的函数值,所述符号的累积频度是指符号值小于所述符号的值的其它符号的频度之和;
作为一种实施方式,所述根据初始解码空间的大小、所述各个符号的累积频度、第二统计参数以及第一系数获得当前解码空间可以通过下述公式获得:
其中,L′n为扩展后的S集合中第一个符号编码空间的下限值,H′n为扩展后的编码空间的上限值,R0为所述初始编码空间的区间大小,为所述各个符号的累积频度,Ls为第二统计参数,αj为第一系数。
步骤S403,根据第一统计参数、待编码数据长度、根据第一系数的增量函数关系得到解码阈值;
可以通过下述公式获得所述第一阈值T:
其中,qmax和qmin都是根据第一统计参数、待编码数据长度获得。
例如,当第一统计参数为9,待编码长度为25时:
qmax为将9个1放在25位2进制数的高9位后得到的二进制数,即:1111111110000000000000000,
qmin为将9个1放在25位2进制数的低9位后得到的二进制数,即:0000000000000000111111111。
当qmax对应1111111110000000000000000和qmin对应于0000000000000000111111111时,那么T就一定会对应于1000000000000000011111111,其中当第一系数不为1时,qmin、qmax或T可以通过公式:
计算得到,公式中的L′n即对应qmin,H′n对应qmax。其中,L′n为扩展后的编码空间的下限值,H′n为扩展后的编码空间的上限值,R0为所述初始编码空间的区间大小,为所述各个符号的累积频度,Ls为第二统计参数,αj为第一系数。
通过上述方法,即可得出T对应的值,当第一个解码出的是1时,接下来T就对应于1100000000000000001111111的编码值。
其中,第一系数函数关系为:
y(n)=p(n)p(n+1)…p(Len),n∈[1,Len]
可以根据第一系数函数关系计算第二阀值t:
t=T*y(n),
其中y(n)根据T所对应的序列根据上述公式计算出来的。所以当第一个解码出的是1时,y(n)对应于1100000000000000001111111。
y(n)既可作用于T,亦可作用于编码结果。当作用于编码结果时用v′与T进行比较。当作用于T时,用t与V′进行比较,可以理解的是,t或者T都可以作为解码阈值,当将T作为解码阈值时,对应的编码结果为v′,当将t作为解码阈值时,对应的编码结果为V′。
步骤S404,将所述编码结果与所述解码阈值进行比较,得到解码输出;
若所述编码结果大于等于所述解码阈值,则输出1;否则,输出0。
步骤S405,更新当前解码空间,更新解码阈值,得到更新后的解码阈值,判断所述编码结果是否大于等于所述更新后的解码阈值,得出解码输出,直到所述第一统计参数为零,解码完成。
每次解码后更新当前解码空间,更新解码阈值,将已经解码出符号串作为新Q的上下界,计算出qmax、qmin和T,根据第一系数函数关系,得到t或v′,再跟编码结果V′进行比较得到需要输出的符号。
例如:对接收到的编码输出进行数据处理。
首先:初始化相关参数,由于当前的字符串中只有0和1,所以S∈{0,1},那么Ls=2。定义Rmax=100000000000,可以理解的是Rmax取值可以相对较大,T0=Ls,fk=1,k∈[0,Ls)即f0=1,f1=1,H0=R0=Rmax、L0=0。设定α0=1.1这里采用静态系数,即αn=α0。Len=0,count=0;由于是α0=1.1,y(n)≈1。所以取y(n)=1,Ty(n)=t或
获取Count=9(第一统计参数,即所述待编码数据中包含1的个数),Len=25(待编码数据长度)和编码结果V′=730429。
根据公式:
获得当前解码空间,t=T=55004691494。将编码结果V′与t进行比较。此时V′>550046,所以输出1;Count=Count-1(只有解码出符号1时才减1),Len=Len-1。
接着,根据1100000000000000001111111得出t=T=85252570554。V′<852525,输出0;;Count=Coun-0(只有解码出符号1时才减1),Len=Len-1。
然后,根据1010000000000000001111111得出t=T=71640070554。V′>716400,输出符号1;Count=Count-1(只有解码出符号1时才减1),Len=Len-1。
此时,根据1011000000000000000111111得出t=T=80789529037。V′<807895,输出符号0;
以此类推,利用1010000000000000001111111与1010111111100000000000000继续解码。当Len=0时解码结束,解码后的符号串为1010000110010101000100010,解码过程如下表:
因此,本发明实施例提供的数据处理方法,通过对接收到的编码输出进行逆向求解,能够无损的解出原始数据,使得经过压缩的数据能够得无损还原。
请参阅图5,图5是本发明第一实施例提供的一种数据处理装置的功能模块示意图,所述数据处理装置210包括第一处理模块211,编码模块212,计算模块213,以及输出模块214。
所述第一处理模块211,用于对初始编码空间进行空间扩展得到扩展后的空间,根据所述字符的静态统计模型,对扩展后的初始编码空间进行划分,以获得当前待编码字符对应的编码空间;
所述编码模块212,用于对所述当前编码字符对应的编码空间进行扩展,得到扩展后的编码空间;根据所述字符的统计模型,对所述扩展后的编码空间进行划分,以获得下一待编码字符对应的编码空间;将下一待编码字符作为当前待编码字符,直到所述待编码数据中字符全部编码完毕,获得编码结果;
所述输出模块213,用于将所述编码结果、待编码数据长度以及第一统计参数作为编码输出,所述第一统计参数为所述待编码数据中包含1的个数。
以上各模块可以是由软件代码实现,此时,上述的各模块可存储于数据处理终端的存储器内。以上各模块同样可以由硬件例如集成电路芯片实现。
请参阅图6,图6是本发明第二实施例提供的一种数据处理装置的功能模块示意图,所述数据处理装置810包括获取模块811,第一计算模块812,第二计算模块813,以及解码输出模块814。
所述获取模块811,用于获取编码输出,所述编码输出包括编码结果、待编码数据长度以及第一统计参数,所述第一统计参数为所述待编码数据中包含1的个数;
所述第一计算模块812,用于根据初始解码空间的大小、所述各个符号的累积频度、第二统计参数以及第一系数获得当前解码空间,所述第二统计参数为待编码数据中包含字符种类的个数,所述第一系数为常数或者根据函数关系式计算的函数值,所述符号的累积频度是指符号值小于所述符号的值的其它符号的频度之和;
所述第二计算模块813,用于根据第一统计参数、待编码数据长度、根据第一系数的增量函数关系得到解码阈值;
所述解码输出模块814,用于将所述编码结果与所述解码阈值进行比较,得到解码输出;更新当前解码空间,更新解码阈值,得到更新后的解码阈值,判断所述编码结果是否大于等于所述更新后的解码阈值,得出解码输出,直到所述第一统计参数为零,解码完成。
以上各模块可以是由软件代码实现,此时,上述的各模块可存储于数据处理终端的存储器内。以上各模块同样可以由硬件例如集成电路芯片实现。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本发明实施例所提供的数据处理装置,其实现原理及产生的技术效果和前述方法实施例相同,为简要描述,装置及系统实施例部分未提及之处,可参考前述方法实施例中相应内容。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种数据处理方法,其特征在于,所述方法包括:
对初始编码空间进行空间扩展得到扩展后的空间,根据所述字符的静态统计模型,对扩展后的初始编码空间进行划分,以获得当前待编码字符对应的编码空间;
对所述当前编码字符对应的编码空间进行扩展,得到扩展后的编码空间;根据所述字符的统计模型,对所述扩展后的编码空间进行划分,以获得下一待编码字符对应的编码空间;
将下一待编码字符作为当前待编码字符,直到所述待编码数据中字符全部编码完毕,获得编码结果;
将所述编码结果、待编码数据长度以及第一统计参数作为编码输出,所述第一统计参数为所述待编码数据中包含1的个数。
2.根据权利要求1所述的方法,其特征在于,所述静态统计模型为所述待编码数据中各个字符出现的频度的统计模型。
3.根据权利要求1所述的方法,其特征在于,所述直到所述待编码数据中字符全部编码完毕获得编码结果,包括:
当所述待编码数据中最后一个字符编码完成后,将所述最后一个字符对应的编码空间的下限作为编码结果。
4.根据权利要求1所述的方法,其特征在于,所述对所述当前编码字符对应的编码空间进行扩展,得到扩展后的编码空间,包括:
根据所述当前编码字符对应的编码空间的空间大小以及第一系数,得到扩展后的编码空间的空间大小;
根据所述初始编码空间的区间大小、所述各个符号的累积频度、第二统计参数以及第一系数,获得所述扩展后的编码空间的下限值,所述第二统计参数为待编码数据中包含字符种类的个数,所述符号的累积频度是指符号值小于所述符号的值的其它符号的频度之和;
根据所述扩展后的编码空间的下限以及所述扩展后的编码空间的区间大小,得的所述扩展后的编码空间的上限。
5.根据权利要求1所述的方法,其特征在于,所述对所述当前编码字符对应的编码空间进行扩展,得到扩展后的编码空间,包括:
根据所述初始编码空间的区间大小、所述各个符号的累积频度、第二统计参数以及第一系数,获得所述扩展后的编码空间的下限值以及上限值,所述第二统计参数为待编码数据中包含字符种类的个数,所述符号的累积频度是指符号值小于所述符号的值的其它符号的频度之和。
6.根据权利要求4所述的方法,其特征在于,在对所述当前编码字符对应的编码空间进行扩展,得到扩展后的编码空间之后,所述方法还包括:
计算所述扩展后的编码空间的下限和所述扩展后的编码空间的上限,从高位到低位数值相同的数值;
判断所述从高位到低位数值相同的个数是否为零;
如果否,则将所述扩展后的编码空间的下限的最高位相同的数值作为编码结果,并将所述扩展后的编码空间再次进行扩展,获得下一待编码字符对应的编码空间;
如果是,则将所述扩展后的编码空间作为下一待编码字符对应的编码空间。
7.根据权利要求6所述的方法,其特征在于,所述将所述扩展后的编码空间再次进行扩展,包括:将所述扩展后的编码空间的上限以及下限同时乘以一个数值。
8.根据权利要求4或5任一项所述的方法,其特征在于,所述第一系数为常数或者根据函数关系式计算的函数值。
9.一种数据处理方法,其特征在于,所述方法包括:
获取编码输出,所述编码输出包括编码结果、待编码数据长度以及第一统计参数,所述第一统计参数为所述待编码数据中包含1的个数;
根据初始解码空间的大小、所述各个符号的累积频度、第二统计参数以及第一系数获得当前解码空间,所述第二统计参数为待编码数据中包含字符种类的个数,所述第一系数为常数或者根据函数关系式计算的函数值,所述符号的累积频度是指符号值小于所述符号的值的其它符号的频度之和;
根据第一统计参数、待编码数据长度、根据第一系数的增量函数关系得到解码阈值;
将所述编码结果与所述解码阈值进行比较,得到解码输出;
更新当前解码空间,更新解码阈值,得到更新后的解码阈值,判断所述编码结果是否大于等于所述更新后的解码阈值,得出解码输出,直到所述第一统计参数为零,解码完成。
10.根据权利要求9所述的方法,其特征在于,将所述编码结果与所述解码阈值进行比较,得到解码输出,包括:
若所述编码结果大于等于所述解码阈值,则输出1;否则,输出0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610398639.9A CN106484753B (zh) | 2016-06-07 | 2016-06-07 | 数据处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610398639.9A CN106484753B (zh) | 2016-06-07 | 2016-06-07 | 数据处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106484753A true CN106484753A (zh) | 2017-03-08 |
CN106484753B CN106484753B (zh) | 2020-01-03 |
Family
ID=58238179
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610398639.9A Expired - Fee Related CN106484753B (zh) | 2016-06-07 | 2016-06-07 | 数据处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106484753B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109428603A (zh) * | 2017-08-30 | 2019-03-05 | 前海中科芯片控股(深圳)有限公司 | 一种数据编码方法、装置以及存储介质 |
CN112188198A (zh) * | 2020-09-24 | 2021-01-05 | 湖南遥昇通信技术有限公司 | 图像数据压缩解压方法及系统 |
CN113987556A (zh) * | 2021-12-24 | 2022-01-28 | 杭州趣链科技有限公司 | 数据处理方法和装置、电子设备、存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103974066A (zh) * | 2014-05-14 | 2014-08-06 | 华为技术有限公司 | 视频编码方法和设备 |
CN104394418A (zh) * | 2014-09-23 | 2015-03-04 | 清华大学 | 一种视频数据编码、解码的方法及装置 |
CN104579360A (zh) * | 2015-02-04 | 2015-04-29 | 华为技术有限公司 | 一种数据处理的方法和设备 |
-
2016
- 2016-06-07 CN CN201610398639.9A patent/CN106484753B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103974066A (zh) * | 2014-05-14 | 2014-08-06 | 华为技术有限公司 | 视频编码方法和设备 |
CN104394418A (zh) * | 2014-09-23 | 2015-03-04 | 清华大学 | 一种视频数据编码、解码的方法及装置 |
CN104579360A (zh) * | 2015-02-04 | 2015-04-29 | 华为技术有限公司 | 一种数据处理的方法和设备 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109428603A (zh) * | 2017-08-30 | 2019-03-05 | 前海中科芯片控股(深圳)有限公司 | 一种数据编码方法、装置以及存储介质 |
WO2019041919A1 (zh) * | 2017-08-30 | 2019-03-07 | 前海中科芯片控股 (深圳)有限公司 | 一种数据编码方法、装置以及存储介质 |
CN112188198A (zh) * | 2020-09-24 | 2021-01-05 | 湖南遥昇通信技术有限公司 | 图像数据压缩解压方法及系统 |
CN112188198B (zh) * | 2020-09-24 | 2022-08-02 | 湖南遥昇通信技术有限公司 | 图像数据压缩解压方法及系统 |
CN113987556A (zh) * | 2021-12-24 | 2022-01-28 | 杭州趣链科技有限公司 | 数据处理方法和装置、电子设备、存储介质 |
CN113987556B (zh) * | 2021-12-24 | 2022-05-10 | 杭州趣链科技有限公司 | 数据处理方法和装置、电子设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106484753B (zh) | 2020-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106445890B (zh) | 数据处理方法 | |
JP5955378B2 (ja) | エンコード方法及びデコード方法 | |
EP3490153B1 (en) | Data compression coding method, device therefor, and program therefor | |
CN106484753A (zh) | 数据处理方法 | |
CN102970043A (zh) | 一种基于gzip的压缩硬件系统及其加速方法 | |
WO2017198189A1 (zh) | 颜色标识型彩色二维图码的生成、识读方法及装置 | |
CN104579360B (zh) | 一种数据处理的方法和设备 | |
ES2586409T3 (es) | Método y aparato para codificación y decodificación aritmética | |
CN111260784B (zh) | 一种城市三维空间网格压缩编码方法、装置及终端设备 | |
CN109474281A (zh) | 数据编码、解码方法及装置 | |
CN109428603A (zh) | 一种数据编码方法、装置以及存储介质 | |
CN105956921A (zh) | 一种银行卡号自选方法及装置 | |
CN111522801A (zh) | 分布式的数据库动态扩容方法、装置、设备及存储介质 | |
CN111915091A (zh) | 一种车位排布方法、装置、终端和介质 | |
CN113746487A (zh) | 一种数据压缩方法、装置及电子设备和存储介质 | |
CN109388373A (zh) | 用于低功耗内核的乘除法器 | |
Park et al. | Irregular product coded computation for high-dimensional matrix multiplication | |
CN109886711A (zh) | 一种商品条码编码方法及装置 | |
CN110120819A (zh) | 一种布尔电路编码方法、装置及系统 | |
CN104636119A (zh) | 用于处理混编指令的方法和设备 | |
CN108829930B (zh) | 三维数字化工艺设计mbd模型的轻量化方法 | |
CN108092670B (zh) | 编码方法和装置 | |
CN108365959A (zh) | 一种云环境下全代理的外包多项式验证方法 | |
CN109117648B (zh) | 数据库浮点数据加密方法 | |
CN113342283A (zh) | 用户位置信息存储方法、装置、电子设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for 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 |
Granted publication date: 20200103 Termination date: 20210607 |
|
CF01 | Termination of patent right due to non-payment of annual fee |