WO2008134974A1 - Procédé de codage et de décodage, codeur et décodeur - Google Patents

Procédé de codage et de décodage, codeur et décodeur Download PDF

Info

Publication number
WO2008134974A1
WO2008134974A1 PCT/CN2008/070841 CN2008070841W WO2008134974A1 WO 2008134974 A1 WO2008134974 A1 WO 2008134974A1 CN 2008070841 W CN2008070841 W CN 2008070841W WO 2008134974 A1 WO2008134974 A1 WO 2008134974A1
Authority
WO
WIPO (PCT)
Prior art keywords
index
distribution
pulse
track
information
Prior art date
Application number
PCT/CN2008/070841
Other languages
English (en)
French (fr)
Inventor
Fuwei Ma
Dejun Zhang
Original Assignee
Huawei Technologies Co., Ltd.
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Priority claimed from CN2007101030235A external-priority patent/CN101295506B/zh
Priority claimed from CN2007101539527A external-priority patent/CN101388210B/zh
Priority to JP2010504431A priority Critical patent/JP5221642B2/ja
Priority to ES08734199.6T priority patent/ES2529292T3/es
Priority to EP08734199.6A priority patent/EP2157573B1/en
Priority to EP14184929.9A priority patent/EP2827327B1/en
Application filed by Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Publication of WO2008134974A1 publication Critical patent/WO2008134974A1/zh
Priority to US12/607,723 priority patent/US8294602B2/en
Priority to US13/622,207 priority patent/US8988256B2/en
Priority to US14/617,585 priority patent/US9225354B2/en
Priority to US14/974,171 priority patent/US9444491B2/en
Priority to US15/228,661 priority patent/US9912350B2/en
Priority to US15/880,300 priority patent/US10153780B2/en
Priority to US16/184,240 priority patent/US10425102B2/en
Priority to US16/568,144 priority patent/US10666287B2/en

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3082Vector coding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/08Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
    • G10L19/10Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters the excitation function being a multipulse excitation

Description

编码方法、 解码方法、 编码器及解码器
本申请要求于 2007 年 4 月 29 日提交中国专利局、 申请号为 200710103023.5、发明名称为 "编解码方法及编解码器 "的中国专利申请及 2007 年 9月 15日提交中国专利局、 申请号为 200710153952.7、发明名称为"编解码 方法及编解码器"的中国专利申请的优先权, 其全部内容通过引用结合在本申 请中。
技术领域
本发明涉及编解码方法及相应的编解码器。
背景技术
在矢量编码技术中,常常使用代数码书对自适应滤波后的残差信号进行量 化编码。 当经过搜索获得轨道上最佳代数码书脉冲的位置和符号信息后,通过 编码计算得到相应的索引值,使得解码端能够根据该索引值重建脉冲序列。在 保证无损重建的前提下、尽量减少编码索引值所需要的比特是代数码书脉冲编 码方法研究与发展的主要目标之一。
可扩展的宽带自适应多码率( AMR— WB +: Extended Adaptive Multi-Rate
Wideband )编码方法, 为现有代数码书脉冲釆用的一种编码方法。根据编码码 率的不同, 在每个轨道上可以编码 1~N个脉冲, 随着编码脉冲数量的增加, 编码所述数量脉冲所需的比特数也随着增加, 如, 对于有 M = 2m个位置的轨 道来说, 在所述轨道上编码 1个脉冲所需的比特数为 m + 1 , 编码 6个脉冲所 需的比特数达到 6m - 2。 在提出本发明的过程中, 发明人发现, 现有的代数脉 冲编码, 釆用类似递归的编码方法,将数量较多的编码脉冲拆分为若干脉冲数 量较少编码脉冲, 编码复杂度大, 同时, 随着轨道上编码脉冲数目的增加, 编 码索引的冗余度将逐渐累加, 容易造成编码比特的浪费。
发明内容
本发明实施例提供能够有效节省编码比特的编码方法、解码方法、编码器 及解码器。
一种编码方法, 包括: 获得在轨道上需要编码的所有脉冲在轨道上的分布 信息; 根据所述分布信息, 确定用于标识所述分布信息的分布标识; 生成包括 所述分布标识的编码索引。
一种解码方法, 包括:接收编码索引;从所述编码索引中提取出分布标识, 所述分布标识用于标识在轨道上需要编码的所有脉冲在轨道上的分布信息;按 照所述分布标识确定在轨道上需要编码的所有脉冲在轨道上的分布信息;按照 所述分布信息重建轨道上的脉冲序列。
一种编码器, 包括: 分布信息获得单元, 用于获得在轨道上需要编码的所 有脉冲在轨道上的分布信息; 分布标识确定单元, 用于根据所述分布信息获得 单元获得的分布信息,确定用于标识所述分布信息的分布标识; 编码索引生成 单元, 用于生成包括所述分布标识确定单元确定的分布标识的编码索引。
一种解码器, 包括: 编码索引接收单元, 用于接收编码索引; 分布标识提 取单元, 用于从所述编码索引接收单元接收的编码索引中提取出分布标识, 所 述分布标识用于标识在轨道上需要编码的所有脉冲在轨道上的分布信息;分布 信息确定单元, 用于按照所述分布标识提取单元提取的分布标识,确定在轨道 上需要编码的所有脉冲在轨道上的分布信息; 脉冲序列重建单元, 用于按照所 述分布信息确定单元确定的分布信息重建轨道上的脉冲序列。
在本发明的实施例中, 编码索引可以携带用于标识分布信息的分布标识, 将数量较多的编码脉冲拆分为若干个数量较少的编码脉冲。由于编码索引携带 的信息量较少, 所以编码索引所需的比特数也会较少, 因此, 本发明实施例可 以有效降低了编码的复杂度, 减少编码冗余节省编码比特。
附图说明
图 1是本发明实施例一编码方法流程示意图;
图 2是本发明实施例一中 5脉冲编码索引结构示意图;
图 3是本发明实施例二中 N = 3时的 XX(N)树结构示意图;
图 4是本发明实施例三编码方法流程示意图;
图 5是本发明实施例三中 6脉冲编码索引结构示意图;
图 6是本发明实施例三中 5脉冲编码索引结构示意图;
图 7是本发明实施例四中 N = 2时的 X(N)树结构示意图;
图 8是本发明实施例四中 N = 3时的 X(N)树结构示意图; 图 9是本发明实施例五编码方法流程示意图;
图 10是本发明实施例七解码方法流程示意图;
图 11是本发明实施例九解码方法流程示意图;
图 12是本发明实施例十一解码方法流程示意图;
图 13是本发明实施例十三编码器逻辑结构示意图;
图 14是本发明实施例十四编码器逻辑结构示意图;
图 15是本发明实施例十五编码器逻辑结构示意图;
图 16是本发明实施例十六解码器逻辑结构示意图;
图 17是本发明实施例十七解码器逻辑结构示意图;
图 18是本发明实施例十八解码器逻辑结构示意图。
具体实施方式
以下分别对本发明实施例的方法和装置进行详细说明。 实施例一提供了一种编码方法, 如图 1所示, 包括:
Al、 对轨道上需要编码的脉冲按照位置进行统计, 获得各个脉冲的位置 在轨道上的分布信息。
同一轨道上需要编码的脉冲总数通常根据码率来确定。 本实施例中, 以 pulse— num表示同一轨道上需要编码的脉冲总数, 假设 pulse— num = N; 以脉冲 分布矢量 Q(N) = {q(0), q(l), q(N - 1)}表示各个脉冲的位置在轨道上的分 布,其中, q(h)表示第 h + 1个脉冲在轨道上的位置序号, he [0, N - 1] , q(h) e [0, M - 1] , M在本发明实施例中表示轨道上的位置总数,一般 M可以为 8, 16等等。
此外, 需要编码的脉冲还可能带有符号, 即具有正或负的特性, 此时, 在 对轨道上需要编码的脉冲按照位置进行统计时,还需要获得各个脉冲的脉冲符 号信息。 本发明实施例中, 以脉冲符号矢量 SS(N) = {ss(0), ss(l), ss(N - 1)}表示各个脉冲的脉冲符号信息, 其中, ss (h)表示第 h + 1个脉冲的脉冲符号, 称为 q(h)脉冲的符号索引。基于 ss(h)所代表的脉冲符号具有或正或负的二值性。 一般可釆用如下简单的编码方式:用 ss(h) = 0表示正脉冲, ss(h) = 1表示负脉冲。 当然, 对于需要编码的脉冲来说, 脉冲符号并不是必须具备的特征, 按照实际 需要, 脉冲可以仅有位置和数量特性, 此时无需统计脉冲符号信息。 显然, Q(N)、 SS(N)中的值可以具有——对应的关系。
在统计获得需要编码的脉冲的各项参数 Q(N)、 SS(N)后, 可以将各项参数 编码为索引, 建立参数与索引之间的对应关系,使得解码端能够根据索引恢复 出对应的参数。 本发明中, 对应关系可以釆用两种表示方式, 一是用代数方式 表示的计算关系, 这种情况下, 编码端对参数进行正向计算获得索引, 解码端 则对索引进行反向计算获得参数; 一是用映射方式表示的查询关系, 这种情况 下, 编解码双方需要存储关联参数与索引的映射表。 两种对应关系可根据参数 的具体特点进行选择, 一般而言, 在数据量大的情况下, 尽量设计出以计算关 系表示的对应关系能够节省编解码双方的存储量, 是更为有利的。
A2、 确定分布索引 (也可以称为分布标识) 14, 14可以按照如下方式进行 计算: 按照设定的顺序, 对当前脉冲数目 N下, 各个脉冲的位置在轨道上全部 可能的分布情况进行排列, 以排列的序号作为指示相应分布情况的分布索引 14。
所称"设定的顺序"可理解为编解码双方按照同样的排序计算规则,所确定 的 Q(N)全部可能情况的顺序。
脉冲分布矢量 Q(N)的总可能数为 WQ(N) = C T , 其中, PPT = M + N - 1 , "C"表示求组合数。 每个 14对应指示 WQ(N)中的一种脉冲分布情况。
一般而言, WQ(N)数据量较大, 因此, 与分布索引 14的对应比较适合釆用 计算关系, 当然, 釆用查询关系也是可行的。 显然, WQ(N)即是 14全部可能的 取值数目, 若 14的值从 0开始计数, 则有 I4 e [0, WQ(N) - 1]。
A3、 生成编码索引 Index(N), 编码索引 Index(N)包括分布索引 14的信息。 14可以用任何能够被解码端识别的方式放置到编码索引中, 例如, 最简单 的, 从编码索引的设定位置起存放。
当然, 在所编码的脉冲为带符号脉冲的情况下, Index(N)还需要包括各个 脉冲的符号索引 ss(h)的信息, 可简单的将脉冲符号矢量 SS(N)作为长度为 N的 字段放置到编码索引的固定位置上, 例如末尾。
综上, 编码索引 Index(N)的一种构造方式可表示为:
Index(N) = Ι4χ2Ν + ss(0)x2N "1 + ss(l)x2N "2 + ... + ss(N - 1) 在实际应用中, 可以利用构成编码索引的基本信息,得出其他编码索引结构的 构造方式, 例如进行索引位置的互换或重新组合等, 编码索引的具体构造方式 不构成对本发明实施例的限定。 为更好的理解实施例一中编码索引的构造方式,下面举出一些实际的例子 来进行说明。 假设轨道上的位置总数 M= 16:
例一、 编码 N = 5个带符号脉冲, 编码索引结构如图 2所示。
编码索引 Index(5)共有 19个比特, 即 Index(5)e [0, 219- 1], 图 2中 Index(5) 的编码值范围以十六进制形式表示。 本发明实施例中, 在数值前冠以 "0x,,表示 该数值为十六进制表示, 其他数值未经特殊说明, 均以十进制表示。
五个符号索引 ss(0) ~ ss(4)占用末尾的 5个比特。
图 2中使用 14个比特来放置 14, 因此提供给 14的编码空间长度为 214 = 16384, 由于 WQ(5) =
Figure imgf000007_0001
= 15504, 所以显然足够使用。 例二、 编码 N = 4个带符号脉冲, 编码索引结构如下:
编码索引 Index(4)共有 16个比特, 即 Index(4)e [0, 216- 1] 。
四个符号索引 ss(0) ~ ss(3)占用末尾的 4个比特。
使用 12个比特来放置 14, 因此提供给 14的编码空间长度为 212 = 4096, 由于 WQ(4) = C^+ = 3876, 所以显然足够使用。 例三、 编码 N = 3个带符号脉冲, 编码索引结构如下:
编码索引 Index(3)共有 13个比特, 即 Index(3)e [0, 213- 1]。
三个符号索引 ss(0) ~ ss(2)占用末尾的 3个比特。
使用 10个比特来放置 14, 因此提供给 14的编码空间长度为 21Q = 1024, 由于 WQ(3) = C^+^ =816, 所以显然足够使用。 实施例二提供了一种编码方法。本实施例主要是提供一种对分布索引 14的 计算方法, 使得便于通过代数计算来确定脉冲在轨道上的分布 Q(N)= {q(0), q(l), q(N- 1)}与 14的对应关系。 本实施例中提供如下 Q(N)的排序计算规则:
由于 Q(N)不同的情况是通过所包含的不同数值组合来体现, 因此不妨对 Q(N)中包含的各个位置序号进行排列, 令:
q(0)≤q(l)≤...≤q(N - 1), 或者 q(0)≥q(l)≥...≥q(N - 1)
5 其中, 等号表示脉冲的位置可以重复。 假设 q(0)≤q(l)≤...≤q(N- 1), 则有 q(0)e[0, M], q(h)e[q(h- 1), M], M为轨道上的位置总数。 然后对 QN)不同 的情况依次比较各个维度的大小,按照从小到大或者从大到小的顺序对所有可 能的 Q(N)进行排序。
假设釆用从小到大的排序方式,并从 0开始对排序后的 Q(N)进行编号,则: 丄1 J4 ^PPT ^PPT-q(O)十 L L^PPT-h-q(h-l) ^PPT-h-q(h)J
h=l 其中, "c"表示求组合数,∑表示求和。上式的含义可解释为: c¾>T - C T_q(()) 表示第 1个脉冲位于 q(0)之前的 Q(N)情况总数;
Figure imgf000008_0001
表示第 1 个脉冲位于 q(0)时, 第 2个脉冲位于 q(l)之前的 Q(N)情况总数;
C rT hh-q(h-l)- C rT h_h_q(h)的含义可类推。 需要说明的是, 上述公式只是 14与
15 Q(N)间计算关系的一种表现形式,根据相同的排序规则,还可等价的以其他数 学形式来描述该计算关系。若釆用不同的排序规则,也可相应的设计出类似的 计算关系, 具体计算关系的表述方式不构成对本发明实施例的限定。
为更好的理解上述 14的计算方法, 可假设一个脉冲相对位置矢量 XX(N) = {xx(l), xx(2), ..., χχ(Ν)} , ΧΧ(Ν)与 Q(N)有如下——对应关系:
0 xx(l) = q(0);
xx(i) = q(i- l)-q(i-2);
xx(i)表示的是第 i个脉冲的位置与第 i _ 1个脉冲的位置之间的相对位置关系,
N]。 利用 XX(N)可将 Q(N)所有可能的情况构造在一个 N层树结构中, 树 的深度为 N+ 1, 树第 i层的子节点表示第 i个脉冲的相对位置值 xx(i)。 按照从左 到右、 从小到大的顺序放置 xx(i)的取值, 然后在树的底层, 即末节点处, 从左 到右依次对各个末节点进行编码。每个末节点到根节点的路径对应 XX(N)的一 种情况, 因此每个末节点的编码即为指示相应 Q(N)情况的分布索引 14。
下面举一个实际的例子来进行说明,假设轨道上的位置总数 M = 16,N = 3 , 树结构如图 3所示, 对应的分布索引计算公式为:
14(3) = C^g - Ci8_q(0) + Ci7_q(0) - ^7_q(1) + C}6_q (- - C}6_q(2)
N为其他值时, 对应的树结构类似, 14的计算公式可类推, 不再赘述。 本实施例提供了一种以计算关系获得分布索引 14的方法, 由于 14在编码索 引中所占数据量较大,因此釆用本实施例计算方法能够尽量减少编解码双方的 存储量。 同时, 由于 14连续编码且与 Q(N)严格——对应, 因此能够最大限度的 利用编码比特, 避免浪费。 实施例三提供了一种编码方法, 本实施例与实施例一相比, 其区别之处在 于, 本实施例将实施例一中所描述的编码过程视为第一编码方式,先在包括第 一编码方式的可选编码方式中进行选择, 再按照所选择的编码方式进行编码。 本实施例编码方法流程如图 4所示, 包括:
Bl、 确定同一轨道上需要编码的脉冲总 ¾N。
通常可根据编码码率来确定需要编码的脉冲总数 N。
B2、 根据 N进行编码方式选择, 所述编码方式包括第一编码方式, 根据选 择结果执行步骤 B3或 B4。
本发明实施例中将实施例一所描述的编码方式称为第一编码方式。可选的 编码方式除了第一编码方式之外,还可以包括其他形式的编码方式, 例如现有 的 AMR— WB +等。 本实施例中将具体提供一种可选的第二编码方式。
编码方式根据已确定的 N值进行选择, 例如, 可预先设置某些 N值情况下 釆用第一编码方式进行编码, 而在其他 N值情况下釆用第二编码方式进行编 码。 研究表明, 在 N = 3 , 4, 5等值时, 釆用第一编码方式效果较好。
B3、 根据编码方式选择的结果, 在确定选择第一编码方式之后, 按照第 一编码方式进行编码。 具体编码过程可参照实施例一中的描述执行, 即实施例一的步骤 Al、 A2 和 A3。
B4、 根据编码方式选择的结果, 在确定选择第二编码方式之后, 按照第 二编码方式进行编码, 第二编码方式的一种实施方式如下:
B41、 对轨道上需要编码的脉冲按照位置进行统计, 获得有脉冲位置的数 目、 有脉冲位置在轨道上的分布和各个有脉冲位置上的脉冲数目。
同实施例一中步骤 A1 , 以脉冲位置矢量 P(N) = {p(0), p(l), ... , ρ(Ν - 1)} 表示有脉冲位置在轨道上的分布, 以位置符号矢量 S(N) = {s(0), s(l), s(N - 1)}表示各个有脉冲位置的脉冲符号信息, 还需要获得各个有脉冲位置上的 脉冲数目。 本发明实施例中本发明实施例中以脉冲数目矢量 SU(N) = {su(0), su(l), su(N - 1)}表示各个有脉冲位置上的脉冲数目, 其中, su(n)表示 p(n) 位置的脉冲数目, 显然有 su(0) + su(l) + ... + su(N - 1) = N。
本发明实施例中显然, P(N)、 SU(N)、 S(N)中的值具有——对应的关系。 在统计获得需要编码的脉冲的各项参数 N、 P(N)、 SU(N)、 S(N)后, 就需 要将各项参数编码为索引, 建立参数与索引之间的对应关系,使得解码端能够 根据索引恢复出对应的参数。
B42、 按照有脉冲位置的数目 pos— num = N确定第一索引 II , 第一索引 II对 应于相同 pos— num下, 有脉冲位置在轨道上全部可能的分布情况。
pos— num的数值 N变化范围不大, 因此, 与第一索引 II的对应釆用计算关 系或查询关系都是可行的。 在建立 pos— num与 II的对应关系时, 一般可令他们 具有——对应的关系; 当然, 若某些 pos— num数值下, 其他参数的索引只需要 较少比特数, 这些 pos— num也可以合并使用一个 II , 再通过额外的标记比特进 行区分。
pos— num的数值 N决定了 P(N)全部可能情况的总数 W(N), W(N) = C^ , "C" 表示求组合数。 因此, 一个 II对应于 W(N)个可能的 P(N)。
B43、 按照有脉冲位置在轨道上的分布 P(N)确定第二索引 12, 第二索引 12 从第一索引 II对应的全部可能的分布情况中,指示与当前有脉冲位置的分布对 应的分布情况。 P(N)的总可能数为 W(N) = 数据量较大, 因此与第二索引 12的对应比 较适合釆用计算关系, 当然釆用查询关系也是可行的。 显然, W(N)即是 12全 部可能的取值数目, 若 12的值从 0开始计数, 则有 I2 E [0, W(N) - 1]。
B44、 按照各个有脉冲位置上的脉冲数目 SU(N)确定第三索引 13。
SU(N)虽然是与 P(N)同维度的矢量, 但受限于 su(0) + su(l) + ... + su(N - 1)
= N, 且 N的数值通常不大, 一般为 1~6, 因此, SU(N)的总可能数不大, 与第 三索引 13的对应釆用计算关系或查询关系都是可行的。并且,鉴于其矢量形式, 在高维度情况下釆用查询关系较为适宜,在低维度情况下计算关系的设计较为 容易, 所以, 两种方式均可釆用。 需要说明的是, 在某些极端情况下, 例如 N = 1或N = N, 此时, SU(N)只有一种可能情况, 无须由具体的 13进行指示, 可 将 13视为不影响最终编码索引生成的任意值。
B45、生成编码索引 Index(N), 编码索引 Index(N)包括第一、二、三索引 II、 12、 13的信息。
II、 12、 13可以用任何能够被解码端识别的方式放置到编码索引中, 例如, 最简单的, 可分别单独存放在固定的字段中。考虑到在同一轨道上需要编码的 脉冲总数 pulse— num—定的前提下, II指示的 pos— num的数值 N决定了 12和 13的 变化范围, 即, 决定了 12和 13需要的编码比特数, 因此可釆用如下方式来构造 编码索引:
①以第一索引 II为起始值, 叠加其他索引的信息。 II的一个取值对应于编 码索引的一个独立的取值范围。 这样, 解码端就可以根据编码索引的取值范围 直接确定 pos— num的数值 N。
②进一步的, 在 II划定的取值范围中 (通常对应于一定的字段长度), 12、 13可以用任何能够被解码端识别的方式进行放置, 例如, 最简单的, 可分别单 独存放。 由于 12、 13—般不能表示为 2的整数次方, 为尽量节省编码比特, 可 将 12、 13组合为如下形式放置到 II划定的取值范围中:
123 = I3 W(N) + I2 = I3 CS + 12
12、 13均从 0开始编码, I2 e [0, C¾ - 1] , 13 [0, Class(N) - 1] , Class(N)为 SU(N) 的总可能数。 显然, 这种方式相当于将 II划定的取值范围分成 Class(N)个长度 为 W(N)的部分, 每个部分对应 SU(N)的一种分布情况。
③当然, 在所编码的脉冲为带符号脉冲的情况下, Index(N)还需要包括各 个脉冲符号索引 s(n)的信息, 可简单的将位置符号矢量 S(N)作为长度为 N的字 段放置到编码索引的固定位置上, 例如末尾。
综上, 编码索引 Index(N)的一种构造方式可表示为:
Index(N) = II + 123 χ2Ν + s(0)x2N"1 + s(l)x2N"2 + ... + s(N - 1) 式, 在实际应用中, 还可以利用构成编码索引的基本信息, 容易的得出其他编 码索引结构的构造方式, 例如进行索引位置的互换或重新组合等, 编码索引的 具体构造方式不构成对本发明实施例的限定。
对于不同的编码脉冲数目来说, 可一致釆用第二编码方式提供的编码逻 辑,避免了 AMR—WB+所釆用的递归方式下编码索引冗余度的累加, 保证充分 利用编码比特。 同时, 由于避免了对同一位置的多个脉冲进行分别编码, 使得 本发明实施例进行位置合并后编码的方法具有节省编码比特的优势,并且随着 轨道上编码脉冲数目的增加,脉冲位置发生重叠的几率也随之增加, 本发明实 施例方法的优势会愈加明显。
为更好的理解第二编码方式中编码索引的构造方式,下面举出一些实际的 例子来进行说明。假设轨道上的位置总数 M = 16,且有脉冲位置的数目 pos— num 与第一索引 II为——对应的关系:
例一、 编码 N = 6个带符号脉冲, 编码索引结构如图 5所示。
编码索引 Index(6)共有 21个比特, 即 Index(6) e [0, 221 - 1] , 图 5表示了在 pos— num的不同取值情况下, Index(6)所包含的各部分索引所占用的比特数。为 清楚起见, 以下用 I1(N)、 I2(N)、 I3(N)、 I23(N)分别表示 N为特定取值下的该索 引。 I1(N)的确定釆用映射方式, 分别为,
Il(l) = 0xlF0000, 11(2) = OxlEOOOO, 11(3) = OxlDOOOO,
11(4) = 0x180000, 11(5) = 0x000000, 11(6) = 0x100000。
下面对图 5进行具体分析说明。
① 6个脉冲在 1个位置上时, N = l , W(l) = 16, 12(1) e [0, 15] , SU(1)= {6}, Class(l) = 1, 13(1) = 0,
因此, 123(1) = 12(1) e[0, 15];
一个符号索引 s(0)占用末尾的 1个比特,
11(1)提供给 123(1)的编码空间长度为 [221 - 11(1)] /21 = 32768, 显然足够使 用。
② 6个脉冲在 2个位置上时, N = 2, W(2) = 120, 12(2) e[0, 119],
SU(2)= {5, 1}, {4, 2}, {3, 3}, {2, 4}, {1, 5}; Class(2) = 5, 13(2) e[0,
4],
因此, 123(2) = Ι3(2)χ120 + 12(2) e[0, 599];
两个符号索引 s(0)、 s(l)占用末尾的 2个比特,
12(2)提供给 123(2)的编码空间长度为 [11(1)- 11(2)]/ 22= 16384, 显然足够 使用。
③ 6个脉冲在 3个位置上时, N = 3W(3) = 560, 12(3) e[0, 559],
SU(3)= {4, 1, 1}, {1, 4, 1}, {1, 1, 4}, {3, 2, 1}, {3, 1, 2}, {2, 3, 1}, {2, 1, 3}, {1, 3, 2}, {1, 2, 3}, {2, 2, 2}; Class(3) = 10, 13(3) e[0, 9],
因此, 123(3) = Ι3(3)χ560 + 12(3) e[0, 5599];
三个符号索引 s(0)~s(2)占用末尾的 3个比特,
12(3)提供给 123(3)的编码空间长度为 [11(2) - 11(3)] /23 = 8192,显然足够使 用。
④ 6个脉冲在 4个位置上时, N = 4, W(4) = 1820, 12(4) e[0, 1819], SU(4) = {3 , 1, 1, 1}, {1, 3, 1, 1}, {1, 1, 3, 1}, {1, 1, 1, 3},
{2, 2, 1, 1}, {2, 1, 2, 1}, {2, 1, 1, 2}, {1, 2, 2, 1}, {1, 2, 1, 2}, {1, 1, 2, 2}; Class(4) = 10, 13(4) e[0, 9],
因此, 123(4) = Ι3(4)χ1820 + 12(4) e[0, 18199];
四个符号索引 s(0)~s(3)占用末尾的 4个比特,
12(4)提供给 123(4)的编码空间长度为 [11(3) - 11(4)] /24 = 20480, 显然足够 使用。 ⑤ 6个脉冲在 5个位置上时, N = 5, W(5) = 4368, 12(5) e[0, 4367], SU(5)= {2, 1, 1, 1, 1}, {1, 2, 1, 1, 1}, {1, 1, 2, 1, 1}, {1, 1,
1, 2, 1}, {1, 1, 1, 1, 2}; Class(5) = 5, 13(5) e[0, 4],
因此, 123(5) = Ι3(5)χ4368 + 12(5) e[0, 21839];
五个符号索引 s(0)~s(4)占用末尾的 5个比特,
12(5)提供给 123(5)的编码空间长度为 [11(6) - 11(5)] /25 = 32768, 显然足够 使用。
⑥ 6个脉冲在 6个位置上时, N = 6, W(6) = 8008, 12(6) e[0, 8007], SU(6)= {1, 1, 1, 1, 1, 1}, Class(6) = 1, 13(6) = 0,
因此, 123(6) = 12(6) e[0, 8007];
六个符号索引 s(0)~s(5)占用末尾的 6个比特,
12(6)提供给 123(6)的编码空间长度为 [11(4) - 11(6)] /26 = 8192,显然足够使 用。 例二、 编码 N = 5个带符号脉冲, 编码索引结构如图 6所示。
编码索引 Index(5)共有 19个比特, 即 Index(5)e [0, 219- 1]。 图 6表示了在 pos— num的不同取值情况下, Index(5)所包含的各部分索引所占用的比特数。 I1(N)的确定釆用映射方式, 分别为,
11(1) = 0x78000, 11(2) = 0x70000, 11(3) = 0x60000,
11(4) = 0x40000, 11(5) = 0x00000。
对图 6的具体分析可仿照图 5进行, 在此不再赘述。 例三、 编码 N = 4个带符号脉冲。
编码索引 Index(4)共有 16个比特, 即 Index(4)e [0, 216- 1]。 在 pos_num的 不同取值情况下, Index(4)所包含的各部分索引所占用的比特数。 I1(N)的确定 釆用映射方式, 分别为,
Ι1(1) = 0χΕ000, 11(2) = OxCOOO, 11(3) = 0x8000, 11(4) = 0x0000。 例四、 编码 N = 3个带符号脉冲。
编码索引 Index(3)共有 13个比特, 即 Index(3)e [0, 213- 1]。 在 pos— num的 不同取值情况下, Index(3)所包含的各部分索引所占用的比特数。 I1(N)的确定 釆用映射方式, 分别为,
Il(l) = 0xlC00, 11(2) = 0x1800, 11(3) = 0x0000。 例五、 编码 N = 2个带符号脉冲。
编码索引 Index(2)共有 9个比特, 即 Index(2)e [0, 29- 1]。 在 pos_num的不 同取值情况下, Index(2)所包含的各部分索引所占用的比特数。 I1(N)的确定釆 用映射方式, 分别为,
Il(l) = 0xlE0, 11(2) = 0x000。 例六、 编码 N=l个带符号脉冲。
编码索引 Index(l) 共有 5个比特, 即 Index(l)e [0, 25- 1]。 由于 N≡l, 因 此, Index(l)仅包含索引 123(1) = 12(1)以及 p(0)的符号索引 s(0)。 实施例四提供了一种编码方法,本实施例主要是提供一种在第二编码方式 中对第二索引 12的计算方法,使得便于通过代数计算来确定有脉冲位置在轨道 上的分布, 即 Ρ(Ν) = {ρ(0), ρ(1), ..., ρ(Ν- 1)}与 12的对应关系。
本实施例中 12的计算方法是, 按照设定的顺序, 对第一索引 II对应的有脉 冲位置的数目 Ν下, Ρ(Ν)全部可能的情况进行排列, 以排列的序号作为指示相 应分布情况的第二索引 12。
"设定的顺序 "可理解为编解码双方按照同样的排序计算规则, 所确定的
Ρ(Ν)全部可能情况的顺序。 本实施例中提供如下排序计算规则:
由于 Ρ(Ν)不同的情况是通过所包含的不同数值组合来体现, 因此不妨对 Ρ(Ν)中包含的各个位置序号进行排列, 令:
ρ(0)<ρ(1)< ... <ρ(Ν- 1), 或者 ρ(0)>ρ(1)> ... >ρ(Ν- 1);
假设 ρ(0) < ρ(1) < ... <ρ(Ν- 1),则有 ρ(0) e [0, Μ - Ν] , ρ(η)≡ [ρ(η - 1) + 1 ,
Μ-Ν + η], Μ为轨道上的位置总数。 然后对 Ρ(Ν)不同的情况依次比较各个维 度的大小, 按照从小到大或者从大到小的顺序对所有可能的 Ρ(Ν)进行排序。 假设釆用从小到大的排序方式, 并从 0开始对排序后的 Ρ(Ν)进行编号, 则:
N-1
_「Ν —「Ν 丄 ν「「Ν— η —「Ν— η -ι
L _ ― ^Μ-ρ(Ο)十 J L^M— ρ(η— 1)— 1 ― ^M-p(n) J
n=l 其中" c"表示求组合数; ∑表示求和。 上式的含义可解释为: e - C p(Q)表示 第 1个脉冲位于 p(0)之前的 P(N)情况总数; i - 表示第 1个脉冲 于 p(0)时, 第 2个脉冲位于 p(l)之前的 P(N)情况总数; η ρ(ηυn p(n)的含 义可类推。需要说明的是,上述公式只是 12与 P(N)间计算关系的一种表现形式, 根据相同的排序规则,还可等价的以其他数学形式来描述该计算关系; 若釆用 不同的排序规则, 也可相应的设计出类似的计算关系, 具体计算关系的表述方 式不构成对本发明实施例的限定。 为更好的理解上述 12的计算方法, 可假设一个脉冲相对位置矢量 X(N) = {x(l), x(2), ... , χ(Ν)}, Χ(Ν)与 Ρ(Ν)有如下——对应关系:
x(l) = P(0);
x(i) = p(i - l) - p(i - 2);
x(i)表示的是第 i个有脉冲位置与第 i - 1个有脉冲位置之间的相对位置关系, i [ N]。 利用 X(N)可将 P(N)所有可能的情况构造在一个 N层树结构中, 树的 深度为 N + 1 , 树第 i层的子节点表示第 i个有脉冲位置的相对位置值 x(i)。 按照 从左到右从小到大的顺序放置 x(i)的取值, 然后在树的底层, 即末节点处从左 到右依次对各个末节点进行编码。每个末节点到根节点的路径对应 X(N)的一种 情况, 因此每个末节点的编码即为指示相应 P(N)情况的第二索引 12。
下面举出一些实际的例子来进行说明, 4艮设轨道上的位置总数 M = 16。 例一、 有脉冲位置的数目 pos— num的值 N = 2, 树结构如图 7所示。
12(2) = C16 - C16x + C16x(1H - C16[x +x(2)] = c' 16 -c ^16-p(0) + T c ^16-p(0)-l c 6— p(l) 例二、 有脉冲位置的数目 pos— num的值 N = 3 , 树结构如图 8所示,
I2(3) = Ci6 - Ci 166_—xxm(l) +
Figure imgf000017_0001
+ C 1
16-[x(l)+x(2)]-l一 c 1
16-[x(l)+x(2)+x(3)]
= ci6 -c 16-p(0) + c 16-p(0)-l一 c 16— P(l) + c 1
16-p(l)-l一 C 16— P(2)当 N = 4、 5、 6时, 对应的树结构类似, 12的计算公式可类推, 不再赘述。
本实施例提供了一种以计算关系获得第二索引 12的方法, 由于 12在编码索 引中所占数据量较大,因此釆用本实施例计算方法能够尽量减少编解码双方的 存储量。 同时, 由于 12连续编码且与 P(N)严格——对应, 因此能够最大限度的 利用编码比特, 避免浪费。 下面,对上述第一编码方式和第二编码方式中编码索引构造方式的优势进 行分析。 理论上, 同一轨道上需要编码的脉冲总数 pulse— num—定的前提下, 所有脉冲在轨道上的全部可能的排列组合数, 就是编码索引的最小取值范围, 由此对应的编码比特数即为理论下限值, 当排列组合数为 2的整数次方时, 编 码比特数的理论下限值为整数, 当排列组合数不能表示为 2的整数次方时, 编 码比特数的理论下限值为小数, 此时, 存在一定的编码冗余。 轨道上的位置总 数 M = 16时, 在不同的 pulse— num取值下, 对编码比特数的理论下限值、 釆用 AMR— WB+编码方式需要的编码比特数,以及釆用第一编码方式和第二编码方 式中编码索弓 I构造方式需要的比特数进行对比, 如表 1所示:
表 1
N 总排列 所需比特数(bit )
组合数 理论下限值 AMR WB+ 第一编码 第二编码
方式 方式
1 32 5 5 5 5 2 512 9 9 10 9
3 5472 12.4179 13 13 13
4 44032 15.4263 16 16 16
5 285088 18.1210 20 19 19
6 1549824 20.5637 22 22 21 由表 1对比可以得知, 第二编码方式的编码索引构造方式能够在理论下限 值为整数时, 达到理论下限值; 在理论下限值为小数时, 达到理论下限值的整 数部分加一。 第一编码方式在 N = 3 , 4, 5时具有与第二编码方式相同的编码 比特长度。 该两种编码方式在高码率的情形下, 编码效率比 AMR— WB+要高, 即更加节省比特。
在计算复杂度方面,以 AVS-M移动音频标准的参考代码中的全部测试序列 为测试对象,对 AMR— WB+、 第一编码方式和第二编码方式的运行时间统计进 行进行对比(遍历所有样本空间, 包括编码和解码过程, 第一编码方式釆用实 施例二中的计算方式, 第二编码方式釆用实施例四中的计算方式,解码釆用后 续实施例中提供的相应方式), 如表 2所示:
Figure imgf000018_0001
Figure imgf000018_0002
由表 2对比可以得知, 第一编码方式在大多数情况下具有较低的运算复杂 度, 第二编码方式的运算复杂度则与 AMR— WB+方式相当。通过表 1和表 2可以 看出, 综合使用第一编码方式和第二编码方式, 在 N = 3 , 4 , 5时利用第一编 码方式的低计算复杂度, 在其他 N值情况下利用第二编码方式的低编码比特长 度能够达到良好的效果。 实施例五提供了一种编码方法, 如图 9所示, 包括:
Cl、 对轨道上需要编码的脉冲按照位置进行统计, 获得脉冲位置的数目、 脉冲位置在轨道上的分布和各个脉冲位置上的脉冲数目。
对步骤 C1的描述可以参照实施例三对步骤 B41的描述, 这里不再赘述。
C2、 按照脉冲位置的数目 pos— num = N确定第一索引 II , 第一索引 II对应 于相同 pos— num下, 脉冲位置在轨道上全部可能的分布情况。
对步骤 C2的描述可以参照实施例三对步骤 B42的描述, 这里不再赘述。 C3、 按照脉冲位置在轨道上的分布 P(N)确定第二索引 12, 第二索引 12从第 一索引 II对应的全部可能的分布情况中,指示与当前有脉冲位置的分布对应的 分布情况。
对步骤 C3的描述可以参照实施例三对步骤 B43的描述, 这里不再赘述。 C4、 按照各个脉冲位置上的脉冲数目 SU(N)确定第三索引 13。
对步骤 C4的描述可以参照实施例三对步骤 B44的描述, 这里不再赘述。 C5、 生成编码索引 Index(^V), 编码索引 Index(^V)包括第一、 二、 三索引 II、
12、 13的信息。
对步骤 C5的描述可以参照实施例三对步骤 B45的描述, 这里不再赘述。 当然, 实施例五的相关描述都可以参照实施例三的描述(包括举例说明 ), 这里不再赘述。
实施例六提供了一种编码方法, 本实施例釆用与实施例五相同的编码逻 辑, 本实施例主要是提供一种对第二索引 12的计算方法, 使得便于通过代数计 算来确定脉冲位置在轨道上的分布: Ρ(Ν) = {ρ(0), ρ(1), ... , ρ(Ν - 1)}与 12的 对应关系。 具体描述可以参见实施例四, 这里不再赘述。 下面对本发明实施例的解码方法进行详细说明。
实施例七提供了一种解码方法,本实施例提供的解码方法对按照实施例一 编码方法获得的编码索引进行解码, 解码过程为编码过程的反过程, 如图 10 所示, 包括: D 1、 接收编码索弓 I Index(N)。
D2、 从编码索引 Index(N)中提取出分布索引 14。
从 Index(N)中提取分布索引 14 ,可按照与编码时将 14构造入 Index(N)相反的 过程来进行。 例如, 若 14存放在设定的字段中, 则直接提取即可。
若编码的是带符号脉冲, 则还需要从 Index(N)中提取出与各个脉冲对应的 符号索引 ss(h)。 由于不同码率下, 编码索引的总比特数不同, 因此, 解码端可 直接根据编码索引的长度 (比特数), 确定出同一轨道上编码的脉冲总数 pulse— num = N, 然后根据 N, 从 Index(N)中提取相应数目的符号索引 ss(h)。 按 照实施例一中提供的 Index(N)结构, N个符号索引位于 Index(N)末尾, 因此可直 接从 Index(N)中分离出各个 ss(h)。
D3、 按照分布索 114确定各个脉冲的位置在轨道上的分布 Q(N)。
解码 14釆用与编码 14相反的过程, 若 14在编码时釆用计算关系获得, 则在 解码时利用同样的计算关系进行逆运算即可; 若 14在编码时釆用查询关系获 得, 则在解码时查询相同的对应关系即可。
D4、 按照各个脉冲的位置在轨道上的分布 Q(N)重建轨道上的脉冲序列。 对于带符号脉冲的情形, 在重建轨道上的脉冲序列时,还按照各个符号索 引 ss(h)携带的脉冲符号信息, 恢复各个脉冲的脉冲符号的正或负的特性。 实施例八提供了一种解码方法, 本实施例釆用与实施例七相同的解码逻 辑,本实施例主要是提供一种对按照实施例二编码方法获得的分布索弓 114进行 解码的计算方法, 即提供实施例二中 14的计算方法在解码端的逆计算方法。
对于在编码时, 按照:
14 = C¾T - C PT_ (0) + 1[C^_h_ (H) - C pi_h_ w]得到的 14 , 在解码时釆 h=l
用:
①按照 q(0)从小到大的顺序依次计算 T[q(0)] = 14 - (C¾,T - C¾,T_q(0)); 其 中, q(0) e [0, M] , M为轨道上的位置总数, N为同一轨道上编码的脉冲总数, PPT = M + N - 1 , "C"表示求组合数,记录最后一个令 T[q(0)]大于零的 q(0)值作 为轨道上第 1个脉冲的位置序号 νθ;
②若 N> 1, 则继续按照 q(l)从小到大的顺序依次计算 Tl[q(l)] = T(vO) -
Figure imgf000021_0001
其中, q(l)E[vO, M], 记录最后一个令 Tl[q(l)]大于 零的 q(l)值作为轨道上第 2个脉冲的位置序号 vl;
③以此类推,按照 q(h)从小到大的顺序依次计算 Th[q(h)] = T(h - l)[q(h - 1)]
- (C¾Th h-vCh-D - C¾-T h h_q(h)), 其中, q(h)e[v(h_l), M], he[2, N_l], 记录最后一个令 Th[q(h)]大于零的 q(h)值作为轨道上第 h+ 1个脉冲的位置序号 vh„
④解码 14完成, 获得 Q(N)= {q(0), q(l), q(N_l)}。 实施例九提供了一种解码方法,本实施例提供的解码方法对按照实施例三 编码方法获得的编码索引进行解码, 解码过程为编码过程的反过程, 如图 11 所示, 包括:
E1、 确定接收的编码索引 Index(N)在同一轨道上编码的脉冲总数 N。
解码端可直接根据编码索引的长度(比特数), 确定出同一轨道上编码的 脉冲总数 pulse— num = N。 当然, 解码端也可以在接收编码索引前, 通过与编码 方约定的方式获知编码索引对应的 N值 (例如在接收编码索引前通过双方的信 息交互获知 ), 本实施例对 N的具体获知方式不做限定。
E2、 根据 N进行解码方式选择, 所述解码方式包括第一解码方式, 根据选 择结果执行步骤 E3或 E4。
本发明实施例中将实施例七所描述的解码方式称为第一解码方式。可选的 解码方式除了第一解码方式之外,还可以包括其他形式的解码方式,各种可选 的解码方式需要与编码端提供的编码方式对应。本实施例中将具体提供与前述 第二编码方式对应的第二解码方式。
解码端应釆用与编码端相应的规则来选择解码方式,确保编解码方式的一 致性。
E3、根据解码方式选择的结果, 在确定选择第一解码方式之后,按照第一 解码方式进行解码。 执行所述从编码索引中提取出分布索引的步骤。 具体解码过程可参照实施例七中的描述执行。
E4、根据解码方式选择的结果, 在确定选择第二解码方式之后,按照第二 解码方式进行解码, 第二解码方式的一种实施方式如下:
E41、 从 Index(N)中提取出第一索引 II , 按照 II确定有脉冲位置的数目 pos_num„
由于不同码率下, 编码索引的总比特数不同, 因此, 解码端可直接根据编 码索引的长度(比特数), 确定出同一轨道上编码的脉冲总数 pulse— num = N。
从 Index(N)中提取各个索引的信息, 可按照与编码时将各个索引组合成 Index(N)相反的过程来进行。 例如, 若各个索引单独存放在固定的字段中, 则 直接分别提取即可。
若 Index(N)釆用实施例三中提供的以 II作为起始值叠加其他索引的结构, 则可先提取出 II , 按照与 II对应的 pos— num的值 N确定其他索引在 Index(N)中的 位置。 在这种情况下, 由于一个 II对应 Index(N)的一个独立取值范围, 因此, 解码端可从设定的若干个独立的取值范围中, 判断 Index(N)所属的取值范围, 按照该所属的取值范围对应的起始值确定第一索引 II。
E42、 从编码索引 Index(N)中提取出第二、 三索引 12、 13。
与 II类似, 12、 13的提取也按照与 12、 13组合进 Index(N)相反的过程进行, 在独立放置时可被直接提取。 若 12、 13釆用实施例三中组合后进行叠加的编码 方式, 则可釆用以下步骤分离:
①从编码索弓 I Index(N)中提取出 12、 13的组合值 123。
123在 Index(N)中的存放位置可由 II确定的 N值来指示。
②按照如下方式分离出 12、 13 , 12 = 123 % W(N), 13 = Int[I23 / W(N)] , 其中, W(N)为 pos_num = N下, P(N)全部可能的情况的总数, W(N) = C¾ , M 是轨道上的位置总数, %表示取余数, Int表示取整。
E43、 若编码的是带符号脉冲, 则还需要从 Index(N)中提取出与各个有脉 冲位置对应的符号索引 s(n)。
按照实施例三中提供的 Index(N)结构, N个符号索引位于 Index(N)末尾, 因 此, 在获得由 II指示的 N值后, 可直接从 Index(N)中分离出各个 s(n)。
E44、 按照第二索引 12确定, 在 pos— num = N下, 有脉冲位置在轨道上的分 布 P(N)。
解码 12釆用与编码 12相反的过程, 若 12在编码时釆用计算关系获得, 则在 解码时利用同样的计算关系进行逆运算即可; 若 12在编码时釆用查询关系获 得, 则在解码时查询相同的对应关系即可。
E45、 按照第三索引 13确定各个有脉冲位置上的脉冲数目 SU(N)。 解码 13 的原则与 12类似。
E46、 按照有脉冲位置在轨道上的分布 P(N)和各个有脉冲位置上的脉冲数 目 SU(N), 重建轨道上的脉冲序列。
对于带符号脉冲的情形, 在重建轨道上的脉冲序列时,还按照各个符号索 引 s(n)携带的脉冲符号信息,恢复各个有脉冲位置的脉冲符号的正或负的特性。 实施例十提供了一种解码方法, 本实施例釆用与实施例九相同的解码逻 辑, 本实施例主要是提供一种在第二解码方式中、对按照实施例四编码方法获 得的第二索引 12进行解码的计算方法, 即提供与实施例四中 12的计算方法对应 的在解码端的逆计算方法。
N-1
对于在编码时, 按照 12 = CS-CS_P(0) +∑[C — n p(n1H - C —— np(n)]得到的 12,
n=l
在解码时釆用:
①从 12中逐个减去 C
Figure imgf000023_0001
R(yO) = I2- CS:1 1 - .·· - ¾; 直到 12的余值 R(y0)由正数变为负数, 其中, M为轨道上的位置总数, N为有脉 冲位置的数目, y0e[l, M-N+ 1], "C"表示求组合数, 记录轨道上第 1个有 脉冲位置的位置序号 p(0) = yO- 1;
②若 N>1, 则继续从 R[p(0)]中逐个减去 C —2 p(Q)— 1 CS:2 p(0)-yi , 直到 R[p(0)]的余值 Rl(xl)由正数变为负数, 记录轨道上第 2个有脉冲位置的位置序 号 p(l) = yl _ l ;
③以此类推, 从 R(n - l)[p(n - 1)]中逐个减去 C — )_ ρ i , . . . ,
CM-np(0)-...-P(n-i)-yn ' 直到 R(n - 1)[ρ(η - 1)]的余值 Rn(yn)由正数变为负数, 其中, n<N - 1 , 记录轨道上第 n + 1个有脉冲位置的位置序号 p(n) = yn - 1。
④解码 12完成, 获得 P(N) = {p(0), ρ(1), ... , ρ(Ν - 1)}。
实施例十一提供了一种解码方法,本实施例提供的解码方法对按照实施例 五编码方法获得的编码索引进行解码, 解码过程为编码过程的反过程, 如图 12 所示, 包括:
Fl、接收编码索引 Index(^V), 从 Index(^V)中提取出第一索引 II , 按照 II确定 脉冲位置的数目 pos— num。
步骤 F1的描述可以参照实施例九的步骤 E41的描述。
F2、 从编码索引 Index(^V)中提取出第二、 三索引 12、 13。
步骤 F2的描述可以参照实施例九的步骤 E42的描述。
F3、 若编码的是带符号脉冲, 则还需要从 IndexO ^中提取出与各个脉冲位 置对应的符号索引 s(n)。
步骤 F3的描述可以参照实施例九的步骤 E43的描述。
F4、 按照第二索引 12确定, 在 pos— num = N下, 脉冲位置在轨道上的分布 P(N)。
步骤 F4的描述可以参照实施例九的步骤 E44的描述。
F5、 按照第三索引 13确定各个脉冲位置上的脉冲数目 SU(N)。 解码 13的原 则与 12类似。 步骤 F5的描述可以参照实施例九的步骤 E45的描述。
F6、 按照脉冲位置在轨道上的分布 P(N)和各个脉冲位置上的脉冲数目 SU(N), 重建轨道上的脉冲序列。
步骤 F6的描述可以参照实施例九的步骤 E46的描述。
实施例十二提供了一种解码方法,本实施例釆用与实施例十一相同的解码 逻辑, 本实施例主要是提供一种对按照实施例六编码方法获得的第二索引 12 , 进行解码的计算方法, 即提供实施例六中 12的计算方法的在解码方的逆计算方 法。 具体描述可以参见实施例四, 这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤 是可以通过软件、硬件、 或硬件以及软件来完成。 本发明的实施例还可以包括 一种计算机刻度存储介质,该计算机刻度存储介质用于承载或存储计算机可读 或可执行的指令, 或用于存储数据指令。 所述的程序可以存储于一计算机可读 取存储介质中, 所述的存储介质, 如: ROM/RAM、 磁碟、 光盘等。 存储于该 存储介质中的指令形成的程序在执行时,可以包括本发明任一方法实施例中的 部分或者全部步骤。 下面对本发明实施例的编解码器进行详细说明。
一种编码器, 可以包括: 分布信息获得单元, 用于获得在轨道上需要编码 的所有脉冲在轨道上的分布信息; 分布标识确定单元, 用于根据所述分布信息 获得单元获得的分布信息,确定用于标识所述分布信息的分布标识; 编码索引 生成单元, 用于生成包括所述分布标识确定单元确定的分布标识的编码索引。
所述分布信息获得单元获得的分布信息可以包括脉冲的位置在轨道上的 分布情况的信息。
所述分布标识确定单元可以包括: 对比单元, 用于将所述分布信息与脉冲 的位置在轨道上全部可能的分布情况的信息进行对比; 获得单元, 用于获得所 述对比单元对比的对应于所述分布信息的分布标识, 其中,每种可能的分布情 况的信息对应一个分布标识。
所述分布信息可以包括: 脉冲位置的数目、脉冲位置在轨道上的分布情况 和各个脉冲位置上的脉冲数目。
所述分布标识可以包括第一索引、第二索引及第三索引的信息, 所述第一 索引用于标识在脉冲位置的数目相同的情况下、脉冲位置在轨道上全部可能的 分布情况的信息,所述第二索引用于标识在所述第一索引对应的全部可能的分 布情况中、 与当前脉冲位置的分布对应的分布情况, 所述第三索引用于标识各 个脉冲位置上的脉冲数目的信息。 所述分布标识确定单元可以包括: 第一确定单元, 用于按照脉冲位置的数 目确定第一索引; 第二确定单元, 用于按照脉冲位置在轨道上的分布确定第二 索引; 第三确定单元, 用于按照各个脉冲位置上的脉冲数目确定第三索引。
所述编码器还可以包括: 排列单元, 用于在所述对比单元将所述分布信息 与脉冲的位置在轨道上全部可能的分布情况的信息进行对比之前,或者在所述 第二确定单元按照脉冲位置在轨道上的分布确定第二索引之前,按照设定的顺 序, 对当前脉冲数目下, 脉冲的位置在轨道上全部可能的分布情况进行排列, 以排列的序号作为指示相应分布情况的分布标识。
所述分布信息获得单元获得在轨道上需要编码的所有脉冲在轨道上的分 布信息时,还可以获得用于标识脉冲正负特性的脉冲符号信息; 所述分布标识 确定单元确定分布标识时, 还可以确定与脉冲符号信息对应的脉冲符号标识; 冲符号标识。
一种编码器, 可以包括: 脉冲总数确定单元, 用于确定轨道上需要编码的 脉冲总数; 编码方式选择单元, 用于根据所述脉冲总数确定单元确定的脉冲总 数进行编码方式选择; 编码单元, 用于按照所述编码方式选择单元选择的编码 方式进行编码。
所述编码单元可以包括: 分布信息获得单元, 用于获得在轨道上需要编码 的所有脉冲在轨道上的分布信息; 分布标识确定单元, 用于根据所述分布信息 获得单元获得的分布信息,确定用于标识所述分布信息的分布标识; 编码索引 生成单元, 用于生成包括所述分布标识确定单元确定的分布标识的编码索引。
所述分布信息可以包括: 脉冲的位置在轨道上的分布情况的信息。
所述分布标识确定单元可以包括: 对比单元, 用于将所述分布信息与脉冲 的位置在轨道上全部可能的分布情况的信息进行对比; 获得单元, 用于获得所 述对比单元对比的对应于所述分布信息的分布标识, 其中,每种可能的分布情 况的信息对应一个分布标识。
所述编码器还可以包括: 排列单元, 用于在所述对比单元将所述分布信息 与脉冲的位置在轨道上全部可能的分布情况的信息进行对比之前,按照设定的 顺序,对当前脉冲数目下,脉冲的位置在轨道上全部可能的分布情况进行排列, 以排列的序号作为指示相应分布情况的分布标识。
所述分布信息可以包括: 脉冲位置的数目、脉冲位置在轨道上的分布情况 和各个脉冲位置上的脉冲数目。
所述分布标识可以包括第一索引、第二索引及第三索引的信息, 所述第一 索引用于标识在脉冲位置的数目相同的情况下、脉冲位置在轨道上全部可能的 分布情况的信息,所述第二索引用于标识在所述第一索引对应的全部可能的分 布情况中、 与当前脉冲位置的分布对应的分布情况, 所述第三索引用于标识各 个脉冲位置上的脉冲数目的信息。
所述分布标识确定单元可以包括: 第一确定单元, 用于按照脉冲位置的数 目确定第一索引; 第二确定单元, 用于按照脉冲位置在轨道上的分布确定第二 索引; 第三确定单元, 用于按照各个脉冲位置上的脉冲数目确定第三索引。
所述编码器还可以包括: 排列单元, 用于在所述第二确定单元按照脉冲位 置在轨道上的分布确定第二索引之前, 按照设定的顺序, 对当前脉冲数目下, 脉冲的位置在轨道上全部可能的分布情况进行排列,以排列的序号作为指示相 应分布情况的分布标识。
所述分布信息获得单元获得在轨道上需要编码的所有脉冲在轨道上的分 布信息时,还可以获得用于标识脉冲正负特性的脉冲符号信息; 所述分布标识 确定单元确定分布标识时, 还可以确定与脉冲符号信息对应的脉冲符号标识; 所述编码索引生成的编码索引还可以包括与各个脉冲对应的脉冲符号标识。
一种解码器, 可以包括: 编码索引接收单元, 用于接收编码索引; 分布标 识提取单元, 用于从所述编码索引接收单元接收的编码索引中提取出分布标 识, 所述分布标识用于标识在轨道上需要编码的所有脉冲在轨道上的分布信 息; 分布信息确定单元, 用于按照所述分布标识提取单元提取的分布标识, 确 定在轨道上需要编码的所有脉冲在轨道上的分布信息; 脉冲序列重建单元, 用 于按照所述分布信息确定单元确定的分布信息重建轨道上的脉冲序列。
所述分布信息可以包括脉冲的位置在轨道上的分布情况的信息。
所述分布信息确定单元可以包括: 对比单元, 用于将所述分布标识与 脉冲的位置在轨道上全部可能的分布情况对应的分布标识进行对比; 获得单 种分布标识对应一种可能的分布情况的信息。
所述分布标识可以包括第一索引、第二索引及第三索引的信息, 所述第一 索引用于标识在脉冲位置的数目相同的情况下、脉冲位置在轨道上全部可能的 分布情况的信息,所述第二索引用于标识在所述第一索引对应的全部可能的分 布情况中、 与当前脉冲位置的分布对应的分布情况, 所述第三索引用于标识各 个脉冲位置上的脉冲数目的信息。
所述分布信息可以包括: 脉冲位置的数目、脉冲位置在轨道上的分布情况 和各个脉冲位置上的脉冲数目。
所述分布标识提取单元可以包括: 第一提取单元,从所述编码索引中提取 出第一索引; 第二提取单元, 从所述编码索引中提取出第二、 三索引; 所述分 布信息确定单元包括:第一确定单元,用于按照第一索引确定脉冲位置的数目; 第二确定单元,按照第二索引确定,在所述第一索引对应的脉冲位置的数目下, 脉冲位置在轨道上的分布; 第三确定单元,按照第三索引确定各个脉冲位置上 的脉冲数目。
所述分布标识提取单元从所述编码索引中提取出分布标识时,还可以从所 述编码索引中提取出用于标识脉冲正负特性的脉冲符号标识;所述分布信息确 定单元按照所述分布标识确定所述分布信息时,还可以按照脉冲符号标识确定 对应的脉冲符号信息; 脉冲序列重建单元在重建轨道上的脉冲序列时,还可以 按照所述脉冲符号信息, 恢复脉冲的正或负的特性。
一种解码器, 可以包括: 编码索引接收单元, 用于接收编码索引; 脉冲总 数确定单元,用于确定所述编码索引接收单元接收的编码索引在轨道上已编码 的脉冲总数; 解码方式选择单元, 用于根据所述脉冲总数确定单元确定的脉冲 总数进行解码方式选择; 解码单元, 用于按照所述解码方式选择单元选择的解 码方式进行解码。
所述解码单元可以包括: 分布标识提取单元, 用于从所述编码索引接收单 元接收的编码索引中提取出分布标识,所述分布标识用于标识在轨道上需要编 码的所有脉冲在轨道上的分布信息; 分布信息确定单元, 用于按照所述分布标 识提取单元提取的分布标识,确定在轨道上需要编码的所有脉冲在轨道上的分 布信息; 脉冲序列重建单元, 用于按照所述分布信息确定单元确定的分布信息 重建轨道上的脉冲序列。
所述分布信息可以包括脉冲的位置在轨道上的分布情况的信息。
所述分布信息确定单元可以包括: 对比单元, 用于将所述分布标识与脉冲 的位置在轨道上全部可能的分布情况对应的分布标识进行对比; 获得单元, 用 于获得所述对比单元对比的对应于所述分布标识的分布信息, 其中,每种分布 标识对应一种可能的分布情况的信息。
所述分布标识可以包括第一索引、第二索引及第三索引的信息, 所述第一 索引用于标识在脉冲位置的数目相同的情况下、脉冲位置在轨道上全部可能的 分布情况的信息,所述第二索引用于标识在所述第一索引对应的全部可能的分 布情况中、 与当前脉冲位置的分布对应的分布情况, 所述第三索引用于标识各 个脉冲位置上的脉冲数目的信息。
所述分布信息可以包括: 脉冲位置的数目、脉冲位置在轨道上的分布情况 和各个脉冲位置上的脉冲数目。
所述分布标识提取单元可以包括: 第一提取单元,从所述编码索引中提取 出第一索引; 第二提取单元, 从所述编码索引中提取出第二、 三索引;
所述分布信息确定单元可以包括: 第一确定单元, 用于按照第一索引确定 脉冲位置的数目; 第二确定单元, 按照第二索引确定, 在所述第一索引对应的 脉冲位置的数目下, 脉冲位置在轨道上的分布; 第三确定单元, 按照第三索引 确定各个脉冲位置上的脉冲数目。
所述分布标识提取单元从所述编码索引中提取出分布标识时,还可以从所 述编码索引中提取出用于标识脉冲正负特性的脉冲符号标识;所述分布信息确 定单元按照所述分布标识确定所述分布信息时,还可以按照脉冲符号标识确定 对应的脉冲符号信息; 脉冲序列重建单元在重建轨道上的脉冲序列时,还可以 按照所述脉冲符号信息, 恢复脉冲的正或负的特性。 下面结合附图, 对本发明实施例的编解码器进行详细说明。 实施例十三提供了一种编码器 10, 如图 13所示, 包括:
第一统计单元 11 , 用于对轨道上需要编码的脉冲按照位置进行统计, 获得 各个脉冲的位置在轨道上的分布信息 Q(N)。在对带符号脉冲进行统计时,第一 的符号索引的信息 SS(N), 所述符号索引指示与该索引对应的脉冲的脉冲符号 信息;
分布索引单元 12, 用于按照第一统计单元 11获得的 Q(N)确定分布索引 14, 14按照如下方式进行计算: 按照设定的顺序, 对当前脉冲数目下, 各个脉冲的 位置在轨道上全部可能的分布情况进行排列,以排列的序号作为指示相应分布 情况的 14;
索引生成单元 13 , 用于生成编码索引 Index(N), Index(N)包括分布索引单 元 12确定的分布索引 14的信息。 在编码带符号脉冲时, 索引生成单元 13还将与 各个脉冲对应的符号索引的信息 SS(N)组合到 Index(N)中。
本实施例编码装置可用于实施例一和二提供的编码方法中。 实施例十四提供了一种编码器 20, 如图 14所示, 包括: 第一编码模块 21、 第二编码模块 22和编码选择单元 23;
编码选择单元 23 , 用于确定同一轨道上需要编码的脉冲总数 N, 根据 N进 行编码方式选择。 本实施例中可选编码方式包括第一编码方式和第二编码方 式。根据所述编码方式选择的结果,在确定选择第一编码方式之后触发第一编 码模块 21开始执行编码, 在确定选择第二编码方式之后触发第二编码模块 22 开始执行编码。
第一编码模块 21包括第一统计单元 211、 分布索引单元 212、 索引生成单元 213 , 与实施例十三中的同名单元逻辑结构相同。
第二编码模块 22包括:
第二统计单元 221 , 用于对轨道上需要编码的脉冲按照位置进行统计, 输 出有脉冲位置的数目 N、 有脉冲位置在轨道上的分布 P(N)和各个有脉冲位置上 的脉冲数目 SU(N)。 在对带符号脉冲进行统计时, 第二统计单元 221还按照各 个有脉冲位置的脉冲符号的正或负的特性, 输出相应的脉冲符号信息 S(N); 索引计算单元 222, 包括:
第一索引单元 2221 , 用于按照有脉冲位置的数目 N输出第一索引 II , II对 应于相同有脉冲位置的数目下, 有脉冲位置在轨道上全部可能的分布情况; 第二索引单元 2222,用于按照有脉冲位置在轨道上的分布 P(N)输出第二索 引 12, 12从所述第一索引对应的全部可能的分布情况中, 指示与当前有脉冲位 置的分布对应的分布情况;
第三索引单元 2223 , 用于按照各个有脉冲位置上的脉冲数目 SU(N)输出第 三索引 13;
索引组合单元 223 , 用于组合所述第一、 二、 三索引的信息生成编码索引。 在编码带符号脉冲时, 索引组合单元 223还将与各个有脉冲位置对应的符号索 引的信息 S(N)组合到所述编码索引中,所述符号索引指示与该索引对应的有脉 冲位置的脉冲符号信息。
在按照实施例三中第二编码方式提供的编码索引结构进行编码时,索引组 合单元 223可釆用如下结构, 包括:
第一组合单元 2231 , 用于输出组合为 123的第二、 三索引,
123 = I3 W(N) + I2;
其中, W(N)为第一索引对应的有脉冲位置的数目 N下,有脉冲位置在轨道上全 部可能的分布情况的总数。
第二组合单元 2232,用于将第一组合单元 2231的输出与其他索引的信息叠 加, 输出编码索引 Index(N)。
本实施例编码装置可用于实施例三和四提供的编码方法中。 实施例十五提供了一种编码器 30, 如图 15所示, 包括:
脉冲统计单元 31 , 用于对轨道上需要编码的脉冲按照位置进行统计,输出 有脉冲位置的数目 N、 有脉冲位置在轨道上的分布 P(N)和各个有脉冲位置上的 脉冲数目 SU(N)。 在对带符号脉冲进行统计时, 脉冲统计单元 31还按照各个有 脉冲位置的脉冲符号的正或负的特性, 输出相应的脉冲符号信息 S(N); 索引计算单元 32, 包括:
第一索引单元 321 , 用于按照有脉冲位置的数目 N输出第一索引 II , II对应 于相同有脉冲位置的数目下, 有脉冲位置在轨道上全部可能的分布情况; 第二索引单元 322, 用于按照有脉冲位置在轨道上的分布 P(N)输出第二索 引 12, 12从所述第一索引对应的全部可能的分布情况中, 指示与当前有脉冲位 置的分布对应的分布情况;
第三索引单元 323 , 用于按照各个有脉冲位置上的脉冲数目 SU(N)输出第 三索引 13;
索引组合单元 33 , 用于组合所述第一、 二、 三索引的信息生成编码索引; 在编码带符号脉冲时,索引组合单元 13还将与各个有脉冲位置对应的符号索引 的信息 S(N)组合到所述编码索引中,所述符号索引指示与该索引对应的有脉冲 位置的脉冲符号信息。 用如下结构, 包括:
第一组合单元 331 , 用于输出组合为 123的第二、 三索引,
123 = 13 W(N) + I2;
其中, W(N)为第一索引对应的有脉冲位置的数目 N下,有脉冲位置在轨道上全 部可能的分布情况的总数。
第二组合单元 332 , 用于将第一组合单元 331的输出与其他索引的信息叠 加, 输出编码索引 Index(5V)。
本实施例编码装置可用于实施例五和六提供的编码方法中。 实施例十六提供了一种解码器 40, 如图 16所示, 包括:
接收单元 41 , 用于接收编码索引 Index(N);
分布提取单元 42, 用于从接收单元 41接收的编码索引 Index(N)中提取出分 布索引 14; 冲的位置在轨道上的分布 Q(N); 分布重建单元 44,用于按照分布解码单元 43确定的各个脉冲的位置在轨道 上的分布 Q(N)重建轨道上的脉冲序列。
在解码带符号脉冲时, 解码器还需要包括:
符号提取单元 45, 用于按照同一轨道上编码的脉冲总数 N, 从接收单元 31 接收的编码索引 Index(N)中提取出与各个脉冲对应的符号索引 SS(N), 所述符 号索引指示与该索引对应的脉冲的脉冲符号信息;
此时, 分布重建单元 44还按照符号提取单元 45提取出的 SS(N)指示的脉冲 符号信息, 恢复各个脉冲的脉冲符号的正或负的特性。
本实施例解码装置可用于实施例七和八提供的解码方法中。 实施例十七提供了一种解码器 50, 如图 17所示, 包括: 第一解码模块 51、 第二解码模块 52和解码选择单元 53;
解码选择单元 53 , 用于确定接收的编码索引 Index(N)在同一轨道上编码的 脉冲总数 N, 根据 N进行解码方式选择。 本实施例中可选解码方式包括第一解 码方式和第二解码方式。根据所述解码方式选择的结果, 在确定选择第一解码 方式之后触发第一解码模块 51开始执行解码,在确定选择第二解码方式之后触 发第二解码模块 52开始执行解码。
第一解码模块 51包括分布提取单元 512、分布解码单元 513、分布重建单元 514、 符号提取单元 515 , 与实施例十六中的同名单元逻辑结构相同。
第二解码模块 52包括:
第一提取单元 521 , 用于接收编码索引 Index(N), 从 Index(N)中提取出第一 索引 II , 按照 II确定有脉冲位置的数目 N;
第二提取单元 522,用于从编码索引 Index(N)中提取出第二、三索引 12、 13; 在对实施例三中第二编码方式提供的编码索引结构进行解码时,第二提取 单元 522可釆用如下结构, 包括:
分离子单元 5221 , 用于从编码索引中提取出第二、 三索引的组合值 123; 解析子单元 5222, 用于按照如下方式分离输出第二、 三索引 12、 13 , 12 = 123 % W(N) , 13 = Int[I23 / W(N)]; 其中 W(N)为第一索引对应的有脉冲位置的数目 N下,有脉冲位置在轨道上全部 可能的分布情况的总数, %表示取余数, Int表示取整。
第一解码单元 523 , 用于按照第二索引 12确定, 在 II对应的有脉冲位置的 数目 N下, 有脉冲位置在轨道上的分布 P(N);
第二解码单元 524, 用于按照第三索引 13确定各个有脉冲位置上的脉冲数 目 SU(N);
脉冲重建单元 525, 用于按照有脉冲位置在轨道上的分布 P(N)和各个有脉 冲位置上的脉冲数目 SU(N), 重建轨道上的脉冲序列。
在解码带符号脉冲时, 解码器还需要包括:
第三提取单元 526, 用于按照有脉冲位置的数目 N, 从 Index(N)中提取出与 各个有脉冲位置对应的符号索引 s(n), 所述符号索引指示与该索引对应的有脉 冲位置的脉冲符号信息;
此时, 脉冲重建单元 525可釆用如下结构, 包括:
第一重建单元 5251 ,用于按照有脉冲位置在轨道上的分布 P(N)和与各个有 脉冲位置对应的符号索引 s(n), 恢复各个有脉冲位置的脉冲符号的正或负的特 性;
第二重建单元 5252,用于按照第一重建单元 5251输出的各个带符号的有脉 冲位置的分布, 和各个有脉冲位置上的脉冲数目 SU(N), 重建轨道上的脉冲序 列。
本实施例解码装置可用于实施例九和十提供的解码方法中。 实施例十八提供了一种解码器 60, 如图 18所示, 包括:
第一提取单元 61 , 用于接收编码索引 Index(^V), 从 Index(^V)中提取出第一 索引 II , 按照 II确定有脉冲位置的数目 N;
第二提取单元 62, 用于从编码索引 Index(^V)中提取出第二、 三索引 12、 13; 在对实施例五中提供的编码索引结构进行解码时,第二提取单元 62可釆用 如下结构, 包括:
分离子单元 621 , 用于从编码索引中提取出第二、 三索引的组合值 123; 解析子单元 622, 用于按照如下方式分离输出第二、 三索引 12、 13 ,
12 = 123 % W(N) , 13 = Int[I23 / W(N)];
其中, W(N)为第一索引对应的有脉冲位置的数目 N下,有脉冲位置在轨道上全 部可能的分布情况的总数, %表示取余数, Int表示取整。
第一解码单元 63 , 用于按照第二索引 12确定, 在 II对应的有脉冲位置的数 目 N下, 有脉冲位置在轨道上的分布 P(N);
第二解码单元 64,用于按照第三索引 13确定各个有脉冲位置上的脉冲数目 SU(N);
脉冲重建单元 65,用于按照有脉冲位置在轨道上的分布 P(N)和各个有脉冲 位置上的脉冲数目 SU(N), 重建轨道上的脉冲序列。
在解码带符号脉冲时, 解码器还需要包括:
第三提取单元 66, 用于按照有脉冲位置的数目 N, 从 IndexO ^中提取出与 各个有脉冲位置对应的符号索引 s(n), 所述符号索引指示与该索引对应的有脉 冲位置的脉冲符号信息;
此时, 脉冲重建单元 65可釆用如下结构, 包括:
第一重建单元 651 , 用于按照有脉冲位置在轨道上的分布 P(N)和与各个有 脉冲位置对应的符号索引 s(n), 恢复各个有脉冲位置的脉冲符号的正或负的特 性;
第二重建单元 652,用于按照第一重建单元 651输出的各个带符号的有脉冲 位置的分布,和各个有脉冲位置上的脉冲数目 SU(N),重建轨道上的脉冲序列。
本实施例解码装置可用于实施例十一和十二提供的解码方法中。 为更好的理解上述实施例, 以下给出具体的编解码实例, 编码釆用实施例 三编码方法(第一编码方式釆用实施例二计算方法, 第二编码方式釆用实施例 四计算方法), 解码相应的釆用实施例九解码方法(第一解码方式釆用实施例 八计算方法, 第二解码方式釆用实施例十计算方法), 4艮设第一编 /解码方式的 选择条件为 N = 3、 4、 5 , 轨道上总位置数目 M = 16。
例一、 对脉冲搜索结果进行编解码。 A、 编码
① N = 6, 确定釆用第二编码方式进行编码, Index(N)需要 21个比特
②统计 N、 P(N)、 SU(N)、 S(N)
N= 1;
P(l) = {p(0)} = {2};
SU(1)= {su(0)} = {6};
S(l) = {s(0)} = {0};
③编码 II、 12、 13、 123
按照 N=l, 由图 5可知, II =0xlF0000;
按照实施例四计算方法, 12 = 2;
Class(l) = 1, 13 = 0; 因 J¾I23 = I2 = 2;
④生成 Index(N)
Index(N) = II + 123 χ2Ν + s(0)x2N"1 + s(l)x2N"2 + ... + s(N - 1)
= OxlFOOOO + 2x2 + 0
= 0xlF0004
B、 解码
①收到 Index(N) = 0xlF0004, 根据编码长度确定 N = 6, 确定釆用第二解码 方式进行解码;
②提取 II、 s(n)、 123
按照 Index(N) = 0xlF0004 , 由图 5可知, II = OxlFOOOO , N = 1; 按照 N=l, 分离 Index(N)末尾 1个比特, s(0) = 0;
分离出 123, I23 = [Index(N)»l]-Il=2; "»k,,表示左移 k位;
③解码 123
按照 N=l, W(l)= Cj6 =16;
I3 = Int[I23/W(l)] = 0, 对应 SU(1)唯一的一种情况: SU(1)={6}; 12 = 123 %W(1) = 2; 按照实施例八计算方法, P(l) = {p(0)} = {2};
④恢复脉冲序列
由 P(l)={2}、 SU(1)={6}、 s(0) = 0知, 在位置 "2"上有" 6,,个"正,,脉冲。 解码过程完毕。 例二、 对脉冲搜索结果进行编解码。
A、 编码
① N = 5, 确定釆用第一编码方式进行编码, Index(N)需要 19个比特 ②统计 Q(N)、 SS(N)
Q(5)= {q(0), q(l), q(2), q(3), q(4)} = {l, 1, 4, 6, 6};
SS(5)= {ss(0), ss(l), ss(2), ss(3), ss(4)} = {0, 0, 0, 0, 0};
③编码 14
按照 实施例二计算方法 , 14 = C^o-C^ + + ^IS-I - ^-18-4 + ^17-4 - Ci7_6 + c}6_6 - c}6_6 = 4215;
④生成 Index(N)
Index(5) = Ι4χ25 + ss(0)x24 + ss(l)x24 + ... + ss(4)
Figure imgf000037_0001
= 0x20EE0
B、 解码
①收到 Index(N) = 0x20EE0 , 根据编码长度确定 N = 5 , 确定釆用第一解码 方式进行解码;
②提取 Q(N)、 SS(N)
按照 N = 5, 分离 Index(N)末尾 5个比特, ss(0) ~ ss(4) = 0;
分离出 14, 14 = [Index(N) » 5] = 4215;
③解码 14
按照实施例八计算方法, Q(5)={1, 1, 4, 6, 6};
④恢复脉冲序列
由 Q(5) = {1, 1, 4, 6, 6}、 ss(0)~ss(4) = 0知, 在位置 "1"上有" 2,,个"正" 脉冲, 在位置 "4,,上有 "Γ,个"正"脉冲, 在位置 "6"上有" 2,,个"正"脉冲。 解码过 程完毕。
通过上述实施例可以看出,本发明实施例釆用对需要进行编码的脉冲按照 脉冲的位置在轨道上的分布进行排序并编码的方法, 能够有效降低计算复杂 度, 同时由于按照排序进行编码, 不同的脉冲分布情况对应连续的编码, 能够 尽可能的降低编码的冗余度, 节省编码比特。 进一步的, 综合釆用本发明实施 例中提供的第一和第二编 /解码方式,使两种编码方式在不同 N值下的优势相互 补充, 效果愈加明显。 以下再给出具体的编解码实例, 编码釆用实施例二编码方法,解码相应的 釆用实施例四解码方法, 假设轨道上总位置数目 M = 16。
例一、 对脉冲搜索结果进行编解码。
A、 编码
① W"=6, Index(^V)需要 21个比特
②统计 N、 P(N)、 SU(N)、 S(N)
N= 1;
P(l) = {p(0)} = {2};
SU(1)= {su(0)} = {6};
S(l) = {s(0)} = {0};
③编码 II、 12、 13、 123
按照 N=l, 由图 5可知, II =0xlF0000;
按照实施例六计算方法, 12 = 2;
Class(l) = 1, 13 = 0; 因此, 123=12 = 2;
④生成 Index(^V)
Index(^V) = II + 123 χ 2N + s(0) 2N + s(l) x 2N"2 + ... + s(N - 1)
= OxlFOOOO + 2 2 + 0
= 0xlF0004
B、 解码
①收到 Index(» = 0xlF0004 , 才艮据编码长度确定 W"= 6;
②提取 II、 s(n)、 123
按照 Index(» = 0xlF0004, II = OxlFOOOO, N = 1 ; 按照 N=l, 分离 Index( ^末尾 1个比特, s(0) = 0;
分离出 123, 123 = [Index(^V) »1]-I1=2, "»k" 表示左移 k位;
③解码 123
按照 N=l, W(l)= Cj6 =16;
I3 = Int[I23/W(l)] = 0, 对应 SU(1)唯一的一种情况: SU(1)={6};
12 = 123 %W(1) = 2, 按照实施例十二的计算方法, P(l)= {p(0)} = {2};
④恢复脉冲序列
由 P(l)={2}、 SU(1)={6}、 s(0) = 0知, 在位置 "2" 上有 "6" 个 "正" 脉冲。 解码过程完毕。 例二、 对脉冲搜索结果进行编解码。
A、 编码
① W"=6, Index(»需要 21个比特
②统计 N、 P(N)、 SU(N)、 S(N)
N = 2;
P(2) = {p(0), p(l)} = {2, 4};
SU(2)= {su(0), su(l)} = {2, 4};
S(2) = {s(0), s(l)} = {0, 0};
③编码 II、 12、 13、 123
按照 N = 2, 由图 5可知, II =0xlE0000;
按照实施例六计算方法, 12 = 30;
Class(2) = 5, 假设 SU(2)的 5种可能情况按如下顺序排列: {{5, 1}, {4, 2}, {3, 3}, {2, 4}, {1, 5}}, 则 SU(2)={2, 4}为第 4种情况, 13 = 3; 因此 123 = 13 C2 l6 + 12 = 390;
④生成 Index(^V)
Index(^V) = II + 123 χ 2N + s(0) 2N + s(l) x 2N"2 + ... + s(N - 1)
= OxlEOOOO + 390 4 + 0 + 0
= 0xlE0618 B、 解码
①收到 Index(^V) = 0xlE0618, 根据编码长度确定 = 6;
②提取 II、 s(n)、 123
按照 Index(» = 0xlE0618, 由图 5可知, Il =0xlE0000, N = 2;
按照 N = 2, 分离 Index( ^末尾 2个比特, s(0) = 0, s(l) = 0;
分离出 123, 123 = [Index(^V) » 2] - II = 390;
③解码 123
按照 N = 2, W(2)= C2 l6 = 120;
13 = Int[I23 / W(2)] = 3,按照与编码方使用的同样的 SU(2)全部情形的排 列顺序, 对应第 4种情况: SU(2) = {2, 4};
12 = 123 %W(2) = 30; 按照实施例十二的计算方法, P(2) = {2, 4};
④恢复脉冲序列
由 P(2)= {2, 4}、 SU(2) = {2, 4}、 s(0) = 0、 s(l) = 0知, 在位置 "2" 上有 "2" 个 "正" 脉冲, 在位置 "4" 上有 "4" 个 "正" 脉冲。 解码过程完毕。
通过上述实施例可以看出,本发明实施例釆用对需要进行编码的脉冲按照 位置进行合并, 分别对有脉冲位置的数目、有脉冲位置在轨道上的分布和各个 有脉冲位置上的脉冲数目进行编码的方法。本发明实施例提供的编码方法对于 不同的编码脉冲数目可一致釆用, 避免了递归方式下编码索引冗余度的累加, 保证充分利用编码比特。 同时由于避免了对同一位置的多个脉冲进行分别编 码, 使得本发明实施例进行位置合并后编码的方法具有节省编码比特的优势, 并且随着轨道上编码脉冲数目的增加, 脉冲位置发生重叠的几率也随之增加, 本发明实施例方法的优势愈加明显。
以上对本发明所提供的编解码方法及编解码器进行了详细介绍,本发明实 说明只是用于帮助理解本发明的方法及其核心思想; 同时,对于本领域的一般 技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处, 综上所述, 本说明书内容不应理解为对本发明的限制。

Claims

权 利 要 求
1、 一种编码方法, 其特征在于, 包括:
获得在轨道上需要编码的脉冲在轨道上的分布信息;
才艮据所述分布信息, 确定用于标识所述分布信息的分布标识;
生成编码索引, 所述编码索引包括所述分布标识的信息。
2、 根据权利要求 1所述的编码方法, 其特征在于, 所述分布信息包括有脉 冲的位置在轨道上的分布情况的信息。
3、 根据权利要求 2所述的编码方法, 其特征在于, 根据所述分布信息, 确 定用于标识所述分布信息的分布标识具体包括:将所述分布信息与有脉冲的位 置在轨道上全部可能的分布情况的信息进行对比,获得对应于所述分布信息的 分布标识, 其中, 每种可能的分布情况的信息对应一个分布标识。
4、 根据权利要求 1所述的编码方法, 其特征在于, 所述分布信息包括: 脉 冲位置的数目、 脉冲位置在轨道上的分布情况和各个脉冲位置上的脉冲数目。
5、 根据权利要求 4所述的编码方法, 其特征在于, 所述分布标识包括第一 索引、第二索引及第三索引的信息, 所述第一索引用于标识在脉冲位置的数目 相同的情况下、脉冲位置在轨道上全部可能的分布情况的信息, 所述第二索引 用于标识在所述第一索引对应的全部可能的分布情况中、与当前脉冲位置的分 布对应的分布情况, 所述第三索引用于标识各个脉冲位置上的脉冲数目的信 息, 根据所述分布信息, 确定用于标识所述分布信息的分布标识具体包括: 按照脉冲位置的数目确定第一索引;
按照脉冲位置在轨道上的分布确定第二索引;
按照各个脉冲位置上的脉冲数目确定第三索引。
6、 根据权利要求 3或 5所述的编码方法, 其特征在于, 将所述分布信息与 脉冲的位置在轨道上全部可能的分布情况的信息进行对比之前,或者按照脉冲 位置在轨道上的分布确定第二索引之前, 还包括: 按照设定的顺序, 对当前脉 冲数目下, 脉冲的位置在轨道上全部可能的分布情况进行排列, 以排列的序号 作为指示相应分布情况的分布标识。
7、 根据权利要求 6所述的编码方法, 其特征在于, 所述按照设定的顺序, 对当前脉冲数目下, 各个脉冲的位置在轨道上全部可能的分布情况进行排列, 按照如下方式进行:
将各个脉冲的位置在轨道上的分布对应为一个 N维脉冲分布矢量 Q(N) ,
Q(N) = {q(0), q(l), q(N - 1)} ;
其中, N为同一轨道上需要编码的脉冲总数; q(h)表示第 h + 1个脉冲在轨道上 的位置序号, he [0, N - 1]; q(0)≤q(l)≤...≤q(N - 1), 或者 q(0)≥q(l)≥...≥q(N -
1);
依次比较脉冲分布矢量各个维度的大小,按照从小到大或者从大到小的顺 序对 N维下全部可能的脉冲分布矢量进行排序。
8、 根据权利要求 7所述的编码方法, 其特征在于, 对 N维脉冲分布矢量进 行排序, 标识排序后的 Q(N)的分布标识 14可以为:
「W ΰ r 5V-h !N~-h i .
丄 4 - ^ρρχ— LppT_q(0) 十 L L^PPT-h-q(h-l) - ^PPT-h-q(h) J '
h=l
其中, PPT = M + N - 1 , M为轨道上的位置总数, q(h) e [0, M] , "C"表示求组 合数, ∑表示求和。
9、 根据权利要求 1所述的编码方法, 其特征在于, 获得在轨道上需要编码 的所有脉冲在轨道上的分布信息之前,还包括: 对轨道上需要编码的脉冲按照 位置进行统计。
10、 根据权利要求 1所述的编码方法, 其特征在于, 获得在轨道上需要编 码的所有脉冲在轨道上的分布信息时,还获得用于标识脉冲正负特性的脉冲符 号信息; 确定分布标识时, 还确定与脉冲符号信息对应的脉冲符号标识; 所述 编码索引还包括与各个脉冲对应的脉冲符号标识。
11、 根据权利要求 5所述的编码方法, 其特征在于, 所述生成编码索引具 体包括: 以第一索引为起始值, 叠加其他索引的信息, 所述第一索引的一个取 值对应于编码索引的一个独立的取值范围。
12、 根据权利要求 11所述的编码方法, 其特征在于, 在以第一索引为起始 值, 叠加其他索引的信息时, 第二、 三索引组合为如下形式进行叠加:
I3xW(N) + I2; 其中, 12、 13分别为第二索引和第三索引; W(N)为第一索引对应的有脉冲位置 的数目 N下, 有脉冲位置在轨道上全部可能的分布情况的总数。
13、 根据权利要求 5所述的编码方法, 其特征在于: 所述脉冲位置的数目 与第一索引为一一对应的关系;
所述轨道上共有 16个位置, 需要编码的脉冲数目为 6 , 有脉冲位置的数目 分别为 1、 2、 3、 4、 5、 6时, 与其顺序——对应的第一索引以十六进制表示分 别为 1F0000、 1E0000、 1D0000、 180000、 000000、 100000; 或者,
所述轨道上共有 16个位置, 需要编码的脉冲数目为 5 , 有脉冲位置的数目 分别为 1、 2、 3、 4、 5时, 与其顺序——对应的第一索引以十六进制表示分别 为 78000、 70000、 60000、 40000、 00000; 或者,
所述轨道上共有 16个位置, 需要编码的脉冲数目为 4 , 有脉冲位置的数目 分别为1、2、3、4时,与其顺序——对应的第一索引以十六进制表示分别为 E000、 C000、 8000、 0000; 或者,
所述轨道上共有 16个位置, 需要编码的脉冲数目为 3 , 有脉冲位置的数目 分别为 1、 2、 3时, 与其顺序——对应的第一索引以十六进制表示分别为 1C00、 1800、 0000; 或者,
所述轨道上共有 16个位置, 需要编码的脉冲数目为 2 , 有脉冲位置的数目分别 为 1、 2时, 与其顺序——对应的第一索引以十六进制表示分别为 1E0、 000。
14、 根据权利要求 1所述的编码方法, 其特征在于, 获得在轨道上需要编 码的脉冲在轨道上的分布信息之前, 还包括:
确定轨道上需要编码的脉冲总数;
根据所述脉冲总数进行编码方式选择, 所述编码方式包括权利要求 1所述 的各个步骤。
15、 一种解码方法, 其特征在于, 包括:
接收编码索引;
从所述编码索引中获取分布标识,所述分布标识用于标识在轨道上需要编 码的脉冲在轨道上的分布信息;
按照所述分布标识确定在轨道上需要编码的所有脉冲在轨道上的分布信 息;
按照所述分布信息重建轨道上的脉冲序列。
16、 根据权利要求 15所述的解码方法, 其特征在于, 所述分布信息包括脉 冲的位置在轨道上的分布情况的信息。
17、 根据权利要求 16所述的解码方法, 其特征在于, 按照所述分布标识确 定在轨道上需要编码的所有脉冲在轨道上的分布信息具体包括:将所述分布标 识与脉冲的位置在轨道上全部可能的分布情况对应的分布标识进行对比,获得 对应于所述分布标识的分布信息, 其中,每种分布标识对应一种可能的分布情 况的信息。
18、 根据权利要求 15所述的解码方法, 其特征在于, 所述分布标识包括第 一索引、第二索引及第三索引的信息, 所述第一索引用于标识在脉冲位置的数 目相同的情况下、脉冲位置在轨道上全部可能的分布情况的信息, 所述第二索 引用于标识在所述第一索引对应的全部可能的分布情况中、与当前脉冲位置的 分布对应的分布情况,所述第三索引用于标识各个脉冲位置上的脉冲数目的信 息。
19、 根据权利要求 18所述的解码方法, 其特征在于, 从所述编码索引中提 取出分布标识具体包括: 从所述编码索引中提取出第一索引,从所述编码索引 中提取出第二、 三索引;
按照所述分布标识确定在轨道上需要编码的所有脉冲在轨道上的分布信 息具体包括: 按照第一索引确定脉冲位置的数目; 按照第二索引确定, 在所述 第一索引对应的脉冲位置的数目下,脉冲位置在轨道上的分布; 按照第三索引 确定各个脉冲位置上的脉冲数目。
20、 根据权利要求 19所述的解码方法, 其特征在于, 所述从编码索引中提 取出第二、 三索引具体包括: 从编码索引中提取出第二、 三索引的组合值 123 , 按照如下方式分离出第二、 三索引,
12 = 123 % W(N) , 13 = Int[I23 / W(N)];
其中, 12、 13分别为第二索引和第三索引, W(N)为第一索引对应的脉冲位置的 数目 N下, 脉冲位置在轨道上全部可能的分布情况的总数, %表示取余数, Int 表示取整。
21、 根据权利要求 19所述的解码方法, 其特征在于, 所述按照第二索引确 定脉冲位置在轨道上的分布具体包括: 从第二索引 12中逐个减去 至 ^的所有值, 直到 12的余值 R(y0)由正 数变为负数, 其中, M为轨道上的位置总数, N为脉冲位置的数目, yO E [l , M - N + 1] , "C"表示求组合数, 记录轨道上第 1个脉冲位置的位置序号 p(0) = y0 - 1 ; 若 N > 1 ,则继续从 R[p(0)]中逐个减去 2 i至 2 p(Q)γ1的所有值,直到
R[p(0)]的余值 Rl (y 1 )由正数变为负数, 记录轨道上第 2个脉冲位置的位置序号
P(i) = yi - i ; 以此类推, 从 R(n - l)[p(n - 1)]中逐个减去 C — ρ i 至
CS:np(0)-...-p(n-l)-yn的所有值, 直到 R(n - l)[p(n - 1)]的余值 Rn(yn)由正数变为负 数, 其中, n≤N - 1 , 记录轨道上第 n + 1个脉冲位置的位置序号 p(n) = yn - 1。
22、 根据权利要求 15所述的解码方法, 其特征在于,
从所述编码索引中提取出分布标识时,还从所述编码索引中提取出用于标 识脉冲正负特性的脉冲符号标识;
按照所述分布标识确定所述分布信息时,还按照脉冲符号标识确定对应的 脉冲符号信息;
在重建轨道上的脉冲序列时,还按照所述脉冲符号信息, 恢复脉冲的正或 负的特性。
23、 根据权利要求 19所述的解码方法, 其特征在于, 所述从编码索引中提 取出第一索引具体包括: 从设定的若干个独立的取值范围中, 判断所述编码索 引所属的取值范围 , 按照该所属的取值范围对应的起始值确定所述第一索引。
24、 根据权利要求 15所述的解码方法, 其特征在于, 接收编码索引之后、 从所述编码索引中获取分布标识之前, 还包括: 确定所述编码索引在轨道上已编码的脉冲总数;
根据所述脉冲总数进行解码方式选择, 其中, 选择的解码方式具体包括: 从所述编码索引中提取出分布标识,所述分布标识用于标识在轨道上需要 编码的所有脉冲在轨道上的分布信息;
按照所述分布标识确定在轨道上需要编码的所有脉冲在轨道上的分布信 息;
按照所述分布信息重建轨道上的脉冲序列。
25、 一种编码器, 其特征在于, 包括:
分布信息获得单元,用于获得在轨道上需要编码的所有脉冲在轨道上的分 布信息;
分布标识确定单元, 用于根据所述分布信息获得单元获得的分布信息, 确 定用于标识所述分布信息的分布标识;
编码索引生成单元,用于生成包括所述分布标识确定单元确定的分布标识 的编码索引。
26、 根据权利要求 25所述的编码器, 其特征在于, 所述分布信息获得单元 获得的分布信息包括有脉冲的位置在轨道上的分布情况的信息。
27、 根据权利要求 26所述的编码器, 其特征在于, 所述分布标识确定单元 包括:
对比单元,用于将所述分布信息与有脉冲的位置在轨道上全部可能的分布 情况的信息进行对比; 识, 其中, 每种可能的分布情况的信息对应一个分布标识。
28、 根据权利要求 25所述的编码器, 其特征在于, 所述分布信息包括: 脉 冲位置的数目、 脉冲位置在轨道上的分布情况和各个脉冲位置上的脉冲数目。
29、 根据权利要求 28所述的编码器, 其特征在于, 所述分布标识包括第一 索引、第二索引及第三索引的信息, 所述第一索引用于标识在脉冲位置的数目 相同的情况下、脉冲位置在轨道上全部可能的分布情况的信息, 所述第二索引 用于标识在所述第一索引对应的全部可能的分布情况中、与当前脉冲位置的分 布对应的分布情况, 所述第三索引用于标识各个脉冲位置上的脉冲数目的信 息, 所述分布标识确定单元包括:
第一确定单元, 用于按照脉冲位置的数目确定第一索引;
第二确定单元, 用于按照脉冲位置在轨道上的分布确定第二索引; 第三确定单元, 用于按照各个脉冲位置上的脉冲数目确定第三索引。
30、根据权利要求 27或 29所述的编码器,其特征在于,还包括:排列单元, 用于在所述对比单元将所述分布信息与脉冲的位置在轨道上全部可能的分布 情况的信息进行对比之前,或者在所述第二确定单元按照脉冲位置在轨道上的 分布确定第二索引之前, 按照设定的顺序, 对当前脉冲数目下, 脉冲的位置在 轨道上全部可能的分布情况进行排列,以排列的序号作为指示相应分布情况的 分布标识。
31、 根据权利要求 25所述的编码器, 其特征在于, 所述分布信息获得单元 获得在轨道上需要编码的所有脉冲在轨道上的分布信息时,还获得用于标识脉 冲正负特性的脉冲符号信息; 所述分布标识确定单元确定分布标识时,还确定 与脉冲符号信息对应的脉冲符号标识;所述编码索引生成单元生成的所述编码 索引还包括与各个脉冲对应的脉冲符号标识。
32、 根据权利要求 25所述的编码器, 其特征在于, 还包括:
脉冲总数确定单元,用于在分布信息获得单元获得在轨道上需要编码的脉 冲在轨道上的分布信息之前, 确定轨道上需要编码的脉冲总数;
编码方式选择单元,用于在分布信息获得单元获得在轨道上需要编码的脉 冲在轨道上的分布信息之前,根据所述脉冲总数确定单元确定的脉冲总数进行 编码方式选择,并触发分布信息获得单元获得在轨道上需要编码的脉冲在轨道 上的分布信息。
33、 一种解码器, 其特征在于, 包括:
编码索引接收单元, 用于接收编码索引;
分布标识提取单元,用于从所述编码索引接收单元接收的编码索引中提取 出分布标识,所述分布标识用于标识在轨道上需要编码的所有脉冲在轨道上的 分布信息;
分布信息确定单元, 用于按照所述分布标识提取单元提取的分布标识, 确 定在轨道上需要编码的所有脉冲在轨道上的分布信息;
脉冲序列重建单元,用于按照所述分布信息确定单元确定的分布信息重建 轨道上的脉冲序列。
34、 根据权利要求 33所述的解码器, 其特征在于, 所述分布信息包括脉冲 的位置在轨道上的分布情况的信息。
35、 根据权利要求 34所述的解码器, 其特征在于, 所述分布信息确定单元 包括:
对比单元,用于将所述分布标识与脉冲的位置在轨道上全部可能的分布情 况对应的分布标识进行对比; 息, 其中, 每种分布标识对应一种可能的分布情况的信息。
36、 根据权利要求 33所述的解码器, 其特征在于, 所述分布标识包括第一 索引、第二索引及第三索引的信息, 所述第一索引用于标识在脉冲位置的数目 相同的情况下、脉冲位置在轨道上全部可能的分布情况的信息, 所述第二索引 用于标识在所述第一索引对应的全部可能的分布情况中、与当前脉冲位置的分 布对应的分布情况, 所述第三索引用于标识各个脉冲位置上的脉冲数目的信 息, 所述分布标识提取单元包括: 第一提取单元, 从所述编码索引中提取出第 一索引; 第二提取单元, 从所述编码索引中提取出第二、 三索引;
所述分布信息确定单元包括: 第一确定单元, 用于按照第一索引确定脉冲 位置的数目; 第二确定单元, 按照第二索引确定, 在所述第一索引对应的脉冲 位置的数目下, 脉冲位置在轨道上的分布; 第三确定单元, 按照第三索引确定 各个脉冲位置上的脉冲数目。
37、 根据权利要求 33所述的解码器, 其特征在于,
所述分布标识提取单元从所述编码索引中提取出分布标识时,还从所述编 码索引中提取出用于标识脉冲正负特性的脉冲符号标识;
所述分布信息确定单元按照所述分布标识确定所述分布信息时,还按照脉 冲符号标识确定对应的脉冲符号信息;
脉冲序列重建单元在重建轨道上的脉冲序列时, 还按照所述脉冲符号信 息, 恢复脉冲的正或负的特性。
38、 根据权利要求 33所述的解码器, 其特征在于, 还包括:
脉冲总数确定单元, 用于在所述编码索引接收单元接收编码索引之后、 所 述分布标识提取单元从所述编码索引中获取分布标识之前,确定所述编码索引 接收单元接收的编码索引在轨道上已编码的脉冲总数;
解码方式选择单元,用于根据所述脉冲总数确定单元确定的脉冲总数进行 解码方式选择, 并触发所述分布标识提取单元从所述编码索引中获取分布标 识。
PCT/CN2008/070841 2007-04-29 2008-04-29 Procédé de codage et de décodage, codeur et décodeur WO2008134974A1 (fr)

Priority Applications (12)

Application Number Priority Date Filing Date Title
JP2010504431A JP5221642B2 (ja) 2007-04-29 2008-04-29 符号化法、復号化法、符号器、および復号器
ES08734199.6T ES2529292T3 (es) 2007-04-29 2008-04-29 Método de codificación y de decodificación
EP08734199.6A EP2157573B1 (en) 2007-04-29 2008-04-29 An encoding and decoding method
EP14184929.9A EP2827327B1 (en) 2007-04-29 2008-04-29 Method for Excitation Pulse Coding
US12/607,723 US8294602B2 (en) 2007-04-29 2009-10-28 Coding method, decoding method, coder and decoder
US13/622,207 US8988256B2 (en) 2007-04-29 2012-09-18 Coding method, decoding method, coder, and decoder
US14/617,585 US9225354B2 (en) 2007-04-29 2015-02-09 Coding method, decoding method, coder, and decoder
US14/974,171 US9444491B2 (en) 2007-04-29 2015-12-18 Coding method, decoding method, coder, and decoder
US15/228,661 US9912350B2 (en) 2007-04-29 2016-08-04 Coding method, decoding method, coder, and decoder
US15/880,300 US10153780B2 (en) 2007-04-29 2018-01-25 Coding method, decoding method, coder, and decoder
US16/184,240 US10425102B2 (en) 2007-04-29 2018-11-08 Coding method, decoding method, coder, and decoder
US16/568,144 US10666287B2 (en) 2007-04-29 2019-09-11 Coding method, decoding method, coder, and decoder

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
CN200710103023.5 2007-04-29
CN2007101030235A CN101295506B (zh) 2007-04-29 2007-04-29 脉冲编解码方法及脉冲编解码器
CN200710153952.7 2007-09-15
CN2007101539527A CN101388210B (zh) 2007-09-15 2007-09-15 编解码方法及编解码器

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US12/607,723 Continuation US8294602B2 (en) 2007-04-29 2009-10-28 Coding method, decoding method, coder and decoder

Publications (1)

Publication Number Publication Date
WO2008134974A1 true WO2008134974A1 (fr) 2008-11-13

Family

ID=39943133

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2008/070841 WO2008134974A1 (fr) 2007-04-29 2008-04-29 Procédé de codage et de décodage, codeur et décodeur

Country Status (7)

Country Link
US (8) US8294602B2 (zh)
EP (2) EP2827327B1 (zh)
JP (3) JP5221642B2 (zh)
DK (1) DK2827327T3 (zh)
ES (2) ES2817906T3 (zh)
PT (1) PT2827327T (zh)
WO (1) WO2008134974A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013533505A (ja) * 2010-06-24 2013-08-22 華為技術有限公司 パルス符号化方法、パルス符号化装置、パルス復号化方法及びパルス復号化装置
US10153780B2 (en) 2007-04-29 2018-12-11 Huawei Technologies Co.,Ltd. Coding method, decoding method, coder, and decoder

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101931414B (zh) 2009-06-19 2013-04-24 华为技术有限公司 脉冲编码方法及装置、脉冲解码方法及装置
CN102623012B (zh) 2011-01-26 2014-08-20 华为技术有限公司 矢量联合编解码方法及编解码器
KR101525185B1 (ko) 2011-02-14 2015-06-02 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 트랜지언트 검출 및 품질 결과를 사용하여 일부분의 오디오 신호를 코딩하기 위한 장치 및 방법
JP5625126B2 (ja) 2011-02-14 2014-11-12 フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン スペクトル領域ノイズ整形を使用する線形予測ベースコーディングスキーム
PL3239978T3 (pl) * 2011-02-14 2019-07-31 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Kodowanie i dekodowanie pozycji impulsów ścieżek sygnału audio
CA2827249C (en) 2011-02-14 2016-08-23 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Apparatus and method for processing a decoded audio signal in a spectral domain
FR2972320B1 (fr) * 2011-03-03 2013-10-18 Ass Pour La Rech Et Le Dev De Methodes Et Processus Ind Armines Codage de donnees sans perte pour communication bidirectionnelle dans une session collaborative d'echange de contenu multimedia
US9672838B2 (en) * 2014-08-15 2017-06-06 Google Technology Holdings LLC Method for coding pulse vectors using statistical properties
US10523244B2 (en) * 2016-08-11 2019-12-31 Zebware Ab Device and associated methodoloy for encoding and decoding of data for an erasure code
KR20210058152A (ko) * 2019-11-13 2021-05-24 엘지전자 주식회사 지능형 보안 디바이스를 제어하는 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11296195A (ja) * 1998-04-13 1999-10-29 Nippon Telegr & Teleph Corp <Ntt> 音響信号の符号化方法、復号方法、そのプログラム記録媒体、およびこれに用いる符号帳
JP2004120623A (ja) * 2002-09-27 2004-04-15 Ntt Docomo Inc 符号化装置、符号化方法、復号装置及び復号方法
US6847929B2 (en) * 2000-10-12 2005-01-25 Texas Instruments Incorporated Algebraic codebook system and method
US20060116872A1 (en) * 2004-11-26 2006-06-01 Kyung-Jin Byun Method for flexible bit rate code vector generation and wideband vocoder employing the same
CN1811917A (zh) * 2005-01-27 2006-08-02 广达电脑股份有限公司 语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法
CN1890713A (zh) * 2003-12-10 2007-01-03 法国电信 用于数字信号压缩编码的多脉冲字典的索引间的编码转换

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4631521A (en) 1984-12-31 1986-12-23 Wang Laboratories, Inc. Method and apparatus for differential run-length coding
JPH01296195A (ja) 1988-05-25 1989-11-29 Hitachi Ltd 原子炉の建屋
US5754976A (en) 1990-02-23 1998-05-19 Universite De Sherbrooke Algebraic codebook with signal-selected pulse amplitude/position combinations for fast coding of speech
JP3350385B2 (ja) 1997-01-24 2002-11-25 京セラ株式会社 符号生成方法および符号化方法
JP4008607B2 (ja) 1999-01-22 2007-11-14 株式会社東芝 音声符号化/復号化方法
US6236960B1 (en) 1999-08-06 2001-05-22 Motorola, Inc. Factorial packing method and apparatus for information coding
US7363219B2 (en) 2000-09-22 2008-04-22 Texas Instruments Incorporated Hybrid speech coding and system
CA2327041A1 (en) 2000-11-22 2002-05-22 Voiceage Corporation A method for indexing pulse positions and signs in algebraic codebooks for efficient coding of wideband signals
JP2002330075A (ja) 2001-05-07 2002-11-15 Matsushita Electric Ind Co Ltd サブバンドadpcm符号化方法、復号方法、サブバンドadpcm符号化装置、復号装置およびワイヤレスマイクロホン送信システム、受信システム
US6662154B2 (en) 2001-12-12 2003-12-09 Motorola, Inc. Method and system for information signal coding using combinatorial and huffman codes
KR100711280B1 (ko) 2002-10-11 2007-04-25 노키아 코포레이션 소스 제어되는 가변 비트율 광대역 음성 부호화 방법 및장치
KR100463419B1 (ko) 2002-11-11 2004-12-23 한국전자통신연구원 적은 복잡도를 가진 고정 코드북 검색방법 및 장치
JP3887598B2 (ja) 2002-11-14 2007-02-28 松下電器産業株式会社 確率的符号帳の音源の符号化方法及び復号化方法
JP2005062453A (ja) 2003-08-12 2005-03-10 Nippon Telegr & Teleph Corp <Ntt> 秘話送信装置、秘話受信装置、秘話プログラム
JP4887282B2 (ja) 2005-02-10 2012-02-29 パナソニック株式会社 音声符号化におけるパルス割当方法
ATE513290T1 (de) 2005-03-09 2011-07-15 Ericsson Telefon Ab L M Wenig komplexe codeerregte linearprädiktions- codierung
US20070124381A1 (en) * 2005-11-22 2007-05-31 Zurko Mary E Method and system for providing electronic pickup meetings
LV13528B (en) 2006-09-25 2007-03-20 Ervins Blumbergs Method and apparatus for continuous producing of metallic tifanium and titanium-bases alloys
CN101388210B (zh) 2007-09-15 2012-03-07 华为技术有限公司 编解码方法及编解码器
DK2827327T3 (da) 2007-04-29 2020-10-12 Huawei Tech Co Ltd Fremgangsmåde til excitationsimpulskodning
CN101295506B (zh) 2007-04-29 2011-11-16 华为技术有限公司 脉冲编解码方法及脉冲编解码器
CN100530357C (zh) 2007-07-11 2009-08-19 华为技术有限公司 固定码书搜索方法及搜索器
US8566106B2 (en) 2007-09-11 2013-10-22 Voiceage Corporation Method and device for fast algebraic codebook search in speech and audio coding
US20110026581A1 (en) 2007-10-16 2011-02-03 Nokia Corporation Scalable Coding with Partial Eror Protection
US8527265B2 (en) 2007-10-22 2013-09-03 Qualcomm Incorporated Low-complexity encoding/decoding of quantized MDCT spectrum in scalable speech and audio codecs
US8515767B2 (en) 2007-11-04 2013-08-20 Qualcomm Incorporated Technique for encoding/decoding of codebook indices for quantized MDCT spectrum in scalable speech and audio codecs
CN100578619C (zh) * 2007-11-05 2010-01-06 华为技术有限公司 编码方法和编码器
CN101483043A (zh) 2008-01-07 2009-07-15 中兴通讯股份有限公司 基于分类和排列组合的码本索引编码方法
US8386267B2 (en) 2008-03-19 2013-02-26 Panasonic Corporation Stereo signal encoding device, stereo signal decoding device and methods for them
CN101931414B (zh) 2009-06-19 2013-04-24 华为技术有限公司 脉冲编码方法及装置、脉冲解码方法及装置
US8280729B2 (en) 2010-01-22 2012-10-02 Research In Motion Limited System and method for encoding and decoding pulse indices

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11296195A (ja) * 1998-04-13 1999-10-29 Nippon Telegr & Teleph Corp <Ntt> 音響信号の符号化方法、復号方法、そのプログラム記録媒体、およびこれに用いる符号帳
US6847929B2 (en) * 2000-10-12 2005-01-25 Texas Instruments Incorporated Algebraic codebook system and method
JP2004120623A (ja) * 2002-09-27 2004-04-15 Ntt Docomo Inc 符号化装置、符号化方法、復号装置及び復号方法
CN1890713A (zh) * 2003-12-10 2007-01-03 法国电信 用于数字信号压缩编码的多脉冲字典的索引间的编码转换
US20060116872A1 (en) * 2004-11-26 2006-06-01 Kyung-Jin Byun Method for flexible bit rate code vector generation and wideband vocoder employing the same
CN1811917A (zh) * 2005-01-27 2006-08-02 广达电脑股份有限公司 语音编码器中搜寻语音讯号的编码向量的搜寻系统及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
MITTAL U. ET AL.: "Coding unconstrained fcb excitation using combinatortal and huffman codes", IEEE WORKSHOP PROCEEDINGS, 6 October 2002 (2002-10-06), pages 129 - 131, XP010647236
See also references of EP2157573A4

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10153780B2 (en) 2007-04-29 2018-12-11 Huawei Technologies Co.,Ltd. Coding method, decoding method, coder, and decoder
US10425102B2 (en) 2007-04-29 2019-09-24 Huawei Technologies Co., Ltd. Coding method, decoding method, coder, and decoder
US10666287B2 (en) 2007-04-29 2020-05-26 Huawei Technologies Co., Ltd. Coding method, decoding method, coder, and decoder
JP2013533505A (ja) * 2010-06-24 2013-08-22 華為技術有限公司 パルス符号化方法、パルス符号化装置、パルス復号化方法及びパルス復号化装置
US8959018B2 (en) 2010-06-24 2015-02-17 Huawei Technologies Co.,Ltd Pulse encoding and decoding method and pulse codec
US9020814B2 (en) 2010-06-24 2015-04-28 Huawei Technologies Co., Ltd. Pulse encoding and decoding method and pulse codec
US9508348B2 (en) 2010-06-24 2016-11-29 Huawei Technologies Co., Ltd. Pulse encoding and decoding method and pulse codec
US9858938B2 (en) 2010-06-24 2018-01-02 Huawei Technologies Co., Ltd. Pulse encoding and decoding method and pulse codec
US10446164B2 (en) 2010-06-24 2019-10-15 Huawei Technologies Co., Ltd. Pulse encoding and decoding method and pulse codec

Also Published As

Publication number Publication date
US8988256B2 (en) 2015-03-24
US9444491B2 (en) 2016-09-13
US20180152199A1 (en) 2018-05-31
US10666287B2 (en) 2020-05-26
ES2817906T3 (es) 2021-04-08
EP2827327B1 (en) 2020-07-29
US20160344405A1 (en) 2016-11-24
US10425102B2 (en) 2019-09-24
EP2157573B1 (en) 2014-11-26
EP2157573A4 (en) 2010-07-28
US20100049511A1 (en) 2010-02-25
US20150155882A1 (en) 2015-06-04
JP6239652B2 (ja) 2017-11-29
ES2529292T3 (es) 2015-02-18
EP2827327A2 (en) 2015-01-21
US10153780B2 (en) 2018-12-11
US8294602B2 (en) 2012-10-23
US20200007153A1 (en) 2020-01-02
US20190074847A1 (en) 2019-03-07
PT2827327T (pt) 2020-08-27
DK2827327T3 (da) 2020-10-12
JP2010526325A (ja) 2010-07-29
US9912350B2 (en) 2018-03-06
US20130021177A1 (en) 2013-01-24
US20160105198A1 (en) 2016-04-14
JP5866307B2 (ja) 2016-02-17
EP2827327A3 (en) 2015-05-06
EP2157573A1 (en) 2010-02-24
JP2013148913A (ja) 2013-08-01
JP5221642B2 (ja) 2013-06-26
US9225354B2 (en) 2015-12-29
JP2016103032A (ja) 2016-06-02

Similar Documents

Publication Publication Date Title
WO2008134974A1 (fr) Procédé de codage et de décodage, codeur et décodeur
CN101388210B (zh) 编解码方法及编解码器
JP6301431B2 (ja) パルス符号化及び復号化方法並びにパルスコーデック
US9881626B2 (en) Vector joint encoding/decoding method and vector joint encoder/decoder
JP4601690B2 (ja) ベクトル符号化/復号化方法、装置、及びストリーム・メディア・プレイヤー
CN101266796A (zh) 一种量化编解码方法及装置
CN111243670A (zh) 一种满足生物约束的dna信息存储编码方法
KR20120118258A (ko) 복수 호프만 테이블을 적용하여 고속 처리가 가능한 멀티미디어용 호프만 디코딩 방법 및 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08734199

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010504431

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2008734199

Country of ref document: EP