(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-02-15
(45)【発行日】2022-02-24
(54)【発明の名称】電子メロディ特定装置、プログラム、及び電子メロディ特定方法
(51)【国際特許分類】
G10G 3/04 20060101AFI20220216BHJP
G10L 25/51 20130101ALI20220216BHJP
G10L 25/18 20130101ALI20220216BHJP
【FI】
G10G3/04
G10L25/51 300
G10L25/18
(21)【出願番号】P 2017137296
(22)【出願日】2017-07-13
【審査請求日】2020-06-05
(73)【特許権者】
【識別番号】591128453
【氏名又は名称】株式会社メガチップス
(74)【代理人】
【識別番号】100067828
【氏名又は名称】小谷 悦司
(74)【代理人】
【識別番号】100115381
【氏名又は名称】小谷 昌崇
(74)【代理人】
【識別番号】100136353
【氏名又は名称】高尾 建吾
(72)【発明者】
【氏名】陳 寒達
【審査官】中村 天真
(56)【参考文献】
【文献】特開2012-226080(JP,A)
【文献】特開2012-098360(JP,A)
【文献】特開2008-304610(JP,A)
【文献】特開2007-292827(JP,A)
【文献】特開2002-116768(JP,A)
【文献】国際公開第2009/038136(WO,A1)
【文献】米国特許出願公開第2014/0310006(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G10G 1/00- 3/04
G10H 1/00- 1/46
G10L 25/00-25/93
(57)【特許請求の範囲】
【請求項1】
特定対象である電子メロディの時系列信号を取得する取得部と、
前記取得部によって取得された電子メロディの時系列信号を、所定の第1区間単位で周波数解析することにより、第1区間毎の第1周波数スペクトルが複数配列された第1スペクトルパターンを生成する、第1のパターン生成部と、
前記第1のパターン生成部によって生成された第1スペクトルパターンを、それぞれに複数の第1区間を包含するN個(Nは複数)の第2区間に分割し、各第2区間に包含される複数の第1区間に関する複数の第1周波数スペクトルを平均化することにより、第2区間毎の第2周波数スペクトルが複数配列された第2スペクトルパターンを生成する、第2のパターン生成部と、
既知の複数の電子メロディの各々に関して予め生成され、N個の第2区間に分割された、第3スペクトルパターンを記憶する記憶部と、
前記第2のパターン生成部によって生成された第2スペクトルパターンと、前記記憶部に記憶されている各第3スペクトルパターンとの類似度を算出する算出処理部と、
前記算出処理部による類似度の算出結果に基づいて、前記取得部によって取得された電子メロディを特定する特定処理部と、
を備え、
前記第2のパターン生成部は、第2スペクトルパターンにおける周波数成分の分布に基づいて、各第2区間に包含される第1区間の個数を非均等に配分可能である、電子メロディ特定装置。
【請求項2】
前記第2のパターン生成部は、
均等配分した場合に第1の個数の周波数成分を含む第2周波数スペクトルに対応する第2区間に対しては
第1の数の第1区間を配分し、
均等配分した場合に第1の個数より少ない第2の個数の周波数成分を含む第2周波数スペクトルに対応する第2区間に対しては
第1の数より多い第2の数の第1区間を配分する、請求項1に記載の電子メロディ特定装置。
【請求項3】
前記記憶部には、N個の第2区間の各々に包含される第1区間の個数が非均等に配分された第1グループの第3スペクトルパターンと、N個の第2区間の各々に包含される第1区間の個数が均等に配分された第2グループの第3スペクトルパターンと、が記憶されており、
前記算出処理部は、
前記第2のパターン生成部によって生成された第2スペクトルパターンにおいて、各第2区間に包含される第1区間の個数が非均等に配分されている場合は、当該第2スペクトルパターンと、前記記憶部に記憶されている第1グループの第3スペクトルパターンとの類似度を算出し、
前記第2のパターン生成部によって生成された第2スペクトルパターンにおいて、各第2区間に包含される第1区間の個数が均等に配分されている場合は、当該第2スペクトルパターンと、前記記憶部に記憶されている第2グループの第3スペクトルパターンとの類似度を算出する、請求項1又は2に記載の電子メロディ特定装置。
【請求項4】
前記算出処理部は、
前記第2のパターン生成部によって生成された第2スペクトルパターンと、前記記憶部に記憶されている第1グループの第3スペクトルパターンとの類似度が、所定のしきい値未満である場合には、さらに、当該第2スペクトルパターンと、前記記憶部に記憶されている第2グループの第3スペクトルパターンとの類似度を算出し、
前記第2のパターン生成部によって生成された第2スペクトルパターンと、前記記憶部に記憶されている第2グループの第3スペクトルパターンとの類似度が、所定のしきい値未満である場合には、さらに、当該第2スペクトルパターンと、前記記憶部に記憶されている第1グループの第3スペクトルパターンとの類似度を算出する、請求項3に記載の電子メロディ特定装置。
【請求項5】
前記算出処理部は、対応する第2区間毎に類似度を算出することによって得られるN個の類似度の代表値を、第2スペクトルパターンと第3スペクトルパターンとの類似度として算出する、請求項1~4のいずれか一つに記載の電子メロディ特定装置。
【請求項6】
前記代表値は平均値である、請求項5に記載の電子メロディ特定装置。
【請求項7】
前記代表値は最大値である、請求項5に記載の電子メロディ特定装置。
【請求項8】
前記算出処理部は、
第1スペクトルパターンに基づいて生成された第2スペクトルパターンである基準第2スペクトルパターンと、
基準第2スペクトルパターンに含まれるN個の第2区間の配列順序を循環シフトさせることによって得られる(N-1)個の擬似第2スペクトルパターンと、
の各々に関して、第3スペクトルパターンとの類似度を算出する、請求項5~7のいずれか一つに記載の電子メロディ特定装置。
【請求項9】
前記算出処理部は、
第1スペクトルパターンに基づいて生成された第2スペクトルパターンである基準第2スペクトルパターンと、
基準第2スペクトルパターンに含まれるN個の第2区間の配列順序を前後方向に1区間ずつ循環シフトさせることによって得られる2個の擬似第2スペクトルパターンと、
の各々に関して、第3スペクトルパターンとの類似度を算出する、請求項5~7のいずれか一つに記載の電子メロディ特定装置。
【請求項10】
前記算出処理部は、
第1スペクトルパターンに基づいて生成された第2スペクトルパターンに含まれるN個の第2区間のうち時系列順で先頭部分及び末尾部分の第2区間を除外することによって、(N-2)個の第2区間を含む擬似第2スペクトルパターンを規定し、
当該擬似第2スペクトルパターンを先頭から順に1区間ずつ後方シフトさせることによって得られる3個の擬似第2スペクトルパターンの各々に関して、第3スペクトルパターンとの類似度を算出する、請求項5~7のいずれか一つに記載の電子メロディ特定装置。
【請求項11】
前記算出処理部は、第2スペクトルパターンに含まれるN個の第2区間のうち、時系列順で先頭部分及び末尾部分の第2区間に関しては、算出した類似度に1未満の重み係数を乗算する、請求項5~7のいずれか一つに記載の電子メロディ特定装置。
【請求項12】
前記第1のパターン生成部は、高速フーリエ変換を用いた周波数解析によって第1周波数スペクトルを生成し、
前記第2のパターン生成部は、複数の第1周波数スペクトルを平均化して第2周波数スペクトルを生成するにあたり、高速フーリエ変換における絶対値化前の複素信号に対して平均化を行う、請求項1~11のいずれか一つに記載の電子メロディ特定装置。
【請求項13】
前記第2のパターン生成部は、複数の第1周波数スペクトルの平均化により得られる周波数スペクトルに対して、所定のしきい値を用いた量子化を行うことによって、第2周波数スペクトルを生成する、請求項1~12のいずれか一つに記載の電子メロディ特定装置。
【請求項14】
前記記憶部には、第2周波数スペクトルと同様の平均化及び量子化が行われた第3スペクトルパターンが記憶されている、請求項13に記載の電子メロディ特定装置。
【請求項15】
電子メロディ特定装置に搭載されるコンピュータを、
特定対象である電子メロディの時系列信号を取得する取得手段と、
前記取得手段によって取得された電子メロディの時系列信号を、所定の第1区間単位で周波数解析することにより、第1区間毎の第1周波数スペクトルが複数配列された第1スペクトルパターンを生成する、第1のパターン生成手段と、
前記第1のパターン生成手段によって生成された第1スペクトルパターンを、それぞれに複数の第1区間を包含するN個(Nは複数)の第2区間に分割し、各第2区間に包含される複数の第1区間に関する複数の第1周波数スペクトルを平均化することにより、第2区間毎の第2周波数スペクトルが複数配列された第2スペクトルパターンを生成する、第2のパターン生成手段と、
既知の複数の電子メロディの各々に関して予め生成され、N個の第2区間に分割された、第3スペクトルパターンを記憶する記憶手段と、
前記第2のパターン生成手段によって生成された第2スペクトルパターンと、前記記憶手段に記憶されている各第3スペクトルパターンとの類似度を算出する算出処理手段と、
前記算出処理手段による類似度の算出結果に基づいて、前記取得手段によって取得された電子メロディを特定する特定処理手段と、
として機能させるためのプログラムであって、
前記第2のパターン生成手段は、第2スペクトルパターンにおける周波数成分の分布に基づいて、各第2区間に包含される第1区間の個数を非均等に配分可能である、プログラム。
【請求項16】
(A)特定対象である電子メロディの時系列信号を取得するステップと、
(B)前記ステップ(A)によって取得された電子メロディの時系列信号を、所定の第1区間単位で周波数解析することにより、第1区間毎の第1周波数スペクトルが複数配列された第1スペクトルパターンを生成するステップと、
(C)前記ステップ(B)によって生成された第1スペクトルパターンを、それぞれに複数の第1区間を包含するN個(Nは複数)の第2区間に分割し、各第2区間に包含される複数の第1区間に関する複数の第1周波数スペクトルを平均化することにより、第2区間毎の第2周波数スペクトルが複数配列された第2スペクトルパターンを生成するステップと、
(D)既知の複数の電子メロディの各々に関して予め生成され、N個の第2区間に分割された、第3スペクトルパターンを記憶するステップと、
(E)前記ステップ(C)によって生成された第2スペクトルパターンと、前記ステップ(D)によって記憶された各第3スペクトルパターンとの類似度を算出するステップと、
(F)前記ステップ(E)による類似度の算出結果に基づいて、前記ステップ(A)によって取得された電子メロディを特定するステップと、
を備え、
前記ステップ(C)では、第2スペクトルパターンにおける周波数成分の分布に基づいて、各第2区間に包含される第1区間の個数を非均等に配分可能である、電子メロディ特定方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子メロディ特定装置、プログラム、及び電子メロディ特定方法に関する。
【背景技術】
【0002】
下記特許文献1には、様々な音声の標準パターンを予め準備しておき、入力音声と標準パターンとのパターンマッチングを行うことによって入力音声を認識する音声認識装置が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
人間が発声する音声は、たとえ同一の単語やフレーズであっても、性別、年齢、訛り、及び発声速度等の話者の個性に起因して、様々なスペクトル変動及び時間的変動が生じる。従って、不特定話者の音声を認識対象とする音声認識装置においては、話者の個性に起因するこれらの変動を補正すべく、複雑な正規化回路等を実装する必要がある。例えば上記特許文献1に開示された音声認識装置では、時間的変動を補正すべく、線形伸縮した入力音声を全区間で1フレームずつシフトしながら、標準パターンとのパターンマッチングが行われている。
【0005】
一方、駅の発着メロディや店舗の入店メロディ等の電子メロディは、シンセサイザーによって作られた簡単な音楽であることが多く、人間が発声する音声と比較して、周波数バンドが狭くて周波数成分も少ない。しかも、人間が発声する音声とは異なり電子メロディは、録音された音源をスピーカーから再生するだけなので、話者の個性に起因するスペクトル変動や時間的変動が存在しない。
【0006】
従って、電子メロディを特定対象とする電子メロディ特定装置において、音声認識装置と同等の複雑な機能を実装したのでは、オーバースペックとなって無駄にコストが上昇する。
【0007】
本発明はかかる問題を解決するために成されたものであり、簡易な構成及び処理によって電子メロディを高精度に特定することが可能な、電子メロディ特定装置、プログラム、及び電子メロディ特定方法を得ることを目的とするものである。
【課題を解決するための手段】
【0008】
本発明の第1の態様に係る電子メロディ特定装置は、特定対象である電子メロディの時系列信号を取得する取得部と、前記取得部によって取得された電子メロディの時系列信号を、所定の第1区間単位で周波数解析することにより、第1区間毎の第1周波数スペクトルが複数配列された第1スペクトルパターンを生成する、第1のパターン生成部と、前記第1のパターン生成部によって生成された第1スペクトルパターンを、それぞれに複数の第1区間を包含するN個(Nは複数)の第2区間に分割し、各第2区間に包含される複数の第1区間に関する複数の第1周波数スペクトルを平均化することにより、第2区間毎の第2周波数スペクトルが複数配列された第2スペクトルパターンを生成する、第2のパターン生成部と、既知の複数の電子メロディの各々に関して予め生成され、N個の第2区間に分割された、第3スペクトルパターンを記憶する記憶部と、前記第2のパターン生成部によって生成された第2スペクトルパターンと、前記記憶部に記憶されている各第3スペクトルパターンとの類似度を算出する算出処理部と、前記算出処理部による類似度の算出結果に基づいて、前記取得部によって取得された電子メロディを特定する特定処理部と、を備え、前記第2のパターン生成部は、第2スペクトルパターンにおける周波数成分の分布に基づいて、各第2区間に包含される第1区間の個数を非均等に配分可能であることを特徴とするものである。
【0009】
第1の態様に係る電子メロディ特定装置によれば、第2のパターン生成部は、各第2区間に包含される複数の第1区間に関する複数の第1周波数スペクトルを平均化することにより、第2区間毎の第2周波数スペクトルが複数配列された第2スペクトルパターンを生成する。そして、算出処理部は、第2のパターン生成部によって生成された第2スペクトルパターンと、記憶部に記憶されている各第3スペクトルパターンとの類似度を算出する。これにより、平均化前の第1スペクトルパターンを用いて類似度を算出する場合と比較して、演算量が削減されるため処理負荷を軽減することができる。また、第3スペクトルパターンを簡略化できるため、記憶部に必要な記憶容量を削減することができる。
【0010】
しかも、第2のパターン生成部は、第2スペクトルパターンにおける周波数成分の分布に基づいて、各第2区間に包含される第1区間の個数を非均等に配分可能である。第2区間に包含される第1区間の個数に応じて解像度を調整できるため、重要な箇所の解像度を上げ、重要でない箇所の解像度を下げるような配分を行うことにより、処理負荷の増大を回避しつつ電子メロディの特定精度を向上することが可能となる。
【0011】
本発明の第2の態様に係る電子メロディ特定装置は、第1の態様に係る電子メロディ特定装置において特に、前記第2のパターン生成部は、均等配分した場合に第1の個数の周波数成分を含む第2周波数スペクトルに対応する第2区間に対しては第1の数の第1区間を配分し、均等配分した場合に第1の個数より少ない第2の個数の周波数成分を含む第2周波数スペクトルに対応する第2区間に対しては第1の数より多い第2の数の第1区間を配分することを特徴とするものである。
【0012】
第2の態様に係る電子メロディ特定装置によれば、第2のパターン生成部は、比較的多数(第1の個数)の周波数成分を含む第2周波数スペクトルに対応する第2区間に対しては比較的少数(第1の数)の第1区間を配分し、比較的少数(第2の個数)の周波数成分を含む第2周波数スペクトルに対応する第2区間に対しては比較的多数(第2の数)の第1区間を配分する。比較的多数の周波数成分を含む第2周波数スペクトルは、電子メロディを特定するために重要な箇所であるため、そのような第2周波数スペクトルに対応する第2区間に対しては比較的少数の第1区間を配分することにより、解像度を上げることができ、その結果、電子メロディの特定精度を向上することが可能となる。一方、比較的少数の周波数成分を含む第2周波数スペクトルは、電子メロディを特定するために重要でない箇所であるため、そのような第2周波数スペクトルに対応する第2区間に対しては比較的多数の第1区間を配分することにより、処理負荷の増大を回避することが可能となる。
【0013】
本発明の第3の態様に係る電子メロディ特定装置は、第1又は第2の態様に係る電子メロディ特定装置において特に、前記記憶部には、N個の第2区間の各々に包含される第1区間の個数が非均等に配分された第1グループの第3スペクトルパターンと、N個の第2区間の各々に包含される第1区間の個数が均等に配分された第2グループの第3スペクトルパターンと、が記憶されており、前記算出処理部は、前記第2のパターン生成部によって生成された第2スペクトルパターンにおいて、各第2区間に包含される第1区間の個数が非均等に配分されている場合は、当該第2スペクトルパターンと、前記記憶部に記憶されている第1グループの第3スペクトルパターンとの類似度を算出し、前記第2のパターン生成部によって生成された第2スペクトルパターンにおいて、各第2区間に包含される第1区間の個数が均等に配分されている場合は、当該第2スペクトルパターンと、前記記憶部に記憶されている第2グループの第3スペクトルパターンとの類似度を算出することを特徴とするものである。
【0014】
第3の態様に係る電子メロディ特定装置によれば、算出処理部は、各第2区間に包含される第1区間の個数が非均等に配分されている第2スペクトルパターンに関しては、第1グループの第3スペクトルパターンとの類似度を算出し、一方、各第2区間に包含される第1区間の個数が均等に配分されている第2スペクトルパターンに関しては、第2グループの第3スペクトルパターンとの類似度を算出する。このように、第3スペクトルパターンを予め第1グループと第2グループとに分類しておき、第2スペクトルパターンの種別に応じて比較対象の第3スペクトルパターンを選別することにより、電子メロディの特定精度の低下を抑制しつつ、処理負荷の軽減及び所要時間の短縮化を図ることが可能となる。
【0015】
本発明の第4の態様に係る電子メロディ特定装置は、第3の態様に係る電子メロディ特定装置において特に、前記算出処理部は、前記第2のパターン生成部によって生成された第2スペクトルパターンと、前記記憶部に記憶されている第1グループの第3スペクトルパターンとの類似度が、所定のしきい値未満である場合には、さらに、当該第2スペクトルパターンと、前記記憶部に記憶されている第2グループの第3スペクトルパターンとの類似度を算出し、前記第2のパターン生成部によって生成された第2スペクトルパターンと、前記記憶部に記憶されている第2グループの第3スペクトルパターンとの類似度が、所定のしきい値未満である場合には、さらに、当該第2スペクトルパターンと、前記記憶部に記憶されている第1グループの第3スペクトルパターンとの類似度を算出することを特徴とするものである。
【0016】
第4の態様に係る電子メロディ特定装置によれば、算出処理部は、各第2区間に包含される第1区間の個数が非均等に配分されている第2スペクトルパターンに関して、第1グループの第3スペクトルパターンとの類似度がしきい値未満である場合には、さらに、当該第2スペクトルパターンと第2グループの第3スペクトルパターンとの類似度を算出する。また、算出処理部は、各第2区間に包含される第1区間の個数が均等に配分されている第2スペクトルパターンに関して、第2グループの第3スペクトルパターンとの類似度がしきい値未満である場合には、さらに、当該第2スペクトルパターンと第1グループの第3スペクトルパターンとの類似度を算出する。このように、第1グループ及び第2グループの一方のグループの第3スペクトルパターンとの類似度がしきい値未満である場合には、他方のグループの第3スペクトルパターンとの類似度を算出することにより、類似度がしきい値以上の第3スペクトルパターンが発見される可能性があるため、電子メロディの特定精度を向上することが可能となる。
【0017】
本発明の第5の態様に係る電子メロディ特定装置は、第1~第4のいずれか一つの態様に係る電子メロディ特定装置において特に、前記算出処理部は、対応する第2区間毎に類似度を算出することによって得られるN個の類似度の代表値を、第2スペクトルパターンと第3スペクトルパターンとの類似度として算出することを特徴とするものである。
【0018】
第5の態様に係る電子メロディ特定装置によれば、算出処理部は、第2スペクトルパターンと第3スペクトルパターンとで対応する第2区間毎に類似度を算出する。従って、第1区間毎に類似度を算出する場合と比較して、演算量が削減されるため処理負荷を軽減することが可能となる。
【0019】
本発明の第6の態様に係る電子メロディ特定装置は、第5の態様に係る電子メロディ特定装置において特に、前記代表値は平均値であることを特徴とするものである。
【0020】
第6の態様に係る電子メロディ特定装置によれば、算出処理部は、対応する第2区間毎に類似度を算出することによって得られるN個の類似度の平均値を、第2スペクトルパターンと第3スペクトルパターンとの類似度として算出する。これにより、スペクトルパターンの全体領域における周波数成分の分布に基づいて、類似度を算出することが可能となる。
【0021】
本発明の第7の態様に係る電子メロディ特定装置は、第5の態様に係る電子メロディ特定装置において特に、前記代表値は最大値であることを特徴とするものである。
【0022】
第7の態様に係る電子メロディ特定装置によれば、算出処理部は、対応する第2区間毎に類似度を算出することによって得られるN個の類似度の最大値を、第2スペクトルパターンと第3スペクトルパターンとの類似度として算出する。これにより、特徴的部分を含む電子メロディに関して、その特徴的部分に対応する第2周波数スペクトルにおける周波数成分の分布に基づいて、類似度を算出することが可能となる。
【0023】
本発明の第8の態様に係る電子メロディ特定装置は、第5~第7のいずれか一つの態様に係る電子メロディ特定装置において特に、前記算出処理部は、第1スペクトルパターンに基づいて生成された第2スペクトルパターンである基準第2スペクトルパターンと、基準第2スペクトルパターンに含まれるN個の第2区間の配列順序を循環シフトさせることによって得られる(N-1)個の擬似第2スペクトルパターンと、の各々に関して、第3スペクトルパターンとの類似度を算出することを特徴とするものである。
【0024】
第8の態様に係る電子メロディ特定装置によれば、算出処理部は、基準第2スペクトルパターンと、基準第2スペクトルパターンに含まれるN個の第2区間の配列順序を循環シフトさせることによって得られる(N-1)個の擬似第2スペクトルパターンと、の各々に関して、第3スペクトルパターンとの類似度を算出する。ユーザによる手動の録音操作によって取得部が電子メロディの時系列信号を取得する場合には、録音操作の開始タイミング及び終了タイミングのずれに起因して、第2スペクトルパターンと第3スペクトルパターンとで第2区間の位置ずれが生じ得る。従って、算出処理部が、基準第2スペクトルパターンのみならず擬似第2スペクトルパターンについても第3スペクトルパターンとの類似度を算出することにより、第2区間の位置ずれが生じている場合であっても、第2スペクトルパターンと第3スペクトルパターンとの類似度を適切に算出することが可能となる。
【0025】
しかも、基準第2スペクトルパターンに含まれるN個の第2区間の配列順序を循環シフトさせることによって得られる(N-1)個の擬似第2スペクトルパターンが規定されるため、第2区間の位置ずれが大きい場合であっても、第2スペクトルパターンと第3スペクトルパターンとの類似度を適切に算出することが可能となる。
【0026】
本発明の第9の態様に係る電子メロディ特定装置は、第5~第7のいずれか一つの態様に係る電子メロディ特定装置において特に、前記算出処理部は、第1スペクトルパターンに基づいて生成された第2スペクトルパターンである基準第2スペクトルパターンと、基準第2スペクトルパターンに含まれるN個の第2区間の配列順序を前後方向に1区間ずつ循環シフトさせることによって得られる2個の擬似第2スペクトルパターンと、の各々に関して、第3スペクトルパターンとの類似度を算出することを特徴とするものである。
【0027】
第9の態様に係る電子メロディ特定装置によれば、算出処理部は、基準第2スペクトルパターンと、基準第2スペクトルパターンに含まれるN個の第2区間の配列順序を前後方向に1区間ずつ循環シフトさせることによって得られる2個の擬似第2スペクトルパターンと、の各々に関して、第3スペクトルパターンとの類似度を算出する。これにより、第2区間の位置ずれが生じている場合であっても、第2スペクトルパターンと第3スペクトルパターンとの類似度を適切に算出することが可能となる。
【0028】
しかも、基準第2スペクトルパターンに含まれるN個の第2区間の配列順序を前後方向に1区間ずつ循環シフトさせることによって得られる2個の擬似第2スペクトルパターンが規定されるため、全区間の循環シフトと比較して処理負荷の増大を抑制しつつ、第2スペクトルパターンと第3スペクトルパターンとの類似度を適切に算出することが可能となる。
【0029】
本発明の第10の態様に係る電子メロディ特定装置は、第5~第7のいずれか一つの態様に係る電子メロディ特定装置において特に、前記算出処理部は、第1スペクトルパターンに基づいて生成された第2スペクトルパターンに含まれるN個の第2区間のうち時系列順で先頭部分及び末尾部分の第2区間を除外することによって、(N-2)個の第2区間を含む擬似第2スペクトルパターンを規定し、当該擬似第2スペクトルパターンを先頭から順に1区間ずつ後方シフトさせることによって得られる3個の擬似第2スペクトルパターンの各々に関して、第3スペクトルパターンとの類似度を算出することを特徴とするものである。
【0030】
第10の態様に係る電子メロディ特定装置によれば、算出処理部は、第2スペクトルパターンに含まれるN個の第2区間のうち時系列順で先頭部分及び末尾部分の第2区間を除外することによって、(N-2)個の第2区間を含む擬似第2スペクトルパターンを規定し、当該擬似第2スペクトルパターンを先頭から順に1区間ずつ後方シフトさせることによって得られる3個の擬似第2スペクトルパターンの各々に関して、第3スペクトルパターンとの類似度を算出する。これにより、第2区間の位置ずれが生じている場合であっても、第2スペクトルパターンと第3スペクトルパターンとの類似度を適切に算出することが可能となる。
【0031】
しかも、第2スペクトルパターンに含まれるN個の第2区間のうち時系列順で先頭部分及び末尾部分の第2区間を除外することによって擬似第2スペクトルパターンが規定されるため、全区間の循環シフトと比較して処理負荷の増大を抑制しつつ、ユーザによる録音操作のタイミングずれが最も反映されやすい先頭部分及び末尾部分の第2区間の影響を排除することが可能となる。
【0032】
本発明の第11の態様に係る電子メロディ特定装置は、第5~第7のいずれか一つの態様に係る電子メロディ特定装置において特に、前記算出処理部は、第2スペクトルパターンに含まれるN個の第2区間のうち、時系列順で先頭部分及び末尾部分の第2区間に関しては、算出した類似度に1未満の重み係数を乗算することを特徴とするものである。
【0033】
第11の態様に係る電子メロディ特定装置によれば、算出処理部は、第2スペクトルパターンに含まれるN個の第2区間のうち、時系列順で先頭部分及び末尾部分の第2区間に関しては、算出した類似度に1未満の重み係数を乗算する。従って、ユーザによる録音操作のタイミングずれが最も反映されやすい先頭部分及び末尾部分の第2区間の影響を低減することが可能となる。
【0034】
本発明の第12の態様に係る電子メロディ特定装置は、第1~第11のいずれか一つの態様に係る電子メロディ特定装置において特に、前記第1のパターン生成部は、高速フーリエ変換を用いた周波数解析によって第1周波数スペクトルを生成し、前記第2のパターン生成部は、複数の第1周波数スペクトルを平均化して第2周波数スペクトルを生成するにあたり、高速フーリエ変換における絶対値化前の複素信号に対して平均化を行うことを特徴とするものである。
【0035】
第12の態様に係る電子メロディ特定装置によれば、第2のパターン生成部は、複数の第1周波数スペクトルを平均化して第2周波数スペクトルを生成するにあたり、高速フーリエ変換における絶対値化前の複素信号に対して平均化を行う。これにより、第1周波数スペクトルに混入したホワイトノイズの影響が第2周波数スペクトルでは低減されて信号対雑音比が向上するため、電子メロディの特定精度を向上することが可能となる。
【0036】
本発明の第13の態様に係る電子メロディ特定装置は、第1~第12のいずれか一つの態様に係る電子メロディ特定装置において特に、前記第2のパターン生成部は、複数の第1周波数スペクトルの平均化により得られる周波数スペクトルに対して、所定のしきい値を用いた量子化を行うことによって、第2周波数スペクトルを生成することを特徴とするものである。
【0037】
第13の態様に係る電子メロディ特定装置によれば、第2のパターン生成部は、複数の第1周波数スペクトルの平均化により得られる周波数スペクトルに対して、所定のしきい値を用いた量子化を行うことによって、第2周波数スペクトルを生成する。第2周波数スペクトルを量子化することによって第2スペクトルパターンを簡略化できるため、演算量を削減することができる。しかも、特定対象が電子メロディであるため、第2周波数スペクトルを量子化しても、特定精度が低下する影響は小さい。従って、電子メロディの特定精度の低下を抑制しつつ、演算量を削減することが可能となる。
【0038】
本発明の第14の態様に係る電子メロディ特定装置は、第13の態様に係る電子メロディ特定装置において特に、前記記憶部には、第2周波数スペクトルと同様の平均化及び量子化が行われた第3スペクトルパターンが記憶されていることを特徴とするものである。
【0039】
第14の態様に係る電子メロディ特定装置によれば、記憶部には、第2周波数スペクトルと同様の平均化及び量子化が行われた第3スペクトルパターンが記憶されている。量子化によって第3スペクトルパターンをさらに簡略化できるため、記憶部に必要な記憶容量をさらに削減することが可能となる。
【0040】
本発明の第15の態様に係るプログラムは、電子メロディ特定装置に搭載されるコンピュータを、特定対象である電子メロディの時系列信号を取得する取得手段と、前記取得手段によって取得された電子メロディの時系列信号を、所定の第1区間単位で周波数解析することにより、第1区間毎の第1周波数スペクトルが複数配列された第1スペクトルパターンを生成する、第1のパターン生成手段と、前記第1のパターン生成手段によって生成された第1スペクトルパターンを、それぞれに複数の第1区間を包含するN個(Nは複数)の第2区間に分割し、各第2区間に包含される複数の第1区間に関する複数の第1周波数スペクトルを平均化することにより、第2区間毎の第2周波数スペクトルが複数配列された第2スペクトルパターンを生成する、第2のパターン生成手段と、既知の複数の電子メロディの各々に関して予め生成され、N個の第2区間に分割された、第3スペクトルパターンを記憶する記憶手段と、前記第2のパターン生成手段によって生成された第2スペクトルパターンと、前記記憶手段に記憶されている各第3スペクトルパターンとの類似度を算出する算出処理手段と、前記算出処理手段による類似度の算出結果に基づいて、前記取得手段によって取得された電子メロディを特定する特定処理手段と、として機能させるためのプログラムであって、前記第2のパターン生成手段は、第2スペクトルパターンにおける周波数成分の分布に基づいて、各第2区間に包含される第1区間の個数を非均等に配分可能であることを特徴とするものである。
【0041】
第15の態様に係るプログラムによれば、第2のパターン生成手段は、各第2区間に包含される複数の第1区間に関する複数の第1周波数スペクトルを平均化することにより、第2区間毎の第2周波数スペクトルが複数配列された第2スペクトルパターンを生成する。そして、算出処理手段は、第2のパターン生成手段によって生成された第2スペクトルパターンと、記憶手段に記憶されている各第3スペクトルパターンとの類似度を算出する。これにより、平均化前の第1スペクトルパターンを用いて類似度を算出する場合と比較して、演算量が削減されるため処理負荷を軽減することができる。また、第3スペクトルパターンを簡略化できるため、記憶手段に必要な記憶容量を削減することができる。
【0042】
しかも、第2のパターン生成手段は、第2スペクトルパターンにおける周波数成分の分布に基づいて、各第2区間に包含される第1区間の個数を非均等に配分可能である。第2区間に包含される第1区間の個数に応じて解像度を調整できるため、重要な箇所の解像度を上げ、重要でない箇所の解像度を下げるような配分を行うことにより、処理負荷の増大を回避しつつ電子メロディの特定精度を向上することが可能となる。
【0043】
本発明の第16の態様に係る電子メロディ特定方法は、(A)特定対象である電子メロディの時系列信号を取得するステップと、(B)前記ステップ(A)によって取得された電子メロディの時系列信号を、所定の第1区間単位で周波数解析することにより、第1区間毎の第1周波数スペクトルが複数配列された第1スペクトルパターンを生成するステップと、(C)前記ステップ(B)によって生成された第1スペクトルパターンを、それぞれに複数の第1区間を包含するN個(Nは複数)の第2区間に分割し、各第2区間に包含される複数の第1区間に関する複数の第1周波数スペクトルを平均化することにより、第2区間毎の第2周波数スペクトルが複数配列された第2スペクトルパターンを生成するステップと、(D)既知の複数の電子メロディの各々に関して予め生成され、N個の第2区間に分割された、第3スペクトルパターンを記憶するステップと、(E)前記ステップ(C)によって生成された第2スペクトルパターンと、前記ステップ(D)によって記憶された各第3スペクトルパターンとの類似度を算出するステップと、(F)前記ステップ(E)による類似度の算出結果に基づいて、前記ステップ(A)によって取得された電子メロディを特定するステップと、を備え、前記ステップ(C)では、第2スペクトルパターンにおける周波数成分の分布に基づいて、各第2区間に包含される第1区間の個数を非均等に配分可能であることを特徴とするものである。
【0044】
第16の態様に係る電子メロディ特定方法によれば、ステップ(C)では、各第2区間に包含される複数の第1区間に関する複数の第1周波数スペクトルを平均化することにより、第2区間毎の第2周波数スペクトルが複数配列された第2スペクトルパターンが生成される。そして、ステップ(E)では、ステップ(C)によって生成された第2スペクトルパターンと、ステップ(D)によって記憶された各第3スペクトルパターンとの類似度が算出される。これにより、平均化前の第1スペクトルパターンを用いて類似度を算出する場合と比較して、演算量が削減されるため処理負荷を軽減することができる。また、第3スペクトルパターンを簡略化できるため、ステップ(D)での第3スペクトルパターンの記憶に必要な記憶容量を削減することができる。
【0045】
しかも、ステップ(C)では、第2スペクトルパターンにおける周波数成分の分布に基づいて、各第2区間に包含される第1区間の個数を非均等に配分可能である。第2区間に包含される第1区間の個数に応じて解像度を調整できるため、重要な箇所の解像度を上げ、重要でない箇所の解像度を下げるような配分を行うことにより、処理負荷の増大を回避しつつ電子メロディの特定精度を向上することが可能となる。
【発明の効果】
【0046】
本発明によれば、簡易な構成及び処理によって電子メロディを高精度に特定することが可能となる。
【図面の簡単な説明】
【0047】
【
図1】本発明の実施の形態に係る電子メロディ特定装置の構成を示すブロック図である。
【
図2】電子メロディの時系列信号とフレームとの関係を示す図である。
【
図3】周波数解析部によって生成されるスペクトルパターンの一例を模式的に示す図である。
【
図4】フレームとセグメントとの関係を示す図である。
【
図5】パターン生成部によって生成されるスペクトルパターンの一例を模式的に示す図である。
【
図6】パターン生成部によって生成されるスペクトルパターンの一例を模式的に示す図である。
【
図7】類似度算出部による類似度の算出手法を説明するための図である。
【
図8】電子メロディ特定装置をソフトウェアによって実現するための構成を示す図である。
【
図9】均等配分によって生成されるスペクトルパターンの一例を示す図である。
【
図10】非均等配分した場合のフレームとセグメントとの関係を示す図である。
【
図11】均等配分によって生成されるスペクトルパターンの他の例を示す図である。
【
図12】記憶部に記憶されるスペクトルパターンを示す図である。
【
図13】類似度算出部及び特定処理部の処理フローに関する第1の例を示すフローチャートである。
【
図14】類似度算出部及び特定処理部の処理フローに関する第2の例を示すフローチャートである。
【
図15】対応セグメントの位置ずれ対策についての第1の例を説明するための図である。
【
図16】対応セグメントの位置ずれ対策についての第2の例を説明するための図である。
【
図17】対応セグメントの位置ずれ対策についての第3の例を説明するための図である。
【
図18】対応セグメントの位置ずれ対策についての第4の例を説明するための図である。
【
図19】対応セグメントの位置ずれ対策についての第5の例を説明するための図である。
【
図20】対応セグメントの位置ずれ対策についての第6の例を説明するための図である。
【発明を実施するための形態】
【0048】
以下、本発明の実施の形態について、図面を用いて詳細に説明する。なお、異なる図面において同一の符号を付した要素は、同一又は相応する要素を示すものとする。
【0049】
<基本構成>
図1は、本発明の実施の形態に係る電子メロディ特定装置1の構成を示すブロック図である。用途の一例として、電子メロディ特定装置1は、スマートフォンやゲーム機等の携帯端末に実装され、特定の駅や店舗に訪問したユーザが、訪問証明のために、その駅に特有の発着メロディやその店舗に特有の入店メロディ等を録音する用途で使用される。後述するように、電子メロディ特定装置1には、既知の様々な参照電子メロディに関する参照スペクトルパターンが予め記憶されており、取得した電子メロディのスペクトルパターンと参照スペクトルパターンとを比較することによって、取得した電子メロディがいずれの参照電子メロディに相当するかが特定される。
【0050】
図1の接続関係で示すように、電子メロディ特定装置1は、マイク11、AD変換器(ADC)12、バッファ13,15、周波数解析部14、パターン生成部16、類似度算出部17、特定処理部18、及び記憶部19を備えて構成されている。マイク11、ADC12、及びバッファ13は、録音によって電子メロディを取得するための取得部10として機能する。電子メロディ特定装置1を構成する各要素は、ハードウェアによって構成しても良いし、ソフトウェアによって構成しても良い。あるいは、単純計算はハードウェアで行い、判定処理はソフトウェアで行うなど、ハードウェア及びソフトウェアの双方を用いて電子メロディ特定装置1を構成しても良い。
【0051】
ユーザが携帯端末を操作することによって録音が開始されると、特定対象である電子メロディの時系列信号がマイク11からAD変換器12に入力され、AD変換器12によってディジタルデータに変換された後、バッファ13に一時的に格納される。
【0052】
周波数解析部14は、バッファ13から入力された電子メロディの時系列信号を、所定のフレーム単位で高速フーリエ変換(FFT)することによって、フレーム毎の周波数スペクトルが複数配列されたスペクトルパターンSP01を生成する。
【0053】
図2は、電子メロディの時系列信号I0とフレームF01~F78との関係を示す図である。想定される電子メロディの長さを「Tm」、サンプリング周波数を「Fs」、FFT長を「Nf」とすると、フレーム数はTm×Fs/Nfの関係式によって定まる。一例として本実施の形態では、Tm=4.992(sec)、Fs=8(kHz)、Nf=512に設定されており、その結果、フレーム数は「78」となる。また、フレーム長は4.992/78=64(msec)となる。フレームは時系列順に配列され、
図2に示すように、先頭がフレームF01であり、末尾がフレームF78である。
【0054】
図3は、周波数解析部14によって生成されるスペクトルパターンSP01の一例を模式的に示す図である。電子メロディの時系列信号I0をフレーム単位で周波数解析することにより、各フレームF01~F78に対応する周波数スペクトルX01~X78がそれぞれ生成される。そして、周波数スペクトルX01~X78を時系列順に配列したものがスペクトルパターンSP01となる。
図1を参照して、周波数解析部14によって生成されたスペクトルパターンSP01は、バッファ15に一時的に格納される。
【0055】
パターン生成部16は、バッファ15から入力されたスペクトルパターンSP01を、それぞれに複数のフレームを包含するN個(Nは複数)のセグメントに分割し、各セグメントに包含される複数のフレームに関する複数の周波数スペクトルを平均化することにより、スペクトルパターンSP02を生成する。セグメントの個数Nは、要求される特定精度や所要時間等に応じて最適な値が設定されており、本実施の形態の例ではN=6とする。
【0056】
図4は、フレーム(第1区間)F01~F78とセグメント(第2区間)S01~S06との関係を示す図である。セグメントは時系列順に配列され、
図4に示すように、先頭がセグメントS01であり、末尾がセグメントS06である。本実施の形態の例ではフレーム数が「78」でセグメント数が「6」であるため、1セグメントには78/6=13個のフレームが包含される。例えば、セグメントS01にはフレームF01~F13が包含され、セグメントS02にはフレームF14~F26が包含される。
【0057】
図5は、パターン生成部16によって生成されるスペクトルパターンSP02の一例を模式的に示す図である。スペクトルパターンSP01に含まれる周波数スペクトルX01~X78をセグメント単位で平均化することにより、各セグメントS01~S06に対応する周波数スペクトルY01~Y06がそれぞれ生成される。例えば、セグメントS01に包含されるフレームF01~F13に関する周波数スペクトルX01~X13を平均化することによって、周波数スペクトルY01が生成される。そして、周波数スペクトルY01~Y06を時系列順に配列したものがスペクトルパターンSP02となる。なお、パターン生成部16は、周波数解析部14によるFFT直後の複素信号に対して平均化を行う。つまり、一般的な平均化手法のように複素信号を絶対値化してから平均化するのではなく、絶対値化前の複素信号の状態で平均化を行い、その後に絶対値化を行う。
【0058】
次にパターン生成部16は、スペクトルパターンSP02を量子化することによってスペクトルパターンSP02Aを生成する。なお、この処理はオプションであり、電子メロディ特定装置1の記憶容量や計算負荷に余裕がある場合にはこの処理は省略しても良い。
【0059】
図6は、パターン生成部16によって生成されるスペクトルパターンSP02Aの一例を模式的に示す図である。
図5に示した周波数スペクトルY01~Y06に対して、所定のしきい値V1を用いた1ビット量子化が行われることにより、周波数スペクトルY01A~Y06Aが生成される。つまり、周波数スペクトルY01~Y06においてしきい値V1未満の周波数成分は、周波数スペクトルY01A~Y06Aにおいて全て「0」とされ、また、周波数スペクトルY01~Y06においてしきい値V1以上の周波数成分は、周波数スペクトルY01A~Y06Aにおいて全て「1」とされる。そして、周波数スペクトルY01A~Y06Aを時系列順に配列したものがスペクトルパターンSP02Aとなる。
【0060】
図1を参照して、記憶部19には、既知の様々な電子メロディに関する複数のスペクトルパターンSP03が記憶されている。スペクトルパターンSP03は、上述したスペクトルパターンSP02Aと同様の処理(フレーム単位での周波数解析、セグメント単位での平均化、しきい値V1を用いた1ビット量子化)によって、予め生成されている。
【0061】
類似度算出部17は、パターン生成部16によって生成されたスペクトルパターンSP02Aと、記憶部19に記憶されている各スペクトルパターンSP03との類似度を算出する。
【0062】
図7は、類似度算出部17による類似度の算出手法を説明するための図である。本実施の形態の例では、スペクトルパターンSP03,SP02Aは、いずれも6個のセグメントS01~S06に分割されている。類似度算出部17は、まず、類似度を求めるための任意の計算式を用いて、スペクトルパターンSP03,SP02A間で対応するセグメントS01~S06毎に、類似度K01~K06を算出する。次に、セグメントS01~S06毎に求めた6個の類似度K01~K06の代表値を、スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度として算出する。代表値としては、例えば平均値を用いることができる。その場合、スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度は、(K01+K02+K03+K04+K05+K06)/6となる。なお、代表値としては平均値のほかに最大値を用いることもでき、その場合、類似度K01~K06のうちの最大値が、スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度となる。類似度算出部17は、記憶部19に記憶されている全てのスペクトルパターンSP03を順に読み出すことにより、各スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度を順に算出する。
【0063】
図1を参照して、特定処理部18は、類似度算出部17による類似度の算出結果に基づいて、取得部10によって取得された電子メロディを特定する。つまり、記憶部19に記憶されている全てのスペクトルパターンSP03のうち、スペクトルパターンSP02Aとの類似度が最大となる一つのスペクトルパターンSP03を特定し、取得部10によって取得された電子メロディは当該スペクトルパターンSP03に対応する電子メロディであると特定する。
【0064】
このように本実施の形態に係る電子メロディ特定装置1によれば、周波数解析部14(第1のパターン生成部)は、取得部10によって取得された電子メロディの時系列信号I0を、フレーム(第1区間)単位で周波数解析することにより、フレーム毎の周波数スペクトルX(第1周波数スペクトル)が複数配列されたスペクトルパターンSP01(第1スペクトルパターン)を生成する。また、パターン生成部16(第2のパターン生成部)は、各セグメント(第2区間)に包含される複数のフレームに関する複数の周波数スペクトルXを平均化することにより、セグメント毎の周波数スペクトルY(第2周波数スペクトル)が複数配列されたスペクトルパターンY02A(第2スペクトルパターン)を生成する。そして、類似度算出部17(算出処理部)は、パターン生成部16によって生成されたスペクトルパターンY02Aと、記憶部19に記憶されている各スペクトルパターンSP03(第3スペクトルパターン)との類似度を算出する。これにより、平均化前のスペクトルパターンSP01を用いて類似度を算出する場合と比較して、演算量が削減されるため処理負荷を軽減することができる。また、スペクトルパターンSP03を簡略化できるため、記憶部19に必要な記憶容量を削減することができる。
【0065】
また、本実施の形態に係る電子メロディ特定装置1によれば、類似度算出部17は、スペクトルパターンSP02AとスペクトルパターンSP03とで対応するセグメント毎に類似度を算出することによって得られるN個の類似度の代表値を、スペクトルパターンSP02AとスペクトルパターンSP03との類似度として算出する。従って、フレーム毎に類似度を算出する場合と比較して、演算量が削減されるため処理負荷を軽減することが可能となる。
【0066】
また、本実施の形態に係る電子メロディ特定装置1によれば、類似度算出部17は、対応するセグメント毎に類似度を算出することによって得られるN個の類似度の平均値を、スペクトルパターンSP02AとスペクトルパターンSP03との類似度として算出する。これにより、スペクトルパターンの全体領域における周波数成分の分布に基づいて、類似度を算出することが可能となる。
【0067】
また、本実施の形態に係る電子メロディ特定装置1によれば、類似度算出部17は、対応するセグメント毎に類似度を算出することによって得られるN個の類似度の最大値を、スペクトルパターンSP02とスペクトルパターンSP03との類似度として算出する。これにより、特徴的部分を含む電子メロディに関して、その特徴的部分に対応する周波数スペクトルSP02における周波数成分の分布に基づいて、類似度を算出することが可能となる。
【0068】
また、本実施の形態に係る電子メロディ特定装置1によれば、パターン生成部16は、複数の周波数スペクトルXを平均化して周波数スペクトルYを生成するにあたり、高速フーリエ変換における絶対値化前の複素信号に対して平均化を行う。これにより、周波数スペクトルXに混入したホワイトノイズの影響が周波数スペクトルYでは低減されて信号対雑音比が向上するため、電子メロディの特定精度を向上することが可能となる。
【0069】
また、本実施の形態に係る電子メロディ特定装置1によれば、パターン生成部16は、周波数スペクトルY01~Y06に対してしきい値V1を用いた量子化を行うことによって、周波数スペクトルY01A~Y06Aを生成する。周波数スペクトルY01~Y06を量子化することによってスペクトルパターンSP02を簡略化できるため、演算量を削減することができる。しかも、特定対象が電子メロディであるため、周波数スペクトルY01~Y06を量子化しても、特定精度が低下する影響は小さい。従って、電子メロディの特定精度の低下を抑制しつつ、演算量を削減することが可能となる。
【0070】
また、本実施の形態に係る電子メロディ特定装置1によれば、記憶部19には、周波数スペクトルY01A~Y06Aと同様の平均化及び量子化が行われたスペクトルパターンSP03が記憶されている。量子化によってスペクトルパターンSP03をさらに簡略化できるため、記憶部19に必要な記憶容量をさらに削減することが可能となる。
【0071】
図8は、電子メロディ特定装置1をソフトウェアによって実現するための構成を示す図である。RAM21に読み出されたプログラム50をCPU20が実行することにより、上述した電子メロディ特定装置1の各機能がソフトウェア処理によって実現される。換言すれば、プログラム50は、電子メロディ特定装置1に搭載されるコンピュータを、特定対象である電子メロディの時系列信号I0を取得する取得手段と、取得された時系列信号I0をフレーム単位で周波数解析することによってスペクトルパターンSP01を生成する第1のパターン生成手段と、スペクトルパターンSP01をN個のセグメントに分割し、各セグメントに包含される複数の周波数スペクトルXを平均化することによってスペクトルパターンSP02Aを生成する第2のパターン生成手段と、スペクトルパターンSP03を記憶する記憶手段と、スペクトルパターンSP02AとスペクトルパターンSP03との類似度を算出する類似度算出手段と、類似度算出手段による類似度の算出結果に基づいて、取得手段によって取得された電子メロディを特定する特定処理手段と、として機能させるためのプログラムである。
【0072】
以下、上記実施の形態に係る電子メロディ特定装置1に関する種々の変形例について説明する。以下で説明する変形例は適宜に組み合わせて適用することが可能である。
【0073】
<変形例1(特定精度の向上対策)>
上記実施の形態では、
図4に示したように各セグメントS01~S06にフレームF01~F78を均等配分したが、スペクトルパターンSP02Aにおける周波数成分の分布に基づいて、各セグメントに包含されるフレームの個数を非均等配分しても良い。
【0074】
図9は、均等配分によって生成されるスペクトルパターンSP02Aの一例を示す図である。上記の例によると、フレーム総数は「78」であり、セグメント数は「6」であるため、均等配分した場合の1セグメントあたりのフレーム数は「13」である。
【0075】
パターン生成部16は、バッファ15に格納されているスペクトルパターンSP01を参照することにより、各周波数スペクトルX01~X78においてしきい値V1以上となる周波数成分の個数をカウントする。そして、均等配分したと仮定した場合に各セグメントS01~S06に含まれる周波数成分の個数を、セグメントS01~S06毎に集計する。
図9に示した例では、セグメントS01~S06の順に「2」「6」「6」「2」「4」「6」となる。また、その総数は「26」となる。
【0076】
次にパターン生成部16は、セグメント毎の周波数成分の個数を、全セグメントにおける周波数成分の総数で除算することにより、セグメント毎の周波数成分の割合を算出する。
図9に示した例では、セグメントS01~S06の順に「1/13」「3/13」「3/13」「1/13」「2/13」「3/13」となる。
【0077】
次にパターン生成部16は、「均等配分した場合の1セグメントあたりのフレーム数」の2倍の値から、フレーム総数と上記「セグメント毎の周波数成分の割合」とを乗算した値を減算することにより、非均等配分する場合のセグメント毎のフレーム数を算出する。
図9に示した例では、セグメントS01~S06の順に「20」「8」「8」「20」「14」「8」となる。
【0078】
図10は、非均等配分した場合のフレームF01~F78とセグメントS01~S06との関係を示す図である。
図10に示すように、セグメントS01は20個のフレームF01~F20を包含し、セグメントS02は8個のフレームF21~F28を包含し、セグメントS03は8個のフレームF29~F36を包含し、セグメントS04は20個のフレームF37~F56を包含し、セグメントS05は14個のフレームF57~F70を包含し、セグメントS06は8個のフレームF71~F78を包含している。
【0079】
図11は、均等配分によって生成されるスペクトルパターンSP02Aの他の例を示す図である。周波数スペクトルY01A~Y06Aは、しきい値V1以上となる周波数成分を1個ずつ含んでいる。パターン生成部16が非均等配分機能を有している場合であっても、
図11に示したような均等な周波数成分分布を有する電子メロディが特定対象である場合には、パターン生成部16は均等配分を行うことになる。
【0080】
スペクトルパターンSP03を生成する場合も上記と同様に、仮に均等配分した場合のスペクトルパターンSP02Aにおける周波数成分分布に基づいて、各セグメントに包含されるフレームの個数が非均等に配分される。
【0081】
図12は、記憶部19に記憶されるスペクトルパターンSP03を示す図である。スペクトルパターンSP03は、非均等配分によって生成されたスペクトルパターンSP03を集約する非均等グループG1と、均等配分によって生成されたスペクトルパターンSP03を集約する均等グループG2とに分類されて、記憶部19に記憶される。リファレンスとなる電子メロディが
図9に示したような非均等な周波数成分分布を有する場合には、非均等配分が適用されるため、当該電子メロディに関するスペクトルパターンSP03は非均等グループG1に分類される。一方、リファレンスとなる電子メロディが
図11に示したような均等な周波数成分分布を有する場合には、均等配分が適用されるため、当該電子メロディに関するスペクトルパターンSP03は均等グループG2に分類される。
【0082】
図13は、類似度算出部17及び特定処理部18の処理フローに関する第1の例を示すフローチャートである。
【0083】
まずステップR101において類似度算出部17は、パターン生成部16から入力されたスペクトルパターンSP02Aが非均等配分であるか否かを判定する。
【0084】
非均等配分である場合は、次にステップR102において類似度算出部17は、非均等グループG1を探索することにより、非均等グループG1に属する各スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度を順に算出する。そして、特定処理部18は、非均等グループG1に属する全てのスペクトルパターンSP03のうち、スペクトルパターンSP02Aとの類似度が最大となる一つのスペクトルパターンSP03を選出する。ここでは、スペクトルパターンE1が選出されたものとする。
【0085】
次にステップR103において特定処理部18は、取得部10によって取得された電子メロディはスペクトルパターンE1に対応する電子メロディであると特定する。
【0086】
ステップR101における判定の結果、均等配分である場合は、次にステップR104において類似度算出部17は、均等グループG2を探索することにより、均等グループG2に属する各スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度を順に算出する。そして、特定処理部18は、均等グループG2に属する全てのスペクトルパターンSP03のうち、スペクトルパターンSP02Aとの類似度が最大となる一つのスペクトルパターンSP03を選出する。ここでは、スペクトルパターンE2が選出されたものとする。
【0087】
次にステップR105において特定処理部18は、取得部10によって取得された電子メロディはスペクトルパターンE2に対応する電子メロディであると特定する。
【0088】
図14は、類似度算出部17及び特定処理部18の処理フローに関する第2の例を示すフローチャートである。
【0089】
まずステップR201において類似度算出部17は、パターン生成部16から入力されたスペクトルパターンSP02Aが非均等配分であるか否かを判定する。
【0090】
非均等配分である場合は、次にステップR202において類似度算出部17は、非均等グループG1を探索することにより、非均等グループG1に属する各スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度を順に算出する。そして、特定処理部18は、非均等グループG1に属する全てのスペクトルパターンSP03のうち、スペクトルパターンSP02Aとの類似度が最大となる一つのスペクトルパターンSP03を選出する。ここでは、スペクトルパターンE1が選出されたものとする。
【0091】
次にステップR203において特定処理部18は、スペクトルパターンE1とスペクトルパターンSP02Aとの類似度e1が所定のしきい値V2以上であるか否かを判定する。
【0092】
類似度e1がしきい値V2以上である場合は、次にステップR204において特定処理部18は、取得部10によって取得された電子メロディはスペクトルパターンE1に対応する電子メロディであると特定する。
【0093】
ステップR203における判定の結果、類似度e1がしきい値V2未満である場合は、次にステップR205において類似度算出部17は、均等グループG2を探索することにより、均等グループG2に属する各スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度を順に算出する。そして、特定処理部18は、均等グループG2に属する全てのスペクトルパターンSP03のうち、スペクトルパターンSP02Aとの類似度が最大となる一つのスペクトルパターンSP03を選出する。ここでは、スペクトルパターンE2が選出されたものとする。
【0094】
次にステップR206において特定処理部18は、スペクトルパターンE2とスペクトルパターンSP02Aとの類似度e2が類似度e1を超えるか否かを判定する。
【0095】
類似度e2が類似度e1を超える場合は、次にステップR207において特定処理部18は、取得部10によって取得された電子メロディはスペクトルパターンE2に対応する電子メロディであると特定する。一方、類似度e2が類似度e1以下である場合は、次にステップR208において特定処理部18は、取得部10によって取得された電子メロディはスペクトルパターンE1に対応する電子メロディであると特定する。
【0096】
ステップR201における判定の結果、均等配分である場合は、次にステップR209において類似度算出部17は、均等グループG2を探索することにより、均等グループG2に属する各スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度を順に算出する。そして、特定処理部18は、均等グループG2に属する全てのスペクトルパターンSP03のうち、スペクトルパターンSP02Aとの類似度が最大となる一つのスペクトルパターンSP03を選出する。ここでは、スペクトルパターンE3が選出されたものとする。
【0097】
次にステップR210において特定処理部18は、スペクトルパターンE3とスペクトルパターンSP02Aとの類似度e3が所定のしきい値V2以上であるか否かを判定する。
【0098】
類似度e3がしきい値V2以上である場合は、次にステップR211において特定処理部18は、取得部10によって取得された電子メロディはスペクトルパターンE3に対応する電子メロディであると特定する。
【0099】
ステップR210における判定の結果、類似度e3がしきい値V2未満である場合は、次にステップR212において類似度算出部17は、非均等グループG1を探索することにより、非均等グループG1に属する各スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度を順に算出する。そして、特定処理部18は、非均等グループG1に属する全てのスペクトルパターンSP03のうち、スペクトルパターンSP02Aとの類似度が最大となる一つのスペクトルパターンSP03を選出する。ここでは、スペクトルパターンE4が選出されたものとする。
【0100】
次にステップR213において特定処理部18は、スペクトルパターンE4とスペクトルパターンSP02Aとの類似度e4が類似度e3を超えるか否かを判定する。
【0101】
類似度e4が類似度e3を超える場合は、次にステップR214において特定処理部18は、取得部10によって取得された電子メロディはスペクトルパターンE4に対応する電子メロディであると特定する。一方、類似度e4が類似度e3以下である場合は、次にステップR215において特定処理部18は、取得部10によって取得された電子メロディはスペクトルパターンE3に対応する電子メロディであると特定する。
【0102】
本変形例に係る電子メロディ特定装置1によれば、パターン生成部16は、スペクトルパターンSP02Aにおける周波数成分の分布に基づいて、各セグメントに包含されるフレームの個数を非均等に配分可能である。セグメントに包含されるフレームの個数に応じて解像度を調整できるため、重要な箇所の解像度を上げ、重要でない箇所の解像度を下げるような配分を行うことにより、処理負荷の増大を回避しつつ電子メロディの特定精度を向上することが可能となる。
【0103】
また、本変形例に係る電子メロディ特定装置1によれば、パターン生成部16は、比較的多数の周波数成分を含む周波数スペクトルYに対応するセグメントに対しては比較的少数のフレームを配分し、比較的少数の周波数成分を含む周波数スペクトルYに対応するセグメントに対しては比較的多数のフレームを配分する。比較的多数の周波数成分を含む周波数スペクトルYは、電子メロディを特定するために重要な箇所であるため、そのような周波数スペクトルYに対応するセグメントに対しては比較的少数のフレームを配分することにより、解像度を上げることができ、その結果、電子メロディの特定精度を向上することが可能となる。一方、比較的少数の周波数成分を含む周波数スペクトルYは、電子メロディを特定するために重要でない箇所であるため、そのような周波数スペクトルYに対応するセグメントに対しては比較的多数のフレームを配分することにより、処理負荷の増大を回避することが可能となる。
【0104】
また、本変形例に係る電子メロディ特定装置1によれば、類似度算出部17は、各セグメントに包含されるフレームの個数が非均等に配分されているスペクトルパターンSP02Aに関しては、非均等グループG1(第1グループ)のスペクトルパターンSP03との類似度を算出し、一方、各セグメントに包含されるフレームの個数が均等に配分されているスペクトルパターンSP02Aに関しては、均等グループG2(第2グループ)のスペクトルパターンSP03との類似度を算出する。このように、スペクトルパターンSP03を予め非均等グループG1と均等グループG2とに分類しておき、スペクトルパターンSP02Aの種別に応じて比較対象のスペクトルパターンSP03を選別することにより、電子メロディの特定精度の低下を抑制しつつ、処理負荷の軽減及び所要時間の短縮化を図ることが可能となる。
【0105】
また、本変形例に係る電子メロディ特定装置1によれば、類似度算出部17は、各セグメントに包含されるフレームの個数が非均等に配分されているスペクトルパターンSP02Aに関して、非均等グループG1のスペクトルパターンSP03との類似度がしきい値V2未満である場合には、さらに、当該スペクトルパターンSP02Aと均等グループG2のスペクトルパターンSP03との類似度を算出する。また、類似度算出部17は、各セグメントに包含されるフレームの個数が均等に配分されているスペクトルパターンSP02Aに関して、均等グループG2のスペクトルパターンSP03との類似度がしきい値V2未満である場合には、さらに、当該スペクトルパターンSP02Aと非均等グループG1のスペクトルパターンSP03との類似度を算出する。このように、非均等グループG1及び均等グループG2の一方のグループのスペクトルパターンSP03との類似度がしきい値V2未満である場合には、他方のグループのスペクトルパターンSP03との類似度を算出することにより、類似度がしきい値V2以上のスペクトルパターンSP03が発見される可能性があるため、電子メロディの特定精度を向上することが可能となる。
【0106】
なお、以上の説明では計算量の増大を回避すべくセグメント数が固定値であることを前提として、各セグメントに包含されるフレーム数を配分する例について述べたが、計算量の増大が許容できる場合には、重要箇所に対応するセグメントを複数のセグメントに分割する(セグメント数は増える)ことによって、電子メロディの特定精度を向上することができる。
【0107】
<変形例2(位置ずれ対策1)>
ユーザによる手動の録音操作によって取得部10が電子メロディの時系列信号I0を取得する場合には、録音操作の開始タイミング及び終了タイミングのずれに起因して、スペクトルパターンSP02AとスペクトルパターンSP03とで対応セグメントの位置ずれが生じ得る。以下の変形例2~7では、セグメントの位置ずれが生じている場合であっても、その位置ずれに起因する影響を低減するための対策について説明する。
【0108】
図15は、対応セグメントの位置ずれ対策についての第1の例を説明するための図である。まず類似度算出部17は、スペクトルパターンSP01に基づいて生成されたスペクトルパターンSP02Aを基準スペクトルパターンとして、上記実施の形態と同様に、スペクトルパターンSP03と基準スペクトルパターンSP02Aとの類似度を算出する。
【0109】
次に類似度算出部17は、基準スペクトルパターンSP02Aを1セグメントだけ前方に循環シフト(前方に溢れたセグメントは末尾に循環)することにより、擬似スペクトルパターンSP02B1を規定する。そして、スペクトルパターンSP03と擬似スペクトルパターンSP02B1との類似度を算出する。
【0110】
次に類似度算出部17は、擬似スペクトルパターンSP02B1を1セグメントだけ前方に循環シフトすることにより、擬似スペクトルパターンSP02B2を規定する。そして、スペクトルパターンSP03と擬似スペクトルパターンSP02B2との類似度を算出する。
【0111】
以降同様に類似度算出部17は、1セグメントずつ前方に循環シフトすることにより、擬似スペクトルパターンSP02B3~SP02B5を順に規定し、スペクトルパターンSP03と擬似スペクトルパターンSP02B3~SP02B5との類似度を順に算出する。
【0112】
そして、このようにして算出した合計N個(この例では6個)の類似度のうちの最大の類似度を、スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度として決定する。
【0113】
本変形例に係る電子メロディ特定装置1によれば、類似度算出部17は、基準スペクトルパターンSP02Aと、基準スペクトルパターンSP02Aに含まれるN個のセグメントS01~S06の配列順序を循環シフトさせることによって得られる(N-1)個の擬似スペクトルパターンSP02B1~SP02B5と、の各々に関して、スペクトルパターンSP03との類似度を算出する。基準スペクトルパターンSP02Aに加えて、全区間に亘って1セグメントずつ循環シフトさせた(N-1)個の擬似スペクトルパターンSP02B1~SP02B5が規定されるため、セグメントの位置ずれが大きい場合であっても、スペクトルパターンSP02AとスペクトルパターンSP03との類似度を適切に算出することが可能となる。
【0114】
<変形例3(位置ずれ対策2)>
図16は、対応セグメントの位置ずれ対策についての第2の例を説明するための図である。まず類似度算出部17は、スペクトルパターンSP01に基づいて生成されたスペクトルパターンSP02Aを基準スペクトルパターンとして、上記実施の形態と同様に、スペクトルパターンSP03と基準スペクトルパターンSP02Aとの類似度を算出する。
【0115】
次に類似度算出部17は、基準スペクトルパターンSP02Aを1セグメントだけ前方に循環シフトすることにより、擬似スペクトルパターンSP02C1を規定する。そして、スペクトルパターンSP03と擬似スペクトルパターンSP02C1との類似度を算出する。
【0116】
次に類似度算出部17は、基準スペクトルパターンSP02Aを1セグメントだけ後方に循環シフトすることにより、擬似スペクトルパターンSP02C2を規定する。そして、スペクトルパターンSP03と擬似スペクトルパターンSP02C2との類似度を算出する。
【0117】
そして、このようにして算出した合計3個の類似度のうちの最大の類似度を、スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度として決定する。
【0118】
本変形例に係る電子メロディ特定装置1によれば、類似度算出部17は、基準スペクトルパターンSP02Aと、基準スペクトルパターンSP02Aに含まれるN個のセグメントS01~S06の配列順序を前後方向に1セグメントずつ循環シフトさせることによって得られる2個の擬似スペクトルパターンSP02C1,SP02C2と、の各々に関して、スペクトルパターンSP03との類似度を算出する。基準スペクトルパターンSP02Aに加えて、前後方向に1セグメントずつ循環シフトさせた2個の擬似スペクトルパターンSP02C1,SP02C2が規定されるため、全区間の循環シフト(
図15)と比較して処理負荷の増大を抑制しつつ、スペクトルパターンSP02AとスペクトルパターンSP03との類似度を適切に算出することが可能となる。
【0119】
<変形例4(位置ずれ対策3)>
図17は、対応セグメントの位置ずれ対策についての第3の例を説明するための図である。まず類似度算出部17は、スペクトルパターンSP01に基づいて生成されたスペクトルパターンSP02Aに含まれるN個のセグメントS01~S06のうち、時系列順で先頭部分及び末尾部分のセグメントS01,S06を除外することによって、(N-2)個のセグメントS02~S05を含む擬似スペクトルパターンを規定する。
【0120】
次に類似度算出部17は、当該擬似スペクトルパターンをスペクトルパターンSP03の先頭から順に1セグメントずつ後方シフトさせることによって得られる3個の擬似スペクトルパターンSP02D1~SP02D3の各々に関して、スペクトルパターンSP03との類似度を順に算出する。
【0121】
そして、このようにして算出した合計3個の類似度のうちの最大の類似度を、スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度として決定する。
【0122】
本変形例に係る電子メロディ特定装置1によれば、類似度算出部17は、スペクトルパターンSP02Aに含まれるN個のセグメントS01~S06のうち時系列順で先頭部分及び末尾部分のセグメントS01,S06を除外することによって、(N-2)個のセグメントS02~S05を含む擬似スペクトルパターンを規定する。そして、当該擬似スペクトルパターンをスペクトルパターンSP03の先頭から順に1セグメントずつ後方シフトさせることによって得られる3個の擬似スペクトルパターンSP02D1~SP02D3の各々に関して、スペクトルパターンSP03との類似度を算出する。スペクトルパターンSP02Aに含まれるN個のセグメントS01~S06のうち時系列順で先頭部分及び末尾部分のセグメントS01,S06を除外することによって擬似スペクトルパターンが規定されるため、全区間の循環シフト(
図15)と比較して処理負荷の増大を抑制しつつ、ユーザによる録音操作のタイミングずれが最も反映されやすい先頭部分及び末尾部分のセグメントS01,S06の影響を排除することが可能となる。
【0123】
<変形例5(位置ずれ対策4)>
図18は、対応セグメントの位置ずれ対策についての第4の例を説明するための図である。まず類似度算出部17は、スペクトルパターンSP01に基づいて生成されたスペクトルパターンSP02Aを基準スペクトルパターンとして、上記実施の形態と同様に、スペクトルパターンSP03と基準スペクトルパターンSP02Aとの類似度を算出する。
【0124】
次に類似度算出部17は、基準スペクトルパターンSP02Aを1セグメントだけ前方にシフトアウト(前方に溢れたセグメントは削除)することにより、擬似スペクトルパターンSP02E1を規定する。そして、スペクトルパターンSP03と擬似スペクトルパターンSP02E1との類似度を算出する。
【0125】
次に類似度算出部17は、擬似スペクトルパターンSP02E1を1セグメントだけ前方にシフトアウトすることにより、擬似スペクトルパターンSP02E2を規定する。そして、スペクトルパターンSP03と擬似スペクトルパターンSP02E2との類似度を算出する。
【0126】
以降同様に類似度算出部17は、1セグメントずつ前方にシフトアウトすることにより、擬似スペクトルパターンSP02E3~SP02E5を順に規定し、スペクトルパターンSP03と擬似スペクトルパターンSP02E3~SP02E5との類似度を順に算出する。
【0127】
次に類似度算出部17は、基準スペクトルパターンSP02Aを1セグメントだけ後方にシフトアウト(後方に溢れたセグメントは削除)することにより、擬似スペクトルパターンSP02E6を規定する。そして、スペクトルパターンSP03と擬似スペクトルパターンSP02E6との類似度を算出する。
【0128】
次に類似度算出部17は、擬似スペクトルパターンSP02E6を1セグメントだけ後方にシフトアウトすることにより、擬似スペクトルパターンSP02E7を規定する。そして、スペクトルパターンSP03と擬似スペクトルパターンSP02E7との類似度を算出する。
【0129】
以降同様に類似度算出部17は、1セグメントずつ後方にシフトアウトすることにより、擬似スペクトルパターンSP02E8~SP02E10を順に規定し、スペクトルパターンSP03と擬似スペクトルパターンSP02E8~SP02E10との類似度を順に算出する。
【0130】
そして、このようにして算出した合計2N-1個(この例では11個)の類似度のうちの最大の類似度を、スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度として決定する。
【0131】
<変形例6(位置ずれ対策5)>
図19は、対応セグメントの位置ずれ対策についての第5の例を説明するための図である。上記実施の形態で説明したように、類似度算出部17は、スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度を算出するために、まず、スペクトルパターンSP03,SP02A間で対応するセグメントS01~S06毎に類似度K01~K06を算出する。次に、セグメントS01~S06毎に求めたN個の類似度K01~K06の代表値を、スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度として算出する。
【0132】
その際、本変形例に係る類似度算出部17は、N個のセグメントS01~S06のうち、時系列順で先頭部分及び末尾部分のセグメントS01,S06に関しては、算出した類似度K01,K06に1未満の重み係数W(例えば0.5)をそれぞれ乗算する。従って、代表値として平均値を用いる場合には、スペクトルパターンSP03とスペクトルパターンSP02Aとの類似度は、(W×K01+K02+K03+K04+K05+W×K06)/6となる。
【0133】
本変形例に係る電子メロディ特定装置1によれば、類似度算出部17は、スペクトルパターンSP02Aに含まれるN個のセグメントS01~S06のうち、時系列順で先頭部分及び末尾部分のセグメントS01,S06に関しては、算出した類似度K01,K06に1未満の重み係数Wを乗算する。従って、ユーザによる録音操作のタイミングずれが最も反映されやすい先頭部分及び末尾部分のセグメントS01,S06の影響を低減することが可能となる。
【0134】
<変形例7(位置ずれ対策6)>
図20は、対応セグメントの位置ずれ対策についての第6の例を説明するための図である。上記実施の形態では、
図4に示したように各セグメントS01~S06にフレームF01~F78を均等配分したが、本変形例に係るパターン生成部16は、スペクトルパターンSP02Aに含まれるN個のセグメントS01~S06のうち、時系列順で先頭部分及び末尾部分のセグメントS01,S06に関しては、中央部分のセグメントS02~S05に配分されるフレームの個数よりも少数のフレームを配分する。
図20に示した例では、先頭部分及び末尾部分のセグメントS01,S06に関してはそれぞれ9個のフレームが配分され、中央部分のセグメントS02~S05に関してはそれぞれ15個のフレームが配分されている。
【0135】
本変形例に係る電子メロディ特定装置1によれば、パターン生成部16は、スペクトルパターンSP02Aに含まれるN個のセグメントS01~S06のうち、時系列順で先頭部分及び末尾部分のセグメントS01,S06に関しては、中央部分のセグメントS02~S05に配分されるフレームの個数よりも少数のフレームを配分する。従って、ユーザによる録音操作のタイミングずれが最も反映されやすい先頭部分及び末尾部分のセグメントの影響を低減することが可能となる。
【符号の説明】
【0136】
1 電子メロディ特定装置
10 取得部
14 周波数解析部
16 パターン生成部
17 類似度算出部
18 特定処理部
19 記憶部
50 プログラム