弯曲谱和精细估计音频编码的制作方法

文档序号:2836079阅读:214来源:国知局
专利名称:弯曲谱和精细估计音频编码的制作方法
技术领域
本发明涉及音频编解码。
背景技术
诸如在移动电话和IP语音(VOIP)网络中所使用的那些典型的语音编解码器使用设计来改善人类听者的感知质量而非语音识别性能的方案来对原始的语音信号编码。相反,语音识别系统通常使用设计来改善语音识别性能的方案来对诸如弯曲频谱估计表示 (此处也称为弯曲谱估计)之类的语音识别特征进行编码。一些方案尝试使用已编码语音识别特征来构造音频信号,而一些方案尝试使用已编码的语音编解码器特征来进行语音识别。

发明内容
先前尝试使用已编码语音识别特征来构造音频信号仅取得了有限的成功,导致所构造的音频信号并非原始音频信号的接近表示。类似地,先前尝试使用已编码的语音编解码器特征来用于语音识别也取得了有限的成功。此处所描述的工具和技术可包括使用原始音频信号的弯曲谱估计以对原始信号的精细特征的精细估计进行编码。弯曲谱估计的表示可用于语音识别,并且还可与精细估计的表示一起被用于重构表示原始音频信号的重构音频信号。如此处所使用的,原始音频信号或原始语音信号是用于编码弯曲谱估计表示的音频信号。原始信号可以是未经处理的音频信号,或者采用多种方式中的一种或多种进行预处理后的音频信号。弯曲谱估计是音频信号的频域估计,该音频信号通过改变由频谱表示的频率组范围而被弯曲。平滑估计是提供关于对应的音频信号的高级(或粗略)细节的经平滑的估计。精细估计是原始音频信号的波形的精细细节的估计,其中精细细节比用于编码精细估计的平滑估计中所提供的细节更精细。精细估计不仅仅是诸如基音信息——其提供了与音频波形的特征有关的一些细节——之类的信息,而且实际上并不估计波形的精细细节。重构的音频信号是从原始音频信号的估计中构造的信号,因而该重构的音频信号表示原始音频信号的近似。在一实施例中,本发明的工具和技术可包括对来自原始音频信号的弯曲频谱估计的表示进行编码。该编码可基于弯曲频谱并可包括动态范围缩减操作。原始音频信号的平滑估计的表示可使用弯曲频谱估计表示来生成。此外,原始音频信号的精细细节的精细估计表示可使用平滑估计的表示来编码。在本发明的工具和技术的另一实施例中,原始音频信号的弯曲频谱估计的表示可以被解码。原始音频信号的精细估计的表示也可以被解码。可将弯曲频谱估计的表示传递至语音识别引擎。此外,可使用弯曲频谱估计的表示和精细估计的表示来重构表示原始音频信号的音频信号。重构可包括扩展弯曲频谱估计的表示的动态范围。提供本发明内容是为了以简化的形式介绍一些概念。这些概念将在以下具体实施方式
中进一步描述。本发明内容并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。类似地,本发明不限于解决在背景技术具体实施方式
、或附图中讨论的特定技术、工具、环境、缺点、或优点的实现。


图1是其中可实现所描述的各实施例中的一个或多个实施例的合适的计算环境的框图。图2是音频编码系统的示意图。图3是语音识别系统的示意图。图4是用于弯曲谱和精细估计音频编码的技术的流程图。图5是用于弯曲谱和精细估计音频编码的另一技术的流程图。图6是用于弯曲谱和精细估计音频编码的又一技术的流程图。
具体实施例方式此处所描述的实施例涉及用于音频特征的经改进的编码/解码的技术和工具,诸如可用在语音识别中以及也可用在音频信号重构中的特征的经改进的编码/解码。这样的改善可源于分开或组合地使用各种技术和工具。这样的技术和工具可以包括使用弯曲谱估计——其传统上已被用于语音识别——以对原始音频信号的精细估计进行编码。可将弯曲谱估计的表示和精细估计的表示发送至语音识别系统并将其用于语音识别以及重构原始音频信号的表示。例如,可将弯曲谱估计表示传递至语音识别引擎。此外,弯曲谱估计表示可与精细估计表示一起使用以重构音频信号的表示。例如,弯曲谱估计表示可用于生成平滑估计,其可与精细估计组合以对表示原始音频信号的重构音频信号进行编码。由此,从此处描述的工具和技术中可以实现一个或多个实质的益处。例如,语音识别特征(弯曲谱估计表示)可用于语音识别和用于对原始音频信号的精细估计进行编码以及重构表示原始音频信号的音频信号。所附权利要求中定义的主题不必限于本文描述的益处。本发明的具体实现可提供本文描述的益处的全部、一些、或未提供本文描述的益处。尽管本文出于呈现的目的以特定的顺序次序描述了用于各种技术的操作,但应理解除非要求特定的排序,否则这种描述方式涵盖了操作顺序上的重新安排。例如,在某些情况下,顺序地描述的操作可以被重新安排或并发执行。本文参照流程图描述的技术可被用于本文描述的一个或多个系统和/或用于一个或多个其他系统。例如,本文描述的各种过程可用硬件或软件、或两者的组合来实现。此外,为了简单起见,流程图可能未示出可结合其他技术来使用特定技术的各种方式。I.示例性计算环境图1示出其中可实现所描述的各实施例中的一个或多个实施例的合适的计算环境(100)的一般化示例。例如,可将一个或多个此类计算环境用作编码系统和/或语音识别系统。一般而言,可使用各种不同的通用或专用计算系统配置。适用于此处所描述的工具和技术的公知计算系统配置的示例包括,但不限于,服务器场和服务器集群、个人计算机、 服务器计算机、手持式或膝上型设备、多处理器系统、基于微处理器的系统、可编程消费电子产品、网络PC、小型机、大型计算机、包括上述系统或设备中的任一个的分布式计算环境寸。计算环境(100)不旨在对本发明的使用范围或功能提出任何限制,因为本发明可以在完全不同的通用或专用计算环境中实现。参考图1,计算环境(100)包括至少一个处理单元(110)和存储器(120)。在图1 中,这一最基本的配置(130)被包括在虚线内。处理单元(110)执行计算机可执行指令,并且可以是真实或虚拟处理器。在多处理系统中,多个处理单元执行计算机可执行指令以提高处理能力。存储器(120)可以是易失性存储器(例如,寄存器、高速缓存、RAM)、非易失性存储器(例如,R0M、EEPR0M、闪存)、或两者的某种组合。存储器(120)存储实现弯曲谱和精细估计音频编码的软件(180)。尽管为了清楚起见用线条示出了图1的各框,但是,实际上,描绘各组件并不是那样清楚,并且用比喻方法,图1以及下文讨论的其他附图的线条更精确地将是灰色的和模糊的。例如,可以将诸如显示设备等呈现组件认为是I/O组件。而且,处理器具有存储器。 发明人关于此点认识到,这是本领域的特性,并且重申,图1的图示只是例示可结合本发明的一个或多个实施例来使用的示例性计算设备。诸如“工作站”、“服务器”、“膝上型计算机”、“手持式设备”等分类之间没有区别,它们全部都被认为是在图1的范围之内的并且被称为“计算机”、“计算环境”、或“计算设备”。计算环境(100)可具有附加特征。在图1中,计算环境(100)包括存储(140)、一个或多个输入设备(150)、一个或多个输出设备(160)以及一个或多个通信连接(170)。诸如总线、控制器或网络等互连机制(未示出)将计算环境(100)的各组件互连。通常,操作系统软件(未示出)为在计算环境(100)中执行的其它软件提供操作环境,并协调计算环境(100)的各组件的活动。存储(140)可以是可移动或不可移动的,并可包括诸如磁盘、磁带或磁带盒、 CD-R0M、CD-RW、DVD之类的非瞬态计算机可读存储介质,或者可用于储存信息并可在计算环境(100)内访问的任何其它介质。存储(140)储存用于软件(180)的指令。输入设备(150)可以是诸如键盘、鼠标、笔或跟踪球等触摸输入设备;语音输入设备;扫描设备;网络适配器;CD/DVD读取器;或可向计算环境(100)提供输入的另一设备。 输出设备(160)可以是显示器、打印机、扬声器、CD/DVD刻录机、网络适配器、或从计算环境 (100)提供输出的另一设备。通信连接(170)允许通过通信介质与另一计算实体进行通信。因此,计算环境 (100)可使用通往诸如个人计算机、服务器、路由器、网络PC、对等设备或另一常见网络节点等一个或多个远程计算设备的逻辑连接而工作在联网环境中。通信介质以已调制数据信号的形式传达诸如数据或计算机可执行指令或请求等信息。已调制数据信号是其一个或多个特征以在信号中编码信息的方式设置或改变的信号。作为示例而非局限,通信介质包括以电、光、RF、红外、声学或其他载波实现的有线或无线技术。各种工具和技术可以在计算机可读存储介质的一般上下文中描述。计算机可读存储介质可以是可在计算环境内访问的任何可用的非瞬态的存储介质。作为示例而非局限, 结合计算环境(100),计算机可读介质包括存储器(120)、存储(140)、和以上的组合。这些工具和技术可在诸如程序模块中所包括的在目标真实或虚拟处理器上的计算环境中执行的计算机可执行指令的一般上下文中描述。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、库、对象、类、组件、数据结构等。程序模块的功能可以如各实施例中所需的组合或在程序模块之间分离。用于程序模块的计算机可执行指令可以在本地或分布式计算环境中执行。在分布式计算环境中,程序模块可以位于本地和远程计算机存储介质中。出于演示的目的,详细描述使用了如“确定”、“选择”、“调整”和“操作”等术语来描述计算环境中的计算机操作。这些以及其他类似术语是对计算机执行的操作的高层抽象, 并且不应与人类执行的动作混淆,除非明确指出人类(诸如“用户”)的动作执行。对应于这些术语的实际的计算机操作取决于实现而不同。II.音频编码系统和环境图2是音频编码系统O00)的示意图。音频编码系统(200)可包括用于执行以下参考图2所描述的动作的软件和/或硬件。尽管音频编码系统(200)被示为移动手持设备, 但该音频编码系统可以是某种其他类型的计算机系统,诸如以上参考图1所描述的各类计算机系统中的一种或多种。可在音频编码系统(200)处接收原始语音信号020)。原始语音信号(220)可以是未经处理的音频信号,或者采用一种或多种方式进行预处理后的音频信号。音频编码系统可执行帧提取O30)以将原始语音信号(220)分成基于时间的帧。各帧可以重叠。例如, 各帧可以重叠百分之五十或某个其他的百分比。图2的其他操作以及以下所讨论的图3的操作可以在逐帧的基础上执行,直至音频信号的重构,其可以组合各帧(例如,使用重叠累加技术)。对于每一帧,音频编码系统(200)可执行弯曲频谱估计(MO)。例如,弯曲谱估计 (240)可以是梅尔谱估计,其可以计算每音频帧M或某个其他数量的梅尔谱能量。作为示例,对于窄带语音,该估计(MO)可以应用从0至4千赫兹范围内的22个滤波器。作为另一示例,对于宽带语音,该估计(MO)可以应用从0至8千赫兹范围内的对个滤波器。另选地,弯曲谱估计(MO)可以是某种其他类型的估计,诸如基于梅尔标度以外的某个其他频率标度(诸如线性或指数标度)的弯曲频谱估计。音频编码系统(200)可执行梅尔谱能量的动态范围缩减( 。例如,这可以通过执行对数运算(例如,自然对数运算或基10对数运算)、开方运算(立方根运算、十五次方根等)或动态范围缩减042)的某个其他运算来完成。音频编码系统(200)还可以对能量执行诸如离散余弦变换之类的变换044),产生经范围缩减的和变换的梅尔频率倒谱系数(MFCC)。音频编码系统可对MFCC执行诸如量化(M6)之类的有损压缩操作,以产生弯曲谱估计表示(M8)(当然,由弯曲谱估计040)、范围缩减042)、变换044)中的每一个所产生的值也可被认为是弯曲谱估计表示)。量化(M6)可以是各种不同类型的量化中的任何一个。作为示例,量化(M6)可以是使用自适应差分编码的标量量化。该量化(M6)可以类似于对自适应差分脉冲编码调制(ADPCM)所做的量化,除了该量化可应用于表示MFCC的向量的每一分量,如同该组件是波形那样。作为示例,如果有M fMFCC,则自适应差分编码可将这M个MFCC中的每一个作为时间序列来对待,并对该序列应用自适应差分编码。动态均值归一化可应用在量化(M6)和以下所讨论的量化操作中。例如,该归一化可以仅在前两个MFCC Ctl和C1中进行。为了去除系数的时间相关,根据下面的等式1,可以从当前样本中减去先前经量化的值的缩放版本,以产生系数时间序列中第η个值的误差值e (η)。e(n) = x{n) -― ax(n -1)等式 1在等式1中,x(n)为当前样本,α为缩放因子,且& -1)为经量化的先前值。误差值e (η)可被馈送至均勻标量量化器。如在常规的ADPCM中一样,量化步长可基于e (η)的最新近的值来动态地调节。该量化操作可以使用两阶段查找表来实现。当前量化的值可以用作查找步长调整因子的索引。该值可添加到当前调整因子中,所得新的值可被用作在步长表中查找步长的索引。另选地,量化(Μ6)可包括某种其他类型的量化,诸如使用码本的向量量化。可执行与量化(Μ6)匹配的解量化Q60)以产生经解量化的弯曲谱估计表示。这些解量化的弯曲谱估计表示可以用于执行平滑估计062)。所得的平滑估计表示可与对应帧的经帧提取的音频信号一起用来执行精细估计064),这可产生音频信号的精细特征的表不。平滑估计(沈2)可取决于将被执行的精细估计064)的类型而变化,并且精细估计(沈4)可根据现有的语音编解码器方案来执行。例如,精细估计064)可使用变换编解码器方案来完成。另选地,精细估计可使用源-滤波器模型方案来完成。例如,平滑估计可以定义源-滤波器模型方案中的滤波器。在任何情况下,平滑估计(26 可采用提供平滑估计( 的方式来执行,平滑估计( 是以如下方式来格式化的它可用在编解码器方案中以产生精细评估064)。以下是使用Siren编解码器来提供实现平滑估计Q62)的上下文的平滑估计 (262)的示例。然而,此处所描述的平滑估计( 以及总体工具和技术可以与各种各样的编解码器一起使用,包括各种变换编解码器和各种源-滤波器模型编解码器。Siren是一种对来自0-7kHz的音频进行编码的宽带编解码器。它操作具有50%帧重叠的40ms帧(640 个样本)。每一帧由调制重叠变换(MLT)处理,得到320个实数值MLT系数。对每一帧的编码和解码是独立执行的。为了对信号进行编码,平滑谱估计被计算如下。对应于500Hz的宽度,每一帧的MLT系数首先被划分成O和7kHz之间的14个均勻的区域。根据MLT系数计算每一区域中的均方根(冊幻能量以提供频谱包络的粗略表示。基于RMS能量值,使用称为分类的过程对14个区域的每一个中的MLT系数进行量化。在分类过程中,执行确定性搜索以找到在最大化而不超过给定的比特预算情况下最准确地表示每一区域中的MLT系数的量化和编码参数集合。总之,由Siren执行的编码是基于两个阶段的(1)包括14个频谱子带中的RMS能量的平滑谱估计的计算;(2)使用RMS能量值对全部MLT系数进行编码的分类过程。在平滑估计(262)中,14个RMS能量值可从经编码的MFCC系数导出,而非直接根据MLT系数来计算它们。然后,精细估计(沈4)可包括使用导出的RMS能量值对全部MLT 系数进行编码的分类过程。例如,根据Siren编解码器,为了执行平滑估计Q62)以产生平滑估计表示以在精细估计(沈4)中使用,MfMFCC (其表示对个梅尔间隔的频率子带的能量值)可被用于计算14个均勻间隔的频率子带中的能量。帧提取(230)可为弯曲谱估计(MO)提供不同于提供给精细估计064)的帧大小和帧速率(例如,帧提取(230)可以包括两个不同的帧提取过程或可以集成两个不同的过程)。作为示例,帧提取(230)可提供具有语音编解码器标准的帧大小和速率的精细估计(264),并可以提供具有语音识别方案标准的帧大小和速率的弯曲谱估计04)。在一特定实现中,弯曲谱估计(MO)可以以每秒100帧的速率接收 25ms帧,而精细估计(沈4)可以以每秒50帧来使用40ms帧。此外,弯曲谱估计(MO)和精细估计(沈4)可以在不同的域中使用不同的表示。作为示例,弯曲谱估计(MO)可使用基于快速傅里叶变换(FFT)的频谱表示,而精细估计可使用从MLT导出的频谱。平滑估计 (262)可包括转换以考虑这些差别。例如,为了计算14个均勻间隔的子带中的能量,MFCC处理流水线(包括弯曲谱估计040)、范围缩减042)、变换(M4)和量化046))可基本上被逆转以获取功率谱估计。 对于计算MFCC的典型方法,由于MFCC编码是有损过程,所以该过程实际上并不是可逆的。 然而,可根据以下的等式2来估计平滑的功率谱。
权利要求
1.一种计算机实现的方法,包括从原始音频信号(220)对弯曲频谱估计的表示(M8)进行编码,所述编码基于弯曲频谱;使用所述弯曲频谱估计表示(M8)来生成所述原始音频信号的平滑估计的表示;以及使用所述平滑估计的表示来对所述原始音频信号O20)的精细细节的精细估计表示 (268)进行编码。
2.如权利要求1所述的方法,其特征在于,所述弯曲频谱估计是梅尔频谱估计。
3.如权利要求1所述的方法,其特征在于,根据变换编解码器框架来配置所述精细估计表不。
4.如权利要求1所述的方法,其特征在于,所述精细估计表示表示频域中的精细谱估计。
5.如权利要求1所述的方法,其特征在于,生成所述平滑估计的表示包括执行逆变换操作。
6.如权利要求1所述的方法,其特征在于,对所述精细估计进行编码至少部分在频域中执行。
7.一个或多个其上包含计算机可执行指令的计算机可读存储介质,所述指令在由至少一个处理器执行时使所述至少一个处理器执行以下动作对原始音频信号O20)的弯曲频谱估计的表示(33 进行解码; 对所述原始音频信号O20)的精细估计的表示(334)进行解码; 将所述弯曲频谱估计的表示(33 传递至语音识别引擎;以及使用所述弯曲频谱估计的表示(33 和所述精细估计的表示(366)来重构表示所述原始音频信号O20)的音频信号(372)。
8.如权利要求7所述的一个或多个计算机可读存储介质,其特征在于, 所述弯曲频谱估计是第一弯曲频谱估计;所述原始音频信号是第一原始音频信号;对所述第一弯曲频谱估计的表示进行解码、对所述精细估计的表示进行解码、将所述第一弯曲频谱估计的表示传递至所述语音识别引擎、以及重构表示所述第一原始音频信号的音频信号全部在第一操作模式中执行;以及所述动作还包括从所述第一操作模式切换至第二操作模式并在所述第二操作模式中执行各动作,所述第二操作模式中的动作包括对第二原始音频信号的第二弯曲频谱估计的表示进行解码;以及将所述第二弯曲频谱估计的表示传递至所述语音识别引擎;其中所述第二操作模式不包括重构表示所述第二原始音频信号的音频信号。
9.一种计算机实现的方法,包括在语音编码系统O00)中,执行以下动作基于弯曲频谱对原始音频信号O20)的弯曲频谱估计的表示(M8)进行编码,所述编码包括动态范围缩减操作和余弦变换操作;使用所述弯曲频谱估计表示(M8)来生成所述原始音频信号(220)的谱的平滑谱估计的表示;使用所述平滑估计表示来对所述原始音频信号O20)的精细细节的精细频谱估计的表示068)进行编码;将所述精细估计的表示(268)和所述弯曲频谱估计的表示(M8)打包在数据流(四0) 中;以及将所述数据流(四0)发送至语音解码和识别系统(300)。
10.如权利要求9所述的计算机实现的方法,其特征在于,还包括 在所述语音解码和识别系统处接收所述数据流; 在所述语音解码和识别系统中,执行以下动作对所述数据流的各分量进行解码,包括对所述原始音频信号的弯曲频谱估计的表示进行解码,以及对所述原始音频信号的精细估计的表示进行解码;将所述弯曲频谱估计的表示传递至所述语音识别系统中的语音识别引擎;以及重构表示所述原始音频信号的音频信号,所述重构包括扩展所述弯曲频谱估计的表示的动态范围、执行逆余弦变换操作、使用所述弯曲频谱估计表示来生成平滑谱估计表示,以及将所述平滑谱估计与所述精细估计进行组合。
全文摘要
本发明涉及弯曲谱和精细估计音频编码。原始音频信号的弯曲谱估计可用于对该原始信号的精细估计的表示进行编码。可将弯曲谱估计的表示和精细估计的表示发送至语音识别系统。可将弯曲谱估计的表示传递至语音识别引擎,在其中它可用于语音识别。弯曲谱估计的表示可与精细估计的表示一起使用以重构原始音频信号的表示。
文档编号G10L15/00GK102568484SQ20111041539
公开日2012年7月11日 申请日期2011年12月2日 优先权日2010年12月3日
发明者A·阿塞罗, H·S·玛尔瓦, J·G·德罗珀, M·L·塞尔泽, 樊星 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1