特許第5935503号(P5935503)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ヤマハ株式会社の特許一覧

<>
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000005
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000006
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000007
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000008
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000009
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000010
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000011
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000012
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000013
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000014
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000015
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000016
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000017
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000018
  • 特許5935503-楽曲解析装置および楽曲解析方法 図000019
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5935503
(24)【登録日】2016年5月20日
(45)【発行日】2016年6月15日
(54)【発明の名称】楽曲解析装置および楽曲解析方法
(51)【国際特許分類】
   G10G 1/00 20060101AFI20160602BHJP
   G10H 1/00 20060101ALI20160602BHJP
【FI】
   G10G1/00
   G10H1/00 Z
【請求項の数】6
【全頁数】19
(21)【出願番号】特願2012-115064(P2012-115064)
(22)【出願日】2012年5月18日
(65)【公開番号】特開2013-242409(P2013-242409A)
(43)【公開日】2013年12月5日
【審査請求日】2014年6月20日
(73)【特許権者】
【識別番号】000004075
【氏名又は名称】ヤマハ株式会社
(74)【代理人】
【識別番号】100125689
【弁理士】
【氏名又は名称】大林 章
(74)【代理人】
【識別番号】100121108
【弁理士】
【氏名又は名称】高橋 太朗
(72)【発明者】
【氏名】須見 康平
【審査官】 安田 勇太
(56)【参考文献】
【文献】 特開2004−185432(JP,A)
【文献】 特開平07−036478(JP,A)
【文献】 特開平05−061917(JP,A)
【文献】 古田 典久,曲検索システムのための音符列類似度の設計,情報処理学会第56回(平成10年前期)全国大会講演論文集,日本,(社)情報処理学会,1998年,No.2,P.40−41
(58)【調査した分野】(Int.Cl.,DB名)
G10G 1/00
G10H 1/00
(57)【特許請求の範囲】
【請求項1】
利用者が指定した指定音符列と参照楽曲の参照音符列との間における音符の置換を含む操作で前記指定音符列および前記参照音符列の一方を他方に変形するときの操作のコストに応じた編集距離から第1類似指標値を算定する第1解析手段を具備し、
前記第1解析手段は、前記指定音符列内の第1音符と前記参照音符列内の第2音符との間の置換コストを、前記第1音符および前記第2音符の一方が、前記第1音符および前記第2音符の他方を包含する許容区間内の複数の音符の何れかに一致する場合に第1値に設定し、前記許容区間内の前記複数の音符の何れにも一致しない場合に前記第1値を上回る第2値に設定して前記編集距離を算定する
楽曲解析装置。
【請求項2】
前記第1解析手段は、前記第1音符を包含する前記許容区間を前記指定音符列内に設定した場合の編集距離と、前記第2音符を包含する前記許容区間を前記参照音符列内に設定した場合の編集距離とに応じて前記第1類似指標値を算定する
請求項1の楽曲解析装置。
【請求項3】
前記第1解析手段は、前記参照音符列に対する前記指定音符列の時間軸上の位置を相違させた複数の場合の各々について前記指定音符列と前記参照音符列との間の編集距離に応じた基礎値を算定し、前記参照音符列と前記指定音符列との間の最大の類似を示す基礎値を前記第1類似指標値として選択する
請求項1または請求項2の楽曲解析装置。
【請求項4】
複数の候補楽曲から複数の参照楽曲を選択する楽曲選択手段を具備し、
前記第1解析手段は、前記楽曲解析手段が選択した複数の参照楽曲の各々について前記第1類似指標値を算定する
請求項1から請求項3の何れかの楽曲解析装置。
【請求項5】
前記指定音符列を時間軸上で区分した複数の単位区間の各々について、当該単位区間内で一のピッチクラスに対応する各音符の継続長の合計値と当該単位区間内の各音符の継続長の合計値との比を複数のピッチクラスについて配列した継続長特徴量を算定する特徴量算定手段と、
前記指定音符列の各単位区間の継続長特徴量と前記参照音符列の各単位区間の継続長特徴量との対比で第2類似指標値を算定する第2解析手段と、
前記第1解析手段が算定した前記第1類似指標値と前記第2解析手段が算定した前記第2類似指標値とに応じた第3類似指標値を算定する指標算定手段と
を具備する請求項1から請求項4の何れかの楽曲解析装置。
【請求項6】
コンピュータシステムが、
利用者が指定した指定音符列と参照楽曲の参照音符列との間における音符の置換を含む操作で前記指定音符列および前記参照音符列の一方を他方に変形するときの操作のコストに応じた編集距離から第1類似指標値を算定し、
前記第1類似指標値の算定では、前記指定音符列内の第1音符と前記参照音符列内の第2音符との間の置換のコストを、前記第1音符および前記第2音符の一方が、前記第1音符および前記第2音符の他方を包含する許容区間内の複数の音符の何れかに一致する場合に第1値に設定し、前記許容区間内の前記複数の音符の何れにも一致しない場合に前記第1値を上回る第2値に設定して前記編集距離を算定する
楽曲解析方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、利用者が指定した複数の音符の時系列(以下「指定音符列」という)と楽曲との相関を解析する技術に関する。
【背景技術】
【0002】
指定音符列を包含する楽曲を複数の楽曲(以下「参照楽曲」という)から検索する技術が従来から提案されている。例えば非特許文献1には、指定音符列と参照楽曲内の音符列(以下「参照音符列」という)との編集距離(レーベンシュタイン距離)を指定音符列と参照音符列との間の類似度として参照楽曲毎に算定し、指定音符列に相関する参照楽曲(すなわち利用者が意図した楽曲)を各参照楽曲の類似度に応じて検索する技術が開示されている。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】K. Lemstrom and E. Ukkonen, "Including Interval Encoding into Edit Distance Based Music Comparison and Retrieval", Proc.AISB. 2000
【発明の概要】
【発明が解決しようとする課題】
【0004】
指定音符列の各音符は、例えば電子楽器の各操作子を利用者が操作することで順次に指定される。電子楽器の複数の操作子を並列に操作することで和音を指定音符列として指定することも可能である。しかし、利用者が複数の操作子を同時に操作したつもりでも実際には各操作子の操作の時点は相違するから、利用者が同じ和音を指定した場合でも指定音符列では和音の各構成音の順序が相違する可能性がある。例えば、利用者が「ドミソ」の和音を指定したつもりでも、実際には「ドソミ」や「ミドソ」や「ソドミ」等の様々な音符列が指定音符列として設定され得る。したがって、利用者が指定する各音符の順序の誤差が、指定音符列と参照音符列との類似度の解析結果に影響するという問題がある。なお、以上の説明では和音の構成音の順序が変化する場合に着目したが、利用者の操作ミス等を原因として各音符の順序が変化する可能性もある。以上の事情を考慮して、本発明は、指定音符列の各音符の順序の相違に対して頑健に指定音符列と参照音符列との相関(類似度)を解析することを目的とする。
【課題を解決するための手段】
【0005】
以上の課題を解決するために本発明が採用する手段を説明する。なお、本発明の理解を容易にするために、以下の説明では、本発明の各要素と後述の各実施形態の要素との対応を括弧書で付記するが、本発明の範囲を実施形態の例示に限定する趣旨ではない。
【0006】
本発明の第1態様に係る楽曲解析装置は、利用者が指定した指定音符列(例えば指定音符列SQ)と参照楽曲の参照音符列(例えば参照音符列SR)との間の編集距離(例えば編集距離E)に応じた第1類似指標値(例えば類似指標値X[n])を算定する第1解析手段(例えば第1解析部22)を具備し、第1解析手段は、指定音符列内の第1音符(例えば音符ν[m1])と参照音符列内の第2音符(例えば音符ν[m2])との間の置換コスト(例えば置換コストγ)を、第1音符および第2音符の一方が、第1音符および第2音符の他方を包含する許容区間(例えば許容区間α[m1]または許容区間α[m2])内の複数の音符の何れかに一致する場合に第1値(例えば0)に設定し、許容区間内の複数の音符の何れにも一致しない場合に第1値を上回る第2値(例えば1)に設定して編集距離を算定する。以上の構成では、第1音符および第2音符の一方と第1音符および第2音符の他方を包含する許容区間内の複数の音符との異同に応じて第1音符と第2音符との間の置換コストが設定されるから、指定音符列内の各音符の順序の相違に対して頑健に指定音符列と参照音符列との相関(類似度)を解析することが可能である。
【0007】
第1態様に係る楽曲解析装置の好適例(例えば後述の第3実施形態)において、第1解析手段は、第1音符を包含する許容区間(例えば許容区間α[m1])を指定音符列内に設定した場合の編集距離(例えば編集距離EQ)と、第2音符を包含する許容区間(例えば許容区間α[m2])を参照音符列内に設定した場合の編集距離(例えば編集距離ER)とに応じて第1類似指標値を算定する。以上の態様によれば、指定音符列内に許容区間を設定した場合の編集距離と参照音符列内に許容区間を設定した場合の編集距離とに応じて第1類似指標値が算定されるから、指定音符列に許容区間を設定した場合と参照音符列に許容区間を設定した場合との編集距離の相違の影響を低減して高精度に指定音符列と参照音符列との相関を評価できるという利点がある。
【0008】
第1態様に係る楽曲解析装置の好適例において、第1解析手段は、参照音符列に対する指定音符列の時間軸上の位置を相違させた複数の場合の各々について指定音符列と参照音符列との間の編集距離に応じた基礎値(例えば基礎値x[b])を算定し、参照音符列と指定音符列との間の最大の類似を示す基礎値を第1類似指標値として選択する。以上の態様では、参照音符列に対する指定音符列の位置を相違させて算定された複数の基礎値のうち最大の類似を示す基礎値が第1類似指標値として選択されるから、指定音符列が参照音符列の特定の部分のみに対応する場合でも、指定音符列と参照音符列との相関を適切に評価できるという利点がある。
【0009】
ところで、非特許文献1の技術のように音符列間の編集距離のみを利用する構成では、音符列間の相関の解析精度に限界がある。そこで、本発明の第2態様に係る楽曲解析装置は、利用者が指定した指定音符列と参照楽曲の参照音符列との間の編集距離に応じた第1類似指標値を算定する第1解析手段と、指定音符列を時間軸上で区分した複数の単位区間の各々について、当該単位区間内で一のピッチクラスに対応する各音符の継続長の合計値と当該単位区間内の各音符の継続長の合計値との比を複数のピッチクラスについて配列した継続長特徴量(例えば継続長特徴量TQ)を算定する特徴量算定手段と、指定音符列の各単位区間の継続長特徴量と参照音符列の各単位区間の継続長特徴量(例えば継続長特徴量TR)との対比で第2類似指標値(例えば類似指標値Y[n])を算定する第2解析手段(例えば第2解析部34)と、第1解析手段が算定した第1類似指標値と第2解析手段が算定した第2類似指標値とに応じた第3類似指標値(例えば類似指標値Z[n])を算定する指標算定手段(例えば指標算定部36)とを具備する。以上の態様では、指定音符列と参照音符列との間の編集距離に応じた第1類似指標値に加えて、単位区間内の共通のピッチクラスの各音符の継続長の合計値と単位区間内の複数の音符の継続長の合計値との比をピッチクラス毎に配列した継続長特徴量に応じた第2類似指標値を反映した第3類似指標値が算定される。したがって、編集距離のみを利用する構成と比較して指定音符列と参照音符列との間の相関を高精度に評価できるという利点がある。
【0010】
第1態様の好適例に係る楽曲解析装置は、複数の候補楽曲から複数の参照楽曲を選択する楽曲選択手段(例えば楽曲選択部42)を具備し、第1解析手段は、楽曲解析手段が選択した複数の参照楽曲の各々について第1類似指標値を算定する。以上の構成では、複数の候補楽曲のうち楽曲選択手段が選択した複数の参照楽曲の各々について第1解析手段が第1類似指標値を算定するから、複数の候補楽曲の全部について第1類似指標値を算定する構成と比較して第1解析手段の処理負荷の軽減や処理時間の短縮が実現される。なお、第2態様の好適例に係る楽曲解析装置においても同様に、楽曲解析手段が選択した複数の参照楽曲の各々について第2解析手段が第2類似指標値を算定する構成が好適である。
【0011】
第1態様または第2態様に係る楽曲解析装置は、楽曲解析に専用されるDSP(Digital Signal Processor)などのハードウェア(電子回路)によって実現されるほか、CPU(Central Processing Unit)などの汎用の演算処理装置とプログラムとの協働によっても実現される。本発明の第1態様に係るプログラムは、利用者が指定した指定音符列と参照楽曲の参照音符列との間の編集距離に応じた第1類似指標値を算定する処理であって、指定音符列内の第1音符と参照音符列内の第2音符との間の置換コストを、第1音符および第2音符の一方が、第1音符および第2音符の他方を包含する許容区間内の複数の音符の何れかに一致する場合に第1値に設定し、許容区間内の複数の音符の何れにも一致しない場合に第1値を上回る第2値に設定して編集距離を算定する第1解析処理をコンピュータに実行させる。以上のプログラムによれば、本発明の第1態様に係る楽曲解析装置と同様の作用および効果が実現される。
【0012】
第2態様に係るプログラムは、利用者が指定した指定音符列と参照楽曲の参照音符列との間の編集距離に応じた第1類似指標値を算定する第1解析処理と、指定音符列を時間軸上で区分した複数の単位区間の各々について、当該単位区間内で一のピッチクラスに対応する各音符の継続長の合計値と当該単位区間内の各音符の継続長の合計値との比を複数のピッチクラスについて配列した継続長特徴量を算定する特徴量算定処理と、指定音符列の各単位区間の継続長特徴量と参照音符列の各単位区間の継続長特徴量との対比で第2類似指標値を算定する第2解析処理と、第1解析処理で算定した第1類似指標値と第2解析処理で算定した第2類似指標値とに応じた第3類似指標値を算定する指標算定処理とをコンピュータに実行させる。以上のプログラムによれば、以上のプログラムによれば、本発明の第2態様に係る楽曲解析装置と同様の作用および効果が実現される。
【0013】
なお、本発明の各態様に係るプログラムは、コンピュータが読取可能な記録媒体に格納された形態で提供されてコンピュータにインストールされるほか、通信網を介した配信の形態で提供されてコンピュータにインストールされる。
【図面の簡単な説明】
【0014】
図1】本発明の第1実施形態に係る楽曲解析装置のブロック図である。
図2】第1解析部の動作の説明図である。
図3】距離行列の説明図である。
図4】対比例における距離行列内の各距離の説明図である。
図5】対比例における距離行列の具体例である。
図6】第1実施形態における距離行列内の各距離の説明図である。
図7】第1実施形態における距離行列の具体例である。
図8】解析結果の表示例である。
図9】第2実施形態における距離行列内の各距離の説明図である。
図10】第2実施形態における距離行列の具体例である。
図11】第4実施形態に係る楽曲解析装置のブロック図である。
図12】継続長特徴量の説明図である。
図13】第2解析部の動作の説明図である。
図14】各実施形態の効果の説明図である。
図15】第5実施形態に係る楽曲解析装置のブロック図である。
【発明を実施するための形態】
【0015】
<第1実施形態>
図1は、本発明の第1実施形態に係る楽曲解析装置100Aのブロック図である。第1実施形態の楽曲解析装置100Aは、利用者が指定した複数の音符の時系列(指定音符列)と事前に用意された複数の参照楽曲の各々との音楽的な相関を評価する信号処理装置であり、指定音符列に類似または合致する区間を含む楽曲を複数の参照楽曲から検索するための楽曲検索装置として好適に使用される。図1に示すように、楽曲解析装置100Aは、演算処理装置12と記憶装置14と表示装置16と入力装置18とを具備するコンピュータシステムで実現される。
【0016】
記憶装置14は、演算処理装置12が実行するプログラムPGMや演算処理装置12が使用する各種の情報を記憶する。半導体記録媒体や磁気記録媒体等の公知の記録媒体や複数種の記録媒体の組合せが記憶装置14として任意に採用され得る。
【0017】
第1実施形態の記憶装置14は、相異なるN個の参照楽曲の各々について属性情報DNと参照音符列SRとを記憶する。属性情報DNは、参照楽曲の識別符号(例えば楽曲名)や参照楽曲の演奏テンポ等を指定する。参照音符列SRは、参照楽曲の少なくとも一部を構成する複数の音符の時系列である。例えば、参照楽曲の各音符の音高を指定して発音/消音を指示するイベントデータと各イベントデータの処理時点を指定するタイミングデータとを時系列に配列したMIDI(Musical Instrument Digital Interface)形式の時系列データとして参照音符列SRは記述される。
【0018】
表示装置16(例えば液晶表示パネル)は、演算処理装置12による解析結果を表示する。入力装置18は、利用者からの指示を受付ける。具体的には、入力装置18は、指定音符列SQを構成する複数の音符の指示を利用者から受付ける。例えばMIDI楽器等の電子楽器が入力装置18として好適に利用される。したがって、参照音符列SRと同様にMIDI形式の時系列データとして指定音符列SQは記述される。なお、参照音符列SRおよび指定音符列SQの表記のように、参照音符列SRに関連する要素の符号には添字R(Reference)を付記し、指定音符列SQに関連する要素の符号には添字Q(Query)を付記する場合がある。
【0019】
参照音符列SRおよび指定音符列SQの各々は、和音を構成する複数の音符や相異なる演奏パートに対応する複数の音符が並列に発音される複音楽曲(ポリフォニック)の音符列である。相互に並列に発音される複数の音符の各々はMIDI形式の時系列データ内で音符毎に順番に指定される。したがって、利用者が指定した和音を構成する各音符が指定音符列SQにて指定される順番は、入力装置18に対する利用者からの操作(各音符を指定する時点の微妙な相違)に応じて変化し得る。例えば、利用者が「ドミソ」の和音を指定したつもりでも、和音を構成する各音符は、指定音符列SQ内では「ドソミ」や「ミドソ」や「ソドミ」等の様々な順番で配列し得る。なお、参照音符列SRおよび指定音符列SQを単音楽曲(モノフォニック)の音符列とすることも可能である。
【0020】
演算処理装置12は、記憶装置14に格納されたプログラムPGMを実行することで、指定音符列SQとN個の参照楽曲の各々の参照音符列SRとの相関(類似または相違の度合)を解析して解析結果を利用者に提示するための複数の機能(第1解析部22,表示制御部24)を実現する。なお、演算処理装置12の機能を複数の装置に分散した構成や、演算処理装置12の機能の一部を専用の電子回路(DSP)が実現する構成も採用され得る。
【0021】
第1解析部22は、指定音符列SQと各参照楽曲の参照音符列SRとを対比することでN個の参照楽曲の各々について類似指標値X[n](X[1]〜X[N])を算定する(n=1〜N)。類似指標値X[n]は、利用者が指定した指定音符列SQと第n番目の参照楽曲の参照音符列SRとが相互に類似する度合(指定音符列SQが参照楽曲の一部に該当する確度)の指標である。
【0022】
図2は、第1解析部22の処理の説明図である。図2に示すように、指定音符列SQおよび参照音符列SRの各々は時間軸上で複数の単位区間Fに区分される。単位区間Fは、例えば楽曲の1小節に相当する時間長に設定される。具体的には、参照楽曲の属性情報DNが指定する演奏テンポに応じた1小節分が参照音符列SRの1個の単位区間Fとして画定され、入力装置18に対する操作で利用者が指示した演奏テンポに応じた1小節分が指定音符列SQの1個の単位区間Fとして画定される。演奏テンポが指定されていない場合、所定の演奏テンポおよび所定の拍子のもとで1小節に相当する区間が単位区間Fに設定される。例えば演奏テンポを120BPM(Beats Per Minute)と仮定して拍子を4/4拍子と仮定した場合には単位区間Fは2秒に設定される。以下の説明では、指定音符列SQがK個(Kは2以上の自然数)の単位区間Fで構成され、参照音符列SRがK個を上回る個数の単位区間Fで構成される場合を想定する。なお、指定音符列SQが参照音符列SRよりも長い場合、指定音符列SQの末尾側の区間を削除することで参照音符列SRと同等の長さ(単位区間Fの個数)に調整してから以下の処理を実行することが可能である。
【0023】
第1解析部22は、図2に示すように、参照音符列SRに対する指定音符列SQの時間軸上の位置を相違させた複数(B回)の場合の各々について基礎値x[b](x[1]〜x[B])を算定する(b=1〜B)。第1実施形態では、指定音符列SQを参照音符列SRに対して単位区間Fの1個分ずつ移動(シフト)した各場合について基礎値x[b]が算定される。すなわち、第1解析部22は、指定音符列SQの位置を相違させた各場合について参照音符列SRのうち指定音符列SQに対応する対象区間σ[b](K個の単位区間Fの集合)を順次に選択し、指定音符列SQと対象区間σ[b]とを比較することで基礎値x[b]を算定する。第1解析部22は、参照音符列SR内の相異なる対象区間σ[b]に対応するB個の基礎値x[1]〜x[B]に応じて類似指標値X[n]を算定する。具体的には、B個の基礎値x[1]〜x[B]のなかの最大値(すなわち参照音符列SRと指定音符列SQとの間の最大の類似を示す数値)が類似指標値X[n]として選択される。
【0024】
第1実施形態の第1解析部22は、指定音符列SQと参照音符列SRの対象区間σ[b]との間で相互に対応する単位区間F毎に類似度V[k](V[1]〜V[K])を算定する(k=1〜K)。具体的には、指定音符列SQおよび参照音符列SRの各々を各音符に対応する文字の時系列(文字列)と看做し、第1解析部22は、指定音符列SQ内の第k番目の単位区間Fと対象区間σ[b]内の第k番目の単位区間Fとの間の編集距離(レーベンシュタイン距離)に応じて類似度V[k]を算定する。第1解析部22は、参照音符列SR内の1個の対象区間σ[b]の相異なる単位区間Fについて算定したK個の類似度V[1]〜V[K]から基礎値x[b]を算定する。例えばK個の類似度V[1]〜V[K]の平均値や最大値が基礎値x[b]として算定される。
【0025】
指定音符列SQと参照音符列SRとの間の編集距離は、1文字に相当する音符の削除,挿入または置換の操作で指定音符列SQおよび参照音符列SRの一方を他方に変形するために必要な操作の最小回数を意味する。以下の説明では、指定音符列SQの第k番目の単位区間FがM1個の音符で構成され、参照音符列SRの対象区間σ[b]のうち第k番目の単位区間FがM2個の音符で構成される場合を想定して両者間の編集距離Eを説明する。編集距離Eの算定には、例えば動的計画法(Dynamic Programming)を利用した以下の方法が好適に採用される。なお、以下の説明では、便宜的に、文字列間の一般的な編集距離の算定を音符列間に適用した場合(以下「対比例」という)を説明したうえで、第1実施形態の編集距離Eの算定を説明する。
【0026】
図3の距離行列(コスト行列)Cを想定する。距離行列Cは、距離c[m1,m2]を要素とする(M1+1)行×(M2+1)列の行列である(m1=0〜M1,m2=0〜M2)。図3に示すように、距離行列Cの第m1行は、指定音符列SQのうち第k番目の単位区間F内の第m1番目の音符ν[m1]に対応し、距離行列Cの第m2列は、参照音符列SRの対象区間σ[b]のうち第k番目の単位区間F内の第m2番目の音符ν[m2]に対応する。第1解析部22は、第0行第0列の距離c[0,0]を0に設定し、以下の数式(1)の演算で距離行列Cの各距離c[m1,m2]を算定する。
【数1】
【0027】
数式(1)の記号min{ }は、括弧内の複数の数値の最小値を選択する演算を意味する。図4に矢印A1で示すように、数式(1)の数値{c[m1,m2-1]+1}は、参照音符列SR内の音符ν[m2]を指定音符列SQに挿入する手順(挿入コスト)の増加を意味する。また、図4に矢印A2で示すように、数式(1)の数値{c[m1-1,m2]+1}は、指定音符列SQ内の音符ν[m1]を削除する手順(削除コスト)の増加を意味する。
【0028】
数式(1)の数値{c[m1-1,m2-1]+γ}は、図4に矢印A3で示すように、指定音符列SQ内の音符ν[m1]を参照音符列SR内の音符ν[m2]に置換する手順の増加を意味する。すなわち、数式(1)の記号γは、指定音符列SQ内の音符ν[m1]を参照音符列SR内の音符ν[m2]に置換する手順の増加分(以下「置換コスト」という)に相当する。対比例では、指定音符列SQ内の音符ν[m1]と参照音符列SR内の音符ν[m2]とが一致する場合に置換コストγが0に設定され、音符ν[m1]と音符ν[m2]とが一致しない場合に置換コストγが1に設定される。図5には、指定音符列SQ(SQ={C,E,G,D,F,C,E},M1=7)と参照音符列SR(SR={C,G,F,E,D,C,D,C},M2=8)との間の距離行列Cが例示されている。以上の処理で距離行列Cの各距離c[m1,m2]が算定され、第M1行第M2列の距離c[M1,M2]が編集距離Eとして選択される。図5の例示では編集距離Eは6である。
【0029】
ところで、前述の通り、指定音符列SQを構成する各音符の順番は、例えば和音の各音符を指定する時点の微妙な相違や利用者による演奏ミス等に起因して変動し得る。指定音符列SQ内で以上のように発生し得る音符の順序の変動を補償して、利用者が実際に意図した楽曲と各参照楽曲との相関を高精度に評価するために、第1実施形態では、指定音符列SQ内で相前後する各音符の順序の入替を許容して編集距離Eを算定する。
【0030】
第1実施形態の第1解析部22は、前述の数式(1)の演算で距離行列Cの各距離c[m1,m2]を算定する。距離c[m1,m2]の算定に適用される挿入コストや削除コストは前述の対比例と同様であるが、置換コストγの算定の方法が対比例とは相違する。図6は、第1実施形態の第1解析部22が距離行列Cの距離c[m1,m2]の算定(数式(1))に適用する置換コストγの説明図である。
【0031】
図6に示すように、第1解析部22は、指定音符列SQの音符ν[m1]を包含する許容区間(マージン)α[m1]を指定音符列SQ内に設定する。図6では、直前の音符ν[m1-1]と音符ν[m1]と直後の音符ν[m1+1]とを含む音符3個分の許容区間α[m1]を設定した場合が例示されている。第1解析部22は、指定音符列SQ内の音符ν[m1]と参照音符列SR内の音符ν[m2]とに対応する距離c[m1,m2]の算定に適用される置換コストγを、指定音符列SQの許容区間α[m1]内の3個の音符(ν[m1-1],ν[m1],ν[m1+1])の何れかに参照音符列SR内の音符ν[m2]が一致する場合に0(第1値)に設定し、参照音符列SR内の音符ν[m2]が許容区間α[m1]内の何れの音符にも一致しない場合に1(第2値)に設定する。したがって、指定音符列SQ内の各音符の配列が、参照音符列SR内で相前後する各音符を入替えた配列に相当する場合には、距離c[m1,m2]の増加(手順の増加)は発生しない。
【0032】
図7は、図5と同様の指定音符列SQおよび参照音符列SRを対象とした場合に第1実施形態の第1解析部22が算定する距離行列Cである。第1実施形態では指定音符列SQ内で相前後する各音符の入替えが許容されるから、図7に示すように、第1実施形態で算定される編集距離E(E=2)は、対比例の編集距離E(E=6)と比較して小さい数値となる。
【0033】
第1解析部22は、以上に説明した演算で距離行列Cの各距離c[m1,m2]を算定し、第M1行第M2列の距離c[M1,M2]を、指定音符列SQの第k番目の単位区間Fと参照音符列SRの対象区間σ[b]のうち第k番目の単位区間Fとの間の編集距離Eとして選択する。以上の説明から理解されるように、指定音符列SQと参照音符列SRとで各音符の配列が類似するほど編集距離Eは小さい数値となる。
【0034】
第1解析部22は、指定音符列SQと参照音符列SRとの間で第k番目の単位区間Fについて算定した編集距離Eに応じて類似度V[k]を算定する。具体的には、第1解析部22は、以下の数式(2)の演算で類似度V[k]を算定する。
【数2】
【0035】
数式(2)の記号Emaxは、指定音符列SQの第k番目の単位区間F内の音符数M1および参照音符列SRの対象区間σ[b]のうち第k番目の単位区間F内の音符数M2の大きい方(指定音符列SQおよび参照音符列SRの一方を他方に変形する最大手順)を意味する。数式(2)から理解されるように、編集距離Eが小さい(指定音符列SQと参照音符列SRとで音符の配列が類似する)ほど類似度V[k]は大きい数値となる。図2を参照して前述した通り、第1解析部22は、対象区間σ[b]の各単位区間Fに対応するK個の類似度V[1]〜V[K]から基礎値x[b]を算定し、第n番目の参照楽曲の参照音符列SR内で相異なる対象区間σ[b]に対応するB個の基礎値x[1]〜x[B]の最大値を類似指標値X[n]として選択する。以上の説明から理解されるように、指定音符列SQ内の音符の配列に類似する区間を含む参照楽曲の類似指標値X[n]ほど大きい数値となる。
【0036】
図1の表示制御部24は、第1解析部22による解析結果を表示装置16に表示させる。具体的には、図8に示すように、属性情報DNが示す各参照楽曲の識別符号(楽曲名)を類似指標値X[n]の順番(指定音符列SQと参照音符列SRとの類似度が高い順番)で配列したリスト形式の画像を、表示制御部24は表示装置16に表示させる。利用者は、図8の表示画像を参照することで、自身が指示した指定音符列SQを含む可能性が高い参照楽曲の楽曲名を特定することが可能である。
【0037】
以上に説明した第1実施形態では、指定音符列SQ内で相前後する音符の入替えを許容して指定音符列SQと参照音符列SRとの編集距離Eが算定されるから、指定音符列SQの各音符の順序の誤差に対して頑健に指定音符列SQと参照音符列SRとの相関を解析することが可能である。すなわち、例えば利用者による入力装置18の操作ミス等に起因して、指定音符列SQの各音符の順序と利用者が意図した音符の順序(すなわち利用者が検索したい参照楽曲内の音符の順序)とが相違する場合でも、利用者が意図した参照楽曲について高い類似指標値X[n]を算定することが可能である。例えば、参照音符列SRが「ドミソ」の和音を含む場合、利用者が指定音符列SQとして「ドソミ」や「ミドソ」や「ソドミ」といった順番で和音の各構成音を指定した場合でも類似指標値X[n]は「ドミソ」と指定した場合と同等である。また、対比例における音符ν[m1]と音符ν[m2]との異同の判定を許容区間α[m1]内の各音符と音符ν[m2]との異同の判定に変更することで、以上の効果を容易に実現できるという利点もある。
【0038】
第1実施形態では、参照音符列SRに対する指定音符列SQの位置を変化させた複数の場合の各々について編集距離Eに応じた基礎値x[b]が算定され、基礎値x[1]〜x[B]に応じて類似指標値X[n]が設定される。したがって、参照楽曲内の特定の部分のみを利用者が指定音符列SQとして指示した場合(指定音符列SQが参照音符列SRの特定の部分のみに対応する場合)でも指定音符列SQと参照音符列SRとの相関を適切に評価できるという利点がある。
【0039】
<第2実施形態>
本発明の第2実施形態を以下に説明する。以下に例示する各態様において作用や機能が第1実施形態と同様である要素については、以上の説明で参照した符号を流用して各々の詳細な説明を適宜に省略する。
【0040】
図9は、第2実施形態の第1解析部22が距離行列Cの距離c[m1,m2]の算定(数式(1))に適用する置換コストγの説明図である。第1実施形態の第1解析部22は、指定音符列SQに許容区間α[m1]を設定した。第2実施形態の第1解析部22は、図9に示すように、参照音符列SRの音符ν[m2]を包含する許容区間α[m2]を参照音符列SRに設定する。図9では、直前の音符ν[m2-1]と音符ν[m2]と直後の音符ν[m2+1]とを含む音符3個分の許容区間α[m2]を設定した場合が例示されている。
【0041】
第1解析部22は、指定音符列SQ内の音符ν[m1]と参照音符列SR内の音符ν[m2]とに対応する距離c[m1,m2]の算定に適用される置換コストγを、指定音符列SQ内の音符ν[m1]が許容区間α[m2]内の何れかの音符(ν[m2-1],ν[m2],ν[m2+1])に一致する場合に0(第1値)に設定し、音符ν[m1]が許容区間α[m2]内の何れの音符にも一致しない場合に1(第2値)に設定する。したがって、参照音符列SR内の各音符の配列が、指定音符列SQ内で相前後する各音符を入替えた配列に相当する場合には、距離c[m1,m2]の増加は発生しない。以上の手順で算定された距離行列Cのうち第M1行第M2列の距離c[M1,M2]が編集距離Eとして選択される。編集距離Eに応じた類似度V[k]の算定や類似度V[k]に応じた類似指標値X[n]の算定は第1実施形態と同様である。
【0042】
図10は、図5と同様の指定音符列SQおよび参照音符列SRを対象とした場合に第2実施形態の第1解析部22が算定する距離行列Cである。図10に示すように、第2実施形態で算定される編集距離E(E=4)は、対比例の編集距離E(E=6)と比較して小さい数値となる。第2実施形態においても第1実施形態と同様の効果が実現される。
【0043】
<第3実施形態>
図7図10とを対比することで把握できる通り、指定音符列SQ内に許容区間α[m1]を設定した場合の編集距離E(E=2)と参照音符列SR内に許容区間α[m2]を設定した場合の編集距離E(E=4)とは相違し得る。第3実施形態の第1解析部22は、指定音符列SQ内に許容区間α[m1]を設定した場合の編集距離E(EQ)と参照音符列SR内に許容区間α[m2]を設定した場合の編集距離E(ER)との双方を算定し、編集距離EQと編集距離ERとに応じて編集距離E(ひいては類似指標値X[n])を算定する。例えば第1解析部22は、編集距離EQと編集距離ERとの平均値(典型的には単純平均)を編集距離Eとして算定する。例えば、図7および図10の場合、編集距離Eは3(=(2+4)/2)と算定される。編集距離Eに応じた類似度V[k]の算定や類似度V[k]に応じた類似指標値X[n]の算定は第1実施形態と同様である。
【0044】
第3実施形態においても第1実施形態と同様の効果が実現される。また、第3実施形態では、編集距離EQと編集距離ERとに応じて編集距離Eが算定されるから、指定音符列SQに許容区間α[m1]を設定した場合と参照音符列SRに許容区間α[m2]を設定した場合との編集距離Eの相違の影響を低減して高精度に指定音符列SQと参照音符列SRとの相関を評価できるという利点がある。
【0045】
<第4実施形態>
図11は、第4実施形態に係る楽曲解析装置100Bのブロック図である。第4実施形態の楽曲解析装置100Bは、特徴量算定部32と第2解析部34と指標算定部36とを第1実施形態の楽曲解析装置100Aに追加した構成である。第1解析部22が参照楽曲毎に類似指標値X[n]を算定する動作は第1実施形態と同様である。
【0046】
特徴量算定部32は、音符列の音楽的な特徴(特に和声的な特徴)を表現する継続長特徴量T(参照音符列SRの継続長特徴量TRおよび指定音符列SQの継続長特徴量TQ)を算定する。継続長特徴量TRは参照音符列SRの単位区間F毎に算定され、継続長特徴量TQは指定音符列SQの単位区間F毎に算定される。なお、編集距離Eの算定対象となる単位区間Fと継続長特徴量Tの算定対象となる単位区間とを相違させることも可能である。
【0047】
時間軸(横軸)と音高軸(縦軸)とが設定された座標平面に配列された音符列(ピアノロール画像)が図12に例示されている。図12に示すように、継続長特徴量T(TR,TQ)は、相異なるピッチクラス(音名)に対応する12個の要素値t[1]〜t[12]を配列した12次元ベクトルである。第4実施形態のピッチクラスは、音名が共通する音高(ノートナンバ)の集合である。すなわち、周波数が2の冪乗倍の関係(相異なるオクターブにて音名が共通する関係)にある複数の音高は共通のピッチクラスに属する。12半音(C,C#,D,D#,E,F,F#,G,G#,A,A#,B)に対応する12個のピッチクラスについて要素値t[1]〜t[12]が算定される。
【0048】
第c番目(c=1〜12)のピッチクラスに対応する要素値t[c]は、1個の単位区間F内に存在する複数の音符のうちそのピッチクラスに属する各音符の継続長(音価)の合計値τaと、その単位区間F内の全部の音符の継続長の合計値τbとの比(t[c]=τa/τb)である。合計値τbによる除算は、要素値t[c]を0以上かつ1以下の範囲内の数値に正規化する演算である。図12に示すように、ピッチクラス(音名G)が共通する音高G2の音符(継続長2秒)と音高G3の音符(継続長0.2秒)とが単位区間F内に存在し(τa=2+0.2=2.2)、単位区間F内の全部の音符の継続長の合計値τbが8秒である場合、継続長特徴量Tのうち音名Gのピッチクラス(c=8)に対応する要素値t[8]は、0.275(=2.2/8)となる。
【0049】
図11の第2解析部34は、指定音符列SQの各単位区間Fの継続長特徴量TQと参照音符列SRの各単位区間Fの継続長特徴量TRとを対比することでN個の参照楽曲の各々について類似指標値Y[n](Y[1]〜Y[N])を算定する。類似指標値Y[n]は、第n番目の参照楽曲の参照音符列SRと指定音符列SQとが和声的な観点から相互に類似する度合の指標である。類似指標値X[n]が各音符の継続長を無視して音符列間の相関を評価するための尺度であるのに対し、類似指標値Y[n]は、継続長が長い音符ほど重視して和声的な観点から音符列間の相関を評価するための尺度であると換言することも可能である。
【0050】
第2解析部34は、図13に示すように、参照音符列SRに対する指定音符列SQの時間軸上の位置を相違させた複数(B回)の場合の各々について基礎値y[b](y[1]〜y[B])を算定する。具体的には、指定音符列SQを参照音符列SRに対して単位区間Fの1個分ずつ移動した各場合について基礎値y[b]が算定される。すなわち、第2解析部34は、参照音符列SR内の対象区間σ[b]を順次に選択し、指定音符列SQ内のK個の単位区間Fにわたる継続長特徴量TQと対象区間σ[b]内のK個の単位区間Fにわたる継続長特徴量TRとを比較することで基礎値y[b]を算定する。
【0051】
具体的には、第2解析部34は、指定音符列SQ内のK個の単位区間Fにわたる継続長特徴量TQの平均ベクトルと、対象区間σ[b]内のK個の単位区間Fにわたる継続長特徴量TRの平均ベクトルとの距離(例えばコサイン距離)を基礎値y[b]として算定する。したがって、指定音符列SQの各単位区間Fの継続長特徴量TQと対象区間σ[b]の各単位区間Fの継続長特徴量TRとが類似するほど基礎値y[b]は大きい数値となる。第2解析部34は、参照音符列SR内に順次に設定される各対象区間σ[b]に対応したB個の基礎値y[1]〜y[B]に応じた類似指標値Y[n]を算定する。例えば、B個の基礎値y[1]〜y[B]のなかの最大値(すなわち、指定音符列SQの各継続長特徴量TQに最も類似する継続長特徴量TRが存在する対象区間σ[B]の基礎値y[b])が類似指標値Y[n]として算定される。したがって、指定音符列SQに音楽的(和声的)に類似する区間を含む参照楽曲の類似指標値Y[n]ほど大きい数値に設定される。なお、B個の基礎値y[1]〜y[B]の平均値を類似指標値Y[n]として算定することも可能である。
【0052】
図11の指標算定部36は、第1解析部22が算定した類似指標値X[n]と第2解析部34が算定した類似指標値Y[n]とに応じた類似指標値Z[n]を参照楽曲毎に算定する。例えば指標算定部36は、以下の数式(3)で表現されるように、類似指標値X[n]と類似指標値Y[n]との加重和を第n番目の参照楽曲の類似指標値Z[n]として算定する。
【数3】

数式(3)の記号WXは類似指標値X[n]に対する加重値(すなわち、音符の配列の類似性を重視する度合)を意味し、記号WYは類似指標値Y[n]に対する加重値(すなわち、和声感の類似性を重視する度合)を意味する。加重値WXおよび加重値WYは、例えば入力装置18に対する利用者からの指示に応じて可変に設定される。なお、加重値WXおよび加重値WYを所定値(例えばWX=WY=0.5)に固定した構成も採用され得る。以上の説明から理解されるように、指定音符列SQと参照音符列SRとが類似するほど類似指標値Z[n]は大きい数値となる。
【0053】
第4実施形態の表示制御部24は、指標算定部36による類似指標値Z[1]〜Z[N]の算定結果を表示装置16に表示させる。具体的には、類似指標値Z[n]の順番(指定音符列SQと参照音符列SRとの相関が高い順番)で各参照楽曲の識別符号(楽曲名)を配列したリスト形式の画像を、表示制御部24は表示装置16に表示させる。なお、例えば類似指標値Z[n]が最大となる参照楽曲(すなわち指定音符列SQに最も類似する参照楽曲)のみを表示装置16に表示させる構成も採用され得る。
【0054】
第4実施形態においても第1実施形態と同様の効果が実現される。また、第4実施形態では、指定音符列SQおよび参照音符列SRの音符の配列に着目した類似指標値X[n]と、指定音符列SQおよび参照音符列SRの和声感に着目した類似指標値Y[n]との双方に応じた類似指標値Z[n]が算定される。したがって、音符列間の編集距離のみを利用する構成(例えば非特許文献1)と比較して指定音符列SQと参照音符列SRとの相関を高精度に解析できるという利点がある。なお、第4実施形態の構成(特徴量算定部32,第2解析部34,指標算定部36)は第2実施形態や第3実施形態にも同様に適用される。
【0055】
図14は、以上に説明した各形態の解析結果である。具体的には、特定の参照楽曲(以下「目標楽曲」という)を利用者が鍵盤楽器で演奏したときの複数個(150個)の音符列を指定音符列SQとして用意し、目標楽曲を含むN個(N=5000)の参照楽曲の各々について各指定音符列SQとの相関を評価した結果である。各指定音符列SQは演奏ミス等を含み、目標楽曲の参照音符列SRに完全には合致しない場合がある。
【0056】
図14の構成1は、類似指標値Y[n]のみを算定して類似指標値X[n]を算定しない構成であり、構成2および構成3は、類似指標値X[n]のみを算定して類似指標値Y[n]を算定しない構成である。また、構成4および構成5は、類似指標値Z[n]を算定する構成(類似指標値X[n]および類似指標値Y[n]の双方を算定する構成)である。構成2および構成4では、許容区間(α[m1],α[m2])を設定せずに類似指標値X[n]を算定し(margin:0)、構成3および構成5では、指定音符列SQおよび参照音符列SRの各々に許容区間(α[m1],α[m2])を設定したうえで類似指標値X[n]を算定した(margin:3)。なお、構成3および構成5では、1個の音符に対して前方3個の音符と後方3個の音符とにわたる許容区間を設定した。第1実施形態で例示した対比例が構成2に相当する。第3実施形態は構成3に相当し、第4実施形態は構成5に相当する。また、第4実施形態にて許容区間の設定を省略した構成(類似指標値Y[n]の算定を対比例に追加した構成)が構成4に相当する。
【0057】
図14では、平均順位(Average rank)と最高位比率(top1 rate)と上位3位比率(top3 rate)と上位5位比率(top5 rate)とが構成1から構成5の各々について掲載されている。平均順位は、各指定音符列SQと各参照楽曲との間で算定された複数の類似指標値のうち目標楽曲の類似指標値の順位の平均値である。したがって、平均順位が1に近い(小さい)ほど解析が高精度であると評価できる。また、最高位比率は、指定音符列SQと目標楽曲の参照音符列SRとの類似指標値がN個の参照楽曲のなかで最高位(第1位)となった割合(%)を意味する。同様に、上位3位比率は、目標楽曲の類似指標値がN個の参照楽曲のなかで上位3位以内となった割合(%)を意味し、目標楽曲の類似指標値がN個の参照楽曲のなかで上位5位以内となった割合(%)を意味する。したがって、最高位比率や上位3位比率や上位5位比率が大きいほど解析が高精度であると評価できる。
【0058】
構成2から構成5と構成1との対比から理解される通り、第1実施形態から第4実施形態のように編集距離Eに応じた類似指標値X[n]を算定することで、類似指標値X[n]を利用しない構成1と比較して指定音符列SQと参照音符列SRとの相関を高精度に評価できる。また、構成2と構成4との対比や構成3と構成5との対比で理解される通り、第4実施形態のように類似指標値X[n]に加えて類似指標値Y[n]を利用することで、類似指標値X[n]のみを算定する第1実施形態から第3実施形態と比較して解析精度が向上する。更に、構成2と構成3との対比や構成4と構成5との対比で理解される通り、許容区間(α[m1],α[m2])を設定することで、許容区間を設定しない構成(対比例)と比較して解析精度が向上する。
【0059】
<第5実施形態>
図15は、第5実施形態に係る楽曲解析装置100Cのブロック図である。第5実施形態の楽曲解析装置100Cは、第4実施形態の楽曲解析装置100Bに楽曲選択部42を追加した構成である。第5実施形態の記憶装置14は、N0個の楽曲(以下「候補楽曲」という)の各々について属性情報DNと参照音符列SRとを記憶する。楽曲選択部42は、N0個の候補楽曲からN個の参照楽曲を選択する(N<N0)。具体的には、楽曲選択部42は、N0個の候補楽曲のうち指定音符列SQとの相関(類似度)が高いと推定されるN個の参照楽曲を選択する。第1解析部22は、楽曲選択部42が選択したN個の参照楽曲の各々について類似指標値X[n]を算定し、特徴量算定部32および第2解析部34は、楽曲選択部42が選択したN個の参照楽曲の各々について類似指標値Y[n]を算定する。指標算定部36および表示制御部24の動作は第4実施形態と同様である。
【0060】
楽曲選択部42による参照楽曲の選択方法は任意であるが、例えば指定音符列SQとの相関の度合を示す指標値λをN0個の候補楽曲の各々について算定し、指標値λの順番で上位に位置するN個の候補楽曲を参照楽曲として選択する構成が好適である。1個の候補楽曲の指標値λを算定する処理は、1個の参照楽曲の類似指標値Z[n](第1実施形態から第3実施形態では類似指標値X[n])を算定する処理と比較して負荷が軽い。
【0061】
例えば、楽曲選択部42は、条件付確率場(CRF:Conditional Random Fields)等を適用した機械学習で事前に生成された確率モデルを利用して、指定音符列SQの特徴量の時系列が各参照音符列SR内の音符列である確率(事後確率)を指標値λとして候補楽曲毎に算定する。確率モデルは、例えば各候補楽曲から抽出された継続長特徴量TRの時系列を学習情報として利用した機械学習で事前に生成され、指定音符列SQから抽出された継続長特徴量TQの時系列に確率モデルを適用することで指標値λが算定される。楽曲選択部42は、N0個の候補楽曲のうち指標値λの降順で上位に位置するN個の候補楽曲を参照楽曲として選択する。なお、各参照楽曲について算定された指標値λをその参照楽曲の類似指標値Z[n](第1実施形態から第3実施形態では類似指標値X[n])に反映させることも可能である。例えば、指標算定部36は、指標値λが大きいほど類似指標値Z[n]が大きい数値となるように類似指標値Z[n]を調整する。
【0062】
第5実施形態においても第4実施形態と同様の効果が実現される。また、第5実施形態では、N0個の候補楽曲から事前に選択されたN個の参照楽曲について類似指標値Z[n]が算定されるから、N0個の候補楽曲の全部について類似指標値Z[n]を算定する構成と比較して処理負荷の軽減や処理時間の短縮が実現される。なお、N0個の候補楽曲からN個の参照楽曲を事前に選択する第5実施形態の構成は、第1実施形態から第3実施形態にも同様に適用される。
【0063】
<変形例>
以上の各形態は多様に変形され得る。具体的な変形の態様を以下に例示する。以下の例示から任意に選択された2以上の態様は適宜に併合され得る。
【0064】
(1)前述の各形態では、指定音符列SQと参照音符列SRとの編集距離Eを単位区間F毎に算定したが、指定音符列SQや参照音符列SRを単位区間Fに区分する構成は省略され得る。例えば、指定音符列SQの全体と参照音符列SRの全体との間で編集距離Eを算定することも可能である。また、前述の各形態では、参照音符列SRに対する指定音符列SQの位置を相違させた複数の場合について基礎値x[b]を算定したが、参照音符列SRに対する指定音符列SQの位置を相違させる構成は省略され得る。例えば、参照楽曲の先頭部分を利用者が指定音符列SQとして指示することを前提とすれば、指定音符列SQと参照音符列SRとで先頭が合致するように参照音符列SRに対する指定音符列SQの位置を確定して編集距離E(更には類似指標値X[n])を算定することも可能である。
【0065】
(2)前述の各形態では、B個の基礎値x[1]〜x[B]の最大値を類似指標値X[n]として選択したが、類似指標値X[n]の算定方法は適宜に変更される。例えば、B個の基礎値x[1]〜x[B]の平均値を類似指標値X[n]として算定することも可能である。また、前述の各形態では、指定音符列SQと参照音符列SRとが類似する(編集距離Eが小さい)ほど類似指標値X[n]が大きい数値となる構成を例示したが、指定音符列SQおよび参照音符列SRの間の類否と類似指標値X[n]の大小との関係は以上の例示に限定されない。例えば、編集距離Eを類似度V[k](または基礎値x[b])として算定する構成(V[k]=E)では、指定音符列SQと参照音符列SRとが類似する(編集距離Eが小さい)ほど類似指標値X[n]が小さい数値となる。類似指標値Y[n]および類似指標値Z[n]についても同様であり、指定音符列SQおよび参照音符列SRの間の類否と類似指標値Y[n]または類似指標値Z[n]の大小との関係は任意である。
【0066】
(3)前述の各形態では、1個の音符ν[m1]に対して前方および後方の同数の音符にわたる許容区間α[m1]を例示したが、許容区間α[m1]の設定方法は適宜に変更される。例えば、1個の音符ν[m1]を末尾とする所定個の音符の時系列を許容区間α[m1]として設定する構成や、1個の音符ν[m1]を先頭とする所定個の音符の時系列を許容区間α[m1]として設定する構成も採用される。また、許容区間α[m1]内で音符ν[m1]の前方に位置する音符の個数と後方に位置する音符の個数とを相違させることも可能である。なお、以上の説明では指定音符列SQに設定される許容区間α[m1]を例示したが、参照音符列SRに設定される許容区間α[m2]についても同様の変形が適用される。
【0067】
(4)第3実施形態では、指定音符列SQに許容区間α[m1]を設定した場合の編集距離EQと参照音符列SRに許容区間α[m2]を設定した場合の編集距離ERとの平均値を編集距離Eとして算定したが、編集距離EQおよび編集距離ERとに応じて編集距離E(更には類似指標値X[n])を算定する方法は適宜に変更される。例えば、編集距離EQおよび編集距離ERの最大値または最小値を編集距離Eとして類似指標値X[n]を算定する構成や、編集距離EQおよび編集距離ERに対する所定の演算(例えば編集距離EQと編集距離ERとの乗算)で編集距離Eを算定する構成も採用され得る。また、編集距離EQおよび編集距離ERの一方のみを利用することも可能である。
【0068】
(5)前述の各形態では、置換コストγを0または1に設定したが、置換コストγの数値は適宜に変更される。例えば、置換コストγを0または2(または2以上の数値)に設定することも可能である。また、挿入コストや削除コストを1以外の数値に設定して編集距離E(重み付き編集距離)を算定することも可能である。
【0069】
(6)第4実施形態において類似指標値X[n]と類似指標値Y[n]とに応じた類似指標値Z[n]を算定する方法は任意である。例えば、類似指標値X[n]と類似指標値Y[n]との乗算値を類似指標値Z[n]として算定する構成や、類似指標値X[n]および類似指標値Y[n]を所定の演算式に代入することで類似指標値Z[n]を算定する構成も採用され得る。また、第4実施形態では、参照音符列SRの継続長特徴量TRを特徴量算定部32が算定したが、各参照音符列SRの継続長特徴量TRを事前に記憶装置14に格納した構成も採用され得る。すなわち、特徴量算定部32が参照音符列SRの継続長特徴量TRを算定する構成は省略され得る。
【0070】
(7)第5実施形態の楽曲選択部42がN個の参照楽曲を選択する方法は任意である。例えば、候補楽曲毎に抽出された特徴量(例えば継続長特徴量TRの時系列)に応じてN0個の候補楽曲を複数の部分集合(クラスタ)に事前に分類し、指定音符列SQから抽出された特徴量に対応する部分集合内の候補楽曲を楽曲選択部42が参照楽曲として選択する構成も好適である。N0個の候補楽曲の分類には例えばk-means法等の公知のクラスタリング技術が任意に採用される。
【0071】
また、N0個の候補楽曲の各々について特徴量(例えば継続長特徴量TR)のハッシュ値を登録したハッシュテーブルを事前に作成し、指定音符列SQの特徴量を変換したハッシュ値を検索キーとしてハッシュテーブル内のN0個の候補楽曲のうちのN個の参照楽曲を楽曲選択部42が選択することも可能である。また、例えばN0個の候補楽曲をジャンル毎に事前に分類し、利用者が入力装置18の操作で選択したジャンルの候補楽曲を楽曲選択部42が参照楽曲として選択する構成も採用され得る。
【0072】
(8)図14から理解されるように、類似指標値X[n]と類似指標値Y[n]とに応じた類似指標値Z[n]を算定する構成によれば、許容区間を設定しない場合(構成4)でも、類似指標値X[n]のみを利用する構成(構成2)と比較して、指定音符列SQと参照音符列SRとの相関を高精度に評価することが可能である。したがって、類似指標値X[n]のみを利用する構成(例えば非特許文献1)では高精度な評価が困難であるという課題を解決するための構成としては、許容区間(α[m1],α[m2])を設定せずに、類似指標値X[n]と類似指標値Y[n]とに応じた類似指標値Z[n]を算定する構成(図14の構成4)も採用され得る。
【0073】
(9)前述の第4実施形態では、相異なる音符(12半音)に対応する12個のピッチクラスの要素値t[c]を配列した継続長特徴量T(TQ,TR)を算定したが、ピッチクラスの総数(要素値t[c]の総数)や各ピッチクラスの区分の方法は適宜に変更される。例えば12個を上回る個数(例えば24個,36個,48個)のピッチクラスを設定した構成や、12個を下回る個数のピッチクラスを設定した構成も採用され得る。ピッチクラスの総数は、例えば音律を考慮して選定され得る。また、音域毎にピッチクラスを区別することも可能である。例えば、複数のオクターブのうち奇数番目の各オクターブに属する12半音の各々に対応する12個のピッチクラスと、偶数番目の各オクターブに属する12半音の各々に対応する12個のピッチクラスとを個別に設定した構成(したがって、合計24個の要素値t[1]〜t[24]が単位区間F毎に算定される)が採用され得る。以上の例示から理解されるように、ピッチクラスは、音名が相互に共通する少なくとも2個の音高を含む範囲(分類)を意味し、その総数や区分方法は任意である。
【0074】
(10)前述の各形態では、利用者が指定した指定音符列SQと記憶装置14に記憶された参照音符列SRとを対比したが、指定音符列SQと参照音符列SRとの対比前(または対比中)に所定の処理を各々に実行することも可能である。具体的には、指定音符列SQおよび参照音符列SRの片方または双方の音高を変更(例えば転調または移調やオクターブ単位のシフト)する構成が採用される。指定音符列SQを参照音符列SRに対して移動させた各場合について指定音符列SQおよび参照音符列SRの音高を順次に変更させることも可能である。
【0075】
例えば、指定音符列SQや参照音符列SRの音高(ノートナンバ)に所定値を加算または減算することが可能である。指定音符列SQ内の特定の音符(例えば最初の音符)ν[m1]と参照音符列SR内の特定の音符(例えば最初の音符)ν[m2]とで音高が一致するように指定音符列SQおよび参照音符列SRの音高を変更する構成も好適である。また、指定音符列SQ内の特定の音符ν[m1]と参照音符列SR内の特定の音符ν[m2]とが所定の関係にある場合(例えば音高差がオクターブの整数倍である場合)に限定して音符ν[m1]と音符ν[m2]とが一致するように指定音符列SQおよび参照音符列SRの音高を変更することも可能である。以上の構成によれば、指定音符列SQの音高と参照音符列SRの音高とがオクターブ単位で相違する場合でも高精度な検索を実現できるという利点がある。
【0076】
また、例えば、指定音符列SQや参照音符列SRの音高がオクターブの指定を含む情報(例えばMIDIのノートナンバ)で表現される場合には、オクターブの指定を除去してから指定音符列SQと参照音符列SRとを対比することも可能である。例えば、指定音符列SQが{C2,E2,G2,A#2,C3}のようにオクターブの指定(音階を指定する記号に付加された「2」や「3」の数値)を含む音高の時系列で表現される構成では、指定音符列SQが、{C,E,G,A#,C}のようにオクターブの指定を除去した形式に変換されたうえで、同様にオクターブの指定を含まない形式の参照音符列SRと対比される。
【0077】
(11)前述の各形態では、類似指標値Z[n](第1実施形態から第3実施形態では類似指標値X[n])に応じた順番で参照楽曲を利用者に提示したが、解析結果(Z[n],X[n])の利用方法は任意である。例えば、類似指標値が最大となる1個の参照楽曲(すなわち指定音符列SQに最も類似する参照楽曲)のみを利用者に報知する構成(楽曲検索装置)や、類似指標値が最大となる1個の参照楽曲の演奏音を再生する構成(したがって表示制御部24は省略され得る)も採用される。また、N個の参照楽曲から利用者が意図した楽曲を検索する場合に好適な形態として参照楽曲毎に類似指標値(X[n],Z[n])を算定する構成を例示したが、複数の参照楽曲の各々について類似指標値を算定する構成は本発明において必須ではない。すなわち、1個の参照楽曲の参照音符列SRと指定音符列SQとの間で類似指標値を算定することで参照音符列SRと指定音符列SQとの類似度を評価する装置としても本発明は実施され得る。以上の説明から理解されるように、本発明は、楽曲(音符列)を解析する装置(楽曲解析装置)として包括され、楽曲検索装置は楽曲解析装置のひとつの例示である。
【0078】
(12)楽曲解析装置100(100A,100B,100C)は、携帯電話機やパーソナルコンピュータ等の端末装置と通信するサーバ装置としても実現され得る。すなわち、楽曲解析装置100は、端末装置の入力装置18に対して利用者が指示した指定音符列SQを端末装置から受信して指定音符列SQと各参照音符列SRとの相関を解析し、解析結果の画像を端末装置の表示装置16に表示させる。以上の説明から理解されるように、前述の各形態における入力装置18や表示装置16は楽曲解析装置100から省略され得る。
【符号の説明】
【0079】
100(100A,100B,100C)……楽曲解析装置、12……演算処理装置、14……記憶装置、16……表示装置、18……入力装置、22……第1解析部、24……表示制御部、32……特徴量算定部、34……第2解析部、36……指標算定部、42……楽曲選択部。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15