CN101657817A - 基于音乐的搜索引擎 - Google Patents
基于音乐的搜索引擎 Download PDFInfo
- Publication number
- CN101657817A CN101657817A CN200880012053A CN200880012053A CN101657817A CN 101657817 A CN101657817 A CN 101657817A CN 200880012053 A CN200880012053 A CN 200880012053A CN 200880012053 A CN200880012053 A CN 200880012053A CN 101657817 A CN101657817 A CN 101657817A
- Authority
- CN
- China
- Prior art keywords
- music
- input
- melody
- search
- inquiry
- 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
Abstract
描述了用于基于音乐的搜索的方法、系统和设备。本发明的实施方式接收指定音乐元素的音乐查询,该查询使用文本、音频和/或乐谱数据。音乐查询可用于根据所指定的音乐元素产生搜索参数,所述搜索参数在一些情况下被加权。搜索参数可接着被导向包括数据记录的数据库,每个数据记录与一乐曲以及与涉及到该乐曲的一组音乐元素有关。匹配数据库中的数据记录可接着根据搜索参数和相关的乐曲之间共有的音乐元素来识别。接着可用各种方式排序、显示和输出搜索输出。
Description
交叉引用
本申请要求2007年2月14日提交的标题为“COLLABORATIVEMUSIC SHARING”(律师签号026287-000300US)的共同未决的美国临时专利申请号60/889,816以及2007年2月14日提交的标题为“MUSIC-BASED SEARCH ENGINE”(律师签号026287-000400US)的共同未决的美国临时专利申请号60/889,821的优先权利益,这两个专利申请由此通过引用被并入,如在本文件中为了所有的目的充分阐述的。本申请要求2008年2月13日提交的Robert D.Taub等人的标题为“MUSICSCORE DECONSTRUCTION”(律师签号026287-000500US)的美国临时专利申请号61/028,490的优先权利益。要求该临时申请提交日的优先权,且该临时申请的公开为了所有目的在这里通过引用被并入。
本申请进一步涉及2008年2月14日提交的标题为“COLLABORATIVE MUSIC CREATION”(律师签号026287-000310US)的共同未决的美国临时专利申请号____,其同本申请同时提交并由此通过引用被并入,如在本文件中为了所有的目的充分阐述的。
背景
本发明通常涉及音频应用,尤其是涉及基于音乐的搜索。
通常,当关于音频(例如,艺术家、标题等)的信息未知时,找到音频样本、专辑曲目或其它音频信息可能是合乎需要的。例如,在广播电台上听到歌曲之后,人们可能希望在互联网上找到该歌曲。如果人回想起了旋律但不知道歌曲的名称、歌曲的歌词或甚至艺术家,则可能很难使用传统(例如,基于文本的)搜索引擎找到该歌曲。
一些现有的搜索引擎可提供根据手工提供给数据库的关于音频成分的元数据来组织音频成分的能力。例如,可能给数据库提供关于歌曲类别、拍速、音高序列、音高音程序列、发行日期、艺术家等的信息。该信息可接着由传统搜索引擎使用来帮助找出特定的歌曲。然而,提供这种能力需要手工(且常常主观地)确定关于音频成分的信息以及将该信息储存到数据库。这往往可能效率低、不准确,且就可得到什么类型的信息而言,是受限的。
一些现有的搜索引擎可进一步提供从某些类型的音频文件提取元数据的能力。例如,MPEG-7文件格式和其它文件格式可配置成储存关于音频内容的某些类型的信息。搜索引擎可接着能够从文件的头部信息中提取上述信息。
又一些其它搜索引擎可提供按一个特定的高级模式给歌曲分组的能力。例如,高级节奏拍号可从音频信号的包络提取,且那些高级拍号可用于给歌曲分组。这可消除手工输入某些类型的信息的需要,但可能仍然对搜索有限制。一个限制是,搜索可能限于单一非文本维度。例如,用户可能只能对节奏拍号进行搜索,而成百万的歌曲可共享类似的节奏拍号。另一限制是,单维搜索可能不足以元素化来提供有用的结果。例如,用户可能希望哼合唱的旋律或敲打出节奏的一部分,这两者可能都不可对照高级模式来搜索。
至少由于这些原因,在基础级别提供对音乐搜索的提高的能力可能是合乎需要的。
概述
除了其它许多东西以外,还描述了基于音乐的搜索的方法、系统和设备。
本发明的实施方式提供了各种特征和功能。一些实施方式接受不同类型的搜索输入(例如,文本、音频、乐谱图像等)并产生不同类型的搜索输出(例如,文本列表、音频输出、乐谱输出等)。本发明的其它实施方式支持对文本信息的智能解析、对音频和乐谱图像数据解构来产生音乐元素、正交和加权的搜索能力、以及很多其它功能。其它实施方式配置成在本地(例如,个人计算机或局域网)操作;而在其它实施方式中,本发明配置成远程(例如,通过互联网或使用远程服务器)操作。其它实施方式支持输出功能,包括产生搜索结果的文本、乐谱、音频输出。
在一个实施方式中,提供了一种执行音乐搜索的计算机方法。该方法包括:接收指定音乐元素的音乐查询;根据接收到的音乐查询所指定的音乐元素来产生一组搜索参数;将该组搜索参数导向包括很多数据记录的数据库,每个数据记录与一乐曲以及与该乐曲所涉及的一组音乐元素有关,其中,与至少一个数据记录相关的该组音乐元素包括从至少一首乐曲解构的数据;识别数据库中的一组匹配的数据记录,该组匹配的数据记录包括匹配该组搜索参数的数据记录;识别数据库中的一组匹配的乐曲,该组匹配的乐曲包括与该组匹配的数据记录相关的乐曲;以及产生包括排列在排序的列表中的匹配的乐曲的搜索输出。
从作为例子示出本发明原理的优选实施方式的下列描述中,本发明的其它特征和优点应很明显。
附图的简要说明
参考下列附图可实现对本发明的性质和优点的进一步的理解。在附图中,相似的部件或特征可具有相同的参考符号。进一步地,通过在参考标记后跟有破折号和区分开相似部件的第二标记,可区分开相同类型的各种部件。如果在说明书中只使用第一参考标记,则此描述适用于具有相同的第一参考标记的相似部件中的任一个,而不考虑第二参考标记。
图1示出用于基于音乐的搜索的根据本发明构造的系统的高级简化结构图。
图2示出根据本发明的用于基于音乐的搜索的示例性方法的流程图。
图3示出根据本发明的用于产生音频搜索串的各种例证性类型的音乐输入。
图4A示出根据本发明的用于解构音乐输入数据的方法的流程图。
图4B示出根据本发明的用于解构音乐微元素的方法的实施方式。
图4C示出根据本发明的用于解构音乐宏元素的方法的实施方式。
图5A示出根据本发明的用于解构音频信号输入以产生音乐元素的示例性系统的简化结构图。
图5B示出根据本发明的音频解构单元的一个实施方式的低级结构图。
图6A示出根据本发明处理音乐图像数据以提供光学字符识别(OCR)特征的示例性系统。
图6B示出从图6A所示捕获设备产生的、作为输入提供到OCR处理器的示例性图像数据。
图7示出根据本发明的基于音乐的搜索引擎的GUI的实施方式。
图8提供用于实现本发明的某些实施方式的计算系统的结构图。
图9示出根据本发明的作为手持式消费电子设备的产品的例证性实施方式。
图10提供示出与图9所示设备类似的设备的实施方式的操作的简化处理流程图。
详细描述
该描述仅提供示例性实施方式,且不是用来限制本发明的范围、适用性或配置。更确切地,实施方式的随后描述将给本领域技术人员提供用于实现本发明实施方式的可行的描述。可在元件的功能和布置上进行各种变化,而不偏离本发明的实质和范围。
因此,不同实施方式可在适合时省略、替换或添加不同的程序或部件。例如,应认识到,在可选实施方式中,可按不同于所描述的顺序执行方法,并可添加、省略或合并不同的步骤。此外,关于某些实施方式描述的特征,可合并在不同的其它实施方式中。实施方式的不同方面和元件可按类似的方式合并。
还应认识到,下面的系统、方法和软件可单独地或共同为一较大系统的部件,其中其它程序可优于其应用,或以其他方式更改其应用。此外,在下面的实施方式之前、之后或与其同时,可能需要一定数量的步骤。
综述
本发明的实施方式提供了关于基于音乐的搜索的新功能。在一方面,本发明的技术可被实现为网络站点,例如门户网站或内联网(LAN)站点。在其它方面,本发明可被设置为客户端软件、对现有搜索环境的附加功能或专用设备和系统。
本发明的实施方式提供了各种特征和功能。一些实施方式接受不同类型的搜索输入(例如,文本、音频、乐谱图像等)并产生不同类型的搜索输出(例如,文本列表、音频输出、乐谱输出等)。在某些实施方式中,本发明支持对文本信息的智能解析、解构音频和乐谱图像数据来产生音乐元素、正交和加权的搜索能力、以及很多其它功能。本发明的一些实施方式配置成在本地(例如,个人计算机或局域网)操作;而在其它实施方式中,本发明配置成远程(例如,通过互联网或使用远程服务器)操作。又一些其它实施方式支持输出功能,包括产生搜索结果的文本、乐谱、音频输出。
图1示出用于基于音乐的搜索的根据本发明构造的系统100的高级简化结构图。系统100包括通过网络110连接到多个工作站104的搜索引擎160。工作站104可通过用户界面访问搜索引擎。网络110可为多个工作站104之间的通信的任何服务商。例如,网络110可为互联网或局域网(LAN)。在某些实施方式中,搜索引擎160可驻留在工作站104(未示出)上并可配置成搜索驻留在工作站104上的数据或对工作站104远程的数据。
工作站104可为配置成与网络110通信并接收搜索输入102的任何设备或系统。在一些实施方式中,工作站104是多功能设备。例如,工作站104可为计算机(例如,膝上型计算机、桌上型计算机等)。在其它实施方式中,工作站104是专用设备。例如,工作站104可为专用便携式设备,其特别被发展来提供基于音乐的搜索引擎,包括接收搜索输入102和与网络110通信,以及产生搜索输出106。在某些实施方式中,工作站104是,或提供,用于输入音频、乐谱信息、文本或其它作为搜索输入的信息的接口。例如,工作站104可为电子吉他、数字音频部件或用于记录乐谱的图像的摄像头的直接网络接口。
应认识到,根据本发明,存在工作站104接收搜索输入102的很多方式。例如,可通过内部或外部麦克风、线路电平音频端口、文件传输(例如,来自固定的或可移除的存储器,或通过网络)、乐谱图像捕获设备等接收搜索输入102。下面进一步讨论音乐输入实施方式。搜索输入可包括查询,其被导向数据库以找出包括搜索引擎输出的匹配。
在一些实施方式中,工作站104配置成产生搜索输出106。在一个实施方式中,搜索输出106包括配置成通过扬声器播放的音频输出。在另一实施方式中,搜索输出106包括配置成被储存、播放和/或在网络上共享的音频文件。在又一实施方式中,搜索输出106包括由其它相容的系统使用的音乐元素数据(例如,音高、音程、拍速、音调、振幅等)。在再一实施方式中,搜索输出106包括乐谱表示数据,其配置成由乐谱编辑软件使用、被发送到文件编辑或公布系统、或被打印。在又一实施方式中,搜索输出106包括搜索结果的一维或多维列表。
根据搜索输入102的类型,从搜索输入102解构音乐元素可能是合乎需要的。在一个例子中,搜索输入102被作为音频信号接收(例如,搜索者使用吉他朝麦克风演奏主调旋律)。在另一例子中,搜索输入102被作为乐谱的被扫描的图像接收。在任一例子中,从搜索输入102解构出音乐元素以用于产生搜索参数可能是合乎需要的。下面更充分描述音乐(例如,音频和乐谱)解构。
在一些实施方式中,系统100包括用于提供音乐解构功能的一个或多个音乐解构单元120。在某些实施方式中,音乐解构单元120驻留在工作站104上。例如,音乐解构单元120可被实现为客户级软件。在这些实施方式中,搜索输入102在被通过网络110发送到搜索引擎160之前,可被解构成音乐元素。在其它实施方式中,音乐解构单元120可设置为搜索引擎160的一部分(例如,元件120-2)。搜索输入102可在工作站104被接收,通过网络110被发送到搜索引擎160,并接着在搜索引擎160被解构成音乐元素。
在某些实施方式中,搜索引擎160可与一个或多个数据存储器115操作性地通信。在一些实施方式中,搜索引擎160通过网络110与数据存储器115通信。在其它实施方式中,搜索引擎160与数据存储器115直接通信。数据存储器115可配置成存储关于搜索输入102或搜索输出106的一种或多种类型的信息。例如,数据存储器115可配置成存储原始音频文件(例如,包含数字化音频信号数据的文件)、编码的音频文件(例如,包含关于文件内容数据或音频信号数据的元数据的文件)、音乐元素信息(例如,储存在多维关系数据库中的、与其相应的音乐稿件相关的被解构的音乐元素)等。
应认识到,在本发明的实施方式中,某些类型的数据安全可能是合乎需要的。在一些实施方式中,数据存储器115配置成使用某些类型的数据安全(例如,加密、口令保护等)来存储数据。在其它实施方式中,系统100的不同部件之间的物理和虚拟通信链接是安全的(例如,通过安全套接层加密)。例如,搜索引擎160和工作站104之间或搜索引擎160和数据存储器115之间的网络通信可能是安全的。在又一些其它实施方式中,搜索输出106可被保护以防止复制、删除等。例如,某些数字版权管理(DRM)技术可用于限制搜索输出106文件的未经授权的复制或共享。
在一些实施方式中,搜索引擎160通过网络接口单元150与网络110进行通信。网络接口单元150的某些实施方式通过提供某些类型的网络功能来促进搜索引擎160和网络110之间的通信。例如,网络接口单元150可发送和/或解译网络业务,以允许搜索引擎160的有效合作、文件传输和其它能力。
网络接口单元150的各种实施方式提供了增强的能力。在一些实施方式中,网络接口单元150配置成通过网络110接收和处理来自工作站104的登录信息。在一个实施方式中,登录信息用于验证工作站104的用户,以确定用户对搜索引擎160的访问权。访问权可确定例如是否用户可进入搜索引擎160,用户可访问哪些文件,用户可使用搜索引擎160的哪些功能,等等。
应认识到,根据本发明,搜索引擎160的很多实施方式是可能的。在一些实施方式中,搜索引擎160配置成通过网页浏览器被使用,并且可通过网络地址定位。在这些实施方式的某些中,搜索引擎160配置成可扩展到很多不同的浏览环境(例如,通过用XML、HTML或另一可扩展标记语言编写的)。在其它实施方式中,搜索引擎160被实现为驻留在工作站104上的客户端应用程序。在这些实施方式中,可在服务器上实现某种功能(例如,文件管理),而在客户工作站104上进行很多搜索处理。在又一些其它实施方式中,搜索引擎160可驻留在局域网的分离的网络服务器上,或工作站104可用于向网络提供应用。
搜索引擎160的实施方式包括搜索接口单元130。在各种实施方式中,搜索接口单元130配置成执行搜索引擎160的核心功能,包括输入和查询处理、搜索参数化、结果检索和排序、结果显示等。下面更充分描述搜索接口单元130的实施方式和功能。
搜索引擎160的实施方式进一步包括输出产生单元140。在一些实施方式中,输出产生单元140可配置成从搜索接口单元130接收输出,并产生输出数据。由输出产生单元140产生的数据可被传递到数据存储器115(例如,直接地或通过网络110)或工作站104。在一些实施方式中,由输出产生单元140产生的输出数据可为搜索输出106。在其它实施方式中,由输出产生单元140产生的输出数据可由工作站104使用来产生搜索输出106。
图2示出根据本发明的用于基于音乐的搜索的示例性方法200的流程图。使用如图1所示系统100的系统可实现方法200的一些实施方式。方法200在块202通过接收音乐查询输入而开始。在各种实施方式中,在块202接收的音乐查询输入可包括文本输入102-1、音频输入102-2(例如,音频信号或音频文件)和/或乐谱输入102-1(例如,音乐元素数据的乐谱图像或乐谱输入)。
在块204,方法200处理查询输入以产生在基于音乐的搜索中使用的数据。在一些实施方式中,音频输入102-2或乐谱输入102-3被解构,以产生一组可识别的音乐元素。在其它实施方式中,文本输入102-1可被解析和以其他方式处理,以将查询转换成可识别的音乐元素。在块204的很多其它类型的处理是可能的,包括,例如,标准化音频信号或移除噪声以帮助解构,评估任何被提供的信息是否与其它被提供的信息不相容或不一致。
在一些实施方式中,方法200进一步在块206接收一组查询偏好。在某些实施方式中,查询偏好包括对各种搜索元素的一组加权偏好。例如,搜索者可能想要具有每分钟大约100拍的拍速(bpm)以及优选地小号旋律的所有爵士歌曲。搜索者可搜索所有那些元素,但给小号元素较低的加权。因此,具有在优选范围之外的拍速的爵士小号演奏可能被排列成低于没有小号旋律的在100bpm的爵士演奏。
应认识到,根据本发明,很多类型的加权和偏好是可能的。例如,搜索者可搜索出现在演奏的第一分钟内的某个时间的信息。对于另一例子,搜索者可提供音频和文本输入(例如,搜索者使用键盘给搜索引擎演奏一主调旋律,并通过使用文本输入字段告诉搜索引擎只在古典音乐中寻找),且与音频输入相比,对文本输入更强地加权。
在块208,方法200可使用在块202接收的输入和在块206接收的偏好来产生一组搜索参数。在一些实施方式中,在块208产生搜索参数仅仅包括对从块202和206接收的数据进行转换。例如,解构的音乐元素、解析的文本数据和其它信息可转换成对数据库运行的查询语言。在其它实施方式中,在块208产生搜索参数包括对从块202和206接收的数据进行解译。例如,如果搜索者朝搜索引擎吹出一旋律,则搜索引擎可确定搜索者是打算表达一旋律、表达拍速或节奏、表达歌曲是通过吹口哨表演的还是一些其它信息或信息的组合。在又一些其它实施方式中,在块208产生搜索参数可包括例如评估布尔运算、将明语输入转换成与查询相容的输入等。
一旦在块208产生了搜索参数,方法200就可在块210运行搜索,并接收搜索结果。块210的实施方式可对一个或多个预定的数据库、对数据的网络(例如,通过互联网可得到的数据)、对本地数据存储器或对任何其它计算机可访问的地点运行搜索,以找到可搜索的音乐数据。某些实施方式通过返回音频文件来返回结果,而其它实施方式将返回对音频文件的指针、与音频文件有关的文本或乐谱表示信息、或任何其它有用的信息。
在块212,方法200排序并显示结果。应认识到,根据本发明可用很多方法来执行对结果的排序。结果排序可能涉及在确定音乐元素中(例如,在所储存的数据中或在搜索输入中)的置信度值、所匹配的参数的数量以及匹配到什么程度、用户所提供或搜索引擎推断的加权和其它偏好。
在一些情况下,块212可能产生搜索者不希望有的或不符合某组要求的结果列表。例如,该列表从用户的观点来看可能无趣、太多、太短、顺序不正确等。因此,在块214,方法200确定是否修改搜索。在一些实施方式中,搜索者决定修改搜索(例如,通过添加或更改现有的搜索参数),而在其它实施方式中,搜索引擎根据结果参数自动修改搜索。例如,假定搜索者对在吉他上演奏的某些类型的歌曲查询搜索引擎,但没有搜索结果返回。搜索引擎可自动修改搜索,以包括在其它乐器例如班卓琴、贝司或锡塔尔琴上演奏的歌曲。在使用修改的搜索找到结果之后,搜索引擎可给搜索者返回有点象下列内容的通知:“你对吉他的搜索”返回0个结果。将搜索扩展到包括“班卓琴”,产生12个结果。点击[这里],显示“班卓琴的结果”。可通过搜索引擎产生其它自动搜索修改。
如果方法200在块214确定了应修改搜索,则可在块216接收到新的或更改的输入。这些新的或更改的输入可在块208到块212使用,以产生具有新结果的搜索。因此,用户可能想要提交包括新的或更改的输入的额外的查询。搜索可因此以反复的方式进行。
如果方法200在块214确定了不应修改搜索(例如,搜索者以接收到的结果继续进行或结果满足了结果参数),则可在块218输出或解构搜索结果。在一些实施方式中,所接收的结果包括音频文件、乐谱图像或其它信息。在这些实施方式的某些中,对结果进行解构以产生某些输出,这可能是合乎需要的(例如,与某些音乐元素106-1有关的文本输出、具有某些参数106-2的音频输出、乐谱表示输出106-3等)。
应认识到,关于图1和2描述的实施方式用来提供本发明的示例性结构和示例性功能的综述。因此,上面提供的描述不应被解释为限制本发明的范围。为了另外的清楚,下面进一步讨论确定的功能的进一步描述。
搜索输入
用于产生音乐稿件的很多不同类型的搜索输入是可能的。图3示出根据本发明的用于产生音乐稿件的各种例证性类型的搜索输入102。应认识到,图3所示的搜索输入设备只提供很多可能的搜索输入设备中的一些,且不应被解释为限制本发明的能力。
搜索输入的一个实施方式包括原始音频文件302。原始音频文件302可包括被数字化成数字信号表示的音频信号数据。例如,数字信号信息可包括样本,每个样本有时间戳和电压电平,其中该样本代表音频信号的模拟版本。在其它例子中,数字信号信息可被编码,以在算法上(例如,包括误差校正信息、编解码信息等)表示音频信号。
搜索输入的另一实施方式包括增强型音频文件304。增强型音频文件304可包括补充或代替存在于原始音频文件302中的数据的信息。在某些实施方式中,增强型音频文件304可包括关于该文件的内容、其格式或其它有用信息的元数据。例如,元数据可包括手工输入的关于音频文件的信息,包括声道名称、专辑名称、艺术家名称、风格等。在另一例子中,元数据可与其它系统相容(例如,专辑序列号和歌曲的声道号可被提供到元数据中,以允许某个数据库搜索来返回关于歌曲的其它信息,例如其标题)。
通过将原始音频文件302传送通过编码器330来产生增强型音频文件304的一些实施方式。例如,增强型音频文件304可由MPEG-7编码器产生,MPEG-7编码器可使用XML来存储元数据并将元数据附到增强型音频文件304内的某些时间戳。在其它实施方式中,通过将原始音频文件302传送通过音频解构器320,可产生增强型音频文件304。音频解构器320可从原始音频文件302解构音乐元素(如下面更充分描述的),并将它们储存在增强型音频文件304中。
搜索输入的又一实施方式包括来自相容的乐器306的数字化输出。在一个实施方式中,乐器数字接口(MIDI)装置(例如键盘)用于产生MIDI数据。MIDI数据可包括音乐元素。在一些情况下,所包括的音乐元素可用于产生其它音乐元素。例如,MIDI数据可包括音符音高,而该音符音高可被分析来确定音调。在其它实施方式中,相容的乐器306可操作来以可用的格式输出数据。例如,键盘可具有可与其它部件相容的数字同轴、光学或其它类型的输出。
搜索输入的又一实施方式包括来自传感器308的模拟输出。在一个实施方式中,一个或多个麦克风用于检测一个或多个乐器所产生的压力波,并将它们转换成模拟音频信号。在另一实施方式中,电磁拾音器用于将电吉他的钢弦中的运动转换成模拟音频信号。
搜索输入的另一实施方式甚至包括可编辑的乐谱文件310。可编辑的乐谱文件310可为包括可编辑的乐谱数据的任何类型的文件。例如,可编辑的乐谱文件310可使用乐谱编辑软件340来产生。搜索输入的一些实施方式包括乐谱图像312。乐谱图像312的实施方式可包括任何类型的可用数字图像。在一个实施方式中,乐谱图像312是打印出的物理乐谱的数字化表示(例如,活页乐谱),其通过借助于图像捕获设备(例如,扫描仪、数码照相机或视频摄像机等)将打印出的乐谱转换成数字图像来产生。在其它实施方式中,通过将乐谱图像312传送通过乐谱解构器350来将乐谱图像312转换成可编辑的乐谱文件310。乐谱解构器350可操作来从乐谱图像解构音乐元素,如下面更充分描述的。
搜索输入的其它实施方式包括一个或多个文本查询314。文本查询314可包括任何类型的文本数据,其可被解译为对基于音乐的搜索的搜索查询。在一个实施方式中,文本查询314包括以查询语言设计的文本,该查询语言配置成被解码成搜索参数。在另一实施方式中,文本查询314包括明语数据。在又一实施方式中,文本查询314包括其它参数,例如布尔算子、字段名、特殊字符等。在某些实施方式中,文本查询314被传输通过文本解析器360或其它文本处理单元,以产生搜索输入。
在某些实施方式中,编码器330、音频解构器320、乐谱解构器350、乐谱编辑器340、文本解析器360或其它应用可驻留在工作站104、服务器计算机上或网络110上。在其它实施方式中,音乐输入102可以是或可用于产生基于音乐的搜索的可搜索的元素。在某些实施方式中,可搜索的元素可储存在搜索数据库115中,作为对基于音乐的搜索的素材。在其它实施方式中,可搜索的元素可传递到网络110,以用于基于音乐的搜索。
音频解构
在本发明的一些实施方式中,提供从音乐输入数据如音频信号数据和乐谱图像数据解构出音乐元素可能是合乎需要的。应认识到,存在很多方法来从不同类型的音乐输入数据解构出音乐元素。在一些情况下,数据储存在音频文件中的方式可使解构起来简单。例如,音乐元素数据可作为头部信息储存在增强型音频文件中。然而在其它情况下,从音乐输入数据提取某些类型的音乐元素可能并不简单。
图4A示出根据本发明的用于解构音乐输入数据的方法400的流程图。方法400开始为,在块402接收音乐输入数据。在一些实施方式中,在块402接收的音乐输入数据可包括音乐搜索输入、储存在搜索数据库中的音乐或音乐元素、或与基于音乐的搜索相容的其它音乐数据。
在块410,从音乐输入解构音乐微元素。作为例子,音乐微元素可包括音符音高和值、时间戳、音符包络和音色、音调、拍速和其它类似的元素。在某些实施方式中,音乐微元素可包括其它音乐微元素(例如,连音、三连音、按声道或乐器分组的音符、按小节分组的音符、按投稿人分组的音符等)的组。在其它实施方式中,音乐微元素可包括其它音乐微元素的组成部分(例如,符干、符尾、附点等)。
在块450,解构音乐宏元素。作为例子,音乐宏元素可包括从分析音乐微元素的组和模式产生的信息。在一些实施方式中,音乐宏元素包括关于音乐微元素(例如,节奏调号、重复的乐旨、和弦/音调变化、曲式(例如,A-B-A或合唱-独唱-独唱-合唱)等)的组的局部和全局模式信息。在其它实施方式中,音乐宏元素包括从音乐微元素的集合中得到的统计信息(例如,音符或节奏模式的柱状图等)。接着,可在块490输出音乐微元素和宏元素。
图4B示出根据本发明的用于解构音乐微元素的方法410的流程图。方法410开始为,在块402接收音乐输入信号。在一些实施方式中,可预处理音乐输入信号。例如,音频信号可从模拟转换到数字、下变频到较低的采样率、为与某些编码器或解码器的相容转换代码、解析成单音调音频声道、或任何其它有用的处理。
在一些实施方式中,在块412提取音高信息并在块414提取音符开始事件。在方法410的一些实施方式中,在块412提取的音高信息和在块414提取的音符开始事件用于从在块402接收到的音频信号提取和处理其它信息。
在某些实施方式中,上述信息用于在块416确定音符时值、在块418确定休止符、在块420确定时间窗上的拍速、在块424确定窗上的音调、以及在块428确定乐器。在其它实施方式中,在块416确定的音符时值、在块418确定的休止符以及在块420确定的拍速用于在块422确定音符值;在块424确定的音调用于在块426确定音调音高标志;以及在块428确定的乐器用于在块430确定声道。在不同实施方式中,块412-430的输出配置成用于在块490-1产生作为音乐微元素的输出。
图4C示出根据本发明的用于解构音乐宏元素的方法450的流程图。方法450开始为,在块452接收(例如,来自图4B的方法410的)音乐微元素。音乐微元素可用于产生很多类型的音乐宏元素。
在一些实施方式中,音乐微元素用于在块454确定曲式(例如,前奏-独唱-合唱-独唱-过渡乐节-合唱-合唱-终奏);在块456确定风格(例如,摇滚、古典、爵士、印度古典等);在块458确定节奏调号(例如,第一乐章是以每分钟90拍的拍速(bpm)的4/4拍,第二乐章是以120bpm的拍速的3/4拍,而第三乐章返回到4/4拍,同时保持在120bpm的拍速);在块460确定轮廓(例如,歌曲仅以鼓声和低音乐器在相对低的音量和快的拍速开始,且一分钟之后,歌曲在中等音量和较慢的拍速增加干净的吉他线);在块462确定音调变化(例如,歌曲以C大调的音调开始,变调到F大调,快速变调到D小调和G大调,并返回到C大调);以及在块464确定和弦变化(例如,歌曲的一部分从Am7变化到Dm7、到Gm7、到C7、到F6,或歌曲从iii7变化到vi7、到ii7、到V7、到I6)。在各种实施方式中,块454-464的输出配置成用于在块490-2产生作为音乐宏元素的输出。
应认识到,根据本发明,很多其它类型的音乐微元素和音乐宏元素是可能的。进一步地,根据搜索所需要的音乐元素的类型,音乐输入信号可在按很多不同的级别进行解构。例如,临时鼓声道可只用于提供节奏信息。在这种情况下,解构或保留关于音高、音色、音调等的音乐元素可能是对资源的浪费。在另一例子中,声乐线可用于提供对歌曲的一个乐段中的音高变化的轮廓的一般指示。在这种情况下,解构准确的音高、音符时值等可能不重要;更确切地,仅以近似的音高值和时值来提取音高移动的大致方向可能是更有效的。
应进一步认识到,根据可用的音乐数据的类型和各种应用需要,可能存在从音乐输入解构出音乐元素的很多方法。图5A示出根据本发明的实施方式的用于解构音频信号输入以产生音乐元素的示例性系统的简化结构图。如所示,输入102由音乐解构单元120接收,音乐解构单元120解构输入102以产生被解构的输出570。
在一些实施方式中,输入102由音乐解构单元120在音频接收器单元506接收。在一个实施方式中,乐曲由麦克风或麦克风阵列实时地接收,并转换成模拟电子输入102,供音频接收器单元506接收。在其它实施方式中,输入102可包括数字数据,例如适合于重放的已录制的音乐文件。如果输入102是模拟信号,则它可由音频接收器单元506转换成数字表示,以备由信号处理器单元510、音符处理器单元530和乐谱处理器单元550进行数字信号处理。当输入102被实时地接收时,可能没有方法来预先确定输入102的全长。因此,输入102可按预定的间隔(例如,消逝时间的量、数字样本的数量、所使用的存储器的量等)被接收和存储,并可被相应地处理。在另一实施方式中,已录制的声音片断由音频接收器506接收并被数字化,从而具有固定的持续时间。
图5B提供了音乐解构单元120的一个实施方式的低级结构图。一个或多个音频源502可用于产生音乐输入信号102。音频源502可为能够向音频接收器506提供音乐输入信号102的任何东西。在一些实施方式中,一个或多个麦克风、转换器和/或其它传感器用作音频源502。麦克风可将来自现场表演演奏(或已录制的演奏的重放)的压力或电磁波转换成电信号,以用作音乐输入信号102。例如,在现场表演的音频演奏中,麦克风可用于检测和转换来自歌手的音频,而电磁“拾音器”可用于检测和转换来自吉他和贝司的音频。在其它实施方式中,音频源502可包括配置成提供音乐输入信号102或音频文件的模拟或数字设备,从音频文件可读取音乐输入信号102。例如,数字化音频文件能够以音频格式储存在存储介质上,并作为音乐输入信号102由存储介质提供给音频接收器506。
应认识到,根据音频源502,音乐输入信号102可具有不同的特征。音乐输入信号102可为单音调或复调的,可包括音频数据的多个声道,可包括来自很多类型的乐器的音频,并可包括某种文件格式,等等。类似地,应认识到,音频接收器506可为能够接收音乐输入信号102的任何东西。进一步地,音频接收器506可包括一个或多个端口、解码器、或与音频源502连接、接收或解释音乐输入信号102所必需的其它部件。
音频接收器506可提供额外的功能。在一个实施方式中,音频接收器506将模拟音乐输入信号102转换成数字音乐输入信号102。在另一实施方式中,音频接收器506配置成将音乐输入信号102下变频到较低的采样率,以减小系统500的计算负担。在一个实施方式中,音乐输入信号102被下采样到大约8-9kHz。这可提供音乐输入信号102的较高的频率分辨率,并可减小对系统500的设计的某些限制(例如,滤波器规范)。
在又一实施方式中,音频接收器506包括阈值检测部件,其配置成在检测到音频电平超过某个阈值时开始接收音乐输入信号102(例如,开始录制)。例如,阈值检测部件可在规定的一段时间内分析音频,以检测音乐输入信号102的振幅是否在某个预定量的时间内保持在预定阈值之上。阈值检测部件可进一步配置成当音乐输入信号102的振幅在预定量的时间内落在预定阈值之下时停止接收音乐输入信号102(例如,停止录制)。在又一实施方式中,阈值检测部件可用于为系统500产生标志,其表示音乐输入信号102的振幅在一定量的时间内超过阈值或落在阈值之下的条件,而不是实际上开始或终止对音乐输入信号102的接收。
根据图5B,音频接收器506将音乐输入信号102传送到包括振幅提取单元512和频率提取单元514的信号处理器单元510。振幅提取单元512配置成从音乐输入信号102提取与振幅有关的信息。频率提取单元514配置成从音乐输入信号102提取与频率有关的信息。
在一个实施方式中,频率提取单元514使用变换算法将信号从时域变换到频域。例如,当在时域中时,音乐输入信号102可被表示为振幅随着时间的变化。然而,在应用快速傅立叶(FFT)算法之后,同一音乐输入信号102可被表示为其每个频率分量的振幅的曲线(例如,在频率范围内的每个频带的相对强度或组成,如泛音系列一样,信号将在该泛音系列上被处理)。对于处理效率,可能希望将该算法限制到某个频率范围。例如,频率范围可只覆盖可听声谱(例如,大约20Hz到20kHz)。
在不同实施方式中,信号处理器单元510可用其它方式提取与频率有关的信息。例如,很多变换算法以固定宽度的线性频率“存储段(bucket)”输出信号。这可限制变换的可能频率分辨率或有效性,特别是考虑到,音频信号在本质上内在地可以是对数的(而不是线性的)。用于从音乐输入信号102提取与频率有关的信息的很多算法在本领域中是已知的。
振幅提取单元512所提取的与振幅有关的信息和频率提取单元514所提取的与频率有关的信息可接着由音符处理单元530的不同部件使用。在一些实施方式中,音符处理单元530包括音符开始检测器单元532、音符时值检测器单元534、音高检测器单元536、休止符检测器单元544、包络检测器单元538、音色检测器单元540和音符力度强弱检测器单元542中的全部或一些。
音符开始检测器单元532配置成检测音符的开始。音符的开始(或起始)一般在乐曲中表现为音高的变化(例如圆滑奏)、振幅的变化(例如包络的附加部分)或音高和振幅的变化的一些组合。因此,音符开始检测器单元532可配置成每当有频率(或音高)和/或振幅的某种类型的变化时产生音符开始事件。
音乐音符也可以其时值(例如,音符以秒或样本的数量为单位持续的时间的量)为特征。在一些实施方式中,音符处理单元530包括音符时值检测器单元534,其配置成检测音符开始事件所标记的音符的时值。
值得注意的是,乐曲的某些特征是心理声学的,而不纯粹地是信号的物理属性。例如,频率是信号的物理特性(例如,表示正弦波每秒所传播的周期数),但音高是更复杂的心理声学现象。一个原因是乐器所演奏的单个音高的音符通常由很多频率组成,每个频率振幅不同,被称为音色。大脑可检测那些频率之一(例如,一般是基频)作为“音高”,而其它频率仅是感测到给音符添加了“和声色彩”。在一些情况下,听者所感受到的音符的音高可能为信号最缺乏或完全缺乏的频率。
在一些实施方式中,音符处理单元530包括音高检测器单元536,其配置成检测由音符开始事件标记的音符的音高。在其它实施方式中,音高检测器单元536配置成跟踪音乐输入信号102的音高,而不是(或除了)跟踪个别音符的音高。应认识到,音高检测器单元536在一些情况下可由音符开始检测单元532使用,以确定音乐输入信号102的超过阈值的音高的变化。
音符处理单元530的一些实施方式包括配置成检测音乐输入信号102内休止符的存在的休止符检测器单元544。休止符检测器单元544的一个实施方式使用振幅提取单元512所提取的与振幅有关的信息和音高检测器单元536所得到的置信度信息。例如,与振幅有关的信息可揭示音乐输入信号102的振幅在某个时间窗内相对低(例如,在本底噪声处或附近)。在相同的时间窗内,音高检测器单元536可确定特定音高的存在的非常低的置信度。使用这个和其它信息,休止符检测器单元544检测休止符的存在以及休止符可能开始的时间位置。
在一些实施方式中,音符处理单元530包括音色检测器单元540。振幅提取单元512所提取的与振幅有关的信息和频率提取单元514所提取的与频率有关的信息可由音色检测器单元540使用,来对音乐输入信号102的一部分检测音色信息。音色信息可揭示音频信号102的该部分的谐波成分。在一些实施方式中,音色检测器单元540可检测关于在音符开始事件处开始的特定音符的音色信息。
在音色检测器单元540的一个实施方式中,与振幅有关的信息和与频率有关的信息与高斯滤波器卷积,以产生滤波的频谱。滤波的频谱可接着用于产生在音高检测器单元536所检测到的音高周围的包络。该包络可相应于在该音高处的音符的音色。
在一些实施方式中,音符处理单元530包括包络检测器单元538。振幅提取单元512所提取的与振幅有关的信息可由包络检测器单元538使用,来对音乐输入信号102的一部分检测包络信息。例如,击钢琴上的键可使音槌击打一组弦,导致具有大起奏振幅的音频信号。该振幅经历快速衰减,直到它在弦共振的地方维持在稍微稳态的振幅(当然,当弦中的能量耗尽时,振幅可在包络的该部分上缓慢地减小)。最后,当钢琴键被释放时,制音器落在弦上,使振幅快速下降到零。这种类型的包络一般称为ADSR(起奏、衰减、维持、释放)包络。包络检测器单元538可配置成检测ADSR包络的一些或所有部分,或任何其它类型的有用包络信息。
在不同实施方式中,音符处理单元530还包括音符力度强弱检测器单元542。在某些实施方式中,对于在某些音符开始事件处开始的特定音符,音符力度强弱检测器单元542提供与包络检测器单元538类似的功能。在其它实施方式中,音符力度强弱检测器单元542配置成检测相对于被包络检测器单元538检测到的包络模式是异常的或符合某种预定的模式的音符包络。例如,断奏音符可以以急剧的起奏和其ADSR包络的短持续部分为特征。在另一例子中,重音音符可以明显大于周围音符的起奏振幅的起奏振幅为特征。
应认识到,音符力度强弱检测器单元542和其它音符处理单元可用于识别音符的多个其它属性,这些属性可被描述为被解构的输出570的部分。例如,音符可被标记为圆滑奏、重音、断奏、装饰音符等。根据本发明可提取很多其它音符特征。
与多个音符或音符开始事件(包括休止符)有关的信息可用于产生其它信息。根据图5B的实施方式,音符处理单元530的不同部件可与乐谱处理单元550的不同部件操作性地通信。乐谱处理单元550可包括拍速检测单元552、节拍检测单元554、音调检测单元556、乐器识别单元558、声道检测单元562和全局力度强弱检测单元564中的全部或一些。
在一些实施方式中,乐谱处理单元550包括拍速检测单元552,其配置成在一时间窗内检测音乐输入信号102的拍速。一般,一首乐曲的拍速(例如,乐曲似乎在心理声学上传递的速度)可部分地由音符和休止符的存在和时值影响。因此,拍速检测单元552的某些实施方式使用来自音符开始检测器单元532、音符时值检测器单元534和休止符检测器单元544的信息来确定拍速。拍速检测单元552的其它实施方式进一步使用所确定的拍速来给音符和休止符分配音符值(例如,四分音符、八分音符等)。
节拍指示在音乐的每个小节中有多少拍,以及哪个音符值被认为是单拍。例如,4/4的节拍表示每个小节有四拍(分子),以及单拍由四分音符(分母)表示。由于这个原因,节拍可帮助确定音符和小节线位置,以及提供有用的解构输出570可能需要的其它信息。在一些实施方式中,乐谱处理单元550包括配置成检测音乐输入信号102的节拍的节拍检测单元554。
在一些实施方式中,从拍速信息和拍速检测单元552所提取的音符值并从其它信息(例如,音符力度强弱检测器单元542所提取的音符力度强弱信息)推断简单的节拍。然而,通常,确定节拍是涉及复杂的模式识别的复杂任务。
例如,假定音符值的下列序列从音乐输入信号102被提取:四分音符、四分音符、八分音符、八分音符、八分音符、八分音符。此简单的序列可被表示为4/4的一个小节、2/4的两个小节、1/4的四个小节、8/8的一个小节或很多其它节拍。假定在第一个四分音符和第一个八分音符上有重音(例如,增加的起奏振幅),这可使序列更可能为2/4的两个小节、4/8的两个小节或4/4的一个小节。进一步地,假定4/8是非常罕见的节拍,则可足以消除此猜测。更进一步地,若知道音乐输入信号102的风格是民谣,则最可能的候选节拍更可能是4/4。
上面的例子示出涉及即使是非常简单的音符值序列的复杂性。很多音符序列复杂得多,涉及不同值的很多音符、跨越多个小节的音符、附点音符和装饰音符、切分音以及在解释节拍中的其它困难。由于这个原因,传统计算算法可能难于准确地确定节拍。因此,节拍检测单元554的不同实施方式使用被培训来检测那些复杂模式的人工神经网络(ANN)560。通过给ANN 560可提供不同节拍的很多样本和针对每个样本改进的代价函数来培训ANN 560。在一些实施方式中,使用学习范式来培训ANN560。学习范式可包括例如有监督的学习、没有监督的学习或强化学习算法。
应认识到,通过使用拍速和节拍信息中的任一个或两个可产生很多有用类型的信息,以用作音乐元素或解构的输出570。例如,这些信息可允许确定:在哪里将音符分为小节(例如,作为八分音符组),而不是使用符尾单独地指定音符;何时将一音符分在两个小节中,并将其用连接线连起来;或何时将音符组指定为三连音符(或高阶组)、装饰音符、颤音或波音、滑音等。
在产生音乐元素或解构的输出570中可能有用的另一组信息涉及音乐输入信号102的一部分的音调。音调信息可包括例如被识别的根音高和相关调式。例如,“A小调”表示音调的根音高是“A”,而调式是小调。每个音调以调号为特征,调号标识“在音调中”(例如,与音调关联的全音阶的部分)和“在音调外”(例如,在音调的范式中的临时记号)的音符。“A小调”例如不包含升号或降号,而“D大调”包含两个升号且不包含降号。
在一些实施方式中,乐谱处理单元550包括配置成检测音乐输入信号102的音调的音调检测单元556。音调检测单元556的一些实施方式基于将音高序列与一组代价函数进行比较来确定音调。代价函数可例如试图最小化一首乐曲在特定的时间窗内的临时记号的数量。在其它实施方式中,音调检测单元556可使用人工神经网络来进行或改进复杂的音调确定。在又一些其它实施方式中,可对照代价函数来评估音调变化的序列,以改进音调确定。在另一些其它实施方式中,音调检测单元556所得到的音调信息可用于给音符(或音符开始事件)赋予特定的音调音高标志。例如,F大调中的“B”可被指定为“B-本位音”。当然,音调信息可用于产生调号或乐谱表示的其它信息。在一些实施方式中,音调信息可进一步用于产生和弦或其它和声信息。例如,以弦线乐谱的格式可产生吉他和弦,或可提供爵士和弦。
在其它实施方式中,乐谱处理单元550还包括配置成识别正演奏音乐输入信号102的乐器的乐器识别单元558。乐器常常被认为具有特定的音色。然而,根据被演奏的音符或音符被演奏的方式,在单个乐器上可能有音色的差异。例如,根据例如在其构造中使用的材料、演奏者的触摸、被演奏的音符(例如,在开弦上演奏的音符具有与在用手指弹奏的弦上演奏的相同音符不同的音色,以及在小提琴音区下部的音符具有与上部音区中的音符不同的音色)、音符是用弓拉的还是弹拨的等,每个小提琴的音色不同。然而,在小提琴音符之间仍然可能有足够的类似,以将其识别为小提琴,而不是另一乐器。
乐器识别单元558的实施方式配置成比较单个或多个音符的特征,以确定明显由音乐输入信号102的乐器演奏的音高的音域、由该乐器在那些音高的每个音高处产生的音色、和/或在该乐器上演奏的音符的振幅包络。在一个实施方式中,音色差异被用于通过将乐器的一般音色符号样本与来自音乐输入信号102的检测到的音色进行比较,以检测不同的乐器。例如,即使以相同音量演奏相同时值的相同音符时,萨克斯和钢琴由于其不同的音色也可能发出非常不同的声音。当然,如上所述,只基于音色的识别的准确性可能是有限的。
在另一实施方式中,音高音域用于检测不同的乐器。例如,大提琴一般可演奏范围从中央C音之下的大约两个八度到中央C音之上的大约一个八度的音符。然而,小提琴一般可演奏范围从恰好在中央C音之下到中央C音之上的大约四个八度的音符。因此,即使小提琴和大提琴可具有相似的音色(它们都是拉奏弦乐器),其音高音域可充分不同以用于识别。当然,假定音域在某种程度上确实交叠,存在误差是可能的。进一步地,其它乐器(例如钢琴)具有可与很多乐器交叠的较大音域。
在又一实施方式中,包络检测用于识别不同的乐器。例如,在槌打乐器(例如钢琴)上演奏的音符的发声可能不同于在木管乐器(例如长笛)、簧乐器(例如双簧管)、铜管乐器(例如小号)或弦乐器(例如小提琴)上演奏的音符。然而,每种乐器能够产生很多不同类型的包络,取决于音符如何被演奏。例如,小提琴可被弹拨或拉奏,或音符可被连奏或断奏。
至少由于上面提到的困难,准确的乐器识别可能需要检测复杂的模式,包括可能在多个音符上的音乐输入信号102的多个特征。因此,乐器识别单元558的一些实施方式利用被培训来检测这些复杂模式的组合的人工神经网络560。
乐谱处理单元550的一些实施方式包括配置成识别来自音乐输入信号102内的音频声道的声道检测单元562。在一些情况下,音乐输入信号102可以为已经被声道分离的格式。例如,在某些数字音频磁带(DAT)上的音频可被储存为8个分离的数字音频声道。在这些情况下,声道检测单元562可配置成仅仅识别这些分立的音频声道。
然而在其它情况下,多个声道可储存在单个音乐输入信号102中,且需要通过从音乐输入信号提取某些数据来进行识别。因此,声道检测单元562的一些实施方式配置成使用从音乐输入信号102提取的信息来识别分开的音频声道。例如,演奏可包括同时演奏的5种乐器(例如爵士五重奏)。可能希望将那些分开的乐器识别为分开的声道。
声道检测可用很多不同的方式完成。在一个实施方式中,声道检测单元562使用音高检测来确定是否不同的音符序列表现为被限制到某些音高音域。在另一实施方式中,声道检测单元562使用来自乐器识别单元558的乐器识别信息来确定不同的声道。
很多乐谱也包含关于乐曲或演奏的全局力度强弱的信息。与上述音符力度强弱不同,全局力度强弱指跨越多个音符的力度强弱。例如,整个曲子或曲子的一部分可被标记为强的(高声)或弱的(轻柔)。在另一例子中,音符的序列可在声音渐强中逐渐增大。为了产生这种类型的信息,乐谱处理单元550的一些实施方式包括全局力度强弱检测单元564。全局力度强弱检测单元564的实施方式使用振幅信息,在一些情况下包括音符力度强弱信息和/或包络信息,以检测全局力度强弱。
在某些实施方式中,从音乐输入信号102预先确定或适应性地产生阈值,以帮助力度强弱确定。例如,摇滚演奏的平均音量可被认为是强的。超过该平均值某个数量(例如,阈值、标准偏差等)的振幅可被认为是极强的,而落在该平均值之下某个数量的振幅可被认为是弱的。
某些实施方式可进一步考虑力度强弱变化出现的时值。例如,以两分钟的平静音符开始并随后转换到两分钟的较大声的音符段的部分可被认为弱音段后跟随有强音段。另一方面,在几个音符的过程中增加、对几个更多的音符保持在该较高的音量并接着返回到原始振幅的平静段,可被认为渐强段跟随有渐弱段。
可产生上面描述的所有不同类型的信息以及任何其它有用的信息,以用作音乐元素或解构的输出570。除了参考系统的各种部件描述的音乐元素或解构的输出570以外,任何数量的其它音乐元素或解构的输出570也可从相同的或其它信息产生。在一个例子中,例如,音符被确定为断奏附点八分音符。其它音乐元素570可包括音符主体、符干、符尾、时值附点、断奏附点和音符的其它特征。其它音乐元素570甚至也可包括在显示器上的或打印出的音符表示的风格和颜色、符干的方向(例如,该方向可以是默认的,或根据其在五线谱上的位置来指示其反向,或它可被改变以指明音符是特定音符序列的部分)、音符主体的大小(例如,它可为了易读性按大小排列,以将它与其它音符区分开,或为了某个其它原因)、音符符头的形状(例如,对于击发声,它可为不同的形状)、或任何其它有用的信息。在其它例子中,音乐元素或解构的输出570可包括五线谱线、谱号、小节号、歌词、歌词对齐、页标题、五线谱标题、页边空白、乐器数据、重放数据等。在又一些其它实施方式中,音乐元素或解构的输出570可包括对提高基于音乐的搜索的效率有用的其它信息。音乐元素或解构的输出570可被保存或输出。
应认识到,上面描述的各种单元和部件可用各种方法实现,而不偏离本发明。例如,某些单元可为其它单元的部件,或可实现为另一单元的额外功能。进一步地,根据本发明,可用很多方法连接单元,且数据可在其间以很多方式流动。更进一步地,在2008年2月1日提交的RobertD.Taub等人的标题为“MUSIC TRANSCRIPTION”的美国申请号12/024,981中进一步描述了的涉及音频解构的各种实施方式,该专利申请为了所有目的在这里通过引用被并入。
乐谱解构
除了或代替从音频信号解构出音乐元素,从乐谱图像解构出音乐元素在一些情况下可能是合乎需要的。本发明的实施方式配置成接受乐谱图像作为输入。应认识到,从乐谱图像解构出音乐元素或执行乐谱解构的很多方法是可能的。
图6A示出根据本发明处理音乐图像数据以提供光学字符识别(OCR)特征的系统。OCR处理器602接收使用乐谱捕获设备606例如摄像机或扫描仪捕获的乐谱604的图像数据。OCR处理器602产生包括相应于乐谱输入的数据的乐谱输出,但是是以可被多样化地利用的数字形式。乐谱的数字表示可容易由其它系统处理,包括但不限于,打印出的输出,供搜索机构使用,用于分配和与多个用户合作,并用于例如使用MIDI部件产生音频输出。例如,图6A示出乐谱可被提供到打印功能608、搜索功能610、分配功能612和音频/MIDI输出614。
所捕获的乐谱图像可使用任何图像捕获设备产生,包括网络摄像头、电话摄像机、对准即拍摄像机以及其它的和更复杂的摄像机。一旦乐谱的图像被捕获,它就被提供给OCR处理器用于调节和额外的处理。
图6B示出从捕获设备606(图6A)产生的、作为输入提供到OCR处理器602的示例性图像数据652。图6B示出,OCR处理器602包括接收图像数据的图像预处理部件654。图像数据可以为例如位图图像(.bmp)、JPEG数据、TIFF数据的形式和数码摄像机通常使用的其它文件格式等。图像处理部件执行二值化、图像的倾斜校正以及不相关的背景成分的移除。二值化操作涉及对所捕获的图像中的亮度和对比度的调节。倾斜校正操作涉及图像的校正,这些图像从一方向旋转,将音乐五线谱线对齐为平行于图像的底部边缘。不相关的背景成分移除通过移除噪声伪像和其它不需要的背景成分来清理图像。如果需要,预处理操作可由外部图像处理例程或模块执行。
预处理部件654向神经网络(NN)处理部件656提供所产生的数据。NN处理部件656识别在所捕获的图像中的音乐符号,并执行对光学图像的认知处理。也就是说,神经网络执行识别在所捕获的音乐图像中的音乐符号的计算机过程,且在必要的场合认知地解译识别出的符号并从输入数据推断,以确定在所捕获的图像中的伪像或符号的适当标记。
NN处理部件656包括被培训的神经网络,其接收经调节的乐谱图像。如果需要,被培训的神经网络可利用其输出来提供反馈并调节其操作。这样的反馈可能需要因子图操作,以利用反向传播技术或调节已被培训的神经网络的网络节点权重。使用输出作为反馈的其它技术对本领域技术人员是已知的。
NN处理部件656的输出被提供到产生NN的输出的后处理部件658。后处理部件的输出可接着被提供到各种功能,例如图6A所示的打印、搜索、分配和音频功能。后处理部件对NN输出执行解译功能,以确定NN所识别的哪些伪像类型可能是正确的。由后处理部件658所进行的解译是基于NN所产生的置信度值。本领域技术人员应熟悉对NN置信度值输出数据的解译技术。后处理接着产生以适当格式的OCR处理器输出,例如音乐音符信息或相应于识别出的音乐伪像的其它信息。例如,音乐信息可采取电子乐器表示的形式,例如MIDI格式、或其它数据格式、或信息的其它组合。
应认识到,上面描述的各种单元和部件可用各种方法实现,而不偏离本发明。例如,某些单元可为其它单元的部件,或可实现为另一单元的额外功能。进一步地,根据本发明,可用很多方法连接单元,且数据可在其间以很多方式流动。更进一步地,在2008年2月13日提交的RobertD.Taub等人的标题为“MUSIC SCORE DECONSTRUCTION”的美国临时申请号61/028,490中进一步描述了的涉及乐谱分解的各种实施方式,该专利申请为了所有目的在这里通过引用被并入。在2005年12月15日提交的Robert D.Taub的标题为“SYSTEM AND METHOD FOR MUSICSCORE CAPTURE AND SYNCHRONIZED AUDIO PERFORMANCEWITH SYNCHRONIZED PRESENTATION”的美国专利申请第11/303,812号中可找到乐谱捕获技术的其它方面,该专利申请为了所有目的在这里通过引用被并入。
搜索引擎
本发明的很多方面涉及搜索引擎的功能和/或结构。在一些实施方式中,搜索引擎可实现为图1的搜索引擎160。合作门户的各种实施方式可提供关于搜索输入和输出处理、搜索执行和结果处理、以及文件管理、音乐观看、音乐和文本编辑、以及基于音乐的搜索的其它方面的功能。应认识到,就图形用户界面(GUI)设计和实现、合作门户所允许的用户互动的水平、GUI控制的类型、模块和部件之间的功能交叉和依赖性、网络设计和接口、搜索引擎的其它方面而言,可有很多可能性。因此,下面的描述用来仅仅说明本发明的一些示例性实施方式,且本领域技术人员应认识到,本发明的范围并不受所公开的特定实施方式限制。
图7示出根据本发明的用于基于音乐的搜索引擎的实施方式的图形用户界面(GUI)的一个示例性配置。GUI 700包括至少两个主要的区(在图7中示为框):搜索输入区702和搜索结果区750。搜索输入区702除了其它操作以外还负责接收和处理各种类型的搜索输入,并使用它们来产生搜索参数。搜索结果区750除了其它操作以外还负责接收搜索结果、显示搜索结果并产生搜索输出。
搜索输入区702包括与输入接收、输入显示和输入区控制有关的多个GUI元素。根据本发明,很多类型的输入接收是可能的,包括关键字输入704、音频输入706和乐谱输入708(如图7所示)。关键字输入、音频输入和乐谱输入被接收为同一查询的部分,或可按反复的方式连续地或以任何顺序被接收。关键字输入704包括任何类型的字母数字、文本或与文本有关的输入的接收。在一个实施方式中,关键字输入704包括明语文本,其被解译以产生一组关键字。在另一实施方式中,关键字输入704包括可操作来转换成关键字的专用文本。例如,专用文本可包括字段输入、布尔算子等。该文本可接着以任何有用的方式(例如,通过使用以标记语言如XML形式的文件类型定义)被处理。
在又一个实施方式中,使用音频信号处理器来接收关键字输入704。例如,用户可点击录制按钮710,这开始语音录制。语音录制结果可接着由语音到文本处理器来处理。经处理的文本接着以任何有用的方式(包括上面讨论的方式)进一步被处理成关键字,用于查询输入。
在一个实施方式中,所接收的关键字输入704是″拍速(′90-100′)&风格(′爵士或蓝调)&起始音调(′D小调′)&音频输入(解构(′节奏′))″(″TEMPO(′90-100′)& GENRE(′jazz or blues′)& STARTKEY(′D-minor′)& AUDIO_INPUT(DECONSTRUCT(′rhythm′))″)。应认识到,这个接收到的关键字输入704旨在为仅仅是例证性的,且输入可包括关键字输入的其它内容和类型。这个示例性的关键字输入704可表示搜索者希望找到具有在90和100bpm之间的拍速、爵士或蓝调的风格、D小调的起始音调和与从接收到的音频输入解构出的节奏类似的节奏的歌曲。值得注意的是,″&″表示布尔“和”运算。进一步值得注意的是,用于接收和处理关键字输入的很多方法在本领域中是已知的,其中很多方法允许用户输入关键字,而不用学习专门的语法。
音频输入706可用很多不同的方法接收和处理。为了适应各种可能的接收和处理功能,可设置一组GUI控制。例如,如所示,可设置用于接收音频输入信号(例如,从麦克风或其它音频输入源)、装入音频输入文件或将接收到的音频信号或文件解构成音乐元素的按钮。音频输入可包括多种类型的输入。例如,旋律部分可包括哼或唱的曲调,而口述词部分可包括口述词。部分分隔符可设置在音频输入中的各类型之间,用于自动检测这些部分,并可包括例如预定的词。
乐谱输入708可类似地以很多不同的方式被接收和处理。为了适应各种可能的接收和处理功能,可设置一组GUI控制。例如,如所示,可设置用于接收乐谱图像(例如,来自摄像机,扫描仪,或其它数字成像设备)、装入乐谱图像文件或将接收到的乐谱图像解构成音乐元素的按钮。
在一些实施方式中,输入显示框720被设置来用于显示关于接收到的和/或经处理的输入的信息。输入显示框720的某些实施方式包括音频和/或乐谱解构结果信息722、原始和/或解构的音乐元素表示显示724以及重放/可视化/录制控制726。
在一个实施方式中,搜索者通过录制对着麦克风拍或哼的节奏来接收音频输入706。音频输入706接着被分解以提取关于节奏(例如,音符开始和时值、休止符、拍速等)的音乐元素。在音频和/或乐谱解构结果信息722区中提供信息,表示节奏已从音频输入信号成功地解构出来。在原始和/或解构的音乐元素表示显示724区中,为搜索者显示解构的音乐元素的图示。上面描述了由音频和/或乐谱解构产生的音乐元素的类型。搜索者可使用音频和/或乐谱解构结果信息722区以及原始和/或解构的音乐元素表示显示724区中的信息来确定搜索引擎700是否如用户所希望的进行了录制和分解。
重放/可视化/录制按钮726可包括用于处理重放、可视化、录制或可能影响输入显示框720的其它方面的任何有用的控制。例如,重放/可视化/录制控制726可包括重放/录制按钮(例如,录制、播放、暂停、停止、快进、插入、翻录、修剪等)、重放/录制按钮进度指示器(例如,存储器指示器、消逝时间指示器、位置指示器等)、可视化控制(例如,缩放和摇摄控制、模式转换控制(例如,乐谱表示模式、音频信号/包络表示模式、钢琴卷帘表示模式等)等)和/或其它有用的控制。
搜索输入区702的实施方式包括输入区控制。应认识到,可提供很多类型的控制(例如,滑块、旋钮、开关、按钮等)来控制搜索输入区702的很多功能。在一些实施方式中,输入区控制包括一组输入控制按钮730,例如设置按钮730-1、重置按钮730-2、修改按钮730-3和搜索按钮730-4。
设置按钮730-1可控制搜索输入区702的任何数量的设置。在一些实施方式中,点击设置按钮使设置菜单出现,其提供对任何数量的设置的访问途径。一些设置可涉及接收搜索输入,包括文件管理(例如,将搜索引擎700配置为接受某些文件类型或从某些端口或部件接收音频或视频)、语言学(例如,将搜索引擎700配置为接受以某些语义格式的文本)等。其它设置可涉及处理接收到的输入,包括配置加权(例如,将搜索引擎700配置为用不同的方式对不同的搜索输入加权等)、音频和乐谱解构(例如,设置最小量化值(例如,音符时值、音高变化等)、将搜索引擎700配置为仅仅检测某些类型或组的音乐元素等)等。
例如,在图7所示的例证性实施方式中,这些设置可用很多方式配置搜索引擎700。搜索引擎700可配置成通过工作站中的声卡接受音频输入、只寻找有节奏的音乐元素、只寻找在某个阈值音量(或起奏水平)之上的音频,并将所有音符和休止符值量化到最近的八分音符。搜索引擎700可进一步配置成,将解构的节奏的权重设置为高于文本输入(例如,这使得被解构的节奏将被作为更重要的搜索项来对待),并将拍速关键字输入作为第二最重要的搜索项来加权。
重置按钮730-2可配置成重置搜索参数(例如,以返回到默认配置、清除关键字字段、清除加权等)。修改按钮730-3可配置成在结果被返回之后修改搜索。例如,可能希望在结果中搜索更具体的结果,根据其它搜索输入过滤结果,改变搜索输入的全部或部分,修改加权等。以这种方式,用户可连续或反复地输入搜索标准,同时,搜索结果的字段变得越来越具体或精确。搜索按钮730-4可配置成根据搜索输入产生搜索参数,并使用搜索参数来执行对一个或多个数据库的搜索。
一旦搜索输入被接收并处理成关键字、加权等,它们就可用于产生一组搜索参数。例如,它们可转变成SQL查询,用于彻底一平面文件数据库。可用任何有用的方式设计或产生这组搜索参数,这可能取决于被搜索的数据库的类型和/或数据库中储存的数据的类型。
在一些实施方式中,数据库储存原始音频和/或乐谱文件(或对原始音频文件的指针),其可在“运行时”(例如,在或接近搜索时刻)被解构。在其它实施方式中,数据库储存关于音频文件的元数据(例如,其解构自音频文件、提取自音频文件中的元数据、手工输入、由一些其它系统产生等)。在又一些其它实施方式中,数据库储存多种类型的文件,其可以多种方式用于基于音乐的搜索。
在不同实施方式中,数据在数据库上的储存条件下被预过滤或以其他方式被预处理。在一个实施方式中,某些预定类型的音乐元素可被确定为是可能的搜索候选项并可被预解构。例如,假定搜索者倾向于搜索以特定拍速的歌曲。作为一种预分类或预过滤过程,可从文件预解构出拍速。在某些实施方式中,可按不同于最终解构的级别(例如,分辨率)来执行预解构。例如,为了搜索具有某个主调旋律的歌曲,可能首先完成对歌曲中音高轮廓的粗略解构,以限制可能的匹配候选项的列表。接着可只对该有限的候选项列表执行更彻底的解构,以更准确地确定匹配。在其它实施方式中,涉及文件(例如,风格、作者、乐器列表等)的元数据或其它信息可用于预过滤或预分类数据。例如,可预分类特定风格的所有歌曲,或可将歌曲预分类为“快速的”或“慢速的”。以这些和其它方式,多层预处理可用于保留系统资源,加速搜索时间,改进结果,以及用于其它原因。
一旦检索到搜索结果,就可根据本发明以很多不同的方式处理它们。在一些实施方式中,搜索结果被排序。应认识到,可能有很多类型的和用于对结果排序的过程。一些排序涉及特定的候选项匹配搜索输入的接近程度。其它排序进一步考虑搜索者所提供的不同加权和其它偏好。又一些其它排序考虑一个或多个置信度值(例如,从各种代价函数产生的误差值)。一种类型的置信度值可涉及音乐元素的解构,表示解构产生正确结果的概率(例如,由于各种原因,拍速可按90%的置信度被确定为96bpm,包括异常值或稍微表现的变化)。当然,解构可涉及对搜索输入的解构和/或对被检索的数据的解构(例如,储存在数据库中的数据)。另一类型的置信度值可涉及搜索置信度。例如,用作搜索输入的主调旋律可按99%的置信度匹配从数据库中检索出的主调旋律(例如,在检索出的旋律中的少数音符不能准确地匹配输入旋律)。
接着,结果(例如,被排序的结果)可显示在GUI 700的搜索结果区750中。搜索结果区750包括与结果显示和结果区控制有关的多个GUI元素。虽然很多类型的结果显示是可能的,图7示出结果列表显示区760和结果细节显示区770。
结果列表显示区760配置成显示从一个或多个数据库检索出的结果的列表。在一些实施方式中,结果列表显示区包括窗控制。例如,结果列表显示区可包括在底部和侧面上的滚动条762,以允许搜索者更容易在全部结果中滚动。
如所示,结果列表显示区可包括关于总的搜索结果的信息,如“显示′拍速(90-100)&风格(爵士或蓝调)&起始音调(D小调)&音频输入(解构(节奏))′(′TEMPO(90-100) & GENRE(jazz or blues)&STARTKEY(D-minor)& AUDIO_INPUT(DECONSTRUCT(rhythm))′)的搜索结果:1到20(共238个)”。这种类型的信息可响应于在搜索输入区702中提供的例证性搜索输入向搜索者指示当前列表正显示从数据库中检索出的总共238个结果中的前20个结果。结果列表区也可包括被排序的列表的显示(例如,作为图表)。图表可包括关于结果的高级信息,包括例如歌曲标题、艺术家、置信度值等。
在所示例子中,第二检索出的结果764是Ed Washington的标题为″Walking in Darkness″的歌曲。值得注意的是,所示结果由构造的数据组成,且不是用来以任何方式指实际乐曲或艺术家。置信度值被显示为″97%(99%/99%/97%/92%)″。这可表示对于97%的加权的总置信度值,搜索返回关于拍速的99%置信度、关于风格的99%置信度、关于起始音调的97%置信度以及关于从音频搜索输入分解的节奏的92%置信度。在一些情况下,由于各种原因,可能希望给搜索者提供合并到搜索中的一些或全部置信度值。例如,搜索者可能希望知道,虽然总起来一个结果可能有相对高的置信度值,但是,一个参数明显偏离搜索输入。这可允许搜索者更有效地修改未来的搜索,以检索更多合适的结果。
结果细节显示区770可配置成确定与特定结果的细节有关的任何数量的不同类型的数据。在一个实施方式中,显示出与选定结果相关的音频的各种表示。例如,可显示乐谱表示、音频信号表示、钢琴卷帘表示或任何其它有用的表示。在另一实施方式中,可提供与在结果列表显示区760中所提供的内容相同的文本信息,或其它文本信息(例如,使用较大的字体、提供更多的细节、提供歌曲的专辑封面的封面艺术图像、提供购买歌曲或访问乐队网站的超链接,等等)。在一些实施方式中,结果细节显示区770包括重放/可视化/录制控制774(例如,类似于在输入显示框720的实施方式中提供的重放/可视化/录制控制726)。
搜索结果区750的实施方式包括结果区控制。应认识到,可提供控制搜索结果区750的很多功能的很多类型的控制(例如,滑块、旋钮、开关、按钮等)。在一些实施方式中,结果区控制包括一组结果控制按钮780,例如设置按钮780-1、上一个按钮780-2、下一个按钮780-3和输出按钮780-4。
设置按钮780-1可控制搜索结果区702的任何数量的设置。在一些实施方式中,点击设置按钮使设置菜单出现,提供对任何数量的设置的访问途径。一些设置可涉及如何接收结果(例如,结果的最大数量、排序的类型等)、如何显示结果(例如,什么列显示在结果列表显示区760中,哪些表示或什么文本显示在结果细节显示区770中等)等。
上一个按钮780-2和下一个按钮780-3可配置成分别跳到结果列表中的上一个或下一个结果。当然,其它导航控制是可能的(例如,下一页、分类、过滤等)。输出按钮780-4可配置成以一种或多种方式输出搜索结果。在一些实施方式中,输出可由图1的输出产生单元140产生。应认识到,很多不同类型的数据的很多类型的输出是可能的。例如,结果数据可被输出为原始音频数据(例如,配置成通过扬声器、媒体播放设备、声卡等播放的信号)、被编码的音频数据(例如,用于储存在存储介质(例如,光盘)上、用于通过媒体播放软件重放、用于通过网络共享等)、乐谱表示数据(例如,与乐谱创作和/或编辑软件相容的乐谱图像和音乐元素等)、文本数据(例如,与用于储存为文件的、打印出的结果列表或结果细节有关的文本等)、或任何其它有用的信息。进一步地,输出可包括搜索输入的日志或记录、搜索历史记录、搜索统计资料、数据库统计资料、设置等。
在一些实施方式中,搜索引擎700集成在合作环境中(例如通过互联网)。搜索引擎可接着以各种方式使用来利用合作环境,反之亦然。例如,可与网络上的其他人共享搜索输入和/或结果。在一个实施方式中,用户可搜索具有相似的搜索模式的其他人,或用户可根据其经验建议某些搜索结果。例如,在执行对“X”的搜索之后,搜索引擎700可报告“搜索′X′的用户也对′Y′感兴趣”。其他用户、确定搜索习惯和模式的智能算法、广告商或任何其它设备、人或实体可产生这种结果以及类似类型的结果。
示例性实施方式
上面描述的系统和方法可用很多方式实现。一种这样的实现包括各种电子部件。例如,使用适合于在硬件中执行一些或全部适用功能的一个或多个专用集成电路(ASIC),可单独地或共同地实现各种系统的单元。可选地,功能可由一个或多个其它处理单元(或核心)在一个或多个集成电路上执行。在其它实施方式中,可使用其它类型的集成电路(例如,结构化的/平台ASIC、现场可编程门阵列(FPGA)和其它半定制IC),其可用本领域已知的任何方式编程。每个单元的功能也可使用包含在存储器中的指令来整体或部分地实现,这些指令被设计成由一个或多个通用或专用处理器执行。
图8提供了用于实现本发明的某些实施方式的计算系统800的结构图。在一个实施方式中,计算系统800可起图1所示的门户160的作用。应注意,图8只表示提供各种部件的一般化图示,在适合时可利用这些部件中的任何一个或全部。因此,图8广泛示出各个系统元件可如何以相对分开的或相对更综合的方式实现。
示出包括硬件元件的计算机系统800,这些硬件元件可通过总线826电连接(或可在适当时以其他方式进行通信)。硬件元件可包括:一个或多个处理器802,其包括但不限于,一个或多个通用处理器和/或一个或多个专用处理器(例如,数字信号处理芯片、图形加速芯片和/或类似物);一个或多个输入设备804,其可包括但不限于,鼠标、键盘和/或类似物;以及一个或多个输出设备806,其可包括但不限于,显示设备、打印机和/或类似物。
计算系统800可进一步包括(和/或与其通信的)一个或多个存储设备808,其可包括但不限于,本地和/或网络可访问的存储器,和/或可包括但不限于,磁盘驱动器、驱动器阵列、光学存储设备、固态存储设备例如随机存取存储器(RAM)和/或只读存储器(ROM),这些存储器可为可编程的、可快速更新的,等等。计算系统800也可包括通信子系统814,其可包括但不限于,调制解调器、网卡(无线或有线)、红外通信设备、无线通信设备和/或芯片组(例如蓝牙设备、802.11设备、WiFi设备、WiMax设备、蜂窝通信设备等)和/或类似物。通信子系统814可允许使用网络(例如,下面描述的网络,列举一个例子)和/或这里描述的任何其它设备交换数据。在很多实施方式中,计算系统800将进一步包括工作存储器818,其可包括RAM或ROM设备,如上所述。
计算系统800也可包括被显示为当前位于工作存储器818内的软件元件,包括操作系统824和/或其它代码,例如一个或多个应用程序822,应用程序822可包括本发明的计算机程序,和/或可设计成实现本发明的方法和/或配置本发明的系统,如这里所述的。仅仅作为例子,关于上面讨论的方法描述的一个或多个程序可被实现为计算机(和/或计算机内的处理器)可执行的代码和/或指令。在一个实施方式中,图1的音频和/或乐谱解构单元120以及各种其它客户端方法被实现为计算系统800可读取的应用程序822。
这些指令和/或代码的集合可储存在计算机可读介质810b上。在一些实施方式中,计算机可读存储介质810b是上面描述的存储设备808。在其它实施方式中,计算机可读存储介质810b可包括在计算机系统内。在又一些其它实施方式中,计算机可读存储介质810b可与计算机系统分离(即,可移除的介质,例如光盘等)和/或设置在安装包中,使得存储介质可用于使用储存在其上的指令/代码给通用计算机编程。这些指令可采取可由计算机系统800执行的可执行代码的形式,和/或可采取源代码和/或可安装的代码的形式,源代码和/或可安装的代码当在计算机系统800上编译和/或安装(例如,使用各种通常可得到的编译器、安装程序、压缩/解压缩工具等)时接着呈现可执行代码的形式。在这些实施方式中,计算机可读存储介质810b可由计算机可读存储介质阅读器810a读取。
对本领域技术人员来说很明显,可根据特定的要求进行相当多的变化。例如,也可使用定制的硬件,和/或特定的元件可在硬件、软件(包括可移植软件,例如小程序等)或两者中实现。进一步地,可使用到其它计算设备例如网络输入/输出设备的连接。
在一些实施方式中,一个或多个输入设备804可与音频接口830-1连接。音频接口830-1可配置成通过与麦克风、乐器、数字音频设备或其它音频信号或文件源例如物理地、光学地、电磁地等连接来接收音乐稿件102-1。在其它实施方式中,一个或多个输入设备804可与乐谱接口830-2连接。乐谱接口830-2可配置成通过与摄像机、扫描仪、数字成像设备或其它数字图像源连接来接收乐谱稿件102-2。
进一步地,在一些实施方式中,一个或多个输出设备806可与音频输出设备106-1连接。音频输出设备106-1可配置成将本发明的实施方式产生的音频信号数据输出到能够处理该数据的一个或多个系统或设备,例如扬声器、音频部件、数模转换器、光盘烧录器等。在其它实施方式中,一个或多个输出设备806可与乐谱输出设备106-2连接。乐谱输出设备106-2可配置成将本发明的实施方式产生的乐谱表示数据输出到能够处理该数据的一个或多个系统或设备,例如乐谱转录软件、乐谱公布系统、文件存储设备等。
在一个实施方式中,本发明使用计算机系统(例如计算系统800)来执行本发明的方法。根据一组实施方式,响应于处理器802执行包含在工作存储器818中的一个或多个指令的一个或多个序列(其可合并到操作系统824和/或其它代码中,例如应用程序822),这样的方法的一些或全部程序由计算系统800来实现。这样的指令可从另一机器可读介质被读取到工作存储器818中,例如一个或多个存储设备808(或810)。仅作为例子,包含在工作存储器818中的指令的序列的执行可使处理器802执行这里描述的方法的一个或多个程序。
如这里使用的术语“机器可读介质”和“计算机可读介质”指参与提供使机器以特定的方式操作的数据的任何介质。在使用计算系统800实现的实施方式中,各种机器可读介质可包括向处理器802提供供执行的指令/代码,和/或可用于储存和/或承载这样的指令/代码(例如,作为信号)。在很多实现中,计算机可读介质是物理和/或可触知的存储介质。这样的介质可采取很多形式,包括但不限于,非易失性介质、易失性介质和传输介质。非易失性介质包括例如光盘或磁盘,例如存储设备(1608或810)。易失性介质包括但不限于,动态存储器,例如工作存储器818。传输介质包括同轴电缆、铜线和光纤,包括构成总线826的导线以及通信子系统814的不同部件(和/或通信子系统814提供与其它设备的通信的介质)。因此,传输介质也可采取波的形式(包括但不限于,无线电波、声波和/或光波,例如在无线电波和红外数据传输期间产生的波)。
物理和/或可触知的计算机可读介质的一般形式包括,例如,软盘、软碟、硬盘、磁带或任何其它磁性介质、CD-ROM、任何其它光学介质、穿孔卡片、纸带、具有孔的图案的任何其它物理介质、RAM、PROM、EPROM、FLASH-EPROM、任何其它存储器芯片或盒式磁带、诸如以下描述的载波、或计算机可从其读取指令和/或代码的任何其它介质。
机器可读介质的各种形式可涉及将一个或多个指令的一个或多个序列传送到处理器802用于执行。仅作为例子,指令可最初被承载在远程计算机的磁盘和/或光盘上。远程计算机可将指令装入其动态存储器中,并在传输介质上作为信号发送指令,以被计算系统800接收和/或执行。根据本发明的不同实施方式,形式可能为电磁信号、声信号、光信号和/或类似信号的这些信号,都是指令可编码在其上的载波的例子。
通信子系统814(和/或其部件)通常接收信号,且总线826接着可能将该信号(和/或该信号所承载的数据、指令等)传送到工作存储器818,处理器802从工作存储器818取回并执行这些指令。工作存储器818所接收的指令可在被处理器802执行之前或之后可选地储存在存储设备808上。
应认识到,根据本发明,可以或可以不包括关于图8描述的部件或功能的系统的很多实施方式是可能的。在一些实施方式中,系统被实现为专用设备。该设备可包括一个或多个内部麦克风,其配置成检测声压并将其转换成由系统使用的搜索输入。可选地,该设备可包括用于与外部麦克风、媒体设备、数据存储器或其它音频源连接的一个或多个音乐输入端口。在这些实施方式中的某些中,设备可为手持式或便携式设备。在其它实施方式中,系统可在多功能或通用设备中实现(例如,作为储存在计算机可读介质上的软件模块,用于由计算机执行)。在这些实施方式中的某些中,音频源可为声卡、外部麦克风或所储存的音频文件。输入接着被产生并提供到该系统。
系统的其它实施方式可被实现为简化或单声道形式,以作为从用户接收音频的听音设备来操作,这些用户对着一个麦克风演奏乐器或演唱某个曲调或旋律或其一部分。在单麦克风布置中,系统相继地将来自一个麦克风的已录制的乐曲转换成相应的乐谱。这可提供文本到语音软件的音乐等价物,其将口语单词和句子转换成计算机可读的文本。作为声音到音符转换,曲调或旋律将被记录下来,就好像一个乐器正在演奏。
应认识到,系统的不同实现也可包括涉及与用户和其它系统的相容性的不同类型的接口和功能。例如,可为线路电平输入(例如,来自立体声系统或吉他放大器)、麦克风输入、网络输入(例如,来自互联网)或其它数字音频部件提供输入端口。类似地,可为扬声器、音频部件、计算机和网络等的输出提供输出端口。进一步地,在一些实现中,系统可提供用户输入(例如,物理或虚拟键盘、滑块、旋钮、开关等)和/或用户输出(例如,显示器、扬声器等)。例如,可提供接口能力,以允许用户听录制品或由系统从录制品提取的数据。
在一个实施方式中,本发明的特征在包括可安装在数字计算机上的应用程序的软件中实现。软件实现优选地为演奏者提供输入和输出接口。也就是说,安装有软件的主机计算机一般包括用于产生演奏者可阅读的乐谱的视觉表示的显示器,以随着演奏者的乐器演唱或演奏该乐器。计算机也一般包括用于录制演奏者的会话的输入接口,例如麦克风,并包括输出接口,例如扬声器,以使演奏者能够听已录制的演奏。计算机实现可包括图像捕获,其中包括五线谱上的音符的乐谱可通过光学输入装置被数字化,并接着输入到计算机中。数字化的乐谱可通过OCR技术被解译,这样形成的已解译的数据被处理,以便产生乐谱的合成音频再现,在适当时包括使单词与适当音高匹配的合成的声乐再现,使得音频再现与乐谱的视觉表示同步。在下面提供的额外详细的描述中,计算机软件实现被称为“Level X”实现或被称为“eMuse X”产品(名称“eMuse”指来自美国普林斯顿、新泽西的MuseAmi公司-本发明中所有权利的受让人-的产品实施方式)。
在另一实施方式中,本发明的特征体现在一可包括显示器、输入接口、音频和视觉输出接口以及OCR图像解译接口的手持式设备中。该手持式设备实现包括各种方便的用户控制旋钮和用于设备功能的方便导航的机制。该显示器支持由用户对功能进行选择的菜单选项的视觉表示。
如下面进一步详细描述的,计算设备通过从外部源接收乐谱数据,并随后产生乐谱数据的合成音频再现和乐谱的同步视觉表示来解译和处理乐谱数据。
外部源可由通过网络连接向计算设备提供乐谱数据的网络数据源组成。网络连接可由通过无线连接的计算设备和网络之间的通信组成。
将记录有数据的介质接受进入计算设备的阅读器中,而该阅读器接着从该记录有数据的介质获得乐谱数据,通过这种方式,可从记录有数据的介质读取乐谱数据。记录有数据的介质包含充足的数据,来根据合成音乐制作的MIDI规范合成音频再现。也就是说,计算设备可接收指定乐谱的数据,并可按选定的拍速、音色、谱号、调号、拍号等产生或合成相应的音乐乐音。记录有数据的介质可包括闪存设备。
可给计算设备提供用于录制用户对一乐谱的演奏并提供已录制的用户演奏的重放的能力。用户演奏重放可独立于合成乐谱再现而发生,或可与其同时发生。此外,可将用户演奏重放连同相应于该已录制的用户演奏的乐谱的视觉表示一起提供给用户。以这种方式,提供了“听音”特征。
在一个可选方案中,通过光学地捕获乐谱的数字图像、接着解译并处理数字信息以产生表示适当的音乐音符的数据的集合、因而产生相应于该乐谱的数据,由此,该设备可获得由其用来产生合成音频再现和乐谱的同步视觉表示的乐谱数据。
此外,可提供用于确定乐谱数据的合成音频再现的特征的音乐情境信息,其中所有特征都可被用户调节。这样的音乐情境信息可包括多个调号、拍号、音色、拍速和表现性术语,例如连奏、渐强、渐慢等。
在另一可选方案中,通过与网络数据源的通信来实现产生乐谱数据的音频重放和音乐音符的视觉表示。如果需要,网络数据源向计算设备提供乐谱数据。在又一可选方案中,网络数据源可向计算设备提供决定乐谱数据的合成音频再现的音乐特征的音乐情境信息。此外,网络数据源可通过无线连接提供音乐情境信息。
在一个可选方案中,通过将记录有数据的介质插入计算设备的阅读器中来实现产生乐谱数据的合成音频再现和乐谱的合成视觉表示。如果需要,计算设备从记录有数据的介质获得乐谱数据,且记录有数据的介质也可向计算设备提供用于确定乐谱数据的合成音频再现的音乐特征的音乐情境信息。
一个可选的特征是提供对乐谱的用户乐器演奏和/或声乐演奏的录制。另一可选方案是根据MIDI规范产生合成音频再现。此外,产生视觉表示可包括显示与相应的合成音频再现同步的乐谱。另一选择是同时提供同步的重放、乐谱数据的视觉表示和音频再现的重放,以及已录制的用户演奏的音频组成和用户演奏所产生的乐谱的同步的相应视觉表示。
根据本发明,计算设备可以可选地数字地捕获乐谱并解译数字图像,以及产生乐谱数据的合成音频再现和乐谱的同步视觉表示,该数字图像为计算设备产生的相应于数字捕获的乐谱的乐谱数据。该计算设备可接收音乐情境信息,该音乐情境信息由计算设备使用来确定乐谱数据的合成音频再现的音乐特征。类似于上面描述的可选实施方式,音乐情境信息可包括多个调号、拍号、音色、拍速和表现性术语,例如连奏、渐强、渐慢等,这些信息可由用户选择来确定乐谱数据的合成音频再现的音乐特征。作为选择,该计算设备从光学地数字捕获的乐谱来识别出音乐情境信息,并可选地可以从网络数据源获得音乐情境信息。如果需要,网络数据源通过与计算设备的无线连接来提供音乐情境信息。
可给计算设备提供其自己的扩音器,用于所合成的再现和/或用户所录制的演奏的音频重放。此外,该设备可包括用于连接到耳机或外部扩音器等的输出插孔,并可设置有允许设备向无线声音重放系统(例如使用无线部件实现的家庭立体声系统)传输音频演奏的无线传输能力。该设备具有充足的计算存储器,使它能够储存预定长度的乐段。
下面额外详细的描述涉及在手持式设备实现中的特征的各种实现,且分别被称为“Level 1”和“Level 2”或“eMuse 1”和“eMuse 2”。
下面的讨论描述了可安装在一系列数字计算设备上的音乐重放软件,并且也描述了手持式活页乐谱阅读设备的实施方式,这些设备在这里被共同称为eMuse产品。
图9示出作为手持式的、电池供电的“对准即拍”消费电子设备900的产品的例证性实施方式,设备900从活页乐谱捕获选定乐段-几个小节或甚至整页-的图像,数字地设计该乐段的形式并编码该乐段,接着演奏选定的乐段,全部都是实际上即时实时地进行的。重放声音是针对乐器的,即,以用户选择的音色(例如,钢琴、小提琴、长笛的声音)演奏。可同时演奏多种音色。设备900设计成识别音乐变量,例如调号、节拍、音量和拍速,并解释乐文术语,例如强音、轻声演奏、渐强音、连奏等。当该设备正重放乐段904时,LCD屏幕902显示乐段904,每个被演奏的音符以独特的颜色加亮,以便将其与乐谱的其余部分区别开。
图9的设备900包括数字“音乐卡”特征,其支持编码有一个或多个已录制的或下载的乐曲的数据卡(未示出)的插入,并允许快速参考特定的小节。数据卡可包括可记录的介质,例如一般由便携式电话和数字摄像机使用的介质。数据卡被接收到设备900的卡插槽906中。设备900也使用表示被编码的乐曲的数字数据来工作。下载的文件也可保存在设备的存储器内。被编码的乐曲提供了丰富的收听体验,允许快速参考乐谱的特定小节。
设备900的录制/重放特征允许用户立即参考乐谱来评估已录制的演奏。也就是说,设备900可录制用户对乐曲的演奏,并重放用户的演奏,以及(或同时)重放接收到的乐曲。用户演奏重放能够呈现相应的视觉表示,提供“听音”特征。节拍器和音乐调音器能力也合并到该设备中,且可对“缺一音乐(music minus one)”特征调节该设备。在多音度线或多声部乐曲中,“缺一音乐”特征允许用户确定乐曲的哪些部分将由MIDI接口重放。这允许用户随着设备演奏/唱特定的部分。
图9示出具有翻转顶部908的手持式设备900,LCD屏幕902合并到盖或顶部908的下侧。该设备也包括用于音乐重放的扬声器910(在图9中示出了立体声对)以及用于录制用户演奏的麦克风912。可实现图像捕获能力,如图9所示的,其中翻转顶部908包括摄像机系统,其包括安装在翻转顶部908的外侧表面中的并为了图像捕获的目的由镜头快门按钮914触发的光学透镜。提供了各种用户界面控制,其被示为用于调节音量916、重放拍速918、菜单导航920和位置922的拇指轮。设备900可设置有用于更容易与网络或其它设备连接的USB端口924。开/关开关925打开和关闭设备900。
如图9所示,控制按钮也被提供来用于控制涉及乐谱的再现(合成演奏)和用户演奏的重放的功能。图9示出用于播放/暂停926、停止928、下一首/重置930和录制932的功能的示例性控制按钮。图9也示出节拍器读出显示器934,其显示定时指示器并与重放拍速918关联。结合菜单拇指轮920和/或位置拇指轮922的操作使用LCD屏幕902的菜单导航来实现对节拍器功能和设备900的其它特征的选择。可通过下一首/重置控制按钮930的操作来实现选择。键盘或辅助键盘935可用于通过辅助键盘935的专用功能键的输入或来自辅助键盘935的字母数字输入。在LCD屏幕902上,提供了来自音乐乐段904的音乐音符的图形图像,其在整个屏幕内移动,单独的音符出现在屏幕上或在显示器中被加亮,作为被演奏的音符。显示器优选地提供在重放期间扩展的音乐五线谱图像,由此,预定数量的音乐音符或小节显示为被演奏的音乐乐段904。
在设备900的一个实施方式中,数字摄像机系统914捕获乐谱内的乐段(单个音符、几个小节或甚至整页)的图像。数字摄像机可构造到设备900中,并可包括类似于本领域技术人员熟悉的透镜和图像传感器组合。LCD屏幕902允许用户准确地确定捕获哪些小节。该设备可读取单个五线谱表乐曲行、二重奏、三重奏、四重奏或甚至完整的乐队指挥乐谱。设备900提供了多个同时的音色。
OCR模块可接收音乐摘录的“照片”,其包括数字化的图像数据。重要的额外音乐情境信息,例如调号和节拍也通过乐谱数字图像或通过列出所有可用的调号和拍号的“备忘单”(例如从网站下载,接着无线地或通过USB端口传输到该设备,见下文)发送到OCR模块。“备忘单”也可包括用户可从其选择期望音色的部分,或者,用户可手工指定(输入)期望的音色。
在另一实施方式中,设备900可提供MIDI合成器功能。OCR模块可将声音信息发送到产生合成声音的MIDI模块。这提供了可调节的音色;用户为特定的乐段或乐曲指定乐器的类型(钢琴、小提琴、长笛等)。该模块也可提供可调节的拍速,以便用户可听到比在乐谱中指示的节拍器(如果有的话)慢(或快)的乐段,而没有音高的任何改变。该设备通过其自己的小扩音器重放,并且还具有用于耳机和/或外部扬声器的耳机插孔934和无线能力。
在各种实施方式中,设备900可提供某些视觉显示能力。例如,LCD屏幕902可帮助用户确保被捕获(拍摄)的小节是预期要听到的小节。包括游标936的LCD屏幕902将音乐乐段904显示为被重放的乐段,其来自用户所拍摄的乐段或来自具有存储的数据的音乐卡。游标指示当音乐乐段904实时地播放时当前被演奏的音符的乐谱中的确切的音乐位置,而不管固定的拍速。不同于传统类型的移动游标,当音符被演奏时,游标936可替代地通过加亮音符(例如,使其更亮)或通过给与它不同于其它音符的显示颜色来指示正被演奏的音符。另一选择是LCD屏幕902显示音符938的名称(用英语和用视唱标记),特别是对于单旋律音乐乐段904。如果音乐乐段904由多个同时的音乐旋律组成,则用户可指定音符938的名称所显示针对的旋律。
LCD屏幕902也可显示被选择用于播放的音乐乐段904的指示符。指示符称为乐段标记939。在图9中,乐段标记939被示为包围在圆圈中的数字“1”。数字“1”指示当前正显示音乐乐段904的第一小节,且圆圈指示重放在第一小节开始。如果重放继续到下一小节,“2”将代替“1”被显示,但“2”将被包围。
在另一实施方式中,设备900可提供录制传感器功能。例如,麦克风912可配置成使得用户可录制他/她自己演奏(和/或演唱)的有问题的音乐乐段904,并重放该录制结果,以比较该用户的演奏与设备900的演奏(即,以前录制的演奏或合成的再现)。该特征对进行音符、调音、节奏和力度强弱的调节的学生可能有帮助。如上所述,可通过麦克风912录制用户演奏以提供“听音”特征。
设备900的一些实施方式提供了无线能力。例如,设备900可操作来允许与网络和其它有无线能力的设备进行无线通信,并允许下载具有情境信息的被编码的音乐文件。可例如通过安装到无线平台例如PDA或智能电话的eMuse软件来为便携式的音乐互动提供这里描述的特征。此外,设备900可使用家用PC和/或立体声系统或另一部件的计算和存储器(以及重放音频)。
在另一实施方式中,用户的演奏可由设备900录制,且用户的演奏可被音乐音符解译处理,以产生数据,从该数据产生相应于用户的已录制的演奏的音乐音符的显示。以这种方式,该设备可采用“听音”并可将用户的现场表演的音频演奏转换成相应于该演奏的乐谱的视觉显示。因此,该设备的音乐解译特征可处理光学或电子网络通信所接收的乐谱数据,并可处理用户的现场表演的演奏所产生的、麦克风所捕获的乐谱数据。
这里描述的软件可用在各种平台上。在一个实施方式中,eMuse的某些方面被嵌入高端便携式电话中,在高端便携式电话中的便携式电话摄像机拍摄乐谱中的特定乐段。所捕获的图像接着被压缩,并发送到远程服务器,其对图像数据执行OCR操作,以将图像解译成相应的音乐音符信息。该服务器接着发送回MIDI文件和图形文件,使该版本的eMuse能够播放被拍摄的音乐,并在播放该音乐时,将音符显示在LCD上。
图10提供了示出图9中设备900的实施方式的操作的处理流程图的简化图示。在初始操作中,乐谱的数字表示被提供到该设备。该数字表示可通过视觉表示1002例如打印出的页接收到设备,视觉表示1002使用数字图像捕获设备1004例如与设备一起操作的数字摄像机被数字地捕获。从光学输入1006得到的数字数据接着被提供到音符数据解译过程1008。可选地,乐谱的数字表示可被电子地提供(1010),例如通过相应于乐谱的数字数据的无线传输或在网络上数据的有线传输,或通过存储介质例如存储卡或其它介质输入。乐谱1010的电子接收的版本被提供到音符数据解译过程1008。
音符数据解译过程1008接收相应于乐谱的数字数据,并对其进行处理,以产生一组音乐音符和足够的附随信息,以指定音乐音符并能通过适当的硬件再现。过程1008包括使用机器学习技术培训的处理器,以识别乐谱数字数据1006、1010,并产生经适当转换的数据。过程1008可例如使用神经网络软件工程技术被培训,以将解译过程的准确性增加到实质上100%的准确性。根据本发明,输入的乐谱数据必须被产生来用于对用户的实时的视频和视觉显示,因此,输入的乐谱数据的解译必须是实时的,且必须达到100%的解译(转换)准确性。过程1008利用光学字符识别(OCR)技术,但被调整为适于音乐音符识别并适于将(电子或光学扫描得到的)数字数据解译为适合的表示。
解译过程输出1012包括被提供到设备的显示屏1014的乐谱的视觉表示,以及还包括被提供到适当的设备系统和硬件1016的乐谱的合成音频再现,该合成音频再现用于通过该设备的扩音器或类似物进行音频表示。
其它能力
应认识到,除了上面描述的能力以外,很多其它处理能力也是可能的。一组额外的处理能力包括增加提供给用户的可定制性的量。例如,实施方式可允许本发明的各种部件和方法的增强的可定制性。
在一些实施方式中,由于各种原因,部件和方法的不同阈值、窗和其它输入每一个都是可调节的。例如,如果音调确定看起来进行得太频繁(例如,用户可能不希望与音调的短暂偏离作为音调变化展现在乐谱上),用户能够调节音调提取窗。对于另一例子,录制品可包括在录制时因在演奏期间使用的60Hz电源而出现的背景噪声。用户可能希望调节各种滤波算法,以忽略此60Hz音高,以便不将它表示为乐谱上的下部音符。在又一例子中,用户可调节音高被量化成的乐曲盒(bin)的分辨率,以调节音符音高分辨率。
在其它实施方式中,可给用户提供较小的可定制性。在一个实施方式中,用户能够调节表示准确性水平。根据一个或多个参数,包括选择对单独的乐谱表示元素如拍速和音高的准确性,用户可输入(例如,通过物理或虚拟滑块、旋钮、开关等)系统是应产生更准确的还是较不准确的乐谱表示。
例如,很多内部设置可一起起作用,使得最小音符值是十六分音符。通过调节表示的准确性,较长或较短的时值可被检测到并表示为最小值。这可能在演奏者不严格按恒定拍子演奏(例如,没有打击乐器组,没有节拍器)的情况下是有用的,且如果太灵敏的话,系统可产生不合需要的表示(例如,三拍附点音符)。作为另一例子,很多内部设置可一起起作用,以便最小音高变化是半音级(即,以半音音阶计的音符)。
在又一些其它实施方式中,可给用户提供甚至更小的可定制性。在一个实施方式中,用户可输入他或她是新用户还是高级用户。在另一实施方式中,用户可输入系统是应具有高灵敏性还是低灵敏性。在任一实施方式中,在很多部件或方法中的很多不同的参数可在一起调节,以符合期望水平。例如,在一种情况下,歌手可能希望准确地转录音高和时值中的每个波动(例如,作为对找到错误或以所有其美学的细微之处忠实地再现特定的演奏的实际帮助);而在另一情况下,歌手可能希望通过使系统忽略小偏差来产生容易阅读的乐谱用于发表。
在某些实施方式中,可定制性的水平、功能的类型以及系统和方法的其它方面可用不同的方式指定。在一个实施方式中,用户可选择某些偏好,操作某些物理或虚拟控制,或以其他方式有效地与系统进行互动以确定这些方面。在另一实施方式中,系统可自动选择不同的方面(例如,根据与用户有关的登录和/或配置文件信息,根据用户使用该系统的模式等)。
另一组额外的处理能力包括使用不同类型的输入来改进或以其他方式影响对输入音频信号的处理。一个实施方式使用一个或多个经培训的人工神经网络(ANN)来改进某些确定。例如,心理声学确定(例如,节拍、音调、乐器等)可完全适合于使用经培训的ANN。
另一实施方式给用户提供使多个声道分层的能力(例如,一人乐队)。用户可通过演奏鼓声道来开始,使用本发明的系统实时地处理该鼓声道。用户可接着相继地演奏吉他声道、键盘声道和声乐声道,其中每个都被处理。在一些情况下,用户可选择多个声道来一起处理,而在其它情况下,用户可选择使每个声道被单独地处理。来自一些声道的信息可接着用于改进或引导对其它声道的处理。例如,鼓声道可被独立地处理,以产生高置信度拍速和节拍信息。拍速和节拍信息可接着与其它声道一起使用来更准确地确定音符时值和音符值。对于另一例子,吉他声道可在小时间窗内提供很多音高,这可使确定音调更容易。该音调确定可接着用于将音调音高确定分配给键盘声道中的音符。对于又一例子,多个声道可在一维或多维中被排列、量化或标准化(例如,声道可被标准化为具有相同的拍速、平均音量、音高音域、音高分辨率、最小音符时值等)。进一步地,在“一人乐队”的一些实施方式中,用户可使用一个乐器来产生音频信号,接着使用本系统或方法来转换到不同的乐器(例如,使用键盘演奏四重奏的所有四个声道,并使用该系统来将键盘输入转换成弦乐四重奏)。在一些情况下,这可包括调节音色、使音乐旋律变调和其它处理。
又一实施方式使用音频输入信号之外的输入来改进或引导处理。在一个实施方式中,从用户、从另一系统(例如,计算机系统或互联网)或从数字音频文件中的头部信息来接收风格信息,以改进各种代价函数。例如,音调代价函数可对蓝调、印度古典、民谣等不同;或不同的乐器可能在不同的风格中更可能(例如,“风琴类”声音可能在赞美诗音乐中更可能是管风琴,而在波尔卡音乐中更可能是手风琴)。
另一组额外的处理能力包括使用在多个部件或方法中的信息来改进复杂的确定。在一个实施方式中,乐器识别方法的输出用于根据所识别的乐器的已知能力或限制来改进确定。例如,比如乐器识别方法确定乐曲谱线可能是由钢琴演奏的。然而,音高识别方法确定该乐曲旋律包含快速微弱的颤音(例如,在检测到的音调音高标志的仅一个或两个半音程内的音高的颤音)。因为这一般不可能是在钢琴上产生的效果,系统可确定该旋律正由另一乐器(例如,电子键盘或风琴)演奏。
又一组额外的能力涉及使用用于处理铃声(例如,用于便携式电话、互联网协议的语音电话和其它设备)的系统和方法的各种功能。在一个实施方式中,解构的音乐元素被操作以符合铃声的规范。例如,一些设备可能对铃声的带宽、复调深度和音乐长度有限制。因此,在一些情况下,系统可自动调节搜索输入或所储存的搜索数据来符合铃声规范,或可给用户提示根据那些规范引导用户所需要或要求的信息。用户可接着能够例如听铃声,将铃声下载到便携式电话或其它设备(或存储位置),在网络上与其他人共享铃声,拍卖或出售铃声,等等。
又一组额外的能力涉及将音频或乐谱输出配置为用于出售或拍卖的产品。例如,搜索门户可包括音乐拍卖功能或音乐商店功能。购买功能可包括与以下项有关的能力:版税和定价、投票表决(例如,展示在给定时间跨度内最流行的,或优胜者获得门户上的特别节目)、按设备或规范搜索、不同的付款处理、安全的电子商务、版权保护和数字版权管理等。
又一组额外的能力涉及使用解构的或接收到的音乐元素来搜索类似的作品,以避免(检测)版权侵犯。该能力可能需要被合并到系统中的额外模块或被合并到方法中的额外步骤,以调整搜索来获得该特定结果。例如,在一些实施方式中,可提供关于版权法和政策的信息,以帮助系统和方法确定是否有潜在的侵权。
应认识到,根据本发明,很多这样的额外处理能力是可能的。进一步地,应注意,上面讨论的方法、系统和设备只被确定为例子。必须强调,不同实施方式可在适合时省略、替换或添加各种程序或部件。例如,应认识到,在可选实施方式中,方法可按不同于所描述的顺序执行,且可添加、省略或合并不同的步骤。此外,关于某些实施方式描述的特征可合并在各种其它实施方式中。实施方式的不同方面和元件可以类似的方式合并。此外,应强调技术是发展的,因此,这些元件中的很多是例子,且不应被解释为限制本发明的范围。
在说明书中给出了具体的细节,以提供对实施方式的彻底理解。然而,本领域普通技术人员应理解,在没有这些具体细节的情况下可实现该实施方式。例如,在没有不必要的细节的情况下示出了公知的电路、过程、算法、结构和技术,以便避免使实施方式含糊。进一步地,这里提供的标题只用来有助于对不同实施方式的清楚描述,且不应被解释为限制本发明的范围或本发明的任何部分的功能。例如,某些方法或部件可被实现为其它方法或部件的部分,即使它们是在不同的标题下描述的。
此外,注意,实施方式可被描述为一过程,其被描绘为流程图或结构图。虽然每个实施方式可将操作描述为顺序的过程,但这些操作中的很多操作可并行或同时执行。此外,可重新排列操作的顺序。过程可以有未包括在附图中的额外步骤。
Claims (41)
1.一种用于执行音乐搜索的计算机方法,所述方法包括:
接收指定音乐元素的音乐查询;
根据接收到的音乐查询所指定的音乐元素来产生一组搜索参数;
将所述一组搜索参数导向包括多个数据记录的数据库,每个数据记录与一乐曲以及该乐曲所涉及的一组音乐元素有关,其中:
与至少一个数据记录相关的所述一组音乐元素包括从至少一首乐曲解构的数据;
识别所述数据库中的一组匹配的数据记录,所述一组匹配的数据记录包括匹配所述一组搜索参数的数据记录;
识别所述数据库中的一组匹配的乐曲,所述一组匹配的乐曲包括与所述一组匹配的数据记录相关的乐曲;
产生搜索输出,该搜索输出包括排列在排序的列表中的匹配的乐曲。
2.如权利要求1所述的方法,进一步包括:
接收至少一个额外音乐查询;
产生解构的额外音乐查询;
将所述解构的额外音乐查询导向包含解构的乐曲的选定数据库;
识别匹配所述解构的额外音乐查询的解构的乐曲;
产生搜索输出,该搜索输出包括排列在排序的列表中的识别出的乐曲。
3.如权利要求2所述的方法,其中所述导向步骤包括将所述解构的额外音乐查询导向被识别为先前音乐查询的输出的一组乐曲。
4.如权利要求2所述的方法,其中所述排序的列表根据加权值排列。
5.如权利要求1所述的方法,其中接收查询的所述步骤包括接收音频输入。
6.如权利要求5所述的方法,其中所述音频输入包括口述词部分和旋律部分。
7.如权利要求6所述的方法,其中部分分隔符在所述音频输入中出现在所述口述词部分和所述旋律部分之间。
8.如权利要求7所述的方法,其中所述部分分隔符包括预定的口述词。
9.如权利要求5所述的方法,其中所述音频输入包括通过计算机输入端口接收的音频段。
10.如权利要求5所述的方法,其中所述音频输入包括MIDI序列。
11.如权利要求1所述的方法,其中接收查询的所述步骤包括接收乐谱图像。
12.如权利要求11所述的方法,其中所述乐谱图像包括具有音乐元素的OCR输出。
13.如权利要求1所述的方法,其中接收查询的所述步骤包括接收针对所述音乐元素的用户指定的输入参数。
14.如权利要求13所述的方法,其中所述用户指定的输入参数被作为口述词接收。
15.如权利要求13所述的方法,其中所述用户指定的输入参数被作为字母数字输入接收。
16.如权利要求1所述的方法,其中接收查询的所述步骤包括接收针对乐曲元数据的用户指定的输入参数。
17.如权利要求16所述的方法,其中所述用户指定的输入参数被作为口述词接收。
18.如权利要求16所述的方法,其中所述用户指定的输入参数被作为字母数字输入接收。
19.如权利要求1所述的方法,其中对解构的音乐查询进行导向的所述步骤包括接收搜索所导向的用户指定的数据库。
20.如权利要求19所述的方法,其中所述用户指定的数据库包括计算机的数据库。
21.一种执行音乐搜索的计算机系统,所述系统包括:
输入接口,其适合于接收指定音乐段的音乐查询;
查询输入处理器,其适合于产生解构的音乐查询,该解构的音乐查询包括所接收的音乐查询的音乐元素;
查询引擎,其适合于将所述解构的音乐查询导向包括解构的乐曲的选定数据库、识别所述数据库中匹配所述解构的音乐查询的解构的乐曲、识别并产生包括排列在排序的列表中的识别出的乐曲的搜索输出。
22.如权利要求21所述的系统,其中:
所述输入接口接收至少一个额外音乐查询;
所述查询输入处理器产生解构的额外音乐查询;
所述查询引擎将所述解构的额外音乐查询导向包含解构的乐曲的选定数据库、识别匹配所述解构的额外音乐查询的解构的乐曲、并产生搜索输出,该搜索输出包括排列在排序的列表中的识别出的乐曲。
23.如权利要求22所述的系统,其中所述系统将所述额外音乐查询导向被识别为先前音乐查询的输出的一组乐曲。
24.如权利要求22所述的系统,其中所述排序的列表根据加权值排列。
25.如权利要求21所述的系统,其中所述接收查询包括接收音频输入。
26.如权利要求25所述的系统,其中所述音频输入包括口述词部分和旋律部分。
27.如权利要求26所述的系统,其中部分分隔符在所述音频输入中出现在所述口述词部分和所述旋律部分之间。
28.如权利要求27所述的系统,其中所述部分分隔符包括预定的口述词。
29.如权利要求25所述的系统,其中所述音频输入包括通过计算机输入端口接收的音频段。
30.如权利要求25所述的系统,其中所述音频输入包括MIDI序列。
31.如权利要求21所述的系统,其中所述接收查询包括接收乐谱图像。
32.如权利要求31所述的系统,其中所述乐谱图像包括具有音乐元素的OCR输出。
33.如权利要求21所述的系统,其中所接收的查询包括针对所述音乐元素的用户指定的输入参数。
34.如权利要求33所述的系统,其中所述用户指定的输入参数被作为口述词接收。
35.如权利要求33所述的系统,其中所述用户指定的输入参数被作为字母数字输入接收。
36.如权利要求21所述的系统,其中所接收的查询包括针对乐曲元数据的用户指定的输入参数。
37.如权利要求36所述的系统,其中所述用户指定的输入参数被作为口述词接收。
38.如权利要求36所述的系统,其中所述用户指定的输入参数被作为字母数字输入接收。
39.如权利要求21所述的系统,其中所述解构的音乐查询包括搜索所导向的用户指定的数据库。
40.如权利要求39所述的系统,其中所述用户指定的数据库包括计算机的数据库。
41.一种计算机可读存储介质,其具有包括在其中的计算机可读程序,所述计算机可读程序用于引导基于音乐的搜索引擎的操作,所述计算机可读程序包括用于根据下列操作进行基于音乐的搜索的指令:
接收指定音乐元素的音乐查询;
根据接收到的音乐查询所指定的音乐元素来产生一组搜索参数;
将所述一组搜索参数导向包括多个数据记录的数据库,每个数据记录与一乐曲以及所述乐曲涉及的一组音乐元素有关,其中:
与至少一个数据记录相关的所述一组音乐元素包括从至少一首乐曲解构的数据;
识别所述数据库中的一组匹配的数据记录,所述一组匹配的数据记录包括匹配所述一组搜索参数的数据记录;
识别所述数据库中的一组匹配的乐曲,所述一组匹配的乐曲包括与所述一组匹配的数据记录相关的乐曲;
产生搜索输出,该搜索输出包括排列在排序的列表中的匹配的乐曲。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US88981607P | 2007-02-14 | 2007-02-14 | |
US60/889,816 | 2007-02-14 | ||
US60/889,821 | 2007-02-14 | ||
US61/028,490 | 2008-02-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101657817A true CN101657817A (zh) | 2010-02-24 |
Family
ID=41711146
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200880012053A Pending CN101657817A (zh) | 2007-02-14 | 2008-02-14 | 基于音乐的搜索引擎 |
CN2008800120237A Expired - Fee Related CN101657816B (zh) | 2007-02-14 | 2008-02-14 | 用于分布式音频文件编辑的门户网站 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008800120237A Expired - Fee Related CN101657816B (zh) | 2007-02-14 | 2008-02-14 | 用于分布式音频文件编辑的门户网站 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN101657817A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102479509A (zh) * | 2010-11-29 | 2012-05-30 | 财团法人资讯工业策进会 | 旋律辨识方法与其装置 |
CN103955490A (zh) * | 2014-04-16 | 2014-07-30 | 华为技术有限公司 | 一种播放音频的方法和设备 |
CN105280170A (zh) * | 2015-10-10 | 2016-01-27 | 北京百度网讯科技有限公司 | 一种乐谱演奏的方法和装置 |
CN110010112A (zh) * | 2019-04-22 | 2019-07-12 | 咸阳师范学院 | 一种电子乐谱编辑系统 |
CN111052223A (zh) * | 2017-09-22 | 2020-04-21 | 雅马哈株式会社 | 播放控制方法、播放控制装置及程序 |
CN111988481A (zh) * | 2019-05-22 | 2020-11-24 | 北京三好互动教育科技有限公司 | 一种图像拍摄装置、图像处理系统和图像处理方法 |
CN112465679A (zh) * | 2020-09-28 | 2021-03-09 | 青岛大学 | 一种钢琴学习与创作系统及方法 |
CN112997246A (zh) * | 2018-09-25 | 2021-06-18 | 宅斯楚蒙特公司 | 用于交互系统的实时音乐生成引擎 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5877973B2 (ja) * | 2011-08-08 | 2016-03-08 | アイキューブド研究所株式会社 | 情報システム、情報再現装置、情報生成方法、およびプログラム |
US10389766B2 (en) * | 2011-12-16 | 2019-08-20 | Techexcel Inc. | Method and system for information sharing |
US9280313B2 (en) * | 2013-09-19 | 2016-03-08 | Microsoft Technology Licensing, Llc | Automatically expanding sets of audio samples |
US9752949B2 (en) * | 2014-12-31 | 2017-09-05 | General Electric Company | System and method for locating engine noise |
US20160187219A1 (en) * | 2014-12-31 | 2016-06-30 | General Electric Company | Methods and systems to characterize noises sensed by a knock sensor |
US20160290884A1 (en) * | 2015-04-01 | 2016-10-06 | General Electric Company | Knock sensor network systems and methods for characterizing noises |
CN105138625B (zh) * | 2015-08-17 | 2019-01-25 | 安钯有限公司 | 一种协同创作音乐的方法和用于音乐创作的云系统 |
CN111079093B (zh) * | 2019-12-11 | 2022-07-01 | 北京阿尔山区块链联盟科技有限公司 | 乐谱处理方法、装置和电子设备 |
TWI821948B (zh) * | 2022-03-15 | 2023-11-11 | 美商美國未來科技公司 | 隨著音樂節奏變換之圖像顯示方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1607575A (zh) * | 2003-10-16 | 2005-04-20 | 扬智科技股份有限公司 | 哼唱编曲系统及其方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6175872B1 (en) * | 1997-12-12 | 2001-01-16 | Gte Internetworking Incorporated | Collaborative environment for syncronizing audio from remote devices |
US20060293089A1 (en) * | 2005-06-22 | 2006-12-28 | Magix Ag | System and method for automatic creation of digitally enhanced ringtones for cellphones |
-
2008
- 2008-02-14 CN CN200880012053A patent/CN101657817A/zh active Pending
- 2008-02-14 CN CN2008800120237A patent/CN101657816B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1607575A (zh) * | 2003-10-16 | 2005-04-20 | 扬智科技股份有限公司 | 哼唱编曲系统及其方法 |
Non-Patent Citations (1)
Title |
---|
GHIAS A ET.AL: "QUERY BY HUMMING MUSICAL INFORMATION RETRIEVAL IN AN AUDIO DATABASE", 《PROCEEDINGS OF ACM MULTIMEDIA》 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102479509A (zh) * | 2010-11-29 | 2012-05-30 | 财团法人资讯工业策进会 | 旋律辨识方法与其装置 |
US8742243B2 (en) | 2010-11-29 | 2014-06-03 | Institute For Information Industry | Method and apparatus for melody recognition |
CN103955490A (zh) * | 2014-04-16 | 2014-07-30 | 华为技术有限公司 | 一种播放音频的方法和设备 |
CN105280170A (zh) * | 2015-10-10 | 2016-01-27 | 北京百度网讯科技有限公司 | 一种乐谱演奏的方法和装置 |
CN111052223A (zh) * | 2017-09-22 | 2020-04-21 | 雅马哈株式会社 | 播放控制方法、播放控制装置及程序 |
CN111052223B (zh) * | 2017-09-22 | 2023-10-27 | 雅马哈株式会社 | 播放控制方法、播放控制装置及记录介质 |
CN112997246A (zh) * | 2018-09-25 | 2021-06-18 | 宅斯楚蒙特公司 | 用于交互系统的实时音乐生成引擎 |
CN110010112A (zh) * | 2019-04-22 | 2019-07-12 | 咸阳师范学院 | 一种电子乐谱编辑系统 |
CN111988481A (zh) * | 2019-05-22 | 2020-11-24 | 北京三好互动教育科技有限公司 | 一种图像拍摄装置、图像处理系统和图像处理方法 |
CN112465679A (zh) * | 2020-09-28 | 2021-03-09 | 青岛大学 | 一种钢琴学习与创作系统及方法 |
CN112465679B (zh) * | 2020-09-28 | 2023-10-31 | 青岛大学 | 一种钢琴学习与创作系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101657816A (zh) | 2010-02-24 |
CN101657816B (zh) | 2012-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7838755B2 (en) | Music-based search engine | |
CN101657817A (zh) | 基于音乐的搜索引擎 | |
CN101652807B (zh) | 音乐转录的方法、系统及装置 | |
Orio | Music retrieval: A tutorial and review | |
Lidy et al. | On the suitability of state-of-the-art music information retrieval methods for analyzing, categorizing and accessing non-western and ethnic music collections | |
McKay | Automatic genre classification of MIDI recordings | |
Cornelis et al. | Access to ethnic music: Advances and perspectives in content-based music information retrieval | |
Herrera et al. | Automatic labeling of unpitched percussion sounds | |
Baggi et al. | Music navigation with symbols and layers: Toward content browsing with IEEE 1599 XML encoding | |
Pachet et al. | The cuidado music browser: an end-to-end electronic music distribution system | |
Lesaffre et al. | Methodological considerations concerning manual annotation of musical audio in function of algorithm development | |
Liang et al. | Detection of piano pedaling techniques on the sustain pedal | |
US20060248105A1 (en) | Interactive system for building and sharing databank | |
Piccolo et al. | Non-speech voice for sonic interaction: a catalogue | |
Van Balen | Audio description and corpus analysis of popular music | |
KR102165940B1 (ko) | Cbmr 기반 음을 이용한 음악 검색 서비스 제공 시스템 및 방법 | |
Fabiani | Interactive computer-aided expressive music performance: Analysis, control, modification and synthesis | |
CN116959393B (zh) | 音乐生成模型的训练数据生成方法、装置、设备及介质 | |
Tian et al. | Homepage and Search Personalization at Spotify | |
Xue et al. | Effective acoustic parameters for automatic classification of performed and synthesized Guzheng music | |
Wang | Automatic Classification of Playing Techniques in Guitar Pro Songs | |
de Treville Wager | Data-Driven Pitch Correction for Singing | |
Balke | Multimedia Processing Techniques for Retrieving, Extracting, and Accessing Musical Content | |
Wolkowicz | Application of text-based methods of analysis to symbolic music | |
Jang et al. | Research and developments of a multi‐modal MIR engine for commercial applications in East Asia 1 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20100224 |
|
RJ01 | Rejection of invention patent application after publication |