CN108171763B - 解码系数的存取方法和系统、jpeg解码系数的存取方法 - Google Patents
解码系数的存取方法和系统、jpeg解码系数的存取方法 Download PDFInfo
- Publication number
- CN108171763B CN108171763B CN201810035209.XA CN201810035209A CN108171763B CN 108171763 B CN108171763 B CN 108171763B CN 201810035209 A CN201810035209 A CN 201810035209A CN 108171763 B CN108171763 B CN 108171763B
- Authority
- CN
- China
- Prior art keywords
- coefficient
- data
- decoding
- read
- address
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
本发明涉及一种解码系数的存取方法和系统,该方法包括步骤:从huffman解码模块解析的解码系数中获取数据值不为零的有效数据;获取有效数据的存储地址,根据存储地址将解码系数对应的有效数据存储在系数存储体中;在读取解码系数时,获取解码系数的读取地址;判断与读取地址相对应的待读取数据是否为系数存储体中已经存储的有效数据;若是,则根据该读取地址从系数存储体中读取相应的有效数据,否则输出零值,根据读取的有效数据和零值获取解码系数。上述方案避免了需要频繁操作存储器导致效率低的缺陷,提高了解码系数存储和读取的效率,还降低了存储和读取解码系数的能耗。还涉及一种JPEG解码系数的存取方法、计算机设备和计算机可读存储介质。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种解码系数的存取方法和系统、JPEG解码系数的存取方法、计算机设备和计算机可读存储介质。
背景技术
随着计算机技术领域的迅速发展,各行各业对数据的需求也越来越大,需要对大量的数据进行快速存储和读取,数据存储和数据读取的速度对数据进行高效处理越来越重要。
以图像数据为例,JPEG(Joint Photographic Experts Group,联合图像专家小组)作为一种图像压缩标准,被广泛应用在图像处理技术领域,例如人脸识别,图像存储等技术。一般来说,对JPEG进行解码得到JPEG的解码系数后需要对该解码系数进行存储和读取等操作,而解码系数存储和读取的速度对提高该图像数据的处理效率至关重要。
传统技术通常会将解码系数的所有数据都进行存储,例如在对JPEG解码系数进行存储操作时,会将JPEG解码系数的全部数据都进行存储,这种技术虽然能保证该数据不容易丢失,但是利用这种技术对数据进行存储或读取时需要频繁操作存储器,导致数据存取效率偏低。
发明内容
基于此,有必要针对传统技术存取效率偏低的问题,提供一种解码系数的存取方法和系统。
一种解码系数的存取方法,包括步骤:
从huffman解码模块解析的解码系数中获取数据值不为零的有效数据;
获取所述有效数据的存储地址,根据所述存储地址将所述解码系数对应的有效数据存储在系数存储体中;
在读取解码系数时,获取解码系数的读取地址;
判断与所述读取地址相对应的待读取数据是否为所述系数存储体中已经存储的有效数据;
若是,则根据该读取地址从所述系数存储体中读取相应的有效数据,否则输出零值,根据所述读取的有效数据和零值获取解码系数。
上述解码系数的存取方法,将huffman解码模块解析的解码系数的非零数据存储在系数存储体中,在读取解码系数时,根据解码系数的读取地址,从系数存储体中读取非零数据或直接输出零值,根据读取的非零数据和零值得到所要读取的解码系数,该方案避免了传统技术需要频繁操作存储器导致效率低的缺陷,提高了解码系数存储和读取的效率,还降低了存储和读取解码系数的能耗。
在一个实施例中,提供一种解码系数的存取系统,该系统包括:
获取模块,用于从huffman解码模块解析的解码系数中获取数据值不为零的有效数据;
存储模块,用于获取所述有效数据的存储地址,根据所述存储地址所述解码系数将对应的有效数据存储在系数存储体中;
读取模块,用于在读取解码系数时,获取解码系数的读取地址;判断与所述读取地址相对应的待读取数据是否为所述系数存储体中已经存储的有效数据;若是,则根据该读取地址从所述系数存储体中读取相应的有效数据,否则输出零值,根据所述读取的有效数据和零值获取解码系数。
上述解码系数的存取系统,将huffman解码模块解析的解码系数的非零数据存储在系数存储体中,在读取解码系数时,根据解码系数的读取地址,从系数存储体中读取非零数据或直接输出零值,根据读取的非零数据和零值得到所要读取的解码系数,该方案避免了传统技术需要频繁操作存储器导致效率低的缺陷,提高了解码系数存储和读取的效率,还降低了存储和读取解码系数的能耗。
在一个实施例中,所述从huffman解码模块解析的解码系数中获取数据值不为零的有效数据的步骤包括:
接收huffman解码模块解析输出的解码系数;
获取所述解码系数的基本单元符号,根据所述基本单元符号提取所述解码系数的非零数据;
根据所述非零数据获取所述解码系数的有效数据。
在一个实施例中,在所述根据所述存储地址将所述解码系数将对应的有效数据存储在系数存储体中的步骤之后,还包括:
将所述有效数据的存储地址的有效数据标记设置为有效;其中,所述有效数据标记记录所述系数存储体的存储地址的数据的有效性;
所述判断与所述读取地址相对应的待读取数据是否为所述系数存储体中已经存储的有效数据的步骤包括:
获取所述读取地址的有效数据标记;
根据所述有效数据标记判断与该读取地址相对应的待读取数据的有效性;
若所述有效数据标记为有效,则判断该待读取数据是有效数据。
在一个实施例中,在所述根据该读取地址从所述系数存储体中读取相应的有效数据的步骤之后,还包括:
在所述解码系数的读取完成后,将所述已读取的有效数据的有效数据标记设置为无效
在一个实施例中,所述解码系数包括多个系数单元块;
在所述获取所述有效数据的存储地址的步骤之前,还包括:
接收所述解码系数的各个系数单元块的解析完成指令;
所述根据所述存储地址将所述解码系数将对应的有效数据存储在系数存储体中的步骤包括:
根据各个系数单元块的有效数据的存储地址,将所述解码系数的各个系数单元块的有效数据存储在系数存储体中;
将所述已存储的系数单元块的存储状态标记设置为有效;其中,所述存储状态标记记录所述各个系数单元块的存储状态的有效性;
所述若是,则根据该读取地址从所述系数存储体中读取相应的有效数据,否则输出零值,根据所述读取的有效数据和零值获取解码系数的步骤包括:
若是,则根据该读取地址从系数存储体中读取相应系数单元块的有效数据;否则输出零值,根据读取的各个系数单元块有效数据和零值获取解码系数;
在所述解码系数的读取完成后,将已经读取的系数单元块的存储状态设置为无效。
在一个实施例中,在所述将所述解码系数将对应的有效数据存储在系数存储体中的步骤之前,还包括:
获取数据存储请求;
在所述将所述解码系数将对应的有效数据存储在系数存储体中的步骤之后,还包括:
返回数据存储成功响应;
在所述获取解码系数的读取地址的步骤之前,还包括:
获取数据读取请求;
在所述根据该读取地址从所述系数存储体中读取相应的有效数据的步骤之后或在所述输出零值的步骤之后,还包括:
返回数据读取成功响应。
针对传统技术解码系数的存取效率低的问题,在一个实施例中,提供一种JPEG解码系数的存取方法,该方法利用如上任意一个实施例所述的解码系数的存取方法对JPEG解码系数的非零数据进行存储和读取。
上述JPEG解码系数的存取方法,采用上述解码系数的存取方法对JPEG解码系数进行存取,提高了JPEG解码系数的存取效率,还降低了存储和读取JPEG解码系数的能耗。
一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上任一实施例所述解码系数的存取方法或JPEG解码系数的存取方法的步骤。
上述计算机设备,通过所述处理器上运行的计算机程序,提高了解码系数的存取效率,还降低了存储和读取解码系数的能耗。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上任一实施例所述解码系数的存取方法或JPEG解码系数的存取方法的步骤。
上述计算机可读存储介质,通过其存储的计算机程序,提高了解码系数的存取效率,还降低了存储和读取解码系数的能耗。
附图说明
图1为一个实施例中的解码系数的存取方法的应用环境图;
图2为一个实施例中的解码系数的存取方法的流程示意图;
图3为另一个实施例中的解码系数的存取方法的流程示意图;
图4为另一个实施例中的解码系数的存取方法的流程示意图;
图5为一个实施例中的解码系数的存取系统的结构示意图;
图6为一个实施例中的JPEG解码系数的存取系统的结构示意图;
图7为一个实施例中的解码系数的存储系统的硬件结构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明各实施例的解码系数的存取方法,可以应用于如图1所示的应用环境中,图1为一个实施例中的解码系数的存取方法的应用环境图,解码模块100可以用于接收huffman编码压缩的数据位流,huffman编码即哈夫曼编码,属于是变字长编码的一种,huffman解码模块100对该数据位流进行huffman解码解析出解码系数,系数存取模块200用于获取该解码系数,并可以将该解码系数以系数单元块的形式进行存储,在对已经存储的解码系数进行读取时,可以通过后续处理模块300以系数单元块的形式整块读取出解码系数。
本发明实施例提供一种解码系数的存取方法,该方法可以被应用于如图1所示的系数存取模块200中实现对解码系数进行存取,参考图2,图2为一个实施例中的解码系数的存取方法的流程示意图,该方法可以包括如下步骤:
步骤S101,从huffman解码模块解析的解码系数中获取数据值不为零的有效数据。
在本步骤中,huffman解码模块可以对huffman编码压缩后的数据位流进行huffman解码,例如可以该解码模块可以对压缩后的图像数据的数据位流进行解码,得到解码系数。由于huffman解码模块解析出的解码系数一般是由各种不同数据值的数据组成,一般是包含大量的零值数据,若获取解码系数的所有数据并对这些数据都进行存储,则容易导致存储速度变慢,存储效率变低。本步骤通过提取huffman解码模块解析的解码系数中数据值不为零的有效数据,在对解码系数进行存储时能够节约存储时间,并降低存储的能耗。
步骤S102,获取有效数据的存储地址,并根据该存储地址将该解码系数对应的有效数据存储在系数存储体中。
本步骤主要是根据有效数据的存储地址将解码系数的所有有效数据存储在系数存储体中。在对数据进行存储时,会根据该数据的存储地址将该数据的数据值在存储器的相应存储单元中进行存储。
获取解码系数的有效数据的存储地址,该存储地址可以是与系数存储体的各个存储单元一一对应的地址,所以根据该有效数据的存储地址可以将解码系数的有效数据存储在系数存储体的指定地址单元,从而完成对解码系数中的所有有效数据的存储。
本步骤对解码系数的有效数据进行存储,对于解码系数中的零值数据,则可以不进行存储,在读取的时候,可以通过直接输出零值等方式还原该解码系数未进行存储的零值数据,避免了传统技术对解码系数进行存储时频繁操作系数存储器导致存储效率低的问题,也降低了系数存储的能耗。
步骤S103,在读取解码系数时,获取解码系数的读取地址。
本步骤主要是在需要对解码系数进行读取时,获取该解码系数的待读取数据的读取地址。
步骤S104,判断与该读取地址相对应的待读取数据是否为系数存储体中已经存储的有效数据。
将解码系数的有效数据存储在系数存储体后,可以对该解码系数进行读取操作。本步骤主要是利用获取的解码系数的读取地址,并判断待读取的数据是否为已经存储在系数存储体中的有效数据,若待读取数据是已经存储在系数存储体中的有效数据,则执行步骤S105,根据该读取地址从系数存储体的地址单元中读取相应的有效数据,否则执行步骤S106,输出零值。
步骤S107,根据读取的有效数据和零值获取解码系数。本步骤主要是根据步骤S105和S106读取的有效数据和零值得到解码系数。
上述步骤S104至S107主要是在待读取数据是有效数据的情况下,从系数存储体的相应地址单元中读取出有效数据,在该数据不是有效数据的情况下直接输出零值,将读取的有效数据和输出的零值作为读取出的解码系数。本步骤使得在读取解码系数的数据时,避免了传统技术需要从存储器中读取解码系数的所有数据而导致读取速度慢的问题,提高了解码系数读取的效率,也降低了读取解码系数时的能耗。
本发明上述实施例所提供的解码系数的存取方法,将huffman解码模块解析的解码系数的非零数据存储在系数存储体中,在读取解码系数时,根据解码系数的读取地址,从系数存储体中读取非零数据或直接输出零值,根据读取的非零数据和零值得到所要读取的解码系数,该方案避免了传统技术需要频繁操作存储器导致效率低的缺陷,提高了解码系数存储和读取的效率,还降低了存储和读取解码系数的能耗。
在一个实施例中,步骤S102可以采用如下方式判断待读取的数据是否为有效数据:
在步骤S102中的将解码系数对应的有效数据存储在系数存储体后,将该有效数据的存储地址的有效数据标记设置为有效;在读取解码系数时,可以获取该解码系数的读取地址的有效数据标记;根据有效数据标记判断与该读取地址相对应的待读取数据的有效性;如果该有效数据标记为有效,则判断该待读取的数据是有效数据。
在本实施例中,有效数据标记用于标记系数存储体的各个存储地址所存储数据的有效性,每一个系数存储体的地址单元可以对应一个比特的“有效数据标记”。在实际使用中,有效数据标记可以采用0将系数存储体的某个存储地址的数据为无效数据,采用1将该系数存储体的某个存储地址的数据为有效数据。
该系数存储体的各个存储地址的有效数据标记可以预设为零,在对解码系数的有效数据进行存储时,可以将该有效数据的存储地址的有效数据标记设为有效。在读取解码系数时,可以获取解码系数的各个待读取数据的读取地址,通过有效数据标记判断与该读取地址相对应的待读取数据是否为已经被存储在系数存储体中的有效数据,若有效数据标记为有效,则确定待读取数据为有效数据。
可选的,在解码系数的读取操作完成后,可以将系数存储体的有效数据相对应的有效数据标记设置为无效。
上述实施例通过有效数据标记确定读取地址对应的待读取数据是否为有效数据,能够避免传统技术数据读取时频繁操作存储器的缺陷,提高数据读取的效率,还降低了数据读取的能耗。
在一个实施例中,步骤S101的提取解码系数有效数据的方法,可以包括如下步骤:
接收huffman解码模块解析输出的解码系数;获取该解码系数的基本单元符号,根据该基本单元符号提取解码系数的非零数据;根据非零数据获取该解码系数的有效数据。
本实施例主要是通过获取解码系数的基本单元符号提取解码系数的非零数据,并将该非零数据作为解码系数的有效数据。
以JPEG解码为例,huffman解码模块输出的基本单元符号symbol是(REL,VAL),其中,REL表示JPEG解码系数中连续0的个数,VAL表示非零数值,例如symbol(9,200),表示huffman解码模块连续输出9个数值0,接着输出数值200。一般情况下,“RLE”占比很大,“VAL”占比相对较小,在symbol(9,200)的例子中,就有90%都是数值0,10%是其他数值。通过获取JPEG经过huffman解码模块解析的解码系数的基本单元符号,可以从该基本单元符号中得到JPEG解码系数的VAL值,并将JPEG解码系数的VAL值作为JPEG解码系数的有效数据。
参考图3,图3为另一个实施例中的解码系数的存取方法的流程示意图,该方法可以包括如下步骤:
S201,获取数据存储请求;
S202,从huffman解码模块解析的解码系数中获取数据值不为零的有效数据;
S203,获取有效数据的存储地址,并根据该存储地址将该解码系数对应的有效数据存储在系数存储体中;
S204,返回数据存储完成响应;
S205,获取数据读取请求;
S206,在读取解码系数时,获取解码系数的读取地址;
S207,判断与该读取地址相对应的待读取数据是否为系数存储体中已经存储的有效数据;若是,执行S208,否则执行S209
S208,根据该读取地址从系数存储体的地址单元中读取相应的有效数据;
S209,输出零值;
S210,根据读取的有效数据和零值获取解码系数。
上述实施例主要是在对解码系数进行存储之前,获取该解码系数的存储请求并在存储完成后返回存储完成的响应;在读取解码系数之前,获取对解码系数进行读取的读取请求并在解码系数的读取完成后返回数据读取完成的响应。
参考图4,图4为另一个实施例中的解码系数的存取方法的流程示意图,解码系数可以包括多个系数单元块;本发明的解码系数的存取方法可以包括如下步骤:
S301,获取huffman解码模块对该解码系数的各个系数单元块进行解析的解析完成指令;
S302,从huffman解码模块解析的解码系数中获取各个系数单元块数据值不为零的有效数据;
S303,获取各个系数单元块的有效数据的存储地址,并根据该存储地址将解码系数的各个系数单元块的有效数据存储在系数存储体中;
S304,将已经进行存储的系数单元块的存储状态标记设置为有效,该标记是记录解码系数的各个系数单元块的存储状态的有效性;其中,存储状态标记用于记录解码系数的各个系数单元块的存储状态的有效性;
S305,在对解码系数的各个系数单元块进行读取时,获取各个系数单元块的待读取数据的读取地址;
S306,判断该地址所对应的数据是否为已存储在系数存储体中的相应系数单元块的有效数据;若是,执行步骤S307,否则执行步骤S308;
S307,根据该读取地址从系数存储体中读取相应系数单元块的有效数据;
S308,输出零值;
S309,根据读取的各个系数单元块的有效数据和零值获取解码系数;
S310,在系数存储体存储的系数单元块被读取后,将已读取的系数单元块的存储状态标记设为无效。
本实施例主要是在对解码系数进行存储时,在huffman解码模块对当前的系数单元块解析完成后,获取该单元块的解析完成指令,以系数单元块的形式将解码系数存储在系数存储体中,这种存储方式根据系数单元块的有效数据的存储地址对解码系数的各个单元块进行存储,并在当前系数单元块存储完毕后,将该系数单元块对应的存储状态标记设为有效,有效的存储状态标记表示相应的系数单元块已经被存储在系数存储体中。
本实施例的技术方案在对解码系数的各个系数单元块进行存储后对该系数单元块进行读取,获取各个系数单元块的待读取数据的读取地址,可以先利用存储状态标记判断待读取的系数单元块是否有效,再根据该地址读取从在系数存储体中读取相应系数单元块的有效数据或输出零值,将读取的各系数单元块的有效数据和零值作为解码系数,在系数单元块被读取后,例如可以在解码系数的读取操作结束时,将相应的存储状态标记设为无效。需要注意的是,在huffman模块解码完成一个系数单元块后,并非一定是输出所有的系数,后面没有输出的系数可以当作零值处理,此时可以依据该存储状态标记判断是否可以读取解码系数的系数单元块的数据。
参考图5,图5为一个实施例中的解码系数的存取系统的结构示意图,该存取系统可以包括:
获取模块101,用于从huffman解码模块解析的解码系数中获取数据值不为零的有效数据;
存储模块102,用于获取该有效数据的存储地址,根据该有效数据的存储地址将解码系数将对应的有效数据存储在系数存储体中;
读取模块103,用于在读取解码系数时,获取解码系数的读取地址;判断与该读取地址相对应的待读取数据是否为已经存储在系数存储体中的有效数据;若是,则根据该读取地址从所述系数存储体中读取相应的有效数据,否则输出零值,根据读取的有效数据和零值获取解码系数。
上述解码系数的存取系统,将huffman解码模块解析的解码系数的非零数据存储在系数存储体中,在读取解码系数时,根据解码系数的读取地址,从系数存储体中读取非零数据或直接输出零值,根据读取的非零数据和零值得到所要读取的解码系数,该方案避免了传统技术需要频繁操作存储器导致效率低的缺陷,提高了解码系数存储和读取的效率,还降低了存储和读取解码系数的能耗。
本发明的解码系数的存取系统与本发明的解码系数的存取方法一一对应,在上述解码系数的存取方法的实施例阐述的技术特征及其有益效果均适用于解码系数的存取系统的实施例中,特此声明。
针对传统技术解码系数的存取效率低的问题,本发明实施例还提供一种JPEG解码系数的存取方法,该方法利用如上任意一个实施例的解码系数的存取方法对JPEG解码系数的非零数据进行存储和读取。
上述JPEG解码系数的存取方法,采用上述解码系数的存取方法对JPEG解码系数进行存取,提高了JPEG解码系数的存取效率,还降低了存储和读取JPEG解码系数的能耗。
参考图6,图6为一个实施例中的JPEG解码系数的存取系统的结构示意图,上述JPEG解码系数的存取方法可以采用图6所示的JPEG解码系数的存取系统实现,该系统可以包括:
写入处理单元,用于接收上一级huffman解码模块的输出信号,包括WR、WADDR、WDAT、WLAST和WACK等信号,将数据WDAT写入系数存储体的相应地址中;其中,WR表示写入数据请求有效,WADDR表示写入数据的地址,WDAT表示写入的数据值,WLAST表示最后一次写入数据,WACK表示写入数据成功;
系数存储体,用于存储huffman解析输出的DCT系数的有效数据;
有效数据标记,用于标记系数存储体对应地址的数据的有效性,其中每一个“系数存储体”地址单元可以对应一个比特的有效数据标记;
存储状态标记,用于标识存储系数存储体中解码系数的整块数据是否可用;
读出处理单元,用于处理外部读出数据请求,包括RD、RADDR、RDAT、RLAST和RACK等信号,根据有效数据标记输出相应的数据RDAT;其中,RD表示读数据请求有效、RADDR表示读数据地址、RDAT表示读出的数据值、RLAST表示最后一次读、RACK表示读数据成功;
数据选择器,用于依据有效数据标记、读出处理单元接收的RADDR,从“系数数据存储体”或者“常数0”中选择输出的RDAT。
基于该存取系统的JPEG解码系数的存取方法,对JPEG解码系数进行存储的方法,可以包括如下步骤:
s1,在huffman解码模块解析出symbol后,跳过RLE数目,直接输出VAL,在解码系数的当前系数单元块的解析完成后,获取产生的WLAST信号;
s2,写入处理单元在接收到写请求后,依据存储状态标记的状态,回应WACK,并根据WADDR把WDAT写入到系数存储体的相应地址单元中;
s3,有效数据标记依据WADDR将对应的标记设置为有效;
s4,检测到WLAST信号后,将存储状态标记设置成有效。
对JPEG解码系数进行读取的方法,可以包括如下步骤:
s5,读出处理单元获取后级处理模块发起的读数据请求;
s6,读出处理单元依据存储状态标记状态,回应RACK;
s7,若RADDR对应的有效数据标记为有效,即读取系数存储体对应的地址单元,利用数据选择器将RDAT进行输出;
s8,若RADDR对应的有效数据标记为无效,即通过数据选择器直接输出数值0作为RDAT;该步骤无需读取系数存储体,节省读取数据的功耗;
s9,系数读取完成后,产生RLAST信号,将存储状态标记设置成无效。
上述JPEG解码系数的存取方法,只将huffman解码输出解码系数的VAL进行存储,存储时缺失的RLE,在读操作时,由该系统通过数据选择器自适应地补回来获取解码系数。该方案无需存储RLE的0,提高了JPEG解码系数的存取效率,节约大量解码时间的同时也节省了存储系统的功耗。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本发明实施例的存取方法的如下步骤:
从huffman解码模块解析的解码系数中获取数据值不为零的有效数据;获取该有效数据的存储地址,根据存储地址将解码系数对应的有效数据存储在系数存储体中;在读取解码系数时,获取解码系数的读取地址;判断与读取地址相对应的待读取数据是否为系数存储体中已经存储的有效数据;若是,则根据该读取地址从系数存储体中读取相应的有效数据,否则输出零值,根据读取的有效数据和零值获取解码系数。
在一个实施例中,处理器执行计算机程序时还实现如下步骤:
接收huffman解码模块解析输出的解码系数;获取解码系数的基本单元符号,根据基本单元符号提取解码系数的非零数据;根据非零数据获取解码系数的有效数据。
在一个实施例中,处理器执行计算机程序时还实现如下步骤:
将有效数据的存储地址的有效数据标记设置为有效;其中,有效数据标记记录系数存储体的存储地址的数据的有效性;获取读取地址的有效数据标记;根据有效数据标记判断与该读取地址相对应的待读取数据的有效性;若有效数据标记为有效,则判断该待读取数据是有效数据。
在一个实施例中,处理器执行计算机程序时还实现如下步骤:将已读取的有效数据的有效数据标记设置为无效。
在一个实施例中,处理器执行计算机程序时还实现如下步骤:
接收解码系数的各个系数单元块的解析完成指令;其中,解码系数包括多个系数单元块;根据各个系数单元块的有效数据的存储地址,将解码系数的各个系数单元块的有效数据存储在系数存储体中;将已存储的系数单元块的存储状态标记设置为有效;其中,存储状态标记记录各个系数单元块的存储状态的有效性;若系数单元块的待读取数据是有效数据,则根据该读取地址从系数存储体中读取相应系数单元块的有效数据;否则输出零值,根据读取的各个系数单元块有效数据和零值获取解码系数;将已经读取的系数单元块的存储状态设置为无效。
在一个实施例中,处理器执行计算机程序时还实现如下步骤:
在存储解码系数的数据之前,获取数据存储请求;在对解码系数进行存储后,返回数据存储成功响应;在读取解码系数时,获取数据读取请求;将解码系数进行读取后,返回数据读取成功响应。
在一个实施例中,还提供一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本发明各实施例的解码系数的存取方法对JPEG解码系数的非零数据进行存储和读取。
此外,本领域普通技术人员可以理解实现本发明各实施例的存取方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性的计算机可读取存储介质中,如本发明实施例中,该程序可存储于计算机系统的存储介质中,并被该计算机系统中的至少一个处理器执行,以实现包括如上述各解码系数的存取方法或JPEG解码系数的存取方法的实施例的流程。
上述各实施例的计算机设备,其处理器执行程序时,通过实现如上述各实施例中的任意一种解码系数的存取方法或JPEG解码系数的存取方法,从而可以提高解码系数的存取效率,还可以降低存储和读取解码系数的能耗。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如下步骤:
从huffman解码模块解析的解码系数中获取数据值不为零的有效数据;获取该有效数据的存储地址,根据存储地址将解码系数对应的有效数据存储在系数存储体中;在读取解码系数时,获取解码系数的读取地址;判断与读取地址相对应的待读取数据是否为系数存储体中已经存储的有效数据;若是,则根据该读取地址从系数存储体中读取相应的有效数据,否则输出零值,根据读取的有效数据和零值获取解码系数。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
接收huffman解码模块解析输出的解码系数;获取解码系数的基本单元符号,根据基本单元符号提取解码系数的非零数据;根据非零数据获取解码系数的有效数据。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
将有效数据的存储地址的有效数据标记设置为有效;其中,有效数据标记记录系数存储体的存储地址的数据的有效性;获取读取地址的有效数据标记;根据有效数据标记判断与该读取地址相对应的待读取数据的有效性;若有效数据标记为有效,则判断该待读取数据是有效数据。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:将已读取的有效数据的有效数据标记设置为无效。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
接收解码系数的各个系数单元块的解析完成指令;其中,解码系数包括多个系数单元块;根据各个系数单元块的有效数据的存储地址,将解码系数的各个系数单元块的有效数据存储在系数存储体中;将已存储的系数单元块的存储状态标记设置为有效;其中,存储状态标记记录各个系数单元块的存储状态的有效性;若系数单元块的待读取数据是有效数据,则根据该读取地址从系数存储体中读取相应系数单元块的有效数据;否则输出零值,根据读取的各个系数单元块有效数据和零值获取解码系数;将已经读取的系数单元块的存储状态设置为无效。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
在存储解码系数的数据之前,获取数据存储请求;在对解码系数进行存储后,返回数据存储成功响应;在读取解码系数时,获取数据读取请求;将解码系数进行读取后,返回数据读取成功响应。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现本发明各实施例的解码系数的存取方法对JPEG解码系数的非零数据进行存储和读取。
参考图7,图7为一个实施例中的解码系数的存储系统的硬件结构示意图,在上述各实施例中,解码系数的存取系统作为硬件实体的一个示例如图7所示,该解码系数的存取系统20可以包括处理器201、存储介质202以及至少一个外部通信接口203;所述处理器201、存储介质202以及外部通信接口203均通过总线204连接。
本领域的技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述解码系数的存取方法实施例的步骤;而前述的存储介质包括:移动存储设备、随机存取存储器(RAM,Random Access Memory)、只读存储器(ROM,Read-OnlyMemory)、磁碟或者光盘等各种可以存储程序代码的介质。
或者,本发明上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、终端、或者网络设备等)执行本发明各个实施例的存取方法的全部或部分。而前述的存储介质包括:移动存储设备、RAM、ROM、磁碟或者光盘等各种可以存储程序代码的介质。
上述各实施例的计算机可读存储介质,其存储的计算机程序,通过实现包括如上述各解码系数的存取方法或JPEG解码系数的存取方法的实施例的流程,从而可以提高解码系数的存取效率,还可以降低存储和读取解码系数的能耗。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种解码系数的存取方法,其特征在于,包括步骤:
从huffman解码模块解析的解码系数中获取数据值不为零的有效数据;所述解码系数包括多个系数单元块;
获取所述有效数据的存储地址,根据所述存储地址将所述解码系数对应的有效数据存储在系数存储体中;所述获取所述有效数据的存储地址之前,还包括:接收所述解码系数的各个系数单元块的解析完成指令;所述根据所述存储地址将所述解码系数对应的有效数据存储在系数存储体中,包括:根据各个系数单元块的有效数据的存储地址,将所述解码系数的各个系数单元块的有效数据存储在系数存储中;将已存储的系数单元块的存储状态标记设置为有效;其中,所述存储状态标记记录所述各个系数单元块的存储状态的有效性;
在读取解码系数时,获取解码系数的读取地址;
判断与所述读取地址相对应的待读取数据是否为所述系数存储体中已经存储的有效数据;
若是,则根据该读取地址从所述系数存储体中读取相应的有效数据,否则输出零值,根据所述读取的有效数据和零值获取解码系数;具体包括:若是,则根据该读取地址从系数存储体中读取相应系数单元块的有效数据;否则输出零值,根据读取的各个系数单元块有效数据和零值获取解码系数;在所述解码系数读取完成后,将已经读取的系数单元块的存储状态设置为无效。
2.根据权利要求1所述的解码系数的存取方法,其特征在于,所述从huffman解码模块解析的解码系数中获取数据值不为零的有效数据的步骤包括:
接收huffman解码模块解析输出的解码系数;
获取所述解码系数的基本单元符号,根据所述基本单元符号提取所述解码系数的非零数据;
根据所述非零数据获取所述解码系数的有效数据。
3.根据权利要求1所述的解码系数的存取方法,其特征在于,在所述根据所述存储地址将所述解码系数对应的有效数据存储在系数存储体中的步骤之后,还包括:
将所述有效数据的存储地址的有效数据标记设置为有效;其中,所述有效数据标记记录所述系数存储体的存储地址的数据的有效性;
所述判断与所述读取地址相对应的待读取数据是否为所述系数存储体中已经存储的有效数据的步骤包括:
获取所述读取地址的有效数据标记;
根据所述有效数据标记判断与该读取地址相对应的待读取数据的有效性;
若所述有效数据标记为有效,则判断该待读取数据是有效数据。
4.根据权利要求3所述的解码系数的存取方法,其特征在于,在所述根据该读取地址从所述系数存储体中读取相应的有效数据的步骤之后,还包括:
在所述解码系数的读取完成后,将已读取的有效数据的有效数据标记设置为无效。
5.根据权利要求1至4任一项所述的解码系数的存取方法,其特征在于,在所述将所述解码系数对应的有效数据存储在系数存储体中的步骤之前,还包括:
获取数据存储请求;
在所述将所述解码系数将对应的有效数据存储在系数存储体中的步骤之后,还包括:
返回数据存储成功响应;
在所述获取解码系数的读取地址的步骤之前,还包括:
获取数据读取请求;
在所述根据该读取地址从所述系数存储体中读取相应的有效数据的步骤之后或在所述输出零值的步骤之后,还包括:
返回数据读取成功响应。
6.一种JPEG解码系数的存取方法,其特征在于,利用如权利要求1至5任一项所述的解码系数的存取方法对JPEG解码系数的非零数据进行存储和读取。
7.一种解码系数的存取系统,其特征在于,包括:
获取模块,用于从huffman解码模块解析的解码系数中获取数据值不为零的有效数据;所述解码系数包括多个系数单元块;
存储模块,用于获取所述有效数据的存储地址,根据所述存储地址将所述解码系数对应的有效数据存储在系数存储体中;所述获取所述有效数据的存储地址之前,还包括:接收所述解码系数的各个系数单元块的解析完成指令;所述根据所述存储地址将所述解码系数对应的有效数据存储在系数存储体中,包括:根据各个系数单元块的有效数据的存储地址,将所述解码系数的各个系数单元块的有效数据存储在系数存储中;将已存储的系数单元块的存储状态标记设置为有效;其中,所述存储状态标记记录所述各个系数单元块的存储状态的有效性;
读取模块,用于在读取解码系数时,获取解码系数的读取地址;判断与所述读取地址相对应的待读取数据是否为所述系数存储体中已经存储的有效数据;若是,则根据该读取地址从所述系数存储体中读取相应的有效数据,否则输出零值,根据所述读取的有效数据和零值获取解码系数;具体包括:若是,则根据该读取地址从系数存储体中读取相应系数单元块的有效数据;否则输出零值,根据读取的各个系数单元块有效数据和零值获取解码系数;在所述解码系数读取完成后,将已经读取的系数单元块的存储状态设置为无效。
8.一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810035209.XA CN108171763B (zh) | 2018-01-15 | 2018-01-15 | 解码系数的存取方法和系统、jpeg解码系数的存取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810035209.XA CN108171763B (zh) | 2018-01-15 | 2018-01-15 | 解码系数的存取方法和系统、jpeg解码系数的存取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108171763A CN108171763A (zh) | 2018-06-15 |
CN108171763B true CN108171763B (zh) | 2021-08-13 |
Family
ID=62514354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810035209.XA Active CN108171763B (zh) | 2018-01-15 | 2018-01-15 | 解码系数的存取方法和系统、jpeg解码系数的存取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108171763B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060036922A (ko) * | 2003-06-06 | 2006-05-02 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 비디오 압축 |
CN101790094A (zh) * | 2010-03-19 | 2010-07-28 | 山东大学 | 一种jpeg图像解码器的vlsi系统结构及其实现方法 |
CN103139566A (zh) * | 2011-11-30 | 2013-06-05 | 英特尔移动通信有限责任公司 | 用于可变长度码的高效解码的方法 |
CA2800119C (en) * | 2012-01-20 | 2016-05-17 | Research In Motion Limited | Methods and systems for pipelining within binary arithmetic coding and decoding |
CN106447034A (zh) * | 2016-10-27 | 2017-02-22 | 中国科学院计算技术研究所 | 一种基于数据压缩的神经网络处理器、设计方法、芯片 |
-
2018
- 2018-01-15 CN CN201810035209.XA patent/CN108171763B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060036922A (ko) * | 2003-06-06 | 2006-05-02 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 비디오 압축 |
CN101790094A (zh) * | 2010-03-19 | 2010-07-28 | 山东大学 | 一种jpeg图像解码器的vlsi系统结构及其实现方法 |
CN103139566A (zh) * | 2011-11-30 | 2013-06-05 | 英特尔移动通信有限责任公司 | 用于可变长度码的高效解码的方法 |
CA2800119C (en) * | 2012-01-20 | 2016-05-17 | Research In Motion Limited | Methods and systems for pipelining within binary arithmetic coding and decoding |
CN106447034A (zh) * | 2016-10-27 | 2017-02-22 | 中国科学院计算技术研究所 | 一种基于数据压缩的神经网络处理器、设计方法、芯片 |
Also Published As
Publication number | Publication date |
---|---|
CN108171763A (zh) | 2018-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110799959B (zh) | 一种数据压缩方法与解压方法以及相关设备 | |
US10153780B2 (en) | Coding method, decoding method, coder, and decoder | |
CN105933009B (zh) | 数据压缩方法及系统、解压缩方法及系统 | |
EP3311318B1 (en) | Method for compressing genomic data | |
CN110021369B (zh) | 基因测序数据压缩解压方法、系统及计算机可读介质 | |
EP3154202A1 (en) | Encoding program, encoding method, encoding device, decoding program, decoding method, and decoding device | |
CN102789506B (zh) | 应用程序安装包的特征信息提取方法、装置与客户端设备 | |
KR101365989B1 (ko) | 트리 구조를 기반으로 한 엔트로피 부호화 및 복호화 장치및 방법 | |
CN114567331A (zh) | 一种基于lz77的压缩方法、装置及其介质 | |
CN108880559B (zh) | 数据压缩方法、数据解压缩方法、压缩设备及解压缩设备 | |
CN103078646A (zh) | 字典查询压缩、解压缩方法及其装置 | |
CN108171763B (zh) | 解码系数的存取方法和系统、jpeg解码系数的存取方法 | |
KR101842420B1 (ko) | 정보 처리 장치 및 데이터 관리 방법 | |
CN106293542B (zh) | 一种文件解压缩的方法及装置 | |
CN107659823B (zh) | 一种帧内深度图像块解码的方法及装置 | |
CN110209598B (zh) | 一种高速缓冲存储器、一种数据读写控制方法及系统 | |
CN102982046B (zh) | 一种网页数据压缩存储方法和系统 | |
CN114466082B (zh) | 数据压缩、数据解压方法、系统及人工智能ai芯片 | |
CN112800183B (zh) | 内容名称数据处理方法及终端设备 | |
CN116302670A (zh) | 编解码方法、编解码器、芯片、硬盘、通讯系统 | |
CN111104484B (zh) | 文本相似度检测方法、装置及电子设备 | |
CN110795043B (zh) | 一种分布式存储块置零方法、装置、电子设备及存储介质 | |
WO2018039983A1 (zh) | 一种生物序列数据的处理方法及装置 | |
CN108876703B (zh) | 数据存储方法 | |
CN110874416B (zh) | 一种图像特征值存储方法、装置和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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 | ||
CP02 | Change in the address of a patent holder |
Address after: 519000 No. 333, Kexing Road, Xiangzhou District, Zhuhai City, Guangdong Province Patentee after: ZHUHAI JIELI TECHNOLOGY Co.,Ltd. Address before: Floor 1-107, building 904, ShiJiHua Road, Zhuhai City, Guangdong Province Patentee before: ZHUHAI JIELI TECHNOLOGY Co.,Ltd. |
|
CP02 | Change in the address of a patent holder |