CN111986698A - 音频片段的匹配方法、装置、计算机可读介质及电子设备 - Google Patents

音频片段的匹配方法、装置、计算机可读介质及电子设备 Download PDF

Info

Publication number
CN111986698A
CN111986698A CN201910441366.5A CN201910441366A CN111986698A CN 111986698 A CN111986698 A CN 111986698A CN 201910441366 A CN201910441366 A CN 201910441366A CN 111986698 A CN111986698 A CN 111986698A
Authority
CN
China
Prior art keywords
distance
candidate
accumulated
audio
target position
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910441366.5A
Other languages
English (en)
Other versions
CN111986698B (zh
Inventor
林方超
云伟标
曾鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910441366.5A priority Critical patent/CN111986698B/zh
Priority to JP2021535923A priority patent/JP7337169B2/ja
Priority to PCT/CN2020/091698 priority patent/WO2020238777A1/zh
Priority to EP20815214.0A priority patent/EP3979241B1/en
Publication of CN111986698A publication Critical patent/CN111986698A/zh
Priority to US17/336,562 priority patent/US11929090B2/en
Application granted granted Critical
Publication of CN111986698B publication Critical patent/CN111986698B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
    • G10L25/54Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination for retrieval
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Stereophonic System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请的实施例提供了一种音频片段的匹配方法、装置、计算机可读介质及电子设备。该匹配方法包括:获取第一音频片段对应的第一特征序列和第二音频片段对应的第二特征序列;根据第一特征序列的长度和第二特征序列的长度构建距离矩阵,距离矩阵中的各个位置表示第一特征序列上的一个点与第二特征序列上的一个点之间的距离;计算距离矩阵中的起始位置到目标位置之间的第一累加距离,并计算距离矩阵中的终止位置到目标位置之间的第二累加距离;基于第一累加距离和第二累加距离计算第一特征序列与第二特征序列之间的最小距离,并根据所述最小距离确定第一音频片段与第二音频片段之间的匹配度。本申请实施例的技术方案可以提高音频片段的匹配准确性。

Description

音频片段的匹配方法、装置、计算机可读介质及电子设备
技术领域
本申请涉及计算机及通信技术领域,具体而言,涉及一种音频片段的 匹配方法、装置、计算机可读介质及电子设备。
背景技术
在音频片段的匹配场景中,比如哼唱式音乐检索或哼唱评分场景,通 常是通过比较哼唱旋律的音频特征序列与待检索音频的特征序列之间的差 异程度来衡量两个音频片段之间的相似度。但是,如何能够提高音频片段 匹配的准确性是亟待解决的技术问题。
发明内容
本申请的实施例提供了一种音频片段的匹配方法、装置、计算机可读 介质及电子设备,进而至少在一定程度上可以提高音频片段的匹配准确 性。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地 通过本申请的实践而习得。
根据本申请实施例的一个方面,提供了一种音频片段的匹配方法,包 括:获取第一音频片段对应的第一特征序列和第二音频片段对应的第二特 征序列;根据所述第一特征序列的长度和所述第二特征序列的长度构建所 述第一特征序列与所述第二特征序列之间的距离矩阵,所述距离矩阵中的 各个位置表示所述第一特征序列上的一个点与所述第二特征序列上的一个 点之间的距离;计算所述距离矩阵中的起始位置到所述距离矩阵中的目标 位置之间的第一累加距离,并计算所述距离矩阵中的终止位置到所述目标 位置之间的第二累加距离;基于所述第一累加距离和所述第二累加距离计 算所述第一特征序列与所述第二特征序列之间的最小距离,并根据所述最 小距离确定所述第一音频片段与所述第二音频片段之间的匹配度。
根据本申请实施例的一个方面,提供了一种音频片段的匹配装置,包 括:获取单元,用于获取第一音频片段对应的第一特征序列和第二音频片 段对应的第二特征序列;构建单元,用于根据所述第一特征序列的长度和 所述第二特征序列的长度构建所述第一特征序列与所述第二特征序列之间 的距离矩阵,所述距离矩阵中的各个位置表示所述第一特征序列上的一个 点与所述第二特征序列上的一个点之间的距离;第一处理单元,用于计算 所述距离矩阵中的起始位置到所述距离矩阵中的目标位置之间的第一累加 距离,并计算所述距离矩阵中的终止位置到所述目标位置之间的第二累加 距离;第二处理单元,用于基于所述第一累加距离和所述第二累加距离计 算所述第一特征序列与所述第二特征序列之间的最小距离,并根据所述最 小距离确定所述第一音频片段与所述第二音频片段之间的匹配度。
在本申请的一些实施例中,基于前述方案,所述第一处理单元包括: 第一计算单元,用于分别计算所述起始位置到所述距离矩阵中与所述目标 位置关联的多个第一候选位置之间的累加距离,所述多个第一候选位置位 于所述起始位置与所述目标位置之间;第二计算单元,用于根据所述起始 位置到各个所述第一候选位置之间的累加距离,以及各个所述第一候选位 置所表示的距离值,计算所述起始位置到所述目标位置之间的多个第一候 选累加距离;第一确定单元,用于将所述多个第一候选累加距离中的最小 值作为所述第一累加距离。
在本申请的一些实施例中,基于前述方案,所述第二计算单元配置 为:对所述起始位置到各个所述第一候选位置之间的累加距离与各个所述 第一候选位置所表示的距离值进行求和,得到各个所述第一候选位置对应 的距离和值,将各个所述第一候选位置对应的距离和值分别作为一个所述 第一候选累加距离。
在本申请的一些实施例中,基于前述方案,所述第二计算单元配置 为:根据各个所述第一候选位置所表示的距离值,以及各个所述第一候选 位置对应的权重值,对各个所述第一候选位置所表示的距离值进行加权计 算,得到各个所述第一候选位置对应的加权距离值;对所述起始位置到各 个所述第一候选位置之间的累加距离与各个所述第一候选位置对应的加权 距离值进行求和,得到各个所述第一候选位置对应的距离和值,将各个所述第一候选位置对应的距离和值分别作为一个所述第一候选累加距离。
在本申请的一些实施例中,基于前述方案,所述的音频片段的匹配装 置还包括:第三计算单元,用于计算各个所述第一候选位置与所述距离矩 阵的对角线之间的距离,所述对角线是由所述起始位置与所述终止位置形 成的直线;根据各个所述第一候选位置与所述对角线之间的距离,计算各 个所述第一候选位置对应的权重值。
在本申请的一些实施例中,基于前述方案,若所述目标位置的坐标为 (i,j),则所述多个第一候选位置的坐标包括:(i-1,j-1)、(i-1,j-x)、 (i-x,j-1),其中,x为小于i或j的自然数。
在本申请的一些实施例中,基于前述方案,所述第一处理单元包括: 第四计算单元,用于分别计算所述终止位置到所述距离矩阵中与所述目标 位置关联的多个第二候选位置之间的累加距离,所述多个第二候选位置位 于所述目标位置与所述终止位置之间;第五计算单元,用于根据所述终止 位置到各个所述第二候选位置之间的累加距离,以及各个所述第二候选位 置所表示的距离值,计算所述终止位置到所述目标位置之间的多个第二候 选累加距离;第二确定单元,用于将所述多个第二候选累加距离中的最小 值作为所述第二累加距离。
在本申请的一些实施例中,基于前述方案,若所述目标位置的坐标为 (i,j),则所述多个第二候选位置的坐标包括:(i+1,j+1)、(i+1,j+x)、 (i+x,j+1),其中,x为自然数。
在本申请的一些实施例中,基于前述方案,所述x的值为2。
在本申请的一些实施例中,基于前述方案,所述第二处理单元配置 为:基于所述第一累加距离、所述第二累加距离和所述目标位置所表示的 距离值,计算所述目标位置对应的最小累加距离;从多个所述目标位置对 应的最小累加距离中选择最小值作为所述第一特征序列与所述第二特征序 列之间的最小距离。
在本申请的一些实施例中,基于前述方案,所述第二处理单元配置 为:对所述目标位置所表示的距离值、所述第一累加距离和所述第二累加 距离进行求和,得到所述目标位置对应的最小累加距离;或
根据所述目标位置所表示的距离值和所述目标位置对应的权重值进行 加权计算,得到所述目标位置对应的加权距离值,对所述目标位置对应的 加权距离值、所述第一累加距离和所述第二累加距离进行求和,得到所述 目标位置对应的最小累加距离。
在本申请的一些实施例中,基于前述方案,所述第二处理单元配置 为:获取所述第一音频片段与所述第二音频片段的多种特征分别对应的所 述第一特征序列和所述第二特征序列之间的最小距离;根据各种所述特征 对应的权重和各种所述特征对应的所述第一特征序列和所述第二特征序列 之间的最小距离进行加权求和计算,得到所述第一音频片段和所述第二音 频片段之间的加权距离值;根据所述第一音频片段和所述第二音频片段之 间的加权距离值确定所述第一音频片段和所述第二音频片段之间的匹配 度。
在本申请的一些实施例中,基于前述方案,所述多种特征包括:音频 片段的音高特征、乐音能量、频率倒谱系数、每帧的均方根能量值。
根据本申请实施例的一个方面,提供了一种计算机可读介质,其上存 储有计算机程序,所述计算机程序被处理器执行时实现如上述实施例中所 述的音频片段的匹配方法。
根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或 多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程 序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如上 述实施例中所述的音频片段的匹配方法。
在本申请的一些实施例所提供的技术方案中,通过计算距离矩阵中的 起始位置到距离矩阵中的目标位置之间的第一累加距离,并计算距离矩阵 中的终止位置到该目标位置之间的第二累加距离,以基于该第一累加距离 和该第二累加距离计算第一特征序列与第二特征序列之间的最小距离,使 得在计算两个特征序列之间的最小距离时,可以从两个方向(即距离矩阵 的起始位置到目标位置、距离矩阵的终止位置到目标位置)来综合计算, 进而能够兼顾特征序列在两个方向上的匹配关系,因此能够保证计算得到 的两个特征序列之间的最小距离更加准确,从而有利于提高音频片段匹配 的准确性。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释 性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本 申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下 面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来 讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附 图。在附图中:
图1示出了可以应用本申请实施例的技术方案的示例性系统架构的示 意图;
图2示出了根据本申请的一个实施例的音频片段的匹配方法的流程 图;
图3示出了根据本申请的一个实施例的构建的距离矩阵的示意图;
图4示出了根据本申请的一个实施例的计算距离矩阵中的起始位置到 目标位置之间的第一累加距离的流程图;
图5示出了根据本申请的一个实施例的从距离矩阵的起始位置开始计 算累加距离的计算方向示意图;
图6示出了根据本申请的一个实施例的计算距离矩阵中的终止位置到 目标位置之间的第二累加距离的流程图;
图7示出了根据本申请的一个实施例的从距离矩阵的终止位置开始计 算累加距离的计算方向示意图;
图8示出了根据本申请的一个实施例的计算第一特征序列与第二特征 序列之间的最小距离的流程图;
图9示出了根据本申请的一个实施例的确定第一音频片段与第二音频 片段之间的匹配度的流程图;
图10示出了根据本申请的一个实施例的哼唱评分方法的流程图;
图11示出了根据本申请的一个实施例的计算得到的全局最佳路径的示 意图;
图12示出了根据本申请的一个实施例的音频片段的匹配装置的框图;
图13示出了适于用来实现本申请实施例的电子设备的计算机系统的结 构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能 够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这 些实施方式使得本申请将更加全面和完整,并将示例实施方式的构思全面 地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个 或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本申请 的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本申请 的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、 组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装 置、实现或者操作以避免模糊本申请的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实 体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个 硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置 和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操 作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分 解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根 据实际情况改变。
图1示出了可以应用本申请实施例的技术方案的示例性系统架构的示 意图。
如图1所示,系统架构可以包括终端设备(如图1中所示智能手机 101、平板电脑102和便携式计算机103中的一种或多种,当然也可以是台 式计算机等等)、网络104和服务器105。网络104用以在终端设备和服务 器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如 有线通信链路、无线通信链路等等。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性 的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如 服务器105可以是多个服务器组成的服务器集群等。
在本申请的一个实施例中,用户可以利用终端设备向服务器105上传 第一音频片段(比如可以是用户清唱的一段音频),服务器105在获取到终 端设备上传的第一音频片段之后,可以提取第一音频片段对应的第一特征 序列,并且获取到需要与第一音频片段进行匹配的第二音频片段对应的第 二特征序列。然后可以根据第一特征序列的长度和第二特征序列的长度构 建第一特征序列与第二特征序列之间的距离矩阵,该距离矩阵中的各个位 置表示第一特征序列上的一个点与第二特征序列上的一个点之间的距离。
在本申请的一个实施例中,当构建距离矩阵之后,服务器105可以计 算该距离矩阵中的起始位置到距离矩阵中的目标位置之间的第一累加距 离,并计算距离矩阵中的终止位置到目标位置之间的第二累加距离,然后 基于第一累加距离和第二累加距离计算第一特征序列与第二特征序列之间 的最小距离,并根据该最小距离确定第一音频片段与第二音频片段之间的 匹配度。可见,由于本申请实施例的技术方案可以从两个方向(即距离矩 阵的起始位置到目标位置、距离矩阵的终止位置到目标位置)来综合计算 音频片段的特征序列之间的最小距离,进而能够兼顾特征序列在两个方向 上的匹配关系,因此能够保证计算得到的两个特征序列之间的最小距离更 加准确,从而有利于提高音频片段匹配的准确性。
需要说明的是,本申请实施例所提供的音频片段的匹配方法一般由服 务器105执行,相应地,音频片段的匹配装置一般设置于服务器105中。 但是,在本申请的其它实施例中,终端设备也可以与服务器具有相似的功 能,从而执行本申请实施例所提供的音频片段的匹配方案。
以下对本申请实施例的技术方案的实现细节进行详细阐述:
图2示出了根据本申请的一个实施例的音频片段的匹配方法的流程 图,该音频片段的匹配方法可以由具有计算处理功能的设备来执行,比如 可以由图1中所示的服务器105来执行。参照图2所示,该音频片段的匹 配方法至少包括步骤S210至步骤S240,详细介绍如下:
在步骤S210中,获取第一音频片段对应的第一特征序列和第二音频片 段对应的第二特征序列。
在本申请的一个实施例中,第一音频片段和第二音频片段可以是需要 进行对比,以确定匹配度的音频片段,比如第一音频片段可以是用户输入 的音频片段(如用户清唱的音频片段、用户录制的音频片段等),第二音 频片段可以是数据库中已存储的音频片段。
在本申请的一个实施例中,第一特征序列和第二特征序列是针对同一 个音频特征的序列,音频特征可以是音高特征、乐音能量、频率倒谱系 数、每帧的均方根能量值等。
在本申请的一个实施例中,可以通过自相关函数算法、Yin算法、 PYin算法等来提取第一音频片段和第二音频片段的特征序列。
在步骤S220中,根据所述第一特征序列的长度和所述第二特征序列的 长度构建所述第一特征序列与所述第二特征序列之间的距离矩阵,所述距 离矩阵中的各个位置表示所述第一特征序列上的一个点与所述第二特征序 列上的一个点之间的距离。
在本申请的一个实施例中,如果第一特征序列的长度为m,第二特征 序列的长度为n,那么根据第一特征序列的长度和第二特征序列的长度构 建的距离矩阵的大小为m×n。具体地,如图3所示,假设第一特征序列为 301,第二特征序列为302,那么可以构建一个大小为m×n的距离矩阵 303,距离矩阵中的各个位置表示第一特征序列301上的一个点与第二特征 序列302上的一个点之间的距离,比如距离矩阵中的(i,j)表示第一特征序 列301上的第i个点与第二特征序列302上的第j个点之间的距离,该距离 可以是欧氏距离。
继续参照图2所示,在步骤S230中,计算所述距离矩阵中的起始位置 到所述距离矩阵中的目标位置之间的第一累加距离,并计算所述距离矩阵 中的终止位置到所述目标位置之间的第二累加距离。
在本申请的一个实施例中,距离矩阵中的起始位置即第一特征序列上 的第一个点与第二特征序列上的第一个点在距离矩阵中所对应的位置;距 离矩阵中的终止位置即第一特征序列上的最后一个点与第二特征序列上的 最后一个点在距离矩阵中所对应的位置;距离矩阵中的目标位置可以是距 离矩阵中除起始位置和终止位置之外的位置。
在本申请的一个实施例中,如图4所示,步骤S230中计算距离矩阵中 的起始位置到距离矩阵中的目标位置之间的第一累加距离的过程,可以包 括如下步骤S410至步骤S430,详细说明如下:
在步骤S410中,分别计算起始位置到距离矩阵中与目标位置关联的多 个第一候选位置之间的累加距离,所述多个第一候选位置位于所述起始位 置与所述目标位置之间。
在本申请的一个实施例中,在从距离矩阵的起始位置开始计算累加距 离时,可以从矩阵上的三个方向来逐个位置进行距离累加计算,即图5中 所示的上、右和右上斜对角。比如,若目标位置的坐标为(i,j),则多个第 一候选位置的坐标可以包括:(i-1,j-1)、(i-1,j-x)、(i-x,j-1),其中,x为 小于i或j的自然数,比如x可以为0、2、3等。
在本申请的一个实施例中,上述实施例中的x可以大于1,在这种情况 下,在计算累加距离时可以间隔(x-1)一个位置进行累加,进而可以加速累 加距离的计算过程,有利于提高计算速率。但是,为了保证计算结果的准 确性,x的值又不便于取过大的值,因此可以根据实际需要进行设定,比如 可以设置为2。
在本申请的一个实施例中,计算起始位置到第一候选位置之间的累加 距离的过程与计算起始位置到目标位置的累加距离的过程类似。
继续参照图4所示,在步骤S420中,根据所述起始位置到各个所述第 一候选位置之间的累加距离,以及各个所述第一候选位置所表示的距离 值,计算所述起始位置到所述目标位置之间的多个第一候选累加距离。
在本申请的一个实施例中,步骤S420中计算起始位置到目标位置之间 的多个第一候选累加距离的过程可以是:对起始位置到各个第一候选位置 之间的累加距离与各个第一候选位置所表示的距离值进行求和,得到各个 第一候选位置对应的距离和值,将各个第一候选位置对应的距离和值分别 作为一个第一候选累加距离。
比如,若某个第一候选位置为(i-1,j-1),该第一候选位置所表示的距 离值为d(i-1,j-1),那么该第一候选位置对应的距离和值可以表示为: D_forward(i-1,j-1)+d(i-1,j-1),其中的D_forward(i-1,j-1)表示距离矩阵中 的起始位置到该第一候选位置之间的累加距离。
在本申请的一个实施例中,步骤S420中计算起始位置到目标位置之间 的多个第一候选累加距离的过程可以是:根据各个第一候选位置所表示的 距离值,以及各个第一候选位置对应的权重值,对各个第一候选位置所表 示的距离值进行加权计算,得到各个第一候选位置对应的加权距离值;对 所述起始位置到各个第一候选位置之间的累加距离与各个第一候选位置对 应的加权距离值进行求和,得到各个第一候选位置对应的距离和值,将各 个第一候选位置对应的距离和值分别作为一个第一候选累加距离。比如, 若某个第一候选位置为(i-1,j-1),该第一候选位置所表示的距离值为 d(i-1,j-1),该第一候选位置对应的权重值为w,那么该第一候选位置对应 的距离和值可以表示为:D_forward(i-1,j-1)+d(i-1,j-1)×w,其中的 D_forward(i-1,j-1)表示距离矩阵中的起始位置到该第一候选位置之间的累 加距离。
即在上述实施例中,考虑到了各个第一候选位置对应的权重值,这是 由于各个第一候选位置与距离矩阵的对角线之间的距离可能不同,为了避 免最后从各个第一候选位置中选择的位置偏离距离矩阵的对角线过远,则 可以根据各个第一候选位置与距离矩阵的对角线之间的距离来设置各个第 一候选位置对应的权重。比如,若某个位置距离对角线越近,则该位置对 应的权重越接近1;若某个位置距离对角线越远,则该位置对应的权重越大。其中,距离矩阵的对角线是由距离矩阵的起始位置与终止位置形成的 直线。
继续参照图4所示,在步骤S430中,将所述多个第一候选累加距离中 的最小值作为所述第一累加距离。
图4所示实施例的技术方案使得能够计算得到从距离矩阵的起始位置 到距离矩阵中的目标位置之间的第一累加距离。以下结合图6介绍本申请 实施例中计算距离矩阵中的终止位置到目标位置之间的第二累加距离,具 体可以包括如下步骤S610至步骤S630,详细说明如下:
在步骤S610中,分别计算距离矩阵中的终止位置到距离矩阵中与目标 位置关联的多个第二候选位置之间的累加距离,所述多个第二候选位置位 于所述目标位置与所述终止位置之间。
在本申请的一个实施例中,在从距离矩阵的终止位置开始计算累加距 离时,可以从矩阵上的三个方向来逐个位置进行距离累加计算,即图7中 所示的下、左和左下斜对角。比如,若目标位置的坐标为(i,j),则多个第 二候选位置的坐标可以包括:(i+1,j+1)、(i+1,j+y)、(i+y,j+1),其中,y 为自然数,比如y可以为0,2、3等。
在本申请的一个实施例中,上述实施例中的y可以大于1,在这种情况 下,在计算累加距离时可以间隔(y-1)一个位置进行累加,进而可以加速累 加距离的计算过程,有利于提高计算速率。但是,为了保证计算结果的准 确性,y的值又不便于取过大的值,因此可以根据实际需要进行设定,比 如可以设置为2。
在本申请的一个实施例中,计算终止位置到第二候选位置之间的累加 距离的过程与计算终止位置到目标位置的累加距离的过程类似。
在步骤S620中,根据所述终止位置到各个所述第二候选位置之间的累 加距离,以及各个所述第二候选位置所表示的距离值,计算所述终止位置 到所述目标位置之间的多个第二候选累加距离。
在本申请的一个实施例中,步骤S620中计算终止位置到目标位置之间 的多个第二候选累加距离的过程可以是:对终止位置到各个第二候选位置 之间的累加距离与各个第二候选位置所表示的距离值进行求和,得到各个 第二候选位置对应的距离和值,将各个第二候选位置对应的距离和值分别 作为一个第二候选累加距离。
比如,若某个第二候选位置为(i+1,j+1),该第二候选位置所表示的距 离值为d(i+1,j+1),那么该第二候选位置对应的距离和值可以表示为: D_backward(i+1,j+1)+d(i+1,j+1),其中的D_backward(i+1,j+1)表示距离矩阵 中的终止位置到该第二候选位置之间的累加距离。
在本申请的一个实施例中,步骤S620中计算终止位置到目标位置之间 的多个第二候选累加距离的过程可以是:根据各个第二候选位置所表示的 距离值,以及各个第二候选位置对应的权重值,对各个第二候选位置所表 示的距离值进行加权计算,得到各个第二候选位置对应的加权距离值;对 所述终止位置到各个第二候选位置之间的累加距离与各个第二候选位置对 应的加权距离值进行求和,得到各个第二候选位置对应的距离和值,将各 个第二候选位置对应的距离和值分别作为一个第二候选累加距离。比如, 若某个第二候选位置为(i+1,j+1),该第二候选位置所表示的距离值为 d(i+1,j+1),该第二候选位置对应的权重值为w,那么该第二候选位置对应 的距离和值可以表示为:D_backward(i+1,j+1)+d(i+1,j+1)×w,其中的 D_backward(i+1,j+1)表示距离矩阵中的终止位置到该第二候选位置之间的累 加距离。
即在上述实施例中,考虑到了各个第二候选位置对应的权重值,这是 由于各个第二候选位置与距离矩阵的对角线之间的距离可能不同,为了避 免最后从各个第二候选位置中选择的位置偏离距离矩阵的对角线过远,则 可以根据各个第二候选位置与距离矩阵的对角线之间的距离来设置各个第 二候选位置对应的权重。比如,若某个位置距离对角线越近,则该位置对 应的权重越接近1;若某个位置距离对角线越远,则该位置对应的权重越大。其中,距离矩阵的对角线是由距离矩阵的起始位置与终止位置形成的 直线。
继续参照图6所示,在步骤S630中,将所述多个第二候选累加距离中 的最小值作为所述第二累加距离。
图6所示实施例的技术方案使得能够计算得到从距离矩阵的终止位置 到距离矩阵中的目标位置之间的第二累加距离。
继续参照图2所示,在步骤S240中,基于所述第一累加距离和所述第 二累加距离计算所述第一特征序列与所述第二特征序列之间的最小距离, 并根据所述最小距离确定所述第一音频片段与所述第二音频片段之间的匹 配度。
在本申请的一个实施例中,如图8所示,步骤S240中基于第一累加距 离和第二累加距离计算第一特征序列与第二特征序列之间的最小距离的过 程,可以包括如下步骤S810至步骤S820:
在步骤S810中,基于第一累加距离、第二累加距离和目标位置所表示 的距离值,计算所述目标位置对应的最小累加距离。
在本申请的一个实施例中,可以对目标位置所表示的距离值、第一累 加距离和第二累加距离进行求和,得到目标位置对应的最小累加距离。比 如,若目标位置为(i,j)、目标位置所表示的距离值为d(i,j)、第一累加距离 为D_forward(i,j)、第二累加距离为D_backward(i,j),那么目标位置对应的 最小累加距离为D_total(i,j)=D_forward(i,j)+D_backward(i,j)+d(i,j)。
在本申请的一个实施例中,可以根据目标位置所表示的距离值和目标 位置对应的权重值进行加权计算,得到目标位置对应的加权距离值,然后 对目标位置对应的加权距离值、第一累加距离和第二累加距离进行求和, 得到目标位置对应的最小累加距离。比如,若目标位置为(i,j)、目标位置 所表示的距离值为d(i,j)、目标位置对应的权重值为w、第一累加距离为 D_forward(i,j)、第二累加距离为D_backward(i,j),那么目标位置对应的最 小累加距离为D_total(i,j)=D_forward(i,j)+D_backward(i,j)+d(i,j)×w。其中,目标位置对应的权重值也可以根据目标位置与距离矩阵的对角线之间的距 离来确定。
继续参照图8所示,在步骤S820中,从多个所述目标位置对应的最小 累加距离中选择最小值作为所述第一特征序列与所述第二特征序列之间的 最小距离。
在本申请的一个实施例中,第一特征序列与第二特征序列之间的最小 距离即为
Figure BDA0002072110520000131
在本申请的一个实施例中,如图9所示,步骤S240中根据第一特征序 列与第二特征序列之间的最小距离确定第一音频片段与第二音频片段之间 的匹配度的过程,可以包括如下步骤S910至步骤S930:
在步骤S910中,获取第一音频片段与第二音频片段的多种特征分别对 应的第一特征序列和第二特征序列之间的最小距离。
在本申请的一个实施例中,音频片段的多种特征可以包括:音频片段 的音高特征、乐音能量、频率倒谱系数、每帧的均方根能量值等。步骤 S910中即为针对音频片段的每种特征,都分别获取到第一音频片段的特征 序列与第二音频片段的特征序列,并据此计算两特征序列之间的最小距 离,进而可以得到多种特征分别对应的第一特征序列和第二特征序列之间 的最小距离。
在步骤S920中,根据各种所述特征对应的权重和各种所述特征对应的 所述第一特征序列和所述第二特征序列之间的最小距离进行加权求和计 算,得到所述第一音频片段和所述第二音频片段之间的加权距离值。
在本申请的一个实施例中,特征对应的权重可以根据特征的重要程度 来设定,比如若某个特征比较重要,那么可以将该特征对应的权重设置为 较大的值;若某个特征相对不是太重要,那么可以将该特征对应的权重设 置为较小的值,进而可以突出重要特征对加权距离值的影响,并弱化非重 要特征对加权距离值的影响。
在步骤S930中,根据所述第一音频片段和所述第二音频片段之间的加 权距离值确定所述第一音频片段和所述第二音频片段之间的匹配度。
在本申请的一个实施例中,在计算得到第一音频片段和第二音频片段 之间的加权距离值之后,可以将该加权距离值除以一个参考值(如可以是 第一特征序列的长度或第二特征序列的长度)来计算得到匹配分数,进而 根据匹配分数来确定第一音频片段和第二音频片段之间的匹配度。比如, 若匹配分数较大,则可以确定第一音频片段和第二音频片段之间的匹配度 较强;相反地,若匹配分数较小,则可以确定第一音频片段和第二音频片段之间的匹配度较弱。
在本申请的一个实施例中,步骤S240中根据第一特征序列与第二特征 序列之间的最小距离确定第一音频片段与第二音频片段之间的匹配度的过 程,也可以是直接将一个特征对应的第一特征序列与第二特征序列之间的 最小距离作为第一音频片段与第二音频片段之间的距离,进而来确定第一 音频片段与第二音频片段之间的匹配度。
本申请上述实施例的技术方案由于可以从两个方向(即距离矩阵的起 始位置到目标位置、距离矩阵的终止位置到目标位置)来综合计算音频片 段的特征序列之间的最小距离,因此能够兼顾特征序列在两个方向上的匹 配关系,进而能够保证计算得到的两个特征序列之间的最小距离更加准 确,从而有利于提高音频片段匹配的准确性。
以下以哼唱评分场景为例,对本申请实施例的技术方案进行详细阐 述:
如图10所示,根据本申请实施例的哼唱评分方法,包括如下步骤:
步骤S1001,采集用户清唱的音频片段。
在本申请的一个实施例中,用户可以清唱一小段指定歌曲,终端采集 用户的音频片段,并记录音频片段的开始和结束时间,进而得到音频时 长。可选地,当终端采集到的音频片段的音频时长小于预设时间长度时, 则可以过滤掉该段音频片段,并且可以返回评分失败的信息。
步骤S1002,提取音频片段的音高序列。
在本申请的一个实施例中,可以采用自相关函数法、Yin算法或PYin 算法按照指定的采样率来提取音频片段的音高序列。
步骤S1003,提取目标歌曲片段midi(Musical Instrument Digital Interface,乐器数字接口)的音高序列。
在本申请的一个实施例中,哼唱评分底层依赖于音乐midi库,它是评 分标准的来源。其中,用户清唱的音频片段对应有开始时间戳和结束时间 戳,可精确对应至midi库中的一段音符序列,然后根据midi音符与音高的 换算公式得出音高序列。可选地,目标歌曲片段midi的音高序列可以预先 生成在midi库中。
需要说明的是,步骤S1003与步骤S1001和步骤S1002之间并没有绝 对的先后顺序。
步骤S1004,采用本申请实施例的音频信息匹配算法计算两个音高序 列的最小距离。
步骤S1005,将最小距离的结果经过换算公式转换为标准得分。
在本申请的一个实施例中,由于步骤S1004中的最小距离是通过累加 得到的,因此音高序列越长,计算得到的最小距离的值越大,为了消除这 个影响,可以将步骤S1004计算得到的最小距离除以用户音频片段的音高 序列长度得到标准得分,进而可以将该标准得分反馈给用户。
在上述步骤S1004中,假设两个音高序列分别为序列p和序列q,其 中序列p的长度为m,序列q的长度为n,即p=(p1,p2,...,pi,...,pm); q=(q1,q2,...,qj,...,qn)。那么采用本申请实施例的音频信息匹配算法计算两个 音高序列的最小距离的方案如下所述,主要包括下述步骤(1)、步骤(2) 和步骤(3):
在步骤(1)中,计算序列p和序列q的距离矩阵和权重矩阵。
在本申请的一个实施例中,距离矩阵中的位置(i,j)表示pi与qj之间的距 离d(i,j),若该距离是欧式距离,那么d(i,j)=(pi-qj)2
在本申请的一个实施例中,权重矩阵是考虑距离矩阵中的元素位置 (i,j)与距离矩阵的对角线(即点(1,1)与点(m,n)形成的直线)之间 的距离,如果序列p和序列q越接近,则最后计算出的从距离矩阵的起始 位置(即点(1,1))到终止位置(即点(m,n))之间的最优路径越靠近 对角线,因此对于远离对角线的元素位置,可考虑设置惩罚权重,即元素 位置越接近对角线,则对应的权重越接近1,元素位置越远离对角线,则 对应的权重越大。
在本申请的一个实施例中,距离矩阵中的位置(i,j)与距离矩阵的对角 线之间的距离t(i,j)可以近似为:
Figure BDA0002072110520000161
在本申请的一个实施例中,权重矩阵中位置(i,j)的计算公式是t(i,j)的 平滑修正,即距离矩阵中的位置(i,j)对应的权重w(i,j)可以通过如下公式1 来计算:
w(i,j)=[1+t(i,j)×0.025]×[1+log(1+t(i,j)×0.025)] 公式1
其中,上述公式1中的数值仅为示例。
在步骤(2)中:根据上述步骤(1)计算得到的距离矩阵和权重矩 阵,计算向前累加距离矩阵、向前来源节点矩阵、向后累加距离矩阵和向 后来源节点矩阵。
在本申请的一个实施例中,可以从距离矩阵的起始位置和终止位置分 别向中间位置回溯来找出最短距离。即本申请实施例中提出了改进的DTW (Dynamic Time Warping,动态时间归整)算法,可以进行双向计算,以兼 顾考虑序列头部匹配和尾部匹配,使得匹配情况更加全面。
在本申请的一个实施例中,在从距离矩阵的起始位置向前计算的过程 中,为了加速距离累加的过程并考虑距离矩阵中的元素位置与对角线的偏 离程度(即元素位置对应的权重),位置(i,j)的累加距离可以从(i-1,j-1)、 (i-1,j-2)和(i-2,j-1)三个位置开始,并且可以定义如下述公式2所示的向 前局部判决函数D_forward(i,j),用于表示从距离矩阵的起始位置到距离矩 阵中的位置(i,j)的累加距离,并以此得到向前累加距离矩阵。
Figure BDA0002072110520000162
在本申请的一个实施例中,为了优化计算结果,可以对公式2进行调 整,得到如下公式3:
Figure BDA0002072110520000163
在上述实施例中,从距离矩阵的起始位置向前计算是从距离矩阵的左 下角(1,1)开始,每一行从左到右计算,在计算向前累加距离D_forward(i,j) 的同时,将D_forward(i,j)的来源节点下标,即(i-1,j-1)、(i-1,j-2)和 (i-2,j-1)中的一个,存入向前来源节点矩阵中的(i,j)位置。
在本申请的一个实施例中,在从距离矩阵的终止位置向后计算的过程 与前述实施例中向前计算的方案类似,只是计算方向是从距离矩阵的终止 位置开始,即从距离矩阵的右上角(m,n)位置开始,(i,j)位置的累加距离可 以从(i+1,j+1)、(i+1,j+2)和(i+2,j+1)三个位置开始。并且可以定义如下述公式 4所示的向后局部判决函数D_backward(i,j),用于表示从距离矩阵的终止位 置到距离矩阵中的位置(i,j)的累加距离,并以此得到向后累加距离矩阵。
Figure BDA0002072110520000171
在本申请的一个实施例中,为了优化计算结果,可以对公式4进行调 整,得到如下公式5:
Figure BDA0002072110520000172
在上述实施例中,从距离矩阵的终止位置向后计算是从距离矩阵的右 上角(m,n)开始,每一行从右到左计算,在计算向后累加距离 D_backward(i,j)的同时,将D_backward(i,j)的来源节点下标,即(i+1,j+1)、 (i+1,j+2)和(i+2,j+1)中的一个,存入向后来源节点矩阵中的(i,j)位置。
在步骤(3)中:从向前累加距离矩阵和向后累加距离矩阵中获取最小 距离和最短路径。
在本申请的一个实施例中,距离矩阵中的任何一个位置(i,j)均可从左 下角和右上角开始找到连接到(i,j)的最短路径,其中最短距离计算公式如 下述公式6所示:
D_total(i,j)=d(i,j)×w(i,j)+D_forward(i,j)+D_backward(i,j) 公式6
基于上述公式6,可以通过如下公式7计算得到最小距离min_dist:
Figure BDA0002072110520000181
在最小距离对应的位置查找向前来源节点矩阵和向后来源节点矩阵, 获取上一个节点的下标,并依次遍历得到向前(从(1,1)到(i,j))和向后(从 (m,n)到(i,j))两条路径,合起来即为全局最佳路径。具体地,如图11所 示,两个音高序列分别为1101和1102,根据本申请上述实施例的技术方案 最终得到的全局最佳路径为1103。
本申请上述实施例的技术方案兼顾考虑了音高序列的头部优先匹配和 尾部优先匹配,因此匹配情况更加全面;同时,在计算累积距离时考虑了 位置与距离矩阵对角线的偏移量,避免了最后得到的最佳路径大幅偏离距 离矩阵的对角线,因此使得序列匹配更具鲁棒性。
以下介绍本申请的装置实施例,可以用于执行本申请上述实施例中的 音频片段的匹配方法。对于本申请装置实施例中未披露的细节,请参照本 申请上述的音频片段的匹配方法的实施例。
图12示出了根据本申请的一个实施例的音频片段的匹配装置的框图。
参照图12所示,根据本申请的一个实施例的音频片段的匹配装置 1200,包括:获取单元1202、构建单元1204、第一处理单元1206和第二 处理单元1208。
其中,获取单元1202用于获取第一音频片段对应的第一特征序列和第 二音频片段对应的第二特征序列;构建单元1204用于根据所述第一特征序 列的长度和所述第二特征序列的长度构建所述第一特征序列与所述第二特 征序列之间的距离矩阵,所述距离矩阵中的各个位置表示所述第一特征序 列上的一个点与所述第二特征序列上的一个点之间的距离;第一处理单元 1206用于计算所述距离矩阵中的起始位置到所述距离矩阵中的目标位置之 间的第一累加距离,并计算所述距离矩阵中的终止位置到所述目标位置之 间的第二累加距离;第二处理单元1208用于基于所述第一累加距离和所述 第二累加距离计算所述第一特征序列与所述第二特征序列之间的最小距 离,并根据所述最小距离确定所述第一音频片段与所述第二音频片段之间 的匹配度。
在本申请的一些实施例中,第一处理单元1206包括:第一计算单元, 用于分别计算所述起始位置到所述距离矩阵中与所述目标位置关联的多个 第一候选位置之间的累加距离,所述多个第一候选位置位于所述起始位置 与所述目标位置之间;第二计算单元,用于根据所述起始位置到各个所述 第一候选位置之间的累加距离,以及各个所述第一候选位置所表示的距离 值,计算所述起始位置到所述目标位置之间的多个第一候选累加距离;第 一确定单元,用于将所述多个第一候选累加距离中的最小值作为所述第一 累加距离。
在本申请的一些实施例中,所述第二计算单元配置为:对所述起始位 置到各个所述第一候选位置之间的累加距离与各个所述第一候选位置所表 示的距离值进行求和,得到各个所述第一候选位置对应的距离和值,将各 个所述第一候选位置对应的距离和值分别作为一个所述第一候选累加距 离。
在本申请的一些实施例中,所述第二计算单元配置为:根据各个所述 第一候选位置所表示的距离值,以及各个所述第一候选位置对应的权重 值,对各个所述第一候选位置所表示的距离值进行加权计算,得到各个所 述第一候选位置对应的加权距离值;对所述起始位置到各个所述第一候选 位置之间的累加距离与各个所述第一候选位置对应的加权距离值进行求 和,得到各个所述第一候选位置对应的距离和值,将各个所述第一候选位 置对应的距离和值分别作为一个所述第一候选累加距离。
在本申请的一些实施例中,所述的音频片段的匹配装置1200还包括: 第三计算单元,用于计算各个所述第一候选位置与所述距离矩阵的对角线 之间的距离,所述对角线是由所述起始位置与所述终止位置形成的直线; 根据各个所述第一候选位置与所述对角线之间的距离,计算各个所述第一 候选位置对应的权重值。
在本申请的一些实施例中,若所述目标位置的坐标为(i,j),则所述多 个第一候选位置的坐标包括:(i-1,j-1)、(i-1,j-x)、(i-x,j-1),其中,x为 小于i或j的自然数。
在本申请的一些实施例中,第一处理单元1206包括:第四计算单元, 用于分别计算所述终止位置到所述距离矩阵中与所述目标位置关联的多个 第二候选位置之间的累加距离,所述多个第二候选位置位于所述目标位置 与所述终止位置之间;第五计算单元,用于根据所述终止位置到各个所述 第二候选位置之间的累加距离,以及各个所述第二候选位置所表示的距离 值,计算所述终止位置到所述目标位置之间的多个第二候选累加距离;第 二确定单元,用于将所述多个第二候选累加距离中的最小值作为所述第二 累加距离。
在本申请的一些实施例中,若所述目标位置的坐标为(i,j),则所述多 个第二候选位置的坐标包括:(i+1,j+1)、(i+1,j+x)、(i+x,j+1),其中,x为 自然数。
在本申请的一些实施例中,所述x的值为2。
在本申请的一些实施例中,第二处理单元1208配置为:基于所述第一 累加距离、所述第二累加距离和所述目标位置所表示的距离值,计算所述 目标位置对应的最小累加距离;从多个所述目标位置对应的最小累加距离 中选择最小值作为所述第一特征序列与所述第二特征序列之间的最小距 离。
在本申请的一些实施例中,第二处理单元1208配置为:对所述目标位 置所表示的距离值、所述第一累加距离和所述第二累加距离进行求和,得 到所述目标位置对应的最小累加距离;或
根据所述目标位置所表示的距离值和所述目标位置对应的权重值进行 加权计算,得到所述目标位置对应的加权距离值,对所述目标位置对应的 加权距离值、所述第一累加距离和所述第二累加距离进行求和,得到所述 目标位置对应的最小累加距离。
在本申请的一些实施例中,第二处理单元1208配置为:获取所述第一 音频片段与所述第二音频片段的多种特征分别对应的所述第一特征序列和 所述第二特征序列之间的最小距离;根据各种所述特征对应的权重和各种 所述特征对应的所述第一特征序列和所述第二特征序列之间的最小距离进 行加权求和计算,得到所述第一音频片段和所述第二音频片段之间的加权 距离值;根据所述第一音频片段和所述第二音频片段之间的加权距离值确 定所述第一音频片段和所述第二音频片段之间的匹配度。
在本申请的一些实施例中,基于前述方案,所述多种特征包括:音频 片段的音高特征、乐音能量、频率倒谱系数、每帧的均方根能量值。
图13示出了适于用来实现本申请实施例的电子设备的计算机系统的结 构示意图。
需要说明的是,图13示出的电子设备的计算机系统1300仅是一个示 例,不应对本申请实施例的功能和使用范围带来任何限制。
如图13所示,计算机系统1300包括中央处理单元(Central Processing Unit,CPU)1301,其可以根据存储在只读存储器(Read-Only Memory, ROM)1302中的程序或者从存储部分1308加载到随机访问存储器 (Random Access Memory,RAM)1303中的程序而执行各种适当的动作和 处理,例如执行上述实施例中所述的方法。在RAM 1303中,还存储有系统操作所需的各种程序和数据。CPU 1301、ROM 1302以及RAM 1303通 过总线1304彼此相连。输入/输出(Input/Output,I/O)接口1305也连接 至总线1304。
以下部件连接至I/O接口1305:包括键盘、鼠标等的输入部分1306; 包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1307;包括硬盘等的存 储部分1308;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调 制解调器等的网络接口卡的通信部分1309。通信部分1309经由诸如因特 网的网络执行通信处理。驱动器1310也根据需要连接至I/O接口1305。可 拆卸介质1311,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要 安装在驱动器1310上,以便于从其上读出的计算机程序根据需要被安装入 存储部分1308。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实 现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品, 其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执 行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以 通过通信部分1309从网络上被下载和安装,和/或从可拆卸介质1311被安 装。在该计算机程序被中央处理单元(CPU)1301执行时,执行本申请的 系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可 读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机 可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、 或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介 质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便 携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、 可擦式可编程只读存储器(Erasable Programmable Read Only Memory, EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read- Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合 适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序 的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结 合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作 为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种 传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上 述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介 质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传 输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计 算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限 于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法 和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或 框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模 块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的 可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功 能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方 框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依 所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框 图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于 硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也 可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其 中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读 介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存 在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个 程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设 备实现上述实施例中所述的方法。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干 模块或者单元,但是这种划分并非强制性的。实际上,根据本申请的实施 方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块 或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可 以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述 的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方 式来实现。因此,根据本申请实施方式的技术方案可以以软件产品的形式 体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD- ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设 备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据 本申请实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的实施方式后,将容易 想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或 者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理 并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精 确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅 由所附的权利要求来限制。

Claims (15)

1.一种音频片段的匹配方法,其特征在于,包括:
获取第一音频片段对应的第一特征序列和第二音频片段对应的第二特征序列;
根据所述第一特征序列的长度和所述第二特征序列的长度构建所述第一特征序列与所述第二特征序列之间的距离矩阵,所述距离矩阵中的各个位置表示所述第一特征序列上的一个点与所述第二特征序列上的一个点之间的距离;
计算所述距离矩阵中的起始位置到所述距离矩阵中的目标位置之间的第一累加距离,并计算所述距离矩阵中的终止位置到所述目标位置之间的第二累加距离;
基于所述第一累加距离和所述第二累加距离计算所述第一特征序列与所述第二特征序列之间的最小距离,并根据所述最小距离确定所述第一音频片段与所述第二音频片段之间的匹配度。
2.根据权利要求1所述的音频片段的匹配方法,其特征在于,计算所述距离矩阵中的起始位置到所述距离矩阵中的目标位置之间的第一累加距离,包括:
分别计算所述起始位置到所述距离矩阵中与所述目标位置关联的多个第一候选位置之间的累加距离,所述多个第一候选位置位于所述起始位置与所述目标位置之间;
根据所述起始位置到各个所述第一候选位置之间的累加距离,以及各个所述第一候选位置所表示的距离值,计算所述起始位置到所述目标位置之间的多个第一候选累加距离;
将所述多个第一候选累加距离中的最小值作为所述第一累加距离。
3.根据权利要求2所述的音频片段的匹配方法,其特征在于,根据所述起始位置到各个所述第一候选位置之间的累加距离,以及各个所述第一候选位置所表示的距离值,计算所述起始位置到所述目标位置之间的多个第一候选累加距离,包括:
对所述起始位置到各个所述第一候选位置之间的累加距离与各个所述第一候选位置所表示的距离值进行求和,得到各个所述第一候选位置对应的距离和值,将各个所述第一候选位置对应的距离和值分别作为一个所述第一候选累加距离。
4.根据权利要求2所述的音频片段的匹配方法,其特征在于,根据所述起始位置到各个所述第一候选位置之间的累加距离,以及各个所述第一候选位置所表示的距离值,计算所述起始位置到所述目标位置之间的多个第一候选累加距离,包括:
根据各个所述第一候选位置所表示的距离值,以及各个所述第一候选位置对应的权重值,对各个所述第一候选位置所表示的距离值进行加权计算,得到各个所述第一候选位置对应的加权距离值;
对所述起始位置到各个所述第一候选位置之间的累加距离与各个所述第一候选位置对应的加权距离值进行求和,得到各个所述第一候选位置对应的距离和值,将各个所述第一候选位置对应的距离和值分别作为一个所述第一候选累加距离。
5.根据权利要求4所述的音频片段的匹配方法,其特征在于,还包括:
计算各个所述第一候选位置与所述距离矩阵的对角线之间的距离,所述对角线是由所述起始位置与所述终止位置形成的直线;
根据各个所述第一候选位置与所述对角线之间的距离,计算各个所述第一候选位置对应的权重值。
6.根据权利要求2所述的音频片段的匹配方法,其特征在于,若所述目标位置的坐标为(i,j),则所述多个第一候选位置的坐标包括:(i-1,j-1)、(i-1,j-x)、(i-x,j-1),其中,x为小于i或j的自然数。
7.根据权利要求1所述的音频片段的匹配方法,其特征在于,计算所述距离矩阵中的终止位置到所述目标位置之间的第二累加距离,包括:
分别计算所述终止位置到所述距离矩阵中与所述目标位置关联的多个第二候选位置之间的累加距离,所述多个第二候选位置位于所述目标位置与所述终止位置之间;
根据所述终止位置到各个所述第二候选位置之间的累加距离,以及各个所述第二候选位置所表示的距离值,计算所述终止位置到所述目标位置之间的多个第二候选累加距离;
将所述多个第二候选累加距离中的最小值作为所述第二累加距离。
8.根据权利要求7所述的音频片段的匹配方法,其特征在于,若所述目标位置的坐标为(i,j),则所述多个第二候选位置的坐标包括:(i+1,j+1)、(i+1,j+x)、(i+x,j+1),其中,x为自然数。
9.根据权利要求6或8所述的音频片段的匹配方法,其特征在于,所述x的值为2。
10.根据权利要求1至8中任一项所述的音频片段的匹配方法,其特征在于,基于所述第一累加距离和所述第二累加距离计算所述第一特征序列与所述第二特征序列之间的最小距离,包括:
基于所述第一累加距离、所述第二累加距离和所述目标位置所表示的距离值,计算所述目标位置对应的最小累加距离;
从多个所述目标位置对应的最小累加距离中选择最小值作为所述第一特征序列与所述第二特征序列之间的最小距离。
11.根据权利要求10所述的音频片段的匹配方法,其特征在于,基于所述第一累加距离、所述第二累加距离和所述目标位置所表示的距离值,计算所述目标位置对应的最小累加距离,包括:
对所述目标位置所表示的距离值、所述第一累加距离和所述第二累加距离进行求和,得到所述目标位置对应的最小累加距离;或
根据所述目标位置所表示的距离值和所述目标位置对应的权重值进行加权计算,得到所述目标位置对应的加权距离值,对所述目标位置对应的加权距离值、所述第一累加距离和所述第二累加距离进行求和,得到所述目标位置对应的最小累加距离。
12.根据权利要求1至8中任一项所述的音频片段的匹配方法,其特征在于,根据所述最小距离确定所述第一音频片段与所述第二音频片段之间的匹配度,包括:
获取所述第一音频片段与所述第二音频片段的多种特征分别对应的所述第一特征序列和所述第二特征序列之间的最小距离;
根据各种所述特征对应的权重和各种所述特征对应的所述第一特征序列和所述第二特征序列之间的最小距离进行加权求和计算,得到所述第一音频片段和所述第二音频片段之间的加权距离值;
根据所述第一音频片段和所述第二音频片段之间的加权距离值确定所述第一音频片段和所述第二音频片段之间的匹配度。
13.一种音频片段的匹配装置,其特征在于,包括:
获取单元,用于获取第一音频片段对应的第一特征序列和第二音频片段对应的第二特征序列;
构建单元,用于根据所述第一特征序列的长度和所述第二特征序列的长度构建所述第一特征序列与所述第二特征序列之间的距离矩阵,所述距离矩阵中的各个位置表示所述第一特征序列上的一个点与所述第二特征序列上的一个点之间的距离;
第一处理单元,用于计算所述距离矩阵中的起始位置到所述距离矩阵中的目标位置之间的第一累加距离,并计算所述距离矩阵中的终止位置到所述目标位置之间的第二累加距离;
第二处理单元,用于基于所述第一累加距离和所述第二累加距离计算所述第一特征序列与所述第二特征序列之间的最小距离,并根据所述最小距离确定所述第一音频片段与所述第二音频片段之间的匹配度。
14.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至12中任一项所述的音频片段的匹配方法。
15.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1至12中任一项所述的音频片段的匹配方法。
CN201910441366.5A 2019-05-24 2019-05-24 音频片段的匹配方法、装置、计算机可读介质及电子设备 Active CN111986698B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201910441366.5A CN111986698B (zh) 2019-05-24 2019-05-24 音频片段的匹配方法、装置、计算机可读介质及电子设备
JP2021535923A JP7337169B2 (ja) 2019-05-24 2020-05-22 オーディオクリップのマッチング方法及びその装置、コンピュータプログラム並びに電子機器
PCT/CN2020/091698 WO2020238777A1 (zh) 2019-05-24 2020-05-22 音频片段的匹配方法、装置、计算机可读介质及电子设备
EP20815214.0A EP3979241B1 (en) 2019-05-24 2020-05-22 Audio clip matching method and apparatus, computer-readable medium and electronic device
US17/336,562 US11929090B2 (en) 2019-05-24 2021-06-02 Method and apparatus for matching audio clips, computer-readable medium, and electronic device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910441366.5A CN111986698B (zh) 2019-05-24 2019-05-24 音频片段的匹配方法、装置、计算机可读介质及电子设备

Publications (2)

Publication Number Publication Date
CN111986698A true CN111986698A (zh) 2020-11-24
CN111986698B CN111986698B (zh) 2023-06-30

Family

ID=73437134

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910441366.5A Active CN111986698B (zh) 2019-05-24 2019-05-24 音频片段的匹配方法、装置、计算机可读介质及电子设备

Country Status (5)

Country Link
US (1) US11929090B2 (zh)
EP (1) EP3979241B1 (zh)
JP (1) JP7337169B2 (zh)
CN (1) CN111986698B (zh)
WO (1) WO2020238777A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113268630A (zh) * 2021-06-08 2021-08-17 腾讯音乐娱乐科技(深圳)有限公司 一种音频检索方法、设备及介质
CN113488083A (zh) * 2021-08-23 2021-10-08 北京字节跳动网络技术有限公司 数据匹配方法、装置、介质及电子设备
WO2022148163A1 (zh) * 2021-01-05 2022-07-14 北京字跳网络技术有限公司 一种音乐片段的定位方法、装置、设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0103258A1 (en) * 1982-09-06 1984-03-21 Nec Corporation Pattern matching apparatus
JPS62144200A (ja) * 1985-12-18 1987-06-27 富士通株式会社 連続音声認識装置
KR101551122B1 (ko) * 2014-09-26 2015-09-08 중앙대학교 산학협력단 사용자 단말에서의 패턴 인식 방법 및 그 장치
US20160196343A1 (en) * 2015-01-02 2016-07-07 Gracenote, Inc. Audio matching based on harmonogram
CN106547797A (zh) * 2015-09-23 2017-03-29 腾讯科技(深圳)有限公司 音频生成方法和装置
CN107563297A (zh) * 2017-08-07 2018-01-09 中国石油天然气集团公司 一种波形匹配方法及装置

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5727299A (en) * 1980-07-28 1982-02-13 Fujitsu Ltd Feature vector time series interval distance calculating device
JPS61292697A (ja) * 1985-06-21 1986-12-23 三菱電機株式会社 パタン類似度計算装置
JPS62147496A (ja) * 1985-12-23 1987-07-01 富士通株式会社 連続音声認識装置
JP3631650B2 (ja) * 1999-03-26 2005-03-23 日本電信電話株式会社 音楽検索装置,音楽検索方法および音楽検索プログラムを記録した計算機読み取り可能な記録媒体
JP2001134584A (ja) * 1999-11-04 2001-05-18 Nippon Telegr & Teleph Corp <Ntt> 類似データの検索方法,検索装置および類似データ検索プログラム記録媒体
US20070048695A1 (en) * 2005-08-31 2007-03-01 Wen-Chen Huang Interactive scoring system for learning language
EP1785891A1 (en) * 2005-11-09 2007-05-16 Sony Deutschland GmbH Music information retrieval using a 3D search algorithm
JP5228432B2 (ja) * 2007-10-10 2013-07-03 ヤマハ株式会社 素片検索装置およびプログラム
RU2419890C1 (ru) * 2009-09-24 2011-05-27 Общество с ограниченной ответственностью "Центр речевых технологий" Способ идентификации говорящего по фонограммам произвольной устной речи на основе формантного выравнивания
JP5728918B2 (ja) * 2010-12-09 2015-06-03 ヤマハ株式会社 情報処理装置
CN103871426A (zh) * 2012-12-13 2014-06-18 上海八方视界网络科技有限公司 对比用户音频与原唱音频相似度的方法及其系统
US9344759B2 (en) * 2013-03-05 2016-05-17 Google Inc. Associating audio tracks of an album with video content
GB201310861D0 (en) * 2013-06-18 2013-07-31 Nokia Corp Audio signal analysis
US9390727B2 (en) * 2014-01-13 2016-07-12 Facebook, Inc. Detecting distorted audio signals based on audio fingerprinting
WO2015120184A1 (en) * 2014-02-06 2015-08-13 Otosense Inc. Instant real time neuro-compatible imaging of signals
JP6011565B2 (ja) * 2014-03-05 2016-10-19 カシオ計算機株式会社 音声検索装置、音声検索方法及びプログラム
US20170294185A1 (en) * 2016-04-08 2017-10-12 Knuedge Incorporated Segmentation using prior distributions
CN106910494B (zh) * 2016-06-28 2020-11-13 创新先进技术有限公司 一种音频识别方法和装置
US10453475B2 (en) * 2017-02-14 2019-10-22 Adobe Inc. Automatic voiceover correction system
CN106935248B (zh) * 2017-02-14 2021-02-05 广州孩教圈信息科技股份有限公司 一种语音相似度检测方法及装置
US20180254054A1 (en) * 2017-03-02 2018-09-06 Otosense Inc. Sound-recognition system based on a sound language and associated annotations
CN108417226A (zh) * 2018-01-09 2018-08-17 平安科技(深圳)有限公司 语音对比方法、终端及计算机可读存储介质
CN110322897B (zh) * 2018-03-29 2021-09-03 北京字节跳动网络技术有限公司 一种音频检索识别方法及装置
CN109192223B (zh) * 2018-09-20 2020-10-27 广州酷狗计算机科技有限公司 音频对齐的方法和装置
CN109493853B (zh) * 2018-09-30 2022-03-22 福建星网视易信息系统有限公司 一种音频相似度的确定方法及终端

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0103258A1 (en) * 1982-09-06 1984-03-21 Nec Corporation Pattern matching apparatus
JPS62144200A (ja) * 1985-12-18 1987-06-27 富士通株式会社 連続音声認識装置
KR101551122B1 (ko) * 2014-09-26 2015-09-08 중앙대학교 산학협력단 사용자 단말에서의 패턴 인식 방법 및 그 장치
US20160196343A1 (en) * 2015-01-02 2016-07-07 Gracenote, Inc. Audio matching based on harmonogram
CN106547797A (zh) * 2015-09-23 2017-03-29 腾讯科技(深圳)有限公司 音频生成方法和装置
CN107563297A (zh) * 2017-08-07 2018-01-09 中国石油天然气集团公司 一种波形匹配方法及装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022148163A1 (zh) * 2021-01-05 2022-07-14 北京字跳网络技术有限公司 一种音乐片段的定位方法、装置、设备及存储介质
CN113268630A (zh) * 2021-06-08 2021-08-17 腾讯音乐娱乐科技(深圳)有限公司 一种音频检索方法、设备及介质
CN113268630B (zh) * 2021-06-08 2023-03-10 腾讯音乐娱乐科技(深圳)有限公司 一种音频检索方法、设备及介质
CN113488083A (zh) * 2021-08-23 2021-10-08 北京字节跳动网络技术有限公司 数据匹配方法、装置、介质及电子设备

Also Published As

Publication number Publication date
JP7337169B2 (ja) 2023-09-01
CN111986698B (zh) 2023-06-30
EP3979241A4 (en) 2022-08-10
EP3979241B1 (en) 2024-05-15
WO2020238777A1 (zh) 2020-12-03
US11929090B2 (en) 2024-03-12
EP3979241A1 (en) 2022-04-06
US20210287696A1 (en) 2021-09-16
JP2022515173A (ja) 2022-02-17

Similar Documents

Publication Publication Date Title
JP4640407B2 (ja) 信号処理装置、信号処理方法及びプログラム
US11900904B2 (en) Crowd-sourced technique for pitch track generation
EP2816550B1 (en) Audio signal analysis
US20150094835A1 (en) Audio analysis apparatus
CN111986698B (zh) 音频片段的匹配方法、装置、计算机可读介质及电子设备
CN111309965B (zh) 音频匹配方法、装置、计算机设备及存储介质
CN104978962A (zh) 哼唱检索方法及系统
CN108711415B (zh) 纠正伴奏和干音之间的时延的方法、装置及存储介质
CN110010159B (zh) 声音相似度确定方法及装置
CN105718486B (zh) 在线哼唱检索方法及系统
CN108182227B (zh) 伴奏音频推荐方法、装置和计算机可读存储介质
JP6729515B2 (ja) 楽曲解析方法、楽曲解析装置およびプログラム
CN111462775B (zh) 音频相似度确定方法、装置、服务器及介质
CN111445922B (zh) 音频匹配方法、装置、计算机设备及存储介质
CN106919583B (zh) 音频文件的推送方法及装置
CN111863030A (zh) 音频检测方法及装置
CN115329125A (zh) 一种歌曲串烧拼接方法和装置
CN105630831A (zh) 哼唱检索方法及系统
JP2008304610A (ja) 信号特徴抽出方法、信号探索方法、信号特徴抽出装置、コンピュータプログラム、及び、記録媒体
CN114664277A (zh) 音频评估方法及装置
Bohak et al. Probabilistic segmentation of folk music recordings
CN116259291A (zh) 音乐识别方法、装置、存储介质及电子设备
CN115658957A (zh) 基于模糊聚类算法的音乐旋律轮廓提取方法及装置
Wang et al. Note‐based alignment using score‐driven non‐negative matrix factorisation for audio recordings
CN115101094A (zh) 音频处理方法及装置、电子设备、存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant