CN101540612B - 编码、解码***、方法及装置 - Google Patents
编码、解码***、方法及装置 Download PDFInfo
- Publication number
- CN101540612B CN101540612B CN2008101022568A CN200810102256A CN101540612B CN 101540612 B CN101540612 B CN 101540612B CN 2008101022568 A CN2008101022568 A CN 2008101022568A CN 200810102256 A CN200810102256 A CN 200810102256A CN 101540612 B CN101540612 B CN 101540612B
- Authority
- CN
- China
- Prior art keywords
- signal
- pulse
- sampling point
- pulse signal
- encoded
- 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
Landscapes
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
本发明实施例公开了一种编码、解码***、方法及装置。其中,编码方法包括:识别待编码信号中的脉冲信号的样点的个数和位置;判断所述脉冲信号是否取得编码增益;当所述脉冲信号取得编码增益时将所述脉冲信号进行单独编码和将脉冲信号外的非脉冲信号进行编码;当所述脉冲信号没有取得编码增益时对所述待编码信号进行统一编码;将编码后的脉冲信号和编码后的脉冲信号外的非脉冲信号进行复用。本发明实施例通过对脉冲信号和脉冲信号外的非脉冲信号分别进行编码解码,降低了信号的动态范围,提高了编码解码效率。
Description
技术领域
本发明实施例涉及数据处理领域,尤其涉及一种编码、解码***、方法及装置。
背景技术
随着信息技术的发展,无失真的重建信号越来越重要,在数据处理领域中,无损压缩是一种能对信号进行无失真压缩的方式,实现压缩数据的目的同时,在信号无失真的情况下最大限度的提高编码效率。由于信号间存在信息熵,在无失真的情况下很难提高编码效率,同时压缩算法对信号有选择性,针对不同信号的不同压缩方案的编码效率也不相同,另外,在实时传输情况下,因为复杂度的要求也限制了编码效率。
图1为现有技术方案中无损编码技术的编码示意图,如图1所示,信号分析器81对输入信号进行分析得出输入信号的样点中的最小值和样点中的最大值,根据样点中的最小值和最大值计算出每样点比特数;帧头编码器82对样点中的最小值和每样点比特数进行编码;样点编码器83对输入信号的每个样点的幅值和样点中的最小值的差值使用每样点比特数进行压缩;码流复用器84对编码后的信号进行复用并输出码流。如果对输入信号采用分块编码方式,帧头编码器82还需要对每块的块长进行编码。
图2为现有技术方案中无损解码技术的解码示意图,如图2所示,首先码流解复用器85对输入码流进行解复用得到待解码信号,帧头解码器86对待解码信号中的样点中的最小值和每样点比特数进行解码;样点解码器87对待解码信号的每个样点的幅值和样点中的最小值的差值使用每样点比特数进行解压缩得到每个样点的幅值和样点中的最小值的差值;将解压缩后的差值和解码后的样点中的最小值相加得到原输入信号,而达到无损重建信号的目的。如果在解码端采用分块解码方式,帧头解码器86还需要对每块的块长进行解码。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题,该方案在信号动态范围较大时,通常因为少数几个样点的幅值较大而导致对信号编码时所需的比特数增加,降低了编码解码效率。
发明内容
本发明实施例提供了一种编码、解码***、方法及装置,以克服现有技术中编码解码效率低的缺陷,从而实现降低信号动态范围,提高信号编码解码效率的目的。
本发明实施例提供了一种编码***,包括:
编码识别器,用于识别待编码信号中的脉冲样点的个数和位置,并判断所述待编码信号中的脉冲信号是否取得编码增益;所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点;
编码器,用于当所述脉冲信号取得编码增益时将所述脉冲信号进行单独编码和将脉冲信号外的非脉冲信号进行编码,及当所述脉冲信号没有取得编码增益时对所述待编码信号进行统一编码;
复用器,用于将编码后的脉冲信号和编码后的脉冲信号外的非脉冲信号进行复用。
本发明实施例还提供了一种解码***,包括:
解复用器,用于对复用后的信号进行解复用生成待解码信号并输出;
解码器,用于解码脉冲标志并判断解码后的脉冲标志,如果脉冲标志不为零,则对脉冲样点的个数和位置进行解码,根据解码后的脉冲样点的个数和位置从待解码信号中识别脉冲信号,所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点;并将所述脉冲信号进行单独解码,和将所述脉冲信号外的非脉冲信号进行解码;如果脉冲标志为零,则对所述待解码信号进行统一解码;
合并器,用于将解码后的脉冲信号和解码后的脉冲信号外的非脉冲信号进行合并处理。
本发明实施例提供了一种编码方法,包括:
识别待编码信号中的脉冲样点的个数和位置;所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点;
判断所述待编码信号中的脉冲信号是否取得编码增益;
当所述脉冲信号取得编码增益时将所述脉冲信号进行单独编码和将脉冲信号外的非脉冲信号进行编码;
当所述脉冲信号没有取得编码增益时对所述待编码信号进行统一编码;
将编码后的脉冲信号和编码后的脉冲信号外的非脉冲信号进行复用。
本发明实施例还提供了一种解码方法,包括:
对复用后的信号进行解复用生成待解码信号并输出;
解码脉冲标志并判断解码后的脉冲标志;
如果脉冲标志不为零,则识别所述待解码信号中的脉冲信号,并将所述脉冲信号进行单独解码,和将所述脉冲信号外的非脉冲信号进行解码;
如果脉冲标志为零,则对所述待解码信号进行统一解码;
将解码后的脉冲信号和解码后的脉冲信号外的非脉冲信号进行合并处理;
其中,所述识别所述待解码信号中的脉冲信号具体为:对脉冲样点的个数和位置进行解码;根据解码后的脉冲样点的个数和位置从待解码信号中识别脉冲信号;所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点。
本发明实施例提供了一种编码装置,包括:
编码识别模块,用于识别待编码信号中的脉冲样点的个数和位置,并判断所述待编码信号中的脉冲信号是否取得编码增益;所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点;
编码模块,用于当所述脉冲信号取得编码增益时将所述脉冲信号进行单独编码和将脉冲信号外的非脉冲信号进行编码,及当所述脉冲信号没有取得编码增益时对所述待编码信号进行统一编码;
复用模块,用于将编码后的脉冲信号和编码后的脉冲信号外的非脉冲信号进行复用。
本发明实施例还提供了一种解码装置,包括:
解复用模块,用于对复用后的信号进行解复用生成待解码信号并输出;
解码模块,用于解码脉冲标志并判断解码后的脉冲标志,如果脉冲标志不为零,则对脉冲样点的个数和位置进行解码,根据解码后的脉冲样点的个数和位置从待解码信号中识别脉冲信号,所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点;并将所述脉冲信号进行单独解码,和将所述脉冲信号外的非脉冲信号进行解码;如果脉冲标志为零,则对所述待解码信号进行统一解码;
合并模块,用于将解码后的脉冲信号和解码后的脉冲信号外的非脉冲信号进行合并处理。
本发明实施例通过编码***对脉冲信号和脉冲信号外的非脉冲信号分别进行编码,降低了待编码信号的动态范围,提高了编码效率,尤其提高了脉冲信号外的非脉冲信号的编码效率。本发明实施例又通过解码***对脉冲信号和脉冲信号外的非脉冲信号分别进行解码,降低了待解码信号的动态范围,提高了解码效率,尤其提高了脉冲信号外的非脉冲信号的解码效率。
附图说明
图1为现有技术方案中无损编码技术的编码示意图;
图2为现有技术方案中无损解码技术的解码示意图;
图3为本发明编码***实施例一的结构示意图;
图4为本发明编码***实施例二的结构示意图;
图5为本发明解码***实施例一的结构示意图;
图6为本发明解码***实施例二的结构示意图;
图7为本发明编码方法实施例一的编码流程图;
图8为本发明编码方法实施例二的编码流程图;
图9为本发明编码方法实施例三的编码流程图;
图10为本发明解码方法实施例一的解码流程图;
图11为本发明解码方法实施例二的解码流程图;
图12为本发明解码方法实施例三的解码流程图;
图13为本发明编码装置的结构示意图;
图14为本发明解码装置的结构示意图。
具体实施方式
下面通过附图和实施例,对本发明实施例的技术方案做进一步的详细描述。
图3为本发明编码***实施例一的结构示意图,如图3所示,该编码***包括编码识别器1、编码器2和复用器3。其中,编码识别器1用于识别待编码信号中的脉冲信号的样点的个数和位置,并判断脉冲信号是否取得编码增益。在本实施例中,编码识别器1通过判断编码增益是否大于等于0来判断脉冲信号是否取得编码增益。编码器2用于当所述脉冲信号取得编码增益时将所述脉冲信号进行单独编码和将脉冲信号外的非脉冲信号进行编码,及当所述脉冲信号没有取得编码增益时对所述待编码信号进行统一编码;复用器3用于将编码后的脉冲信号和编码后的脉冲信号外的非脉冲信号进行复用。
进一步地,编码识别器1包括识别模块11和计算模块12,其中,识别模块11用于识别脉冲信号的样点的个数和位置、样点中的最小值及每样点比特数。计算模块12用于计算脉冲信号的编码增益,并判断编码增益是否大于等于0。
在本实施例中,识别模块11还用于当计算模块12判断编码增益大于等于0时设置脉冲标志为1,并输出脉冲样点的个数、脉冲样点的位置、样点中的最小值和每样点比特数至编码器2。在本实施例中,识别模块11还用于当计算模块12判断编码增益不大于等于0时设置脉冲标志为0,并输出样点中的最小值和每样点比特数至编码器2。
编码器2包括脉冲编码模块21、样点编码模块22和帧头编码模块23,其中,脉冲编码模块21用于对脉冲信号进行编码,并输出编码后的脉冲信号至复用器3,样点编码模块22用于对脉冲信号外的待编码信号进行编码,并输出编码后的脉冲信号外的非脉冲信号至复用器3,帧头编码模块23用于对待编码信号的帧头信息进行编码,并输出编码后的帧头信息至复用器3,该帧头信息包括样点中的最小值、每样点比特数等信息。
编码***实施例一中的编码***可以将脉冲信号和脉冲信号外的非脉冲信号分别进行编码处理,提高了编码效率,尤其提高了脉冲信号外的非脉冲 信号的编码效率。
图4为本发明编码***实施例二的结构示意图,如图4所示,在编码***实施例一的基础上编码识别器1还可以包括分块模块13,编码器2还可以包括分块器24,该编码***的编码识别器1包括识别模块11、计算模块12和分块模块13,其中分块模块13用于分析和计算待编码信号的分块数;该编码***的编码器2包括分块器24,以及多个子编码器(子编码器1、子编码器2……子编码器N),每个子编码器中包括脉冲编码模块、样点编码模块和帧头编码模块,每个子编码器中的脉冲编码模块、样点编码模块和帧头编码模块在图4中未示出,其中分块器24用于根据分块模块13计算出的分块数将待编码信号进行分块,并将分块后的待编码信号输出给相应的子编码器,由子编码器对待编码信号进行分块编码。
编码***实施例二中的编码***在编码***实施例一的基础上将待编码信号进行分块编码,进一步提高了编码效率。
图5为本发明解码***实施例一的结构示意图,如图5所示,该解码***包括解复用器4和解码器6。其中,解复用器4用于对复用后的信号进行解复用生成待解码信号并输出给解码器6;解码器6用于解码脉冲标志并判断解码后的脉冲标志,如果脉冲标志不为零,在本实施例中,脉冲标志为1,则识别所述待解码信号中的脉冲信号,并将所述脉冲信号进行单独解码,和将所述脉冲信号外的非脉冲信号进行解码;如果脉冲标志为零,即脉冲标志为0,则对所述待解码信号进行统一解码。
进一步地,该解码***中的解码器6包括脉冲解码模块61、样点解码模块62和帧头解码模块63,其中,脉冲解码模块61用于对脉冲信号进行解码,并输出解码后的脉冲信号至合并器7;样点解码模块62用于对脉冲信号外的非脉冲信号进行编码,并输出解码后的非脉冲信号至合并器7;帧头解码模块63用于对待解码信号的帧头信息进行解码,并输出解码后的帧头信息至合并器7,该帧头信息包括样点中的最小值、每样点比特数等信息。另外该解 码***还包括合并器7,用于将解码后的脉冲信号和解码后的脉冲信号外的非脉冲信号进行合并处理。
解码***实施例一中的解码***可对编码***实施例一中的编码***输出的信号进行解码,通过将脉冲信号和脉冲信号外的非脉冲信号分别进行解码,提高了解码效率,尤其提高了脉冲信号外的非脉冲信号的解码效率。
图6为本发明解码***实施例二的结构示意图,如图6所示,在解码***实施例一的基础上该解码***还可以包括解码识别器5,解码器6还可以包括分块器64,该解码***包括解码识别器5,解码器6包括分块器64以及多个子解码器(子解码器1、子解码器2……子解码器N),每个子解码器中包括脉冲解码模块、样点解码模块和帧头解码模块,每个子解码器中的脉冲解码模块、样点解码模块和帧头解码模块在图6中未示出,其中解码识别器5用于对分块数进行解码得到待解码信号的分块数,分块器64用于根据待解码信号的分块数将待解码信号进行分块,并将分块后的待解码信号输出给相应的子解码器,由子解码器对待解码信号进行分块解码。
解码***实施例二中的解码***可对编码***实施例二中的编码***输出的信号进行解码,解码***实施例二中的解码***是在解码***实施例一的基础上将待解码信号按照分块数进行分块解码,进一步提高了解码效率。
图7为本发明编码方法实施例一的编码流程图,如图7所示,具体为:
步骤11、编码识别器1识别待编码信号中的脉冲信号的样点的个数和位置;
步骤12、编码识别器1判断所述脉冲信号是否取得编码增益,是则执行步骤13,否则执行步骤13′;
步骤13、编码器2将所述脉冲信号进行单独编码和将脉冲信号外的非脉冲信号进行编码;
步骤14、复用器3将编码后的脉冲信号和编码后的脉冲信号外的非脉冲信号进行复用,该流程结束。
步骤13′、编码器2对所述待编码信号进行统一编码;
步骤14′、复用器3将编码后的信号进行复用。
图8为本发明编码方法实施例二的流程图,如图8所示,具体为:
步骤21、编码识别器1中的识别模块11从待编码信号中判别脉冲信号的样点,具体为:
首先需要对待编码信号的每个样点的幅值进行动态范围的分析,从中得出待编码信号的样点中的最大值和最小值;
根据所述待编码信号的样点中的最大值和最小值确定编码时所需的每样点比特数,本实施例中,每样点比特数为样点中的最大值和最小值的运算值,例如:code_bits=log2[(max(x)-min(x)+1)],其中min(x)为样点中的最小值,max(x)为样点中的最大值,code_bits为每样点比特数;
最后对待编码信号的每个样点的幅值与阈值进行比较,如果某个样点的幅值大于等于所述阈值,则该样点识别为待编码信号中的脉冲样点,所述阈值可以是预设在编码器中的固定值,也可以是随待编码信号中的各样点变化的参数,本实施例中,所述阈值为样点中的最小值与每样点比特数的运算值,例如:min(x)+2code_bits-1;
步骤22、编码识别器1中的识别模块11统计脉冲样点的个数,脉冲样点的个数用n_pulse表示,并查询出每个脉冲样点的位置,脉冲样点的位置用pos_pulse表示;
步骤23、编码识别器1中的计算模块12计算出编码增益,在本实施例中编码增益可根据公式G=(N-n_pulse)-[bits(n_pulse)+bits(pos_pulse)]-8计算出,其中G为编码增益,N为待编码信号的样点数,bits(n_pulse)表示编码脉冲样点的个数所需占用的比特数,bits(pos_pulse)表示编码所有脉冲样点的位置所需占用的比特数;
并判断编码增益是否大于等于0,是则表示取得编码增益,执行步骤24,否则表示没有取得编码增益,执行步骤24′;
步骤24、识别模块11设置脉冲标志为1,并输出脉冲样点的个数和脉冲样点的位置至编码器2;
步骤25、识别模块11输出样点中的最小值和每样点比特数至编码器2;
步骤26、编码器2对待编码信号进行编码,具体为:
调用帧头编码模块23对帧头信息进行编码,所述帧头信息为待编码信号的样点数、样点中的最小值和每样点比特数;
调用脉冲编码模块 21对脉冲信号的每个样点的幅值和样点中的最小值的差值使用code_bits个比特进行压缩,并对脉冲标志、脉冲样点的个数和脉冲样点的位置进行编码;
调用样点编码模块22对脉冲信号外的非脉冲信号的每个样点的幅值和样点中的最小值的差值使用code_bits-1个比特进行压缩;
步骤27、复用器3将编码后的脉冲信号的样点和编码后的脉冲信号外的非脉冲信号的样点进行复用并输出,该流程结束。
步骤24′、识别模块11设置脉冲标志为0;
步骤25′、识别模块11输出样点中的最小值和每样点比特数至编码器2;
步骤26′、编码器2对待编码信号进行统一编码,具体为:
调用帧头编码模块23对帧头信息进行编码,所述帧头信息为待编码信号的样点数、样点中的最小值和每样点比特数;
调用脉冲编码模块21对脉冲标志进行编码;
调用样点编码模块22对待编码信号的每个样点的幅值和样点中的最小值的差值使用code_bits个比特进行压缩;
步骤27′、复用器3将编码后的信号的样点进行复用并输出。
在本实施例步骤21中的阈值还可以为min(x)+2code_bits-M,其中M为正整数,且code_bits-M≥0,这样,在步骤26中对待编码信号进行编码时,就需要使用code_bits-M个比特对脉冲信号外的待编码信号的每个样点的幅值和样点中的最小值的差值进行压缩。
编码方法实施例二通过将脉冲信号的样点和脉冲信号外的非脉冲信号的样点分别进行编码,降低了待编码信号的动态范围,提高了编码效率,尤其提高了脉冲信号外的非脉冲信号的样点的编码效率。
在编码方法实施例二的基础上,对待编码信号为长信号的情况,为了提高长信号的编码效率,还可以考虑对待编码信号进行分块编码。首先编码识别器1中的分块模块13需要对待编码信号进行分析与计算。在本实施例三中,分块模块13先计算待编码信号采用单一块编码方式所需的编码比特数及采用多块编码方式所需的编码比特数,再分析比较采用不同分块编码方式所需的编码比特数,如果采用单一块编码方式所需的编码比特数小于多块编码方式所需的编码比特数,则采用单一块编码方式;如果多块编码方式所需的编码比特数小于单一块编码方式所需的编码比特数,则采用多块编码方式,其中采用单一块编码方式即不对待编码信号进行分块的情况下的编码方法的流程与编码方法实施例二相同,此处不再赘述,下面通过编码方法实施例三具体阐述采用多块编码的编码方法,图9为本发明编码方法实施例三的编码流程图,如图9所示,具体为:
步骤31、编码识别器1中的分块模块13计算出待编码信号的分块数和每块的块长L,并设置分块标志;
步骤32、编码识别器1中的识别模块11从每块待编码信号中判别脉冲信号的样点,具体为:
首先需要对每块待编码信号的每个样点的幅值进行动态范围的分析,从中得出每块待编码信号的样点中的最大值和最小值;
根据所述每块待编码信号的样点中的最大值和最小值确定每块待编码信号编码时所需的每样点比特数,本实施例中,每样点比特数为样点中的最大值和最小值的运算值,例如:code_bits=log2[(max(x)-min(x)+1)],其中min(x)为样点中的最小值,max(x)为样点中的最大值,code_bits为每样点比特数;
最后对每块待编码信号的每个样点的幅值与阈值进行比较,如果某个样 点的幅值大于等于所述阈值,则该样点识别为脉冲样点,所述阈值可以是预设在编码器中的固定值,也可以是随待编码信号中的各样点变化的参数,本实施例中,所述阈值为样点中的最小值与每样点比特数的运算值,例如可以为min(x)+2code_bits-1;
步骤33、编码识别器1中的识别模块11统计每块待编码信号中脉冲样点的个数,脉冲样点的个数用n_pulse表示,并查询出每块待编码信号中每个脉冲样点的位置,脉冲样点的位置用pos_pulse表示;
步骤34、编码识别器1中的计算模块12计算出每块待解码信号的编码增益,在本实施例中可根据公式G=(L-n_pulse)-[bits(n_pulse)+bits(pos_pulse)]-8计算出,其中G为编码增益,bits(n_pulse)表示编码脉冲样点的个数所需占用的比特数,bits(pos_pulse)表示编码所有脉冲样点的位置所需占用的比特数;
并判断每块待解码信号的编码增益是否大于等于0,是则表示取得编码增益,执行步骤35,否则表示没有取得编码增益,执行步骤35′;
步骤35、识别模块11设置脉冲标志为1,并输出脉冲样点的个数和脉冲样点的位置至编码器2;
步骤36、识别模块11输出每块待编码信号的样点中的最小值和每样点比特数至编码器2;
步骤37、编码器2中的分块器24根据分块标志和/或分块数对待编码信号进行分块;
步骤38、编码器2中的子编码器分别对每块的待编码信号进行编码,具体为:
调用子编码器中的帧头编码模块23,对帧头信息进行编码,所述帧头信息为待编码信号的样点数、样点中的最小值和每样点比特数;
调用子编码器中的脉冲编码模块21对该块待编码信号中的脉冲信号的每个样点的幅值和样点中的最小值的差值使用code_bits个比特进行压缩,并对脉冲标志、脉冲样点的个数和脉冲样点的位置进行编码;
调用子编码器中的样点编码模块22对该块待编码信号中的脉冲信号外的非脉冲信号的每个样点的幅值和样点中的最小值的差值使用code_bits-1个比特进行压缩;
步骤39、复用器3将各个子编码器中编码后的信号的样点进行复用并输出,该流程结束。
步骤35′、识别模块11设置脉冲标志为0;
步骤36′、识别模块11输出每块待编码信号的样点中的最小值和每样点比特数至编码器2;
步骤37′、编码器2中的分块器24根据分块标志和/或分块数对待编码信号进行分块;
步骤38′、编码器2中的子编码器分别对每块的待编码信号进行统一编码,具体为:
调用子编码器中的帧头编码模块23对帧头信息进行编码,所述帧头信息为待编码信号的样点数、样点中的最小值和每样点比特数;
调用子编码器中的脉冲编码模块21对脉冲标志进行编码;
调用子编码器中的样点编码模块22对该块待编码信号中的每个样点的幅值和样点中的最小值的差值使用code_bits个比特进行压缩;
步骤39′、复用器3将各个子编码器中编码后的信号的样点进行复用并输出。
在本实施例步骤32中的阈值还可以通过公式min(x)+2code_bits-M,其中M为正整数,且code_bits-M≥0,这样,在步骤38中对脉冲信号外的待编码信号进行编码时,就需要使用code_bits-M个比特对脉冲信号外的非脉冲信号的每个样点的幅值和样点中的最小值的差值进行压缩。
本实施例中编码的块数可以为二个或多个,在实现过程中为了降低复杂度可以使用固定的块数,或者可以根据信号中不同的帧长使用相应固定的块数。同时本实施例中还可以使用固定的若干个样点中的最小值完成整个编码 流程,以提高编码效率,对脉冲样点的位置的编码也可以使用差分编码方式,然后对其余量信号进行熵压缩。
编码方法实施例三在编码方法实施例二的基础上将待编码信号进行分块编码,进一步降低了待编码信号的动态范围,提高了编码效率。
图10为本发明解码方法实施例一的解码流程图,如图10所示,具体为:
步骤41、解复用器4对复用后的信号进行解复用生成待解码信号并输出;
步骤42、解码器6解码脉冲标志并判断解码后的脉冲标志,如果脉冲标志不为零,即脉冲标志为1,则执行步骤43,如果为零则执行步骤43′;
步骤43、解码器6识别所述待解码信号中的脉冲信号;
步骤44、解码器6将所述脉冲信号进行单独解码,和将所述脉冲信号外的非脉冲信号进行解码,该流程结束。
步骤43′、解码器6对所述待解码信号进行统一解码。
解码***实施例一中的解码***可以将脉冲信号和脉冲信号外的非脉冲信号分别进行解码处理,降低了待解码信号的动态范围,提高了解码效率,尤其提高了脉冲信号外的非脉冲信号的解码效率。
图11为本发明解码方法实施例二的解码流程图,如图11所示,具体为:
步骤51、解复用器4对复用后的信号进行解复用生成待解码信号并输出;
步骤52、调用帧头解码模块63对待解码信号的样点数、样点中的最小值和每样点比特数进行解码;
步骤53、解码器6解码脉冲标志,并判断解码后的脉冲标志,若不为零,在本实施例中,若脉冲标志为1,则执行步骤54,若为零则执行步骤55′;
步骤54、调用脉冲解码模块61对脉冲样点的个数和脉冲样点的位置进行解码,并通过脉冲样点的个数和脉冲样点的位置识别出脉冲样点;
步骤55、解码器6对脉冲信号进行单独解码,和将脉冲信号外的非脉冲信号进行解码,具体为:
调用脉冲解码模块61对脉冲信号的每个样点的幅值和样点中的最小值 的差值使用code_bits个比特进行解压缩,并将解压缩后的差值加上样点中的最小值得到解码后的脉冲信号的每个样点的幅值;
调用样点解码模块62对脉冲信号外的待编码信号的每个样点的幅值和样点中的最小值的差值使用code_bits-1个比特进行解压缩,并将解压缩后的差值加上样点中的最小值得到解码后的脉冲信号外的非脉冲信号的每个样点的幅值;
步骤56、合并器7将解码后的脉冲信号的样点和解码后的脉冲信号外的非脉冲信号的样点进行合并处理并输出无损重建信号,该流程结束。
步骤55′、调用样点解码模块62对待编码信号的每个样点的幅值和样点中的最小值的差值使用code_bits个比特进行解压缩,并将解压缩后的差值加上样点中的最小值得到解码后的脉冲信号外的非脉冲信号的每个样点的幅值;
步骤56′、合并器7将解码后的信号的样点进行合并处理并输出无损重建信号。
本实施例是对编码方法实施例二输出的信号进行解码,因此如果编码方法实施例二中使用code_bits-M个比特对差值进行压缩,那么相应地在步骤55中可使用code_bits-M个比特对脉冲信号外的每个样点的幅值和样点中的最小值的差值进行解压缩。
解码方法实施例二通过将脉冲信号的样点和脉冲信号外的非脉冲信号的样点分别进行解码,降低了待解码信号的动态范围,提高了解码效率,尤其提高了脉冲信号外的非脉冲信号的样点的解码效率。
图12为本发明解码方法实施例三的解码流程图,如图12所示,具体为:
步骤61、解复用器4对复用后的信号进行解复用生成待解码信号并输出;
步骤62、解码识别器5解码分块标志和/或分块数;
步骤63、解码器6中的分块器64根据分块标志和/或分块数对待解码信号进行分块;
步骤64、子解码器中的帧头解码模块63对待解码信号的块长、样点数、样点中的最小值和每样点比特数进行解码;
步骤65、子解码器解码每块待解码信号中的脉冲标志,并判断解码后的脉冲标志,若不为零,本实施例中,若脉冲标志为1,则执行步骤66,若为零则执行步骤67′;
步骤66、调用相应子解码器中的脉冲解码模块61对脉冲样点的个数和脉冲样点的位置进行解码,并通过脉冲样点的个数和脉冲样点的位置识别出脉冲样点;
步骤67、子解码器分别对每块待解码信号进行解码,具体为:
调用子解码器中的脉冲解码模块61对每块中的脉冲信号的每个样点的幅值和样点中的最小值的差值使用code_bits个比特进行解压缩,并将解压缩后的差值加上样点中的最小值得到解码后的脉冲信号的每个样点的幅值;
调用子解码器中的样点解码模块62对每块中的脉冲信号外的非脉冲信号的每个样点的幅值和样点中的最小值的差值使用code_bits-1个比特进行解压缩,并将解压缩后的差值加上样点中的最小值得到解码后的脉冲信号外的非脉冲信号的每个样点的幅值;
步骤68、合并器7将每个子解码器解码后的信号的样点进行合并处理并输出无损重建信号,该流程结束。
步骤67′、调用子解码器中的样点解码模块62对每块中的待解码信号的每个样点的幅值和样点中的最小值的差值使用code_bits个比特进行解压缩,并将解压缩后的差值加上样点中的最小值得到解码后的脉冲信号外的待解码信号的每个样点的幅值;
步骤68′、合并器7将每个子解码器解码后的信号的样点进行合并处理并输出无损重建信号。
本实施例是对编码方法实施例三输出的信号进行解码,因此如果编码方法实施例三中使用code_bits-M个比特对差值进行压缩,那么相应地在步骤67 中可使用code_bits-M个比特对每块中的脉冲信号外的每个样点的幅值和样点中的最小值的差值进行解压缩。
解码方法实施例三可在解码方法实施例二的基础上将待解码信号按照解码后的分块数进行分块解码,进一步降低了待解码信号的动态范围,提高了解码效率。
图13为本发明编码装置的结构示意图,如图13所示,该编码装置包括:
编码识别模块91,用于识别待编码信号中的脉冲信号的样点的个数和位置,并判断所述脉冲信号是否取得编码增益;
编码模块92,用于当所述脉冲信号取得编码增益时将所述脉冲信号进行单独编码和将脉冲信号外的非脉冲信号进行编码,及当所述脉冲信号没有取得编码增益时对所述待编码信号进行统一编码;
复用模块93,用于将编码后的脉冲信号和编码后的脉冲信号外的待编码信号进行复用。
图14为本发明解码装置的结构示意图,如图14所示,该解码装置包括:
解复用模块94,用于对复用后的信号进行解复用生成待解码信号并输出;
解码模块95,用于解码脉冲标志并判断解码后的脉冲标志,如果脉冲标志不为零,则识别所述待解码信号中的脉冲信号,并将所述脉冲信号进行单独解码,和将所述脉冲信号外的非脉冲信号进行解码;如果脉冲标志为零,则对所述待解码信号进行统一解码。
本发明实施例通过编码***对脉冲信号和脉冲信号外的非脉冲信号分别进行编码,降低了待编码信号的动态范围,提高了编码效率,尤其提高了脉冲信号外的非脉冲信号的编码效率;同时通过对待编码信号进行分块编码,进一步降低了待编码信号的动态范围,提高了编码效率。本发明实施例又通过解码***对脉冲信号和脉冲信号外的非脉冲信号分别进行解码,降低了待解码信号的动态范围,提高了解码效率,尤其提高了脉冲信号外的非脉冲信号的解码效率;同时通过对待解码信号进行分块编码,进一步降低了待解码 信号的动态范围,提高了解码效率。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (28)
1.一种编码***,其特征在于,包括:
编码识别器,用于识别待编码信号中的脉冲样点的个数和位置,并判断所述待编码信号中的脉冲信号是否取得编码增益;所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点;
编码器,用于当所述脉冲信号取得编码增益时将所述脉冲信号进行单独编码和将脉冲信号外的非脉冲信号进行编码,及当所述脉冲信号没有取得编码增益时对所述待编码信号进行统一编码;
复用器,用于将编码后的脉冲信号和编码后的脉冲信号外的非脉冲信号进行复用。
2.根据权利要求1所述的编码***,其特征在于,所述编码识别器包括:
识别模块,用于识别所述脉冲样点的个数和位置;
计算模块,用于计算所述脉冲信号的编码增益,并判断所述编码增益是否大于等于零。
3.根据权利要求2所述的编码***,其特征在于,所述编码识别器通过判断编码增益是否大于等于零来判断脉冲信号是否取得编码增益。
4.根据权利要求3所述的编码***,其特征在于,所述编码器包括:
脉冲编码模块,用于当所述脉冲信号取得编码增益时对所述脉冲信号进行单独编码;
样点编码模块,用于当所述脉冲信号取得编码增益时对所述脉冲信号外的非脉冲信号进行编码,及当所述脉冲信号没有取得编码增益时对所述待编码信号进行统一编码;
帧头编码模块,用于对所述待编码信号的帧头信息进行编码。
5.根据权利要求2所述的编码***,其特征在于,所述编码识别器还包括分块模块,用于分析和计算所述待编码信号的分块数。
6.根据权利要求5所述的编码***,其特征在于,所述编码器还包括分块器,用于按照所述待编码信号的分块数对所述待编码信号进行分块处理。
7.一种解码***,其特征在于,包括:
解复用器,用于对复用后的信号进行解复用生成待解码信号并输出;
解码器,用于解码脉冲标志并判断解码后的脉冲标志,如果脉冲标志不为零,则对脉冲样点的个数和位置进行解码,根据解码后的脉冲样点的个数和位置从待解码信号中识别脉冲信号,所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点;并将所述脉冲信号进行单独解码,和将所述脉冲信号外的非脉冲信号进行解码;如果脉冲标志为零,则对所述待解码信号进行统一解码。
合并器,用于将解码后的脉冲信号和解码后的脉冲信号外的非脉冲信号进行合并处理。
8.根据权利要求7所述的解码***,其特征在于,所述解码器包括:
脉冲解码模块,用于对所述脉冲信号进行解码;
样点解码模块,用于对所述脉冲信号外的非脉冲信号进行解码;
帧头解码模块,用于对所述待解码信号的帧头信息进行解码。
9.根据权利要求7所述的解码***,其特征在于,还包括解码识别器,用于对分块数进行解码得到待解码信号的分块数。
10.根据权利要求9所述的解码***,其特征在于,所述解码器还包括分块器,用于根据所述待解码信号的分块数对所述待解码信号进行分块处理。
11.一种编码方法,其特征在于,包括:
识别待编码信号中的脉冲样点的个数和位置;所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点;
判断所述待编码信号中的脉冲信号是否取得编码增益;
当所述脉冲信号取得编码增益时将所述脉冲信号进行单独编码和将脉冲信号外的非脉冲信号进行编码;
当所述脉冲信号没有取得编码增益时对所述待编码信号进行统一编码;
将编码后的脉冲信号和编码后的脉冲信号外的非脉冲信号进行复用。
12.根据权利要求11所述的编码方法,其特征在于,所述识别待编码信号中的脉冲样点的个数和位置具体为:
从所述待编码信号中判别脉冲样点;
统计该脉冲样点的个数,并查询该脉冲样点的位置。
13.根据权利要求12所述的编码方法,其特征在于,所述从所述待编码信号中判别脉冲样点具体为:
根据公式code_bits=log2[(max(x)-min(x)+1)]计算出每样点比特数,其中min(x)为待编码信号的样点中的最小值,max(x)为待编码信号的样点中的最大值,code_bits为每样点比特数;
如果所述待编码信号中的信号样点的幅值大于等于阈值,则该信号样点识别为脉冲样点,其中所述阈值为min(x)+2code_bits-1。
14.根据权利要求13所述的编码方法,其特征在于,通过判断编码增益是否大于等于零来判断所述脉冲信号是否取得编码增益,具体为:
计算编码增益;
判断该编码增益是否大于等于零;
是则设置脉冲标志为一,并输出所述脉冲样点的个数和位置;
否则设置脉冲标志为零。
15.根据权利要求14所述的编码方法,其特征在于,所述判断所述脉冲信号是否取得编码增益之后还包括:输出所述待编码信号的样点中的最小值和每样点比特数。
16.根据权利要求15所述的编码方法,其特征在于,所述将所述脉冲信号进行单独编码具体为:对所述脉冲信号的每个样点的幅值和所述待编码信号的样点中的最小值的差值使用所述code_bits个比特进行压缩。
17.根据权利要求16所述的编码方法,其特征在于,所述将所述脉冲信号进行单独编码还包括:对所述脉冲标志、所述脉冲样点的个数和位置进行编码。
18.根据权利要求17所述的编码方法,其特征在于,所述将脉冲信号外的非脉冲信号进行编码具体为:对所述脉冲信号外的非脉冲信号的每个样点的幅值和所述待编码信号的样点中的最小值的差值使用所述code_bits-1个比特进行压缩。
19.根据权利要求11所述的编码方法,其特征在于,还包括对所述待编码信号的帧头信息进行编码。
20.根据权利要求11所述的编码方法,其特征在于,所述识别待编码信号中的脉冲样点的个数和位置之前还包括:分析和计算所述待编码信号的分块数,并根据所述分块数对所述待编码信号进行分块处理。
21.根据权利要求20所述的编码方法,其特征在于,所述识别待编码信号中的脉冲样点的个数和位置具体为:识别每块待编码信号中的脉冲样点的个数和位置。
22.一种解码方法,其特征在于,包括:
对复用后的信号进行解复用生成待解码信号并输出;
解码脉冲标志并判断解码后的脉冲标志;
如果脉冲标志不为零,则识别所述待解码信号中的脉冲信号,并将所述脉冲信号进行单独解码,和将所述脉冲信号外的非脉冲信号进行解码;
如果脉冲标志为零,则对所述待解码信号进行统一解码;
将解码后的脉冲信号和解码后的脉冲信号外的非脉冲信号进行合并处理;
其中,所述识别所述待解码信号中的脉冲信号具体为:对脉冲样点的个数和位置进行解码;根据解码后的脉冲样点的个数和位置从待解码信号中识别脉冲信号;所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点。
23.根据权利要求22所述的解码方法,其特征在于,所述将所述脉冲信号进行单独解码具体为:对所述脉冲信号的每个样点的幅值和待编码信号的样点中的最小值的差值使用每样点比特数个比特进行解压缩,并将解压缩后的差值加上所述待编码信号的样点中的最小值得到解码后的脉冲信号的每个样点的幅值。
24.根据权利要求23所述的解码方法,其特征在于,所述将所述脉冲信号外的非脉冲信号进行解码具体为:对所述脉冲信号外的非脉冲信号的每个样点的值和待编码信号的样点中的最小值的差值使用每样点比特数减少一个比特进行解压缩,并将解压缩后的差值加上所述待编码信号的样点中的最小值得到解码后的脉冲信号外的非脉冲信号的每个样点的幅值。
25.根据权利要求22所述的解码方法,其特征在于,所述对复用后的信号进行解复用生成待解码信号并输出之后还包括:对分块数进行解码得到所述待解码信号的分块数,并根据所述待解码信号的分块数对所述待解码信号进行分块处理。
26.根据权利要求25所述的解码方法,其特征在于,所述识别所述待解码信号中的脉冲信号具体为:识别每块待解码信号中的脉冲信号。
27.一种编码装置,其特征在于,包括:
编码识别模块,用于识别待编码信号中的脉冲样点的个数和位置,并判断所述待编码信号中的脉冲信号是否取得编码增益;所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点;
编码模块,用于当所述脉冲信号取得编码增益时将所述脉冲信号进行单独编码和将脉冲信号外的非脉冲信号进行编码,及当所述脉冲信号没有取得编码增益时对所述待编码信号进行统一编码;
复用模块,用于将编码后的脉冲信号和编码后的脉冲信号外的非脉冲信号进行复用。
28.一种解码装置,其特征在于,包括:
解复用模块,用于对复用后的信号进行解复用生成待解码信号并输出;
解码模块,用于解码脉冲标志并判断解码后的脉冲标志,如果脉冲标志不为零,则对脉冲样点的个数和位置进行解码,根据解码后的脉冲样点的个数和位置从待解码信号中识别脉冲信号,所述脉冲样点为待编码信号中幅值大于或等于预设阀值的样点,所述脉冲样点为脉冲信号的样点;并将所述脉冲信号进行单独解码,和将所述脉冲信号外的非脉冲信号进行解码;如果脉冲标志为零,则对所述待解码信号进行统一解码;
合并模块,用于将解码后的脉冲信号和解码后的脉冲信号外的非脉冲信号进行合并处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101022568A CN101540612B (zh) | 2008-03-19 | 2008-03-19 | 编码、解码***、方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008101022568A CN101540612B (zh) | 2008-03-19 | 2008-03-19 | 编码、解码***、方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101540612A CN101540612A (zh) | 2009-09-23 |
CN101540612B true CN101540612B (zh) | 2012-04-25 |
Family
ID=41123623
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008101022568A Active CN101540612B (zh) | 2008-03-19 | 2008-03-19 | 编码、解码***、方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101540612B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2362657B1 (en) * | 2010-02-18 | 2013-04-24 | Research In Motion Limited | Parallel entropy coding and decoding methods and devices |
CN105245881B (zh) * | 2015-09-28 | 2019-04-19 | 杭州九言科技股份有限公司 | 一种数字图像滤镜处理的方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000068935A1 (en) * | 1999-05-07 | 2000-11-16 | Qualcomm Incorporated | Multipulse interpolative coding of transition speech frames |
CN1158648C (zh) * | 1999-10-19 | 2004-07-21 | 爱特梅尔股份有限公司 | 语音可变速率编码方法与设备 |
CN101051836A (zh) * | 2007-03-30 | 2007-10-10 | 北京中星微电子有限公司 | 传输流解码与编码定时同步的装置及方法 |
EP0984432B1 (en) * | 1998-09-01 | 2007-11-07 | Fujitsu Limited | Pulse position control for an algebraic speech coder |
-
2008
- 2008-03-19 CN CN2008101022568A patent/CN101540612B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0984432B1 (en) * | 1998-09-01 | 2007-11-07 | Fujitsu Limited | Pulse position control for an algebraic speech coder |
WO2000068935A1 (en) * | 1999-05-07 | 2000-11-16 | Qualcomm Incorporated | Multipulse interpolative coding of transition speech frames |
CN1158648C (zh) * | 1999-10-19 | 2004-07-21 | 爱特梅尔股份有限公司 | 语音可变速率编码方法与设备 |
CN101051836A (zh) * | 2007-03-30 | 2007-10-10 | 北京中星微电子有限公司 | 传输流解码与编码定时同步的装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101540612A (zh) | 2009-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102368385B (zh) | 后向块自适应Golomb-Rice编解码方法及装置 | |
CN1787383B (zh) | 变换、编码、逆变换和解码音频信号的方法和设备 | |
CN100561576C (zh) | 一种基于量化信号域的立体声及多声道编解码方法与*** | |
CN1241169C (zh) | 语音中非话音部分的低数据位速率编码 | |
CN101615910B (zh) | 压缩编码的方法、装置和设备以及压缩解码方法 | |
US8909521B2 (en) | Coding method, coding apparatus, coding program, and recording medium therefor | |
CN1922658A (zh) | 音频信号的分类 | |
JP2003514266A5 (zh) | ||
RU98113925A (ru) | Способ и устройство масштабируемого кодирования-декодирования стереофонического звукового сигнала (варианты) | |
CN1515079A (zh) | 低复杂度的信道译码器 | |
CN101540612B (zh) | 编码、解码***、方法及装置 | |
US8027242B2 (en) | Signal coding and decoding based on spectral dynamics | |
CN1114274C (zh) | 数字数据编码/解码方法及设备 | |
JP2003524983A (ja) | 複数コーダを用いる最適化ロスレス圧縮のための方法及び装置 | |
CN103098130A (zh) | 编码装置、解码装置、编码方法以及解码方法 | |
CN101615911B (zh) | 一种编解码方法和装置 | |
CN101547010B (zh) | 编码解码***、方法及装置 | |
CN1364287A (zh) | 降低语音编码所需处理容量的方法以及网络单元 | |
KR101336245B1 (ko) | 스케일러블 산술 복호화 방법 | |
WO2007095247A2 (en) | Perceptual quality based automatic parameter selection for data compression | |
CN1363167A (zh) | 编码以减少接收机中解码错误的方法和*** | |
CA2348238A1 (en) | Methods and apparatus for nearly lossless-concatenated block transform coding | |
EP1209626A3 (en) | Method and apparatus for data compression | |
WO2008072524A1 (ja) | オーディオ信号符号化方法及び復号化方法 | |
Coward et al. | Robust image communication using bandwidth reducing and expanding mappings |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20210423 Address after: Unit 3401, unit a, building 6, Shenye Zhongcheng, No. 8089, Hongli West Road, Donghai community, Xiangmihu street, Futian District, Shenzhen, Guangdong 518040 Patentee after: Honor Device Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |