(57)【要約】【課題】楽音の継続性を正確に判定すること。また、その判定結果を用いて、分離音の精度を向上させること。【解決手段】本発明の音声処理装置１は、対象楽音の各フレームについて、基音および各倍音の振幅値とクリーン度を取得する振幅値・クリーン度取得部２１と、対象楽音の基音および各倍音のうちクリーン度が最も高い１の音である基準音と、他の音との振幅値の比率である倍音振幅比率を算出する倍音振幅比率算出部２４と、倍音振幅比率に基づき、近接するフレーム間における対象楽音の継続性を判別する継続性判別部２５と、を備えたことを特徴とする。【選択図】図２
2015179119.tif 000002
【特許請求の範囲】
【請求項１】
対象楽音の各フレームについて、基音および各倍音の振幅値を取得する振幅値取得部と、
前記対象楽音の基音および各倍音のうち所定の１の音である基準音と、他の音との振幅値の比率である倍音振幅比率を算出する倍音振幅比率算出部と、
前記倍音振幅比率に基づき、近接するフレーム間における前記対象楽音の継続性を判別する継続性判別部と、を備えたことを特徴とする音声処理装置。
【請求項２】
前記対象楽音の各フレームについて、基音および各倍音の周波数成分における単独性を示すクリーン度を取得するクリーン度取得部と、
前記クリーン度に基づいて、前記基準音を決定する基準音決定部と、をさらに備えたことを特徴とする請求項１に記載の音声処理装置。
【請求項３】
前記基準音決定部は、前記対象楽音の基音および各倍音のうち、前記クリーン度が最も高い音を、前記基準音として決定することを特徴とする請求項２に記載の音声処理装置。
【請求項４】
任意の音を基準として、所定フレーム以内且つ所定周波数内に、前記任意の音以外の他の音が存在するか否かを判別し、存在すると判定した場合に、当該他の音を継続音候補として抽出する継続音候補抽出部をさらに備え、
前記継続性判別部は、前記継続音候補抽出部により抽出された前記継続音候補を対象として、前記任意の音との継続性を判別することを特徴とする請求項２または３に記載の音声処理装置。
【請求項５】
前記継続性判別部は、前記任意の音の倍音振幅比率と、前記継続音候補抽出部により抽出された前記継続音候補の倍音振幅比率と、の類似度である倍音振幅類似度が、所定の閾値以上である場合、継続性ありと判定することを特徴とする請求項４に記載の音声処理装置。
【請求項６】
楽曲データの周波数変換を行う周波数変換部と、
前記周波数変換により得られたスペクトログラムデータから、前記対象楽音の基音および各倍音の前記振幅値および前記クリーン度を検出する検出部と、をさらに備え、
前記振幅値取得部および前記クリーン度取得部は、前記検出部の検出結果を取得することを特徴とする請求項２ないし５のいずれか１項に記載の音声処理装置。
【請求項７】
前記楽曲データに含まれる複数の楽音の前記クリーン度に基づいて、前記検出部により検出する前記倍音の次数を決定することを特徴とする請求項６に記載の音声処理装置。
【請求項８】
前記継続性判別部の判別結果に基づいて、前記対象楽音の発音区間を確定する楽音データ確定部と、
前記楽曲データから、前記楽音データ確定部により確定された前記楽音データを分離する楽音データ分離部と、をさらに備えたことを特徴とする請求項６または７に記載の音声処理装置。
【請求項９】
対象楽音の各フレームについて、基音および各倍音の振幅値を取得する振幅値取得ステップと、
前記対象楽音の基音および各倍音のうち所定の１の音である基準音と、他の音との振幅値の比率である倍音振幅比率を算出する倍音振幅比率算出ステップと、
前記倍音振幅比率に基づき、近接するフレーム間における前記対象楽音の継続性を判別する継続性判別ステップと、を実行することを特徴とする音声処理装置の解析方法。
【請求項１０】
コンピューターに、請求項９に記載の音声処理装置の解析方法における各ステップを実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、倍音振幅比率を利用して対象楽音を分離する音声処理装置、音声処理装置の解析方法およびプログラムに関する。
【背景技術】
【０００２】
従来、倍音振幅比率を利用した技術として、例えば特許文献１が知られている。特許文献１では、倍音振幅比率が同一楽器においてほぼ一致することを利用して、電子楽器の出力音を生成している。また、特許文献１では、倍音振幅比率が楽音の発音区間のうち、一定区間で一定であると看做して処理を行っている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開昭６１−８８２９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、複数の楽音が同時に鳴っている音源から対象楽音を分離する場合、対象楽音の発音区間（発音開始時刻および発音終了時刻）を特定することは困難である。そこで、特許文献１の技術を利用し、倍音振幅比率から楽器種別を判別して、フレーム間における同一楽器音の継続性を判定し、発音区間を特定することが考えられる。ところが、特許文献１の技術を利用して継続性を判定すると、楽器の音色が時間的に変化する場合に適応できないといった問題がある。
【０００５】
本発明は、上記の問題点に鑑み、楽音の継続性を正確に判定することを第１の課題とする。また、その判定結果を用いて、分離音の精度を向上させることを第２の課題とする。
【課題を解決するための手段】
【０００６】
本発明の音声処理装置は、対象楽音の各フレームについて、基音および各倍音の振幅値を取得する振幅値取得部と、対象楽音の基音および各倍音のうち所定の１の音である基準音と、他の音との振幅値の比率である倍音振幅比率を算出する倍音振幅比率算出部と、倍音振幅比率に基づき、近接するフレーム間における対象楽音の継続性を判別する継続性判別部と、を備えたことを特徴とする。
【０００７】
上記の音声処理装置において、対象楽音の各フレームについて、基音および各倍音の周波数成分における単独性を示すクリーン度を取得するクリーン度取得部と、クリーン度に基づいて、基準音を決定する基準音決定部と、をさらに備えたことを特徴とする。
【０００８】
上記の音声処理装置において、基準音決定部は、対象楽音の基音および各倍音のうち、クリーン度が最も高い音を、基準音として決定することを特徴とする。
【０００９】
上記の音声処理装置において、任意の音を基準として、所定フレーム以内且つ所定周波数内に、任意の音以外の他の音が存在するか否かを判別し、存在すると判定した場合に、当該他の音を継続音候補として抽出する継続音候補抽出部をさらに備え、継続性判別部は、継続音候補抽出部により抽出された継続音候補を対象として、任意の音との継続性を判別することを特徴とする。
【００１０】
上記の音声処理装置において、継続性判別部は、任意の音の倍音振幅比率と、継続音候補抽出部により抽出された継続音候補の倍音振幅比率と、の類似度である倍音振幅類似度が、所定の閾値以上である場合、継続性ありと判定することを特徴とする。
【００１１】
上記の音声処理装置において、楽曲データの周波数変換を行う周波数変換部と、周波数変換により得られたスペクトログラムデータから、対象楽音の基音および各倍音の振幅値およびクリーン度を検出する検出部と、をさらに備え、振幅値取得部およびクリーン度取得部は、検出部の検出結果を取得することを特徴とする。
【００１２】
上記の音声処理装置において、楽曲データに含まれる複数の楽音のクリーン度に基づいて、検出部により検出する倍音の次数を決定することを特徴とする。
【００１３】
上記の音声処理装置において、継続性判別部の判別結果に基づいて、対象楽音の発音区間を確定する楽音データ確定部と、楽曲データから、楽音データ確定部により確定された楽音データを分離する楽音データ分離部と、をさらに備えたことを特徴とする。
【００１４】
本発明の音声処理装置の解析方法は、対象楽音の各フレームについて、基音および各倍音の振幅値を取得する振幅値取得ステップと、対象楽音の基音および各倍音のうち所定の１の音である基準音と、他の音との振幅値の比率である倍音振幅比率を算出する倍音振幅比率算出ステップと、倍音振幅比率に基づき、近接するフレーム間における対象楽音の継続性を判別する継続性判別ステップと、を実行することを特徴とする。
【００１５】
本発明のプログラムは、コンピューターに、上記の音声処理装置の解析方法における各ステップを実行させることを特徴とする。
【図面の簡単な説明】
【００１６】
【図１】音声処理装置の機能構成を示すブロック図である。
【図２】楽音分離処理部の詳細ブロック図である。
【図３】継続音候補抽出部の説明図である。
【図４】継続音判別部の説明図である。
【図５】音声処理装置による楽音分離処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、本発明の一実施形態に係る音声処理装置、音声処理装置の解析方法およびプログラムについて、添付図面を参照しながら詳細に説明する。図１は、本発明の音声処理装置１の機能構成を示すブロック図である。音声処理装置１は、主な機能構成として、周波数変換部１１、ピッチ検出部１２（請求項における「検出部」に相当）、楽音分離処理部１３および周波数逆変換部１４を備えている。
【００１８】
周波数変換部１１は、ＷＡＶファイル等の楽曲データ（楽曲全体の波形データ）を取得し、ＦＦＴ（Fast  Fourier  Transform）処理を行う。ＦＦＴ処理では、取得した楽曲データを、スペクトログラムデータに変換する。つまり、時間領域の音を、周波数領域に変換する。
【００１９】
ピッチ検出部１２は、周波数変換部１１により変換されたスペクトログラムデータを、ＦＦＴフレーム（以下、単に「フレーム」と称する）ごとに解析し、各フレームに含まれる楽音のピッチ検出を行う。ここでは、検出された楽音ごとの、各倍音周波数成分における振幅値とクリーン度を示す「ピッチ検出出力データ」を、フレーム順（昇順または降順）且つピッチ順（昇順または降順）にリスト化した「ピッチ検出出力データ群」を生成する。
【００２０】
ここで、「クリーン度」とは、各倍音のスペクトルピークにおける単独性（音の非重複度合い）を示す指標である。クリーン度が大きいほど、他の楽音の影響を受けていないことを意味する。また、「ピッチ検出出力データ群」には、１倍音（基音）から所定の整数次（例えば、３０次）倍音までの「ピッチ検出出力データ（以下、単に「データ」とも称する）」が含まれる。また、本実施形態において「楽音」とは、調波音構造を持つ音（基音に対して倍音構造を持つ音）を指し、ベース音などの楽器音の他、ボーカル音も含まれる。
【００２１】
楽音分離処理部１３は、ピッチ検出部１２から出力された「ピッチ検出出力データ群」を用いて、楽音の継続性を判別し、継続している楽音の集合体となる楽音データを生成（確定）・分離する。楽音分離処理部１３では、任意の音（データ）を基準として、次フレーム以降から継続音候補となるデータを検索し、そのデータが継続音であるか否かを判別する。そして、継続音であると判定した場合は、そのデータを楽音データの一部とする。次に、そのデータを基準として次フレーム以降から継続音を検索・判定する。このような工程を繰り返し、楽音データを更新していく。なお、「楽音データ」には、発音開始時刻（先頭フレーム）、発音終了時刻（最終フレーム）、各フレームにおける倍音周波数（基音）の振幅値およびクリーン度が含まれる。
【００２２】
周波数逆変換部１４は、楽音分離処理部１３により生成・分離された個々の楽音データに対し、ＩＦＦＴ処理（逆ＦＦＴ処理）を行う。ＩＦＦＴ処理では、楽音データを、時間領域の音（波形データ）に変換する。以上の流れにより、取得した楽曲データから複数の楽音を分離する（複数の分離音を生成する）。
【００２３】
図２は、楽音分離処理部１３の詳細ブロック図である。同図に示すように、楽音分離処理部１３は、振幅値・クリーン度取得部２１、継続音候補抽出部２２、基準音決定部２３、倍音振幅比率算出部２４、継続性判別部２５、楽音データ確定部２６および楽音データ分離部２７を含む。
【００２４】
振幅値・クリーン度取得部２１は、ピッチ検出部１２により検出されたピッチ検出出力データから、分離対象となる対象楽音の各フレームにおける各倍音周波数成分（基音および２次〜３０次倍音）の振幅値と、単独性を示すクリーン度を取得する。
【００２５】
継続音候補抽出部２２は、任意の音（データ）を基準として、当該任意の音の次フレーム以降における所定フレーム以内且つ所定周波数内に、当該任意の音以外の他の音が存在するか否かを判別し、存在すると判定した場合に、当該他の音を継続音候補として抽出する。
【００２６】
図３は、継続音候補抽出部２２の説明図である。同図において、符号Ｐ１〜Ｐ４は、各倍音のスペクトルピークを示している。また、符号３１は、継続音と判定されたデータの集合体、すなわち最終的に分離される楽音データに含めるべきデータ群を示している。
【００２７】
継続音候補抽出部２２は、例えば、符号Ｐ２に示すデータ（ｉフレーム）を基準として継続音候補を抽出する場合、当該データの次フレーム（ｉ＋１フレーム）以降のフレームであって当該データの所定フレーム以内且つ所定周波数内に存在する他のデータを継続音候補として抽出する。同図では、符号Ｐ３と符号Ｐ４が継続音候補として抽出された例を示している。このように、複数の継続音候補が抽出された場合、後述する楽音データ確定部２６により、１のデータが継続音として決定される。
【００２８】
基準音決定部２３は、後述する倍音振幅比率算出部２４により倍音振幅比率を算出する際の基準音を決定する。本実施形態では、対象楽音の整数次倍音（基音を含む）のうち、クリーン度が最も高い音を基準音として決定する。つまり、任意の楽音について任意のフレームに３０個の倍音が存在する場合、その３０個の倍音のうち最もクリーン度が高い倍音を基準音として決定する。
【００２９】
倍音振幅比率算出部２４は、対象楽音の任意のフレームにおいて、基準音決定部２３により決定された基準音に対する、他の２９個の倍音の振幅値の比である倍音振幅比率を算出する。
【００３０】
継続性判別部２５は、倍音振幅比率算出部２４により算出された倍音振幅比率に基づき、近接するフレーム間における対象楽音の継続性を判別する。具体的には、図４に示す計算式により、倍音振幅類似度を算出し、その算出結果が所定の閾値以上である場合、継続性ありと判定する。
【００３１】
ここで、図４を参照し、倍音振幅類似度の算出方法について説明する。倍音振幅類似度の算出は、同図（ｂ），（ｃ），（ｄ）の順に行う。また、同図（ａ）は、同図（ｂ），（ｃ），（ｄ）に示す計算式に用いられるパラメータの定義を示している。ここでは、所定の整数次倍音（例えば、３０次）までの倍音振幅値とクリーン度を用いて、倍音振幅比率Ｂａに対する倍音振幅比率Ｂｂの倍音振幅類似度を算出する工程を示している。
【００３２】
同図（ｂ）に示すように、まず、倍音振幅比率Ｂａ、ＢｂをＣｍax（Ｂａの倍音のクリーン度で最も大きい値）で正規化し、正規化後の倍音振幅比率Ｂａ、ＢｂをＢａ´、Ｂｂ´とすると、Ｂａ´、Ｂｂ´の要素ｂａｋ´、ｂｂｋ´は、ｂａｋ／Ｃｍax、ｂｂｋ／Ｃｍaxで表される。
【００３３】
続いて、同図（ｃ）に示すように、評価関数「板倉‐斉藤距離（最尤スペクトル距離）」を用いて、正規化後の倍音振幅比率Ｂａ´、Ｂｂ´の倍音振幅類似度を算出する。そして、同図（ｄ）に示すように、倍音振幅類似度Ｄ~が所定の閾値（倍音振幅類似度閾値）以上である場合、倍音振幅比率Ｂａの音と、倍音振幅比率Ｂｂの音は継続していると判定する。
【００３４】
図２の説明に戻る。楽音データ確定部２６は、継続性判別部２５により継続性ありと判定された音を、楽音データの先頭フレームからフレーム昇順に繋げていくことにより、楽音データを確定する（分離対象となる楽音データを生成する）。つまり、楽音データ確定部２６により、分離対象となる対象楽音の発音区間を確定する。
【００３５】
なお、楽音データ確定部２６は、継続音候補抽出部２２により複数の継続音候補が抽出された場合、継続性判別部２５により継続性ありと判定された音のうち、最も倍音振幅類似度の高い音を継続音として決定し、当該継続音を楽音データの一部として接続する。つまり、図３に示すように、符号Ｐ３と符号Ｐ４の音が継続音候補として抽出された場合、符号Ｐ２の音との倍音振幅類似度が高い方（同図の例では、符号Ｐ４）を符号Ｐ２の音と接続する。一方、倍音振幅類似度が低い方（同図の例では、符号Ｐ３）については、別の楽音データとして継続性を判定する。
【００３６】
楽音データ分離部２７は、楽音データ確定部２６により確定された楽音データを、「ピッチ検出出力データ群」から分離（削除）する。分離後、音声処理装置１は、「ピッチ検出出力データ群」から、新たな対象楽音の先頭データを検出し、楽音分離処理を繰り返す（図２の符号２１〜２７の各部による一連の処理を、「ピッチ検出出力データ群」内のデータがなくなるまで繰り返す）。
【００３７】
次に、図５のフローチャートを参照し、音声処理装置１による楽音分離処理の流れを説明する。音声処理装置１は、ピッチ検出部（図１のＳ１２）の検出結果である「ピッチ検出出力データ群」を取得し、フレーム昇順且つピッチ昇順にソートする（Ｓ０１）。なお、取得した「ピッチ検出出力データ群」が既にソート済みの場合、Ｓ０１は不要である。
【００３８】
その後、音声処理装置１は、リスト（「ピッチ検出出力データ群」）内のデータが「０」ではないかを判別し（Ｓ０２）、「０」ではない場合は（Ｓ０２：Ｙｅｓ）、Ｓ０２〜Ｓ１０を繰り返す。また、「０」の場合は（Ｓ０２：Ｎｏ）、Ｓ０３〜Ｓ１０を省略し、楽音分離処理を完了する（Ｓ１１）。
【００３９】
Ｓ０２にて、リスト内のデータが「０」ではないと判定された場合は、続いて楽音データの先頭データを決定する（Ｓ０３）。その後、リスト（「ピッチ検出出力データ群」）の次データを検出し（Ｓ０４）、次データが存在するか否かを判別する（Ｓ０５）。次データが存在する場合は（Ｓ０５：Ｙｅｓ）、Ｓ０４〜Ｓ０８を繰り返す。また、次データが存在しない場合は（Ｓ０５：Ｎｏ）、Ｓ０６〜Ｓ０８を省略し、Ｓ０９に進む。
【００４０】
Ｓ０５にて、次データが存在すると判定された場合は、続いて継続音候補が存在するか否かを判別する（Ｓ０６）。継続音候補が存在しない場合は（Ｓ０６：Ｎｏ）、Ｓ０７，Ｓ０８を省略する。また、継続音候補が存在する場合は（Ｓ０６：Ｙｅｓ）、倍音振幅類似度が倍音振幅類似度閾値以上のデータが存在するか否かを判別する（Ｓ０７）。
【００４１】
ここで、倍音振幅類似度閾値以上のデータが存在しない場合は（Ｓ０７：Ｎｏ）、Ｓ０８を省略する。また、倍音振幅類似度閾値以上のデータが存在する場合は（Ｓ０７：Ｙｅｓ）、そのデータを楽音データの一部に追加し、楽音データを更新する（Ｓ０８）。なお、Ｓ０７にて、倍音振幅類似度閾値以上のデータが複数存在すると判定された場合は、Ｓ０８にて、最も倍音振幅類似度の高いデータを選出して楽音データの一部に追加し、楽音データを更新する。
【００４２】
その後（Ｓ０８またはＳ０２：Ｙｅｓ）、音声処理装置１は、楽音データを確定し（Ｓ０９）、確定した楽音データを、リスト（「ピッチ検出出力データ群」）から分離する（Ｓ１０）。
【００４３】
以上説明したとおり、本実施形態によれば、２つの音の倍音振幅比率の類似度である倍音振幅類似度に基づいて継続性を判定するため、楽器の音色が時間的に変化する場合でも、正確に判定を行うことができる。また、倍音振幅比率を算出するための基準音をクリーン度に基づいて決定するため（最もクリーンな成分で倍音振幅比率を正規化しているため）、判定精度をさらに向上させることができる。
【００４４】
また、本実施形態では、倍音振幅類似度を判定する前工程として、任意の音の所定フレーム以内且つ所定周波数内に存在する音を継続音候補として抽出するため、継続音の誤判定を防止し、倍音振幅類似度を算出するための無駄な演算処理を減らすことができる。さらに、音の継続性を正確に判定した結果を用いて、楽音分離処理を行うため、分離音の精度を向上させることができる。
【００４５】
なお、以下の変形例を採用可能である。
上記の実施形態では、「ピッチ検出出力データ群」に含まれる倍音の数を固定値（例えば、３０次）としたが、楽曲データに応じて可変しても良い。例えば、楽曲データに含まれる複数の楽音のクリーン度の平均値や中央値等に基づいて、ピッチ検出部１２により検出する倍音の次数を可変しても良い。このとき、クリーン度が高い場合は、クリーン度低い場合よりも検出する倍音の次数を多くすることが好ましい。この構成によれば、楽曲に応じて、より正確に継続性の判定を行うことができる。
【００４６】
また、上記の実施形態では、楽音データの先頭データを決定し、先頭データが属するフレームより後から継続性ありと判定された音を順に繋げていくことにより楽音データを確定したが（図５のＳ０３〜Ｓ０９参照）、逆に楽音データの最終データを決定し、最終データが属するフレームより前のフレームから継続性ありと判定された音を順に繋げていくことにより楽音データを確定しても良い。
【００４７】
また、上記の実施形態に示した音声処理装置１における各部および各機能をプログラム（アプリケーション）として提供することが可能である。また、そのプログラムを各種記録媒体（ＣＤ−ＲＯＭ、フラッシュメモリ等）に格納して提供することも可能である。すなわち、コンピューターを、音声処理装置１の各部として機能させるためのプログラム、およびそれを記録した記録媒体も、本発明の権利範囲に含まれる。
【００４８】
また、音声処理装置１の各部を、アプリケーションソフトウェアや、ＤＪ機器等の音響機器に適用しても良い。例えば、音声処理装置１で分離された楽音データを利用し、特定の楽音を音色判定によって選定することにより、楽音分離（抽出）精度の高いアプリケーションを実現しても良い。また、音声処理装置１で分離された楽音データをＭＩＤＩ（登録商標）化してＭＩＤＩ情報を生成しても良い。さらに、音声処理装置１で分離された楽音を利用して加工（リミックス等）や、エフェクト生成を行っても良い。その他、音声処理装置１を、ネットワーク上のサーバー（クラウドコンピューティング）で実現するなど、本発明の要旨を逸脱しない範囲で適宜変更が可能である。
【符号の説明】
【００４９】
１：音声処理装置  １１：周波数変換部  １２：ピッチ検出部  １３：楽音分離処理部  １４：周波数逆変換部  ２１：クリーン度取得部  ２２：図継続音候補抽出部  ２２：継続音候補抽出部  ２３：基準音決定部  ２４：倍音振幅比率算出部  ２５：継続性判別部  ２６：楽音データ確定部  ２７：楽音データ分離部
【図１】
2015179119.tif 000003
【図２】
2015179119.tif 000004
【図３】
2015179119.tif 000005
【図４】
2015179119.tif 000006
【図５】
2015179119.tif 000007