CN101351767A - 存储和检索基于非文本的信息的系统和方法 - Google Patents
存储和检索基于非文本的信息的系统和方法 Download PDFInfo
- Publication number
- CN101351767A CN101351767A CNA2006800502302A CN200680050230A CN101351767A CN 101351767 A CN101351767 A CN 101351767A CN A2006800502302 A CNA2006800502302 A CN A2006800502302A CN 200680050230 A CN200680050230 A CN 200680050230A CN 101351767 A CN101351767 A CN 101351767A
- Authority
- CN
- China
- Prior art keywords
- score
- label
- music
- steps
- further comprise
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于非文本标识所存储音乐的所选项目的方法。该方法的第一主要部分集中于建立音乐标识数据库。该过程需要捕捉所选音乐项目的标签,并处理该标签以产生关于其的参考关键字。然后标签与参考关键字及关于所存储音乐的关联一起被存储。通过收集多个标签来建立数据库。该方法的第二主要部分是从数据库中检索所存储音乐的所期望的项目。该过程需要从用户处捕捉查询标签,并处理该查询标签以产生关于其的查询关键字。将查询标签与存储于数据库中的参考关键字作比较,以标识所存储音乐的所期望的项目。
Description
背景技术
本发明通常涉及创建可搜索的参考数据库的系统和方法,该系统和方法特别用于但不限于音乐和多媒体文件。特别地,其涉及使用基于非文本的(non-text-based)检索系统来检索已存储的音乐。
保存在数据库中的已存储的音乐集合已经成为商业景观中的共同特征。可是,在这样的数据库中寻找音乐会产生问题。一个明显的问题是使用音乐数据库提供的搜索方法所导致的困难。一般地,用户必须从文本输入开始,一般被指定或输入到特定的搜索字段,例如“歌曲名称”或“艺术家”。但是,用户不记得作品的准确名称,甚至艺术家、团队或作曲者的名称也不记得。在此,不但在例如Engelbert Humperdinck的各种具体名称中存在大量的混淆,而且即使用户能够记住名称,拼写也是个问题。基于文本的音乐搜索的普遍需求造成了现有技术中的固有问题。
而且,一旦从文本开始,现有技术无法为用户提供聆听一段音乐主旋律的机会。此处所用的旋律是指那些人类倾听者会认为其是一段音乐的主要部分的曲调、节奏和可能的歌词的组合。即使可以访问一段音乐的原创配乐和歌词,现有技术完成这样的任务也是困难的。自动从配乐中提取旋律并从歌词中为它加上文字,即便不是不可能也是困难的。已经有一些方法尝试使用信号处理和人工智能方法来从歌曲的数字格式中提取歌曲的主要曲调。这些方法失败了,尤其在涉及多种乐器同时演奏的音乐中。
因此,出现了提供根据基于非文本的检索方法来检索已存储音乐的改进方法和系统的机会。
发明概述
本发明的一个方面是基于非文本标识所存储音乐的所选项目的方法。该方法的第一主要部分集中于建立音乐标识数据库。该过程需要捕获所选音乐项目的标签,并处理该标签以产生关于其的参考关键字(key)。然后标签与参考关键字及关于所存储音乐的关联一起被存储。该数据库通过收集许多标签来建立。该方法的第二主要部分是从数据库中检索所存储音乐的所期望的项目。该过程需要从用户处捕捉查询标签,并处理该查询标签以产生关于其的查询关键字。将查询关键字与存储于数据库中的参考关键字进行比较,以标识所存储音乐的所期望的项目。
附图说明
图1说明了用于建立已存储音乐的基于非文本的数据库的过程的实施例。
图2展示了根据图1所示的实施例的用于控制标签的记录的图形界面的一个实施例。
图3展示了间接标签输入(tag entry)界面的一个实施例。
图4描绘了根据图1的实施例的标签关键字的建立。
图5展示了用于检索已存储音乐的数据库的数据记录的结构。
图6展示了根据图1所示的实施例的用于控制为标签质量投票的图形界面的一个实施例。
图7说明了用于检索已存储音乐的过程的实施例。
图8a和8b说明了用于建立已存储音乐的数据库及检索已存储音乐的过程的实施例。
详细描述
参考附图做出以下详细说明。描述优选实施例是为了说明本发明,而非限制其范围,本发明的范围仅由权利要求限定。那些本领域的普通技术人员可以认识到根据下面的描述的多种等价变换。
可以理解的是,前面的一般描述和下面的详细说明都仅仅是示例性的和解释性的,不像权利要求一样对本发明进行限制。在下面的讨论中,类似附图标记代表类似元素。
一般地,本发明可以想象为两个主要的相关联的部分。第一,必须准备已存储音乐的数据库,围绕基于非文本的结构来建立该数据库。然后,可利用基于非文本的搜索和检索机制来检索所需的音乐项目。整个发明的第一部分在图1和伴随的讨论中进行一般描述,第二部分在图2中描述。
音乐标签
图1描述了用于建立基于非文本的音乐数据库的过程100。本领域技术人员可以得知,这样的数据库具有许多可能的应用。在一个实施例中,该数据库支持较大商业的音乐销售部分,例如出售图书、电子设备和其他产品及音乐的基于web的一般销售操作。另一个实施例使用位于音乐店铺中的音乐台中的数据库,使得顾客可以标识所需音乐。在这两个实施例中,音乐搜索系统将数据馈送至某种购物引擎。可选地,数据库可以是独立网站的主驱动器,在此描述那个实例。本领域技术人员有能力使显示的实例适应其他的环境和应用。这样重要的应用可以使本发明的方法适应移动电话环境,其中小键盘强烈地促进了通过歌唱而不是打字来指示音乐选择的能力。
这个数据库的关键原理是其包含音乐项目旋律的人类感知的人类再现(rendition)。因此,该数据库不包括原创音乐项目,甚至也不包括那些项目的参考部分。它包括此处称为“标签”的音频文件,通常是很短的表演(十几秒长而不是几分钟长),其记录了由人直接或间接再现的音乐旋律,如下所展示的。术语“标签”在下文用于表示这样的再现。
应该注意的是,一组源自人的音乐示例的存在完全避免了限制现有技术的关键问题,即,从复杂音频文件中抽取音乐旋律的某一简单版本的需求。在此,参考样本不仅是简单直接的产品,也是人工制品而不是计算机构造。查询人的感觉更可能比计算机程序的感觉更接近地符合加标签的人的感觉。结果是促成了整个搜索过程的一组数据。
通过诸如单选按钮、菜单选择等传统方法启动“添加音乐”功能之后,用户必须选择是在声音输入模式还是在间接或符号输入模式中输入标签。前一选择需要用户生成用户感觉的音乐旋律的声音再现。声音重现可以采用用户喜欢的任何形式——歌唱、哼唱、吹口哨等。唯一的要求是输入应当为音频信号。这种要求导致了对如麦克风的音频输入设备的需求,但是这种设备的特性和质量留待用户处理。由于用户向数据库中输入项目而不是输入搜索请求,所以必须提供音乐段的名字。此外,用户可以提供艺术家的名字以指示提出一段特定的再现,或简单地为将来的搜索提供更多信息。在一个实施例中,用户提供的文本信息经历智能确认例程,该例程寻找拼写错误等,以努力确保明确的可能数据。该例程可以扩展为检查上下文,以能够查询用户,例如,用户是否确认Aerosmith录制了巴赫大合唱。
如果用户选择声音输入,系统可以提供如图2所示的图形界面。在那里,屏幕140回送用户提供的文本信息,并提供录音控制。屏幕显示了广泛应用于因特网上及因特网下的录音设备的典型控件,这些控件可以被改变或处理,可是最好适应具体实施例的需要。
声音输入可以以任何处理音乐材料的已知格式被捕捉及储存,例如WAV、MP3、WMA等等。不同的文件格式需要如下所述地调整处理系统,但这样的调整也在本领域普通技术人员的能力范围之内。
或者,用户可以通过使用如图3所示的音乐输入界面150来选择非音频输入。这个界面允许用户输入使用直接音符的旋律。提供了五线谱152,在此以具有高音谱号和低音谱号的钢琴式样来进行设置,拖拽区域154以多种节拍值、升半音和降半音符号及其他多种值来提供音符。用户可以拖拽五线谱上的符号来创建旋律。此外,也提供了键盘156,其允许用户点击键,以此在五线谱上显示音符。输入音符的多种技术都是本领域已知的,本领域技术人员能够选择并改变这些技术以适应涉及在此要求的本发明的特定应用的需求。
一种非常有用的输入方法是MIDI界面,以便用户通过在键盘或其他乐器的MIDI设备上演奏而输入旋律。本领域技术人员可以理解将MIDI产生的文件转换为现有系统偏好的格式的最有效的方法。
如上所述将以符号表示的输入转换为音乐格式,优选地转换为被选择来如上所述地处理音频材料的格式。
此时的系统具有可以回放和被人听到的文件,但是对于匹配音乐项目来说它是相对无用的工具。甚至超出匹配文件内容的问题。在需要信号处理来达到能够应用匹配算法这一点上,现有技术是清楚的。现有技术已经提出了许多解决方法,但是直到本发明出现前还没有能够提供合适结果的方法。
图4表示用于为匹配算法生成输入的过程的实施例200。该过程包括处理标签内容以生成适合用于匹配算法的进一步操作的数据结构,这样的数据结构此后被称为“关键字”文件。
还可以理解的是,音乐检索系统可以使用预先录制的音乐文件以备用户的输入来匹配。这样的文件可以包括存在的音乐录音、或提取自该音乐录音或这样音乐的特殊录音版本。对于提供参考音乐的这些或其他方法中的任一个,将音频文件处理为关键字文件如下所述地进行。
最初,音频文件被分割为适当的工作长度——诸如25毫秒——的帧。从方法本身的描述中可以理解,该实施例在信号电平中设置边界,音频文件没有被拆分为邻接的帧,而是在相邻帧之间提供了重叠。优选的是这样的重叠约达帧长度的50%。
步骤204-212展示了依次应用到每个帧的过程,旨在以数字化的音频信号开始并导出一连串音乐音符值。步骤204的第一个动作是为了检测音高升降曲线。现有技术中达到这个结果的许多技术都是已知的。多个实施例利用使用自相关音高追踪的音高追踪器、或平均差分函数(AMDF)分析或调和群(harmonicgrouping)。这些或其他已知方法中的任一种可以被用来产生包括音高值的向量的输出,并且每帧一个音高值。这些输出因此在时间上对应于音高值的轨迹。
接着,在步骤206标识暂停(静默时段)。这可以通过多种已知方法实现。一个实施例使用基于声能的原始值或对数值的能量直方图。然后,如果确定存在多种模式,系统动态地计算“静默阈值”,其定义了有声(大于边界的值)和静默(小于边界的值)之间的边界。
考虑有声的这段时间,步骤208确定音符之间边界的位置。一个实施例分析能量水平和音高值,接通任一因素改变超过所选阈值的点。另一个实施例关注连续帧之间的交叉相关。这些和其他对于本领域人员已知的技术产生一个音符变成另一个的时间值。
可以理解,相邻的音符变化点之间的音高值很可能改变。音符的圆滑和连奏效果实际上确保人的再现不由一连串纯粹的音符组成。可是将音频文件转换为一连串音符需要为每个音符选择固定的音高值。因此,步骤210给每个音符时段指派单个音高值。一个实施例使用音符边界之间的音高升降曲线的算数平均值。另一个实施例使用几何平均值。也可以使用现有技术中的其他已知技术。
最后,量化音符音高值,即,设置成对应于具有预定值的音乐音符。在步骤212中选择特定音符以便将量化中的差分误差最小化。应该注意的是,本方法可以处理音程的任意给定系统并在该系统中发挥作用。对于西方音乐,最通常情况下使用半音系统,但是仅仅通过选择不同的量化表该系统就同样能够与各种其他调音系统一起工作。类似地,可以提供平均律和纯正(well)律。
对于每个帧,结果是具有至少表示音高和音长的值的一系列多维变量。其他实施例能使用附加维度,计入音量、起奏和其他音乐特征及语音因素。
步骤214确定所有的帧是否已被处理并通过步骤204-212循环返回,直到完成。当完成处理时,在计入帧之间重叠量的情况下,从帧结果中组装关键字。
到目前为止,系统已经收集了数据和元数据。数据项包括音频标签和关键字。元数据有几种类型——项目元数据,例如一段音乐的名字、艺术家的名字等;用户元数据,例如用户的名字,以及在一些实施例中的其他标识数据;及系统元数据,例如输入时间或对于应用操作有用的其它信息。系统此时能够建立数据记录,如图5所示。在此,数据记录160包括数据项162和元数据164。前一类别包括音频标签165和关键字166,后者包括项目元数据167、用户元数据168和系统元数据169。
数据库系统本身进一步的细节可以留给本领域技术人员处理。足以支持所示实施例和类似结构的典型数据库应用由Oracle公司、微软公司和其他公司提供。给出此处所示的数据结构,本领域的人员能够建立并支持所需要的数据库应用。
要注意的一点是为了提供快速的搜索结果,本系统不需要使用数据索引。系统能够提供使用关键字文件的直接检索操作,即使规模很大也无需任何索引系统。在一些状况中可能需要引进索引方法,但是该步骤对于如此处所公开和要求的系统操作来说是不需要的。
为了确保广泛覆盖,在讨论中的应用实施例必须积聚相当大的标签数据库。此外,为了进一步确保出现高质量标签,为音乐的每个可能段都收集许多标签是很有利的。数量的第一个问题可以通过建立多个针对激发用户输入标签的激励计划来解决。一个方法可以是简单的支付计划,其中对于输入的每一个标签,都给予用户一定量的补偿。虽然该方法简单,但其不能激发有质量的输入。在系统不仅操作音乐数据库还出售音乐表演的应用环境中,优选的方法是代理模式,其中,如下详述,每次另一个用户基于第一用户输入的标签而购买音乐项目时,就对该第一用户进行补偿。用户输入多个标签,特别是多个高质量标签,可以通过在网站的适当页面被标识为“专业加标签者(power tagger)”等而得到褒奖。多种激励计划都是可能的,用户很可能在不同情况下使用一系列激励计划。
除了传统分类的补偿方案之外,系统操作者可以通过提供用于下载到移动电话的标签以作为铃声而将标签作为收入来源。这样的提供可基于货币支付,或者铃声可被结合到激励计划中。此外,可以通过为每次下载他/她的标签而提供报酬或其他荣誉给原始加标签者来进一步鼓励旋律贡献。对于本领域技术人员来说,会出现其他收入机会,而这些机会都在此处权利要求的范围内。
质量提议的问题是个别的但很重要的问题。许多人不能很好地表演音乐,如果由这样的人输入标签,标签与实际的音乐项目将只具有很少的类似之处。因此,试着“哼唱几个小节”的后继用户也许很好地提交一段音乐的优良再现,但是基于此样本,不会返回正确结果。
如下讨论的实施例中采用了如图6所示的对于那个问题的一种可能解决方法。在此,向用户提供聆听已存在的标签并为其演奏质量投票的机会。那里显示的网页允许投票用户有机会察看相关元数据(加标签者的名字、项目信息等)并使用10星系统为标签的质量投票。投票允许系统在标签中进行区分,标识那些最佳复制旋律的标签和没有最佳复制旋律的标签。由于自己的标签条目,系统操作者很可能想激励用户提交投票,至少在任何给定系统的历史早期。以下包括检索数据中投票信息的使用。如多个实施例所示,投票信息可以以多种方式结合到基本数据库系统中。如下所示的实施例中的一种方法,简单地将投票结果表链接到基本标签表,且进一步链接到提供投票的那些用户。本领域技术人员为了完成此任务可以设计同样有效的其他方法。
要注意的是早期的系统操作者能开发随后可以作为独立的产品被卖给其他人的标签数据库。因此,例如基于web的企业能够开发相当大的用户社区,生成巨大且有用的标签数据库。音乐商店未必能够开发这样的数据库,因此本质上对于数据库而言可能存在市场。这进一步说明了系统的建立和检索部分可以独立操作的事实。很容易想到,一个企业能够独自进行包括开发和销售这种数据库的事务。其他公司能够以从不进行任何建立步骤但却只使用已有的数据库来进行搜索的方式来类似地起作用。
序列匹配和计分
如图7所示,在已经构建标签数据库的情况下,系统准备好检索已存储的音乐。检索音乐中的第一用户步骤252是输入“查询标签”,即,准确执行上述步骤以产生数据库标签。此后,数据库中的标签及相关联的关键字被称为“参考”标签和关键字。在系统的一个实施例中,用户能够直接或间接(使用符号)地输入“查询标签”,连同标签的创建一起完成。无论如何,此步骤的结果是创建了与标签具有同样结构的查询。
接着,在步骤254,准确使用上述同样的过程,查询标签被用于产生查询关键字。为了方便,下面的讨论使用术语“查询”和“参考”来分别表示查询关键字和参考关键字。
通常,随后的步骤256-266通过交互地取出每个查询、按下述分析、并接着比较分析来找到对查询的最佳匹配。这些分析旨在以计分来表示参考序列——或者另外参考序列的一部分——匹配查询序列的程度,并随后根据该计分对匹配的质量进行排序。
步骤256的取出操作按照惯例进行。虽然没有应用任何索引系统,但如果可以获得如上所述的用户进行的排序,则那些排序可以用于分组参考,以使得高排位的参考在低排位参考之前被取出。通过在处理另一个音乐片段之前以排序的顺序取出给定音乐片段(由元数据标识的)的所有样本来进行一个实施例。另一个实施例以排序顺序取出参考,以使得首先对所有高质量的参考运行查询,并仅在随后对低排位的参考运行查询。这种安排留待系统操作者的判断。
通过比较搜索查询与数据库中的参考来确定查询与参考之间的最优匹配。这可以以多种方式完成,通常被归入标题“字符串对齐(string alignment)”之下。许多这样的方法都是本领域已知的,例如“位距”方法、Needleman-Wunsch算法或所谓的旅行推销员问题(Traveling Salesman Problem)及其他。此处详细讨论并要求的一个实施例,使用称为动态转换匹配(dynamic transitionMatching:DTM)的对齐方法,该技术源于动态编程技术。图7以流程图的形式将该方法示为过程250。DTM是通过分析、量化并随后匹配事件之间的转换而不是匹配事件本身的、用于匹配事件序列的普适方法。这些序列(“节点”)潜在可能是多维的,并且它们可能是完全不同的,因为它们的节点的每个维度都处于不同的坐标系。然而,如果技术是针对每个维度(例如,差分、比值等)适当定义的,则节点维度之间的转换可以被匹配而无需考虑他们的坐标系。因此,DTM表现为普适且有力的技术,可适用于具有多种维度和对于不同维度的转换的多种定义的各种应用。为了简化该表示,当前的讨论将实例限于例示实施例的曲调匹配应用。在此,数据“节点”和“音符”可互换使用。本领域技术人员可以理解该技术对于其他领域及学科的广泛适用性。
就方法中的这一点,实施例具有二维序列形式的查询和参考。序列中的每个音符是音高值和音长值的向量。其他实施例可按需包括语音内容和其他信息。
参考序列可以标示为:(r1,d1)、(r2,d2)、…、(rn,dn),其中,r值表示音高索引,d值表示音长索引。类似地,查询序列标示为:(q1,t1)、(q2,t2)、…、(qm,tm)。
通常,查询的大小m小于参考的大小n,但这不是必要条件。DTM不需要归一化时间标度,或者关键字和查询的音高标度相同。也无需转换序列以便于例如移除暂停或转换原始序列为一系列转换值——分析能够使用原始数据进行。该技术匹配关键字中两个节点间的转换——与查询中两个节点间的转换相比——因此,称为动态转换匹配。这两个转换之间的比较可以计入一个或更多个特征——例如,实施例可按需使用半音差分、音长比例、语音内容及其他特性。
DTM技术对两个序列起作用,例如,
查询=(60,12),(暂停,6),(65,12),(71,2),(72,10),(67,23),(65,12)
参考=(89,10),(90,10),(暂停,5),(95,10),(102,10),(97,20),(95,10),(90,10)
如上所述,每个序列成员的值表示音高和音长值,其由关键字提取过程确定。很清楚,包含7个成员查询能够与参考对齐,在每个序列的第一成员处开始,舍去(leaving)没有匹配音符的参考的最后的成员,或通过匹配最后的音符并舍去不匹配的第一参考音符。此外,处理实际音乐的系统也必须允许序列中两个或更多个音符应当被合并的可能性,以便允许如连音符和装饰音的现象。例如,在此处查询序列中,成员4和成员5实际具有同样的音高,也都有非常短的音长。
表1示出了匹配问题的解决方法。注意暂停如何匹配,并也注意查询中(71,2)和(72,10)的合并匹配参考中的音符(102,10)。结果,第一个和最后一个参考序列成员没有与相应的查询成员匹配。
- | (89,10) |
(60,12) | (90,10) |
(暂停,6) | (暂停,5) |
(65,12) | (95,10) |
(71,2)(72,10) | (102,10) |
(67,23) | (97,20) |
(65,12) | (95,10) |
- | (90,10) |
表1.对齐示例
围绕矩阵或如下面表2的计分表建立最优对齐分析,其中,i轴上的单元格表示参考序列中的向量,j轴上的单元格表示查询向量。表2表示被构建用来分析示例查询和参考的整个表的示例性部分。显示了(ri,di)和(qj,tj)的值。
(r1,d1)(60,12) | (r2,d2)(p,6) | (r3,d3)(65,12) | (r4,d4)(71,2) | (r5,d5)(72,10) | |
(q1,t1)(89,10) | i=1,j=1 |
(q2,t2)(90,10) | |||||
(q3,t3)(p,5) | |||||
(q4,t4)(95,10) | |||||
(q5,t5)(102,10) | i=5,j=5 |
表2:计分表
这种分析与Needleman-Wunsch算法具有同样的一些特征。首先,通过从矩阵的左上方(i=1,j=1)到右下方(i=max,j=max)遍历矩阵来进行分析,依次向下处理每一列,对每个单元格计算计分S(i,j)。
分析的最终产物是按照逐单元格的最优遍历,从(i=1,j=1)到(i=max,j=max)的最优路径。给定在Needleman-Wunsch方法中对隐含的移动施加限制,从单元格(i,j)开始的遍历只能沿着三条路进行:沿对角线方向向下到(i+1,j+1);垂直方向到(i,j+1)或水平方向到(i+1,j)。根据实际匹配的值序列,可以看到对角线方向的移动与对应于匹配一对新的值。因此,在(i=1,j=1)时,(r1,d1)匹配(q1,t1),而移动到(i=2,j=2)则产生新的匹配(r2,d2)对(q2,t2)。垂直或水平方向上的移动在一条轴上继续前进但不在另一方向上前进。因此,在(i=1,j=1)时,(r1,d1)匹配(q1,t1),但是垂直移动到(i=1,j=2)试图匹配(r1,d1)对(q2,t2)。显然,操作可以进行的唯一方法是删除(q1,t1)或(q2,t2)中的一个,因此,这些操作被分别称为垂直或水平删除。
一个重要的概念是每个单元格有父类单元格(i,j),该单元格的计分基于此父类单元格。在计分处理期间基于产生最高计分的遍历确定父类单元格。对于匹配来说,父类单元格是(i-1,j-1)。对于垂直删除来说,父类单元格是(i-1,j),对于水平删除来说,父类单元格是(i,j-1)。
因此,步骤268的计分包括测试已经到达测试单元格的三种可能遍历,从父类单元格的计分开始,并应用适当的计分函数以确定哪个可能的遍历产生最好计分。因此,每个单元格的计分严重依赖于之前所经过的路径。此外,计分系统被构建成通过为那些遍历估算删除成本来奖励匹配和劝阻删除。通常,计分公式如下:
S(i,j)=max(SDV,SDH,Sm,0) (式1)
其中
SDV=垂直_删除_计分(VERRTICAL_DELETION_SCORE)
SDH=水平_删除_计分(HORIZONTAL_DELETION_SCORE)
Sm=替换_计分(匹配)(SUBSTITUTION_SCORE(Match))
注意,单元格的计分不能小于0。
通过确保遍历是实际可能的来应用边界条件。例如,在(i=1,j=1)时,在右上角没有任何可能的移动,所以唯一的办法就是将该单元格计为默认值0。在那一列中的其他单元格中,垂直删除是可能的,但无法进行匹配或水平删除。
应用这些原理为三种可能的遍历计分,分数如下计算:
SDV=S(i-1,j)-DV
SDH=S(i,j-1)-DH
Sm=S(i-1,j-1)+T
其中,DV和DH是删除成本因子,T是转换函数。
转换函数是从(i-1,j-1)移动到(i,j)的值。本领域技术人员可以为使用DTM技术的特殊应用确定适当的转换函数。对于在此所述的音乐搜索应用,T是每个维度差值的绝对值的加权组合,在所述示例中是音高和音长的对数。该原理的改进在下面描述。
如上所述,在组合相邻音符有益的音乐应用中会出现很多种情形。通过添加衡量这种组合结果的因子可以将此过程整合到计分过程中。通过添加分析垂直和水平合并的条件,结果计分函数如下所示:
S(i,j)=max(SD,SDH,Sm,SHC,SVC,0) (式2)
其中
SDV=垂直_删除_计分(VERTICAL_DELETION_SCORE)
SDH=水平_删除_计分(HORIZONTAL_DELETION_SCORE)
Sm=替换_计分(匹配)(SUBSTITUTION_SCORE(Match))
SHC=max(水平_合并_计分(HORIZONTAL_CONS_SCORE)(h)),h=1,2,3,…,Hmax
SVC=max(垂直_合并_计分(VERTICAL_CONS_SCORE)(v)),v=1,2,3,…,Vmax
注意,单元格的计分不能小于0。
本方法的计分过程与现有技术中的类似算法有显著的不同。首先,现有技术没有开发出有效方法以解决暂停问题,即音乐片段中的静默时段。在如遗传(genetic)序列的现象分析中不会出现这种问题,因为不存在一些基本成分没有值的遗传序列。此处,暂停被作为“未定义”的值来对待,允许分析继续进行,也允许给予暂停如下所述的特殊考虑。
另外,此处的分析集中于音符之间的转换而不是音符本身,理解这一点是很重要的。结果,计分过程包括通过在垂直或水平方向上删除先前的音符、通过在垂直或水平方向上再次组合两个或更多个先前的音符、或通过将转换作为“匹配”来对待——即从先前的音符到现有音符的简单移动——来确定是否达到最高分。分析了所有五种可能的转换,保留出现最高分的一个,并在矩阵中的合适点输入分数。
对于计分函数的每个部分都有多种可能的修改和增加。下面的讨论集中于每个分量的细节。
S
DV
=垂直_删除_计分(VERTICAL_DELETION_SCORE)
这个计分由垂直删除或根据表2的查询中的音符的删除而得到。可以理解,删除没有好处,并由此估算成本。如果垂直删除的成本是DV,则:
SDV(i,j)=S(i,j-1)-DV (式3)
删除成本进一步被将要删除的音符的重要性归一化。如果将要删除的音符的音长是tj,则经归一化的删除成本应该是DV*tj/mean_q,其中mean_q(平均值_q)是指遍及所有非暂停节点的查询序列的音长平均值。
SDV(i,j)=S(i,j-1)-DV*tj/mean_q (式4)
如上所述,删除意味着对转换的实际删除。可是,通过删除包含该转换的两个节点(其被称为源节点和目的节点)中的一个来删除转换。必须作出是应当删除过去/源(j-1)节点还是删除现在/目的(j)节点的决定。该决定通常依赖于应用。可是,如果音符已经在另一个转换中被匹配则不能被删除。因此使用下述规则:
如果score(i,j)>0:这意味着存在具有正分的先前的匹配,因此j-1处的节点是正匹配。既然这样,删除(j)处的新节点。
如果score==0:既然如此,在当前路径上不存在任何正匹配。因此节点(j-1)没有用处并可以删除。
为了替换计分,记住已删除节点是很重要的。一旦节点被删除,其父类的特性被向前传播以致其可用于替换计算中。
S
DH
=水平_删除_计分(HORIZONTAL_DELETION_SCORE)
这个步骤与上述垂直删除步骤是一样的,但是其处理表2中的水平方向的参考删除。参数因此改变:使用DH代替DV等等。
Sm=替换计分(匹配)(SUBSTITUTION_SCORE(Match))
这个计分由使用从(i-1,j-1)到(i,j)的路径得到。与参考中从(ri-1,di-1)到(ri,di)的转换相比,这与查询中从(qj-1,tj-1)到(qj,tj)的转换相对应。可是,万一父类节点已被删除,在计算中使用被传入他们的值。例如,如果在前一步骤,这个路径上的(ri-1,di-1)被删除,则其父类维度的值被传入其中。在此步骤中使用这些值替代(ri-1,di-1)。
通过将父类S(i-1,j-1)的计分加到从(i-1,j-1)到(i,j)的转换的计分来计算新计分Sm(i,j)。因为该转换在多维节点(在这种情况下为音高和音长)之间,计分的相对权重需要据此确定及使用。可以修改这些参数以适应不同查询。使用多维度计算替换计分的一般公式如下:
Sm(i,j)=S(i-1,j-1)+w1*ST1+w2*ST2+… (式5)
其中,ST1是维度1(例如音高)中转换的计分,ST2是维度2(例如音长)中转换的计分等。而w1,w2,…是这些转换的相对权重。在DTM技术的另一个实施例中,与在每个阶段使用权重来组合每个维度的计分不同,在基于使用计分阵列的更加复杂的标准的几个阶段之后,传递计分阵列并做出决定是可能的。
在曲调匹配中,式4归纳为:
Sm(i,j)=S(i-1,j-1)+R*pitch_reward-K*tempo_error (式6)
其中,pitch_reward(音高_奖励)是与从(ri-1)到(ri)的转换相比,从(qj-1)到(qj)的转换的计分。tempo_error(拍子_误差)是与从(di-1)到(di)转换相比,从(tj-1)到(tj)的转换误差。
与删除误差类似,替换计分可以根据匹配的音符的音长来被赋予权重。这通过以在由其平均值(tj/mean_q)或((tj-1+tj)/mean_q)归一化的查询中音符的音长乘以增加的计分来完成。
音高奖励是0和1之间的数字,使用qj、qj-1、ri、ri-1按如下方式计算:pitch_reward=1-pitch_error,而pitch_error如下计算:
情况I:在qj、qj-1、ri、ri-1中没有“暂停”:
音高误差作为转换差值的绝对值来计算,使用模12操作,以允许8度音阶的跳跃,然后关于较大的转换任选地归一化。可以应用更加复杂的非线性归一化。
情况II:qj和ri都是暂停:在这种情况下pitch_error=0
情况III:qj和ri中只有一个是暂停:pitch_error=1
情况IV:如果qj-1和ri-1中的任一个是暂停,则在计算中使用它父类的音高并应用上面3种情况中的一种。
可以使用多种技术计算tempo_error。在我们的技术中一种可能使用的技术如下:
tempo_error=abs(log2[(di/di-1)(tj-1/tj)]) (式6)
注意:随着音长的比例变得更加均等,该误差如何减少为0。
通过在技术中添加历史参数M可以改进匹配计分的质量。在这个实施例中,基于之前M个匹配的父类的加权计分,计算匹配计分。参数M是设计参数。较高的M值需要较高的处理能力。然而,较高的M值不一定改善性能。例如,在错误的参考变化的情况下,我们不希望在计分计算中保持错误传递。因此M的选择应该考虑诸如人的注意广度、可用的计算能力、参考数据库的质量等的因素。在特殊实施例中,M值可以由本领域技术人员很容易地确定。因此,使用历史参数是有帮助的,但不是此处要求的方法的功能所必需的。
S
VC
=max(垂直_合并_计分(VERTICAL_CONS_SCORE)(v)),v=1,2,
3,…V
max
这一步骤确定能否通过组合查询中的多个音符并将它们与参考中的单个音符相匹配来达到较高的计分。这是通过合并两个音符并重新计算计分,然后合并三个音符并重新计算计分等来进行迭代。极限值Vmax是依赖于应用和数据类型及可用处理能力的设计参数。当音符被组合时,它们的音长被相加。他们的音高可以是具有不是暂停的最大音长的主音符的音高,或者为每个已被合并并根据其音长加权的音符单独计算pitch_error。如果使用后者的话,不累计暂停的pitch_error。
S
HC
=max(水平_合并_计分(HORIZONTAL_CONS_SCORE)(h)),h=1,
2,3,…H
max
这个步骤与上述垂直合并步骤相同,但是其处理表2中水平方向的参考中的合并。所有参数相应地改变。
暂停
如前所述,多数现行技术在应用匹配技术之前从参考及查询中移除暂停。可是,暂停也许包含有价值的信息并可以用于提高性能。因为由于进出暂停的转换不好定义而难于处理暂停,或在一些情况下,暂停被错误地检测及可能存在于串(查询或参考)中的一个但不在其他串中,所以通常会忽略暂停。
本方法的目标是如果暂停确实提供有用的信息则将其作为信息源使用,或者如果暂停不能提供任何这样的信息则忽略掉他们而没有惩罚。不同于曲调匹配,应用中的暂停也可以以空节点的形式存在,其中节点的一个或多个维度缺少有意义的值。在曲调中,暂停的音长维度包含有效值,而音高值维度不包含。
下列步骤用于处理暂停:
预处理:预处理所有串(查询及参考),以便使他们不能从暂停开始,也使得不存在连续的暂停。
通过计算他们的音长的和来合并所有连续的暂停。
在删除时,可以删除暂停而没有惩罚(或减少的惩罚)。
当暂停得以匹配,其匹配父类的音高维度被传送给它,以便当这个暂停稍后被匹配给另一个音符时使用其父类的音高信息。
在计算替换计分中的音高误差中,根据上述四种情况处理暂停。
对齐确定
一旦完成计分表,在步骤260,系统确定最佳对齐路径。由于计分一小于0就会被变为0,所以第一行上的删除不会受到惩罚。为了确保在对齐之后参考中的删除不受到惩罚,我们在最后一行上寻找最终的目的地——其是具有最高计分的单元格——而不是寻找以节点(m,n)结尾的最佳路径。这确保查询与参考的任意部分完全匹配。一旦确定了这个目的节点,就向后遍历以确定通向这个节点并产生最高分的路径。结果是如表1中所示的对齐表。
在此程度,分析足以确定查询能否在特定的记分水平上与给定的参考序列相匹配。如果给定的应用无需查询与一组参考序列间的最佳匹配的分级确定,则这种程度的分析是足够了。
但是,在许多应用中,最终的目的是找到匹配给定查询的最佳参考。基于下列原因,上面获得的计分可能不足以对最佳对齐的参考进行排序:
-健忘:以第一顺序计算对齐计分,其中匹配计分仅仅依赖于父类节点。如果在一个匹配节点存在误差,将影响两个转换,因此,一个误差导致两个惩罚。
-删除暂停及合并音符会导致给定的查询-参考对的较小的最大可能计分。如果不同的对在其最大计分上具有不同的上限,比较他们的最终计分就不是公平的对比。
在步骤262——重新记分——解决那些问题,其中使用了几种技术以提高记分的质量。相比于对齐O(m*n)的复杂度,重新记分的复杂度是O(m)。在重新记分中,每对分别小于Rescore_M(不必等于M)的音符的转换被记分并将计分累加。并计算给定对齐表的最大计分,而且新的计分作为给定对齐表所达到的最大计分的百分比被报告。这是在所有查询-参考对的新计分中确保公平比较的归一化过程。新计分的计算可以使用一组不同的参数R、K和M,每个转换的计分也根据每个转换中节点的音长进行加权。
通过对在参考的已对齐部分中的删除节点进行惩罚,新的计分进一步被归一化。如前所述,因为查询能够匹配参考的任意部分,所以在对齐部分之前及之后删除的节点不应该被惩罚。可是,重新记分不考虑对参考的对齐部分中间的删除节点的惩罚。为了适应这些,新的计分乘以对齐表中的参考音符的总音长,并除以对齐部分的总音长减去已删除暂停的音长。
然后系统通过每个参考序列、通过判别块264进行迭代。最后,在步骤266,新计分然后被用于对参考串排序,并且最高计分作为给定查询的最佳匹配被报告。
系统实施例
图8a和8b以用于标识音乐项目并将其传递给用户的系统300的形式描绘了在此要求的本发明的特定实施例。为清楚起见,针对各个环境配置系统300,以便整个系统可以共同使用或以独立的方式使用每个子系统。
音乐传递系统300最好被看作两个共同协作的系统、数据库输入系统310和检索系统360。首先考虑如图8a所示的输入系统,取决于装置细节,用户可以直接或通过网络访问该系统。如上所述,如果该系统被配置为网站的一部分,则用户302可以通过网络304进行访问,在该示例中网络可以是因特网。其他系统可以被配置为在一个封闭的网络上运行,例如,作为旅游船上娱乐系统的一部分。
其他用户306可以通过直接连接到系统的终端或计算机来直接访问系统。那种访问类型可以在例如零售机构或商场的音乐台中看到,其中用户可以通过系统310输入标签,然后使用系统360检索音乐。本领域技术人员可以理解此处所述的访问方法和系统实质上是示例性的。随着时光流逝,其他访问设备将变得可用,这样的设备在此可以完全结合于此。
无论是这样还是那样,用户与前端310进行交互,该前端可以是图形化用户接口(GUI)。关于访问设备,本领域技术人员能够设计出最有效的接口设备以适应给定的安装或应用。只要设备执行此处所述的功能,它就落入本发明的范围内。
在输入阶段,用户与音乐捕捉模块314或音乐排序模块320进行交互。两个系统的操作细节如上所述。注意,音乐捕捉模块不但捕捉以音频文件形式存在的音乐标签,还捕捉使用表格316的、关于音乐和用户的元数据。
如果选中音乐捕捉模块,则音频文件被发送到处理引擎318,该处理引擎以上述方式处理音频数据。结果数据记录被发送到音乐数据库400进行存储。应该注意的是,在实施例中,共同使用子系统310和360,音乐数据库400是单独的组件,由系统共享。
如果用户选中音乐排序模块320,则并不涉及处理引擎,该模块直接与数据记录交互。在此,如上所述,不改变音乐标签。
web特征330包括如上所述的设计用来促进用户的相互作用及兴趣的特征。旨在改善系统操作的特征——例如致力于激励或铃声转换的网页——与例如致力于创建基于音乐的社会网络的页面组合在一起。以虚线的形式展示这样的特征,以指示他们完全任由系统操作员处理。例如,零售机构中的系统实现,很可能不包括这些特征,而网站可能会将这样的特征推到用户的面前。在保持对本发明的技术特征的必要关注的同时,本领域技术人员能够发挥这样特征的最大优点。
图8b说明了检索系统360。这个系统结合了上述的数据检索任务,并将那些任务扩展成添加将期望音乐项目交付给用户的所需步骤。如上所述,用户352能通过例如因特网的网络进行处理,或者,他们能通过诸如356的设备作出直接访问。后者能够很容易被实现为音乐商店中能够监督音乐的选择和销售的终端或音乐台。
前端362管理用户与系统的交互。这个系统可以与图8a中的前端310相组合或与其共享功能。类似地,查询捕捉模块364可与图8a中的捕捉模块314相一致。在此,因为没有候补功能去追随,所以用户直接从前端转到那个模块。
如上所述,用户提供查询标签,在适当的配置中该标签被提供给处理引擎(该处理引擎又可以是与处理引擎318相同或同样的模块)。结果数据文件被馈送到匹配引擎368,该匹配引擎使用如DTM系统或等效方法的匹配算法来从包含于音乐数据库400的音乐标签中检索最佳匹配。
匹配引擎使用项目元数据(图5中的数据167)来标识应用标签的音乐项目,并将那些信息转发到前端362。如果用户期望如此,则前端从音乐项目存储器410中检索音乐项目本身并将其直接提供给用户。在位于零售机构中的实施例中,音乐存储数据库可以提供商店中实际音乐项目的详细目录及位置信息,或任选地,能提供特别定购音乐项目的能力。
其他实施例在系统中不使用音乐项目存储数据库,但是可以访问由第三方卖家提供的系统。这样,小型机构可以提供广泛的音乐可用性而不必付出组装全面的音乐库的代价。
其他实施例
本领域技术人员可以理解,此处公开及要求的序列匹配方法可以用于多种环境。特殊需求的实施例可以在遗传序列系统中使用该方法,其中要被匹配的序列是基于DNA链而不是音乐中的音符。另一个所需的实施例可以在语音识别中使用该方法。
本发明可以被实现为方法或适于实现该方法的设备。本发明可以是一种产品,例如铭刻有用以执行基于非文本的信息的计算机辅助检索的逻辑的介质。
虽然参考上述的优选实施例和示例公开了本发明,但可以理解的是这些例子意在作为示例性而非限制性。可以想到的是,本领域技术人员很容易作出修改及组合,这种修改和组合将落在本发明的精神及所附权利要求的范围内。
Claims (37)
1.一种用于所选音乐项目的基于非文本的标识的方法,包括以下步骤:
建立音乐标识数据库,包括以下步骤:
捕捉所选音乐项目的标签;
处理所述标签以产生关于其的参考关键字;
连同所述参考关键字以及关于所述音乐项目的关联一起存储所述标签;
收集多个标签;
从所述数据库中检索所期望的音乐项目,包括以下步骤:
捕捉查询标签;
处理所述查询标签以产生关于其的查询关键字;以及
比较所述查询关键字和存储于所述数据库中的参考关键字,以标识所期望的音乐项目。
2.如权利要求1所述的方法,其特征在于,关于所述音乐项目的所述关联包括与所述音乐项目有关的信息。
3.如权利要求1所述的方法,其特征在于,关于所述音乐项目的所述关联至少包括所选音乐项目的标题和艺术家。
4.如权利要求1所述的方法,其特征在于,所述处理步骤各自包括以下步骤:
将所述标签拆分为帧;
处理每个帧,包括以下步骤:
检测所述帧的音高升降曲线;
标识暂停;
标记音符边界;
对每个音符确定音高值;
量化每个音符的所述音高值;以及
将经处理的帧组装成标识所述标签的关键字。
5.一种用于组装音乐标签类集的方法,包括以下步骤:
建立可为多个用户所访问的基于计算机的位置;
提供用于收集音乐标签的计算机程序方法;
收集音乐标签,包括以下步骤:
捕捉所选音乐项目的标签;
处理所述标签以产生关于其的关键字;
连同所述关键字及关于所述音乐项目的关联一起存储所述标签;以及
为贡献标签的用户提供激励;
捕捉由其他用户提供的旋律的用户排序;以及
促进用户之间的互动。
6.如权利要求5所述的方法,其特征在于,所述基于计算机的位置是网站。
7.如权利要求5所述的方法,其特征在于,提供所述激励包括货币激励。
8.如权利要求7所述的方法,其特征在于,所述货币激励是基于对所贡献的标签的有效性的度量。
9.如权利要求5所述的方法,其特征在于,提供所述激励包括基于他们的标签提交来宣传用户。
10.如权利要求9所述的方法,其特征在于,所述宣传激励是基于对所贡献的标签的有效性的度量。
11.如权利要求5所述的方法,其特征在于,还包括以下步骤:
处理所选标签以生成移动电话铃声;以及
将结果铃声提供给用户。
12.一种用于建立音乐标识数据库的方法,包括以下步骤:
捕捉音乐标签;
处理所述标签以产生关于其的参考关键字;
连同所述参考关键字及关于所述音乐项目的关联一起存储该标签;
收集多个标签。
13.如权利要求12所述的方法,其特征在于,所述处理步骤包括以下步骤:
将所述标签拆分为帧;
处理每个帧,包括以下步骤:
检测所述帧的音高升降曲线;
标识暂停;
标记音符边界;
对每个音符确定音高值;
量化每个音符的所述音高值;以及
将经处理的帧组装成标识所述标签的关键字。
14.一种用于提供音乐项目的方法,包括以下步骤:
提供包括音乐标签及关于其的参考关键字的第一数据库;
从用户处捕捉查询标签;
处理所述标签以产生其查询关键字;
将所述查询关键字与所述数据库音乐参考关键字相匹配,以确定最佳匹配所述查询标签的所述音乐标签;
检索与所述最佳匹配标签相关联的所述音乐项目。
15.如权利要求14所述的方法,其特征在于,所述处理步骤包括以下步骤:
将所述标签拆分为帧;
处理每个帧,包括以下步骤:
检测所述帧的音高升降曲线;
标识暂停;
标记音符边界;
对每个音符确定音高值;
量化每个音符的所述音高值;以及
将经处理的帧组装成标识所述标签的关键字。
16.一种用于向用户提供音乐项目的系统,包括:
计算机系统,包括CPU、外围设备和输入/输出设备,所述计算机系统可操作地连接到网络以与远程用户通信;
用于捕捉由用户输入的音乐标签的装置,所述标签被标识为参考标签或查询标签;
用于处理所述标签以产生关于其的标识关键字的装置;
用于连同标识关键字及关于各个音乐项目的关联一起存储参考标签的数据库装置;
用于将查询标签与所存储的参考标签作比较以标识所期望的音乐项目的匹配算法装置。
17.如权利要求16所述的系统,其特征在于,所述处理装置包括以下装置:
将所述标签拆分为帧;
处理每个帧,包括以下步骤:
检测所述帧的音高升降曲线;
标识暂停;
标记音符边界;
对每个音符确定音高值;
量化每个音符的所述音高值;以及
将经处理的帧组装成标识所述标签的关键字。
18.如权利要求16所述的系统,其特征在于,所述匹配算法装置将标识关键字与所述查询标签和所述参考标签作比较。
19.一种用于对j个多维数据项的查询序列与i个多维数据项的参考序列的对齐进行计分的方法,包括以下步骤:
构建i x j矩阵;
使用记分函数为查询序列成员(j)与每个参考成员(i)之间的每个转换指派一计分,其中所述计分函数是
S(i,j)=max(SDV,SDH,Sm,0)
其中
SDV=S(i-1,j)-DV
SDH=S(i,j-1)-DH
Sm=S(i-1,j-1)+T;
并且其中DV和DH是删除成本因子,而T是转换函数;
捕捉矩阵单元(i,j)中的每个计分Si,j;以及
标识跨越所述矩阵的最优遍历路径,包括以下步骤:
选择所述矩阵底端行中的最高单元计分;以及
向后跨越所述矩阵跟踪通向那个单元的转换。
20.一种用于将多维数据项目的查询序列与多维数据项目的参考序列相匹配的方法,包括以下步骤:
将所述查询序列与所选参考序列对齐,包括以下步骤:
构建i x j矩阵;
使用计分函数为查询序列成员(j)与每个参考成员(i)之间的每个转换指派一计分,其中所述计分函数是
S(i,j)=max(SDV,SDH,Sm,0)
其中
SDV=S(i-1,j)-DV
SDH=S(i,j-1)-DV
Sm=S(i-1,j-1)+T;
并且其中DV和DH是删除成本因子,而T是转换函数;
捕捉矩阵单元(i,j)中的每个计分Si,j;以及
标识跨越所述矩阵的最优遍历路径,包括以下步骤:
选择所述矩阵底端行中的最高单元计分;以及
向后跨越所述矩阵跟踪通向那个单元的转换。
21.如权利要求20所述的方法,其特征在于,还包括以下步骤:
通过基于历史因子的重新计算来测试所述最优路径;
计算所述矩阵的最大可能计分;
将所述矩阵计分归一化为通过所述重新计算的最优遍历路径达到的所述最大可能计分的百分比;以及
重复对每个参考序列的对齐;
通过选择所述最高单元计分来确定最佳匹配。
22.如权利要求21所述的方法,其特征在于,所述计分函数是
S(i,j)=max(SDV,SDH,Sm,SHC,SVC,0)
其中
SDV=S(i-1,j)-DV
SDH=S(i,j-1)-DH
Sm=S(i-1,j-1)+T;
SHC=max(水平_合并_计分(h)),h=1,2,3,...,Hmax
SVC=max(垂直_合并_得分(v)),v=1,2,3,...Vmax
并且其中DV和DH是删除成本因子,而T是转换函数。
23.如权利要求22所述的方法,其特征在于,
所述转换函数是
T=w(1)*ST(1)+w(2)*ST(2)+...
其中ST(k)是在所述单元(i,j)与通向所述单元(i,j)的路径上的最近匹配单元之间的维度k中的转换的所述计分,所述单元(i,j)在维度k中不为空值,而w(k)是此转换的所期望权重。
24.一种用于将源自音乐查询标签的多维数据项目的查询序列与源自音乐参考标签的多维数据项目的参考序列相匹配的方法,包括以下步骤:
将所述查询标签与所选参考序列对齐,包括以下步骤:
构建i x j矩阵;
使用计分函数为查询序列成员(j)与每个参考成员(i)之间的每个转换指派一计分,其中所述计分函数是
S(i,j)=max(SDV,SDH,Sm,0)
其中
SDV=S(i-1,j)-DV
SDH=S(i,j-1)-DH
Sm=S(i-1,j-1)+T;
并且其中DV和DH是删除成本因子,而T是转换函数;
捕捉矩阵单元(i,j)中的每个计分Si,j;以及
标识跨越所述矩阵的最优遍历路径,包括以下步骤:
选择所述矩阵底端行中的最高单元计分;并
向后跨越所述矩阵跟踪通向那个单元的转换。
25.如权利要求24所述的方法,其特征在于,还包括步骤:
通过基于历史因子的重新计算来测试所述最优路径;
计算所述矩阵的最大可能计分;
将所述矩阵计分归一化为通过所述重新计算的最优遍历路径达到的所述最大可能计分的百分比;以及
重复对每个参考序列的对齐;
通过选择最高单元计分来确定最佳匹配。
26.如权利要求24所述的方法,其特征在于,所述计分函数是
S(i,j)=max(SDV,SDH,Sm,SHC,SVC,0)
其中
SDV=S(i-1,j)-DV
SDH=S(i,j-1)-DH
Sm=S(i-1,j-1)+T;
SHC=max(水平_合并_计分(h)),h=1,2,3,...,Hmax
SVC=max(垂直_合并_计分(v)),v=1,2,3,...Vmax
并且其中DV和DH是删除成本因子,而T是转换函数。
27.如权利要求24所述的方法,其特征在于,所述转换函数是
T=w(1)*ST(1)+w(2)*ST(2)+...
其中ST(k)是维度k中的转换的所述计分,w(k)是此转换的所期望权重。
28.如权利要求24所述的方法,其特征在于,所述多维数据项目至少包括与音高和音长相关联的维度。
29.如权利要求28所述的方法,其特征在于,涉及音乐标签中的暂停的、与音高相关联的数据项目具有未定义值,并且计分函数不使用那个值计算计分但是使用前一匹配值,出于此目的所述值被向前传递。
30.一种用于从包括音乐项目和与此类文件相关联的关键字文件的数据库中检索音乐项目的方法,所述关键字文件包括此类音乐的标识值的序列,至少包括所选格式的音符的音高和音长信息,所述方法包括以下步骤:
从用户处捕捉音频查询;
处理所述音频查询以所选格式生成与所述音频输入查询相关联的查询关键字;
将所述查询关键字与参考关键字匹配,包括以下步骤:
在所述查询文件和每个参考文件上执行迭代的串对齐操作,以标识关于所述查询文件的最佳匹配;以及
检索与所述匹配参考文件相关联的所述音乐项目。
31.如权利要求30所述的方法,其特征在于,所述迭代的串对齐包括以下步骤:
将所述查询序列与所选参考序列对齐,包括以下步骤:
构建i x j矩阵;
使用计分函数为查询序列成员(j)与每个参考成员(i)之间的每个转换指派一计分,其中所述计分函数是
S(i,j)=max(SDV,SDH,Sm,0)
其中
SDV=S(i-1,j)-DV
SDH=S(i,j-1)-DH
Sm=S(i-1,j-1)+T;
并且其中DV和DH是删除成本因子,而T是转换函数;
捕捉矩阵单元(i,j)中的每个计分Si,j;以及
标识跨越所述矩阵的最优遍历路径,包括以下步骤:
选择所述矩阵底端行中的最高单元计分;并
向后跨越所述矩阵跟踪通向那个单元的转换。
32.如权利要求31所述的方法,其特征在于,还包括以下步骤:
通过基于历史因子的重新计算来测试所述最优路径;
计算所述矩阵的最大可能计分;
将所述矩阵计分归一化为通过所述重新计算的最优遍历路径达到的最大可能计分的百分比;以及
重复对每个参考序列的对齐;
通过选择最高单元计分来确定最佳匹配。
33.如权利要求31所述的方法,其特征在于,所述计分函数是
S(i,j)=max(SDV,SDH,Sm,SHC,SVC,0)
其中
SDV=S(i-1,j)-DV
SDH=S(i,j-1)-DH
Sm=S(i-1,j-1)+T;
SHC=max(水平_合并_计分(h)),h=1,2,3,...,Hmax
SVC=max(垂直_合并_计分(v)),v=1,2,3,...Vmax
并且其中DV和DH是删除成本因子,而T是转换函数。
34.如权利要求31所述的方法,其特征在于,所述转换函数是
T=w(1)*ST(1)+w(2)*ST(2)+...
其中ST(k)是维度k中的转换的所述计分,w(k)是此转换的所期望的权重。
35.如权利要求30所述的方法,其特征在于,所述多维数据项目至少包括与音高和音长相关联的维度。
36.如权利要求35所述的方法,其特征在于,涉及音乐标签中的暂停的、与音高相关联的数据项目具有未定义值,并且计分函数不使用那个值计算得分但是使用前一匹配值,出于此目的所述值被向前传递。
37.一种表示音乐项目的数据结构,包括:
音乐数据部分,包括
标签部分,其中所述标签部分是以音乐文件存储格式编码的、所述音乐项目的录音;
关键字部分,包括从所述标签部分导出标识数据;
元数据部分,包括与所述音乐项目有关的数据项目。
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US73574805P | 2005-11-10 | 2005-11-10 | |
US60/735,748 | 2005-11-10 | ||
US60/771,705 | 2006-02-08 | ||
US60/776,078 | 2006-02-22 | ||
US60/822,023 | 2006-08-10 | ||
US11/558,366 | 2006-11-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101351767A true CN101351767A (zh) | 2009-01-21 |
Family
ID=40269713
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2006800502302A Pending CN101351767A (zh) | 2005-11-10 | 2006-11-09 | 存储和检索基于非文本的信息的系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101351767A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102867001A (zh) * | 2011-07-05 | 2013-01-09 | 腾讯科技(北京)有限公司 | 获取信息的方法和装置 |
CN104866494A (zh) * | 2014-02-24 | 2015-08-26 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN105740317A (zh) * | 2014-12-31 | 2016-07-06 | 柯尼卡美能达美国研究所有限公司 | 用于将非文本内容对象化以及用于文档发现的方法和系统 |
CN115602154A (zh) * | 2022-12-15 | 2023-01-13 | 杭州网易云音乐科技有限公司(Cn) | 音频识别方法、装置、存储介质和计算设备 |
-
2006
- 2006-11-09 CN CNA2006800502302A patent/CN101351767A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102867001A (zh) * | 2011-07-05 | 2013-01-09 | 腾讯科技(北京)有限公司 | 获取信息的方法和装置 |
CN102867001B (zh) * | 2011-07-05 | 2019-12-24 | 腾讯科技(北京)有限公司 | 获取信息的方法和装置 |
CN104866494A (zh) * | 2014-02-24 | 2015-08-26 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN104866494B (zh) * | 2014-02-24 | 2019-07-26 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN105740317A (zh) * | 2014-12-31 | 2016-07-06 | 柯尼卡美能达美国研究所有限公司 | 用于将非文本内容对象化以及用于文档发现的方法和系统 |
CN105740317B (zh) * | 2014-12-31 | 2019-05-14 | 柯尼卡美能达美国研究所有限公司 | 用于将非文本内容对象化以及用于文档发现的方法和系统 |
CN115602154A (zh) * | 2022-12-15 | 2023-01-13 | 杭州网易云音乐科技有限公司(Cn) | 音频识别方法、装置、存储介质和计算设备 |
CN115602154B (zh) * | 2022-12-15 | 2023-08-11 | 杭州网易云音乐科技有限公司 | 音频识别方法、装置、存储介质和计算设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101082121B1 (ko) | 비문자기반 정보를 저장하고 검색하는 시스템과 방법 | |
Civit et al. | A systematic review of artificial intelligence-based music generation: Scope, applications, and future trends | |
Casey et al. | Content-based music information retrieval: Current directions and future challenges | |
JP4033944B2 (ja) | 演奏する楽曲に合わせた推薦楽曲選出機能に特徴を有する通信カラオケシステム | |
US20060217828A1 (en) | Music searching system and method | |
US20070106405A1 (en) | Method and system to provide reference data for identification of digital content | |
CN102053998A (zh) | 一种利用声音方式检索歌曲的方法及系统装置 | |
JP2009508156A (ja) | 音楽分析 | |
Futrelle et al. | Interdisciplinary research issues in music information retrieval: ISMIR 2000–2002 | |
US11568886B2 (en) | Audio stem identification systems and methods | |
Wilmering et al. | High-level semantic metadata for the control of multitrack adaptive digital audio effects | |
CN101351767A (zh) | 存储和检索基于非文本的信息的系统和方法 | |
Pachet et al. | Popular music access: The Sony music browser | |
Weigl et al. | The vienna philharmonic orchestra’s new year’s concerts: Building a fair data corpus for musicology | |
JP5085577B2 (ja) | プレイリスト作成装置、楽曲再生装置、プレイリスト作成方法およびプレイリスト作成プログラム | |
Porcaro et al. | Recognizing musical entities in user-generated content | |
Müller | New developments in music information retrieval | |
Risk et al. | Melodic Similarity in Traditional French-Canadian Instrumental Dance Tunes. | |
De Prisco et al. | Creative DNA computing: splicing systems for music composition | |
EP3996084B1 (en) | Determining relations between music items | |
WO2024042962A1 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
Watson | Reproducing Inheritance: How the Country Music Association’s Award Criteria Reinforce Industry White Supremacy Capitalist Patriarchy | |
Pattuelli et al. | The Girl in the Other Room: Generating New Open Knowledge for the Women of Jazz | |
Bagavathi et al. | ragamAI: A Network Based Recommender System to Arrange a Indian Classical Music Concert | |
Wang et al. | Note‐based alignment using score‐driven non‐negative matrix factorisation for audio recordings |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1128783 Country of ref document: HK |
|
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20090121 |
|
REG | Reference to a national code |
Ref country code: HK Ref legal event code: WD Ref document number: 1128783 Country of ref document: HK |