(57)【特許請求の範囲】
【請求項１】
音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析手段と、
前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出手段と、
前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に前記ピーク要素の個数を計数し、この計数結果が第１の所定数以上である前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出手段と、
前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定数以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出手段と
を備えたことを特徴とする音響信号分析装置。
【請求項２】
音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析手段と、
前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出手段と、
前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出手段と、
前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出手段と
を備えたことを特徴とする音響信号分析装置。
【請求項３】
音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析手段と、
前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出手段と、
前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出すると共に、前記ピーク要素の値の総和を、その音程領域の音程領域強度とする音程領域検出手段と、
前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域強度の総和を計数し、この総和が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出手段と
を備えたことを特徴とする音響信号分析装置。
【請求項４】
前記第１の区間は前記単位時間を複数含む時間長を有し、前記第２の区間は前記第１の区間を複数含む時間長を有することを特徴とする請求項１〜３のいずれか１項に記載の音響信号分析装置。
【請求項５】
前記複数の周波数バンドは、音階の音程周波数に対応する周波数バンドであることを特徴とする請求項１〜４のいずれか一項に記載の音響信号分析装置。
【請求項６】
前記単位時間は前記複数の周波数バンドそれぞれに応じて異なることを特徴とする請求項１〜５のいずれか１項に記載の音響信号分析装置。
【請求項７】
前記音程領域検出手段は、前記第１の所定数として、前記第１の区間が含む前記単位時間の個数よりも小さな値を用いることを特徴とする請求項１〜６のいずれか１項に記載の音響信号分析装置。
【請求項８】
前記音程領域検出手段は、一の周波数バンドにおいて、前記ピーク要素と、前記ピーク要素ではない要素と、前記ピーク要素とが時間的に連続していた場合、前記ピーク要素ではない要素を前記ピーク要素として計数することを特徴とする請求項１〜７のいずれか１項に記載の音響信号分析装置。
【請求項９】
音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、
前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、
前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に前記ピーク要素の個数を計数し、この計数結果が第１の所定数以上である前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出ステップと、
前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定数以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップと
を有することを特徴とする音響信号分析方法。
【請求項１０】
音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、
前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、
前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出ステップと、
前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップと
を有することを特徴とする音響信号分析方法。
【請求項１１】
音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、
前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、
前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出すると共に、前記ピーク要素の値の総和を、その音程領域の音程領域強度とする音程領域検出ステップと、
前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域強度の総和を計数し、この総和が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップと
を有することを特徴とする音響信号分析方法。
【請求項１２】
コンピュータに、
音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、
前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、
前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に前記ピーク要素の個数を計数し、この計数結果が第１の所定数以上である前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出ステップと、
前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定数以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップと
を実行させるための音響信号分析用プログラム。
【請求項１３】
コンピュータに、
音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、
前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、
前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出ステップと、
前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップと
を実行させるための音響信号分析用プログラム。
【請求項１４】
コンピュータに、
音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、
前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、
前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出すると共に、前記ピーク要素の値の総和を、その音程領域の音程領域強度とする音程領域検出ステップと、
前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域強度の総和を計数し、この総和が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップと
を実行させるための音響信号分析用プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音響信号を分析して音楽が含まれる信号区間を音楽区間として検出するための音響信号分析装置、音響信号分析方法、及び音響信号分析用プログラムに関する。
【背景技術】
【０００２】
近年、動画や音声等のコンテンツをハードディスク、ＤＶＤ、メモリ等の記録媒体に記録することが広く行われている。そして、これら記録媒体の大容量化に伴い、長時間記録されたコンテンツから所望の記録区間だけを読み出して視聴する機能や、再生時間を短縮して視聴する機能へのニーズが高まっている。このような状況において、コンテンツをその内容に応じて小区間に分割するための各種情報を抽出したり、コンテンツの中で音楽が含まれる信号区間だけを識別したりする技術が開発されている。
【０００３】
具体的には、映像信号に含まれる音情報を解析し、スペクトルにおける時間方向の安定性を用いて音楽区間を識別する方法が知られている（例えば、特許文献１，２を参照）。また、音声のサブバンドデータの平均バンドエネルギー比やサブバンドエネルギー重心を用いて、音楽区間と音声区間とを識別する方法も知られている（例えば、特許文献３，４を参照）。
【特許文献１】特開平１０−１８７１８２号公報
【特許文献２】特開２０００−３１５０９４号公報
【特許文献３】特開平１０−２４７０９３号公報
【特許文献４】特開２０００−６６６９１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
特許文献１，２においては、スペクトログラムのエッジ強度の総和が、予め設定した閾値より大きいか否かにより音楽区間を判定している。しかしながら、スペクトログラムのエッジ強度の総和は、分析対象の信号レベルや周波数特性のばらつき（入力ソースの特性のばらつき）や、音楽の種類（ジャンル）によって変動するため、多様な入力ソースや多様な音楽ジャンルに対応することが難しい。例えば、同じような音楽区間が２つあった場合に、平均音圧の大きい方ではエッジ強度の総和が大きいが、他方の平均音圧の小さい方ではエッジ強度の総和は小さい。したがって、多様な入力ソースや多様な種類の曲を対象にして音楽区間を検出する場合においては、検出精度が必ずしも十分ではないという問題がある。
【０００５】
また、特許文献３，４に開示された技術によれば、圧縮符号化された音声データから比較的簡易な計算によって音楽区間と音声区間とを識別できるという長所はあるものの、やはり、多様な入力ソースや多様な音楽ジャンルの曲を対象に音楽区間を検出する場合においては、検出精度を高くすることが困難である。これは、一般的な音楽においては、その周波数成分に有音程楽器等が発する固有の周波数成分が一定時間以上持続するという性質があるが、上述した従来技術はこの性質を十分に利用したものではないからである。
【０００６】
さらに、通常の音楽においては、平均律や純正律といった音階に基づく周波数成分が存在するが、特許文献１〜４のいずれにおいても、音楽の音階とは直接対応しない周波数成分を用いているため、音楽の検出精度が必ずしも高いものではない。
【０００７】
そこで本発明は、上記問題点に鑑みてなされたものであり、その目的は、入力ソースである音響信号の特性のばらつきや、この音響信号に含まれる音楽の種類による影響を低く抑えて、且つ音楽が含まれる信号区間を精度良く検出するための、音響信号分析装置、音響信号分析方法、及び音響信号分析用プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、上記の課題を解決するために、
［１］  音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析手段と、前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出手段と、前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に前記ピーク要素の個数を計数し、この計数結果が第１の所定数以上である前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出手段と、前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定数以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出手段とを備えたことを特徴とする音響信号分析装置を提供する。
［２］  また、音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析手段と、前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出手段と、前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出手段と、前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出手段とを備えたことを特徴とする音響信号分析装置を提供する。
［３］  また、音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析手段と、前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出手段と、前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出すると共に、前記ピーク要素の値の総和を、その音程領域の音程領域強度とする音程領域検出手段と、前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域強度の総和を計数し、この総和が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出手段とを備えたことを特徴とする音響信号分析装置を提供する。
［４］  また、前記第１の区間は前記単位時間を複数含む時間長を有し、前記第２の区間は前記第１の区間を複数含む時間長を有することを特徴とする［１］〜［３］のいずれか１つに記載の音響信号分析装置を提供する。
［５］  また、前記複数の周波数バンドは、音階の音程周波数に対応する周波数バンドであることを特徴とする［１］〜［４］のいずれか１つに記載の音響信号分析装置を提供する。
［６］  また、前記単位時間は前記複数の周波数バンドそれぞれに応じて異なることを特徴とする［１］〜［５］のいずれか１つに記載の音響信号分析装置を提供する。
［７］  また、前記音程領域検出手段は、前記第１の所定数として、前記第１の区間が含む前記単位時間の個数よりも小さな値を用いることを特徴とする［１］〜［６］のいずれか１つに記載の音響信号分析装置を提供する。
［８］  また、前記音程領域検出手段は、一の周波数バンドにおいて、前記ピーク要素と、前記ピーク要素ではない要素と、前記ピーク要素とが時間的に連続していた場合、前記ピーク要素ではない要素を前記ピーク要素として計数することを特徴とする［１］〜［７］のいずれか１つに記載の音響信号分析装置を提供する。
［９］  また、音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に前記ピーク要素の個数を計数し、この計数結果が第１の所定数以上である前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出ステップと、前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定数以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップとを有することを特徴とする音響信号分析方法を提供する。
［１０］  また、音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出ステップと、前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップとを有することを特徴とする音響信号分析方法を提供する。
［１１］また、音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出すると共に、前記ピーク要素の値の総和を、その音程領域の音程領域強度とする音程領域検出ステップと、前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域強度の総和を計数し、この総和が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップとを有することを特徴とする音響信号分析方法を提供する。
［１２］  また、コンピュータに、音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に前記ピーク要素の個数を計数し、この計数結果が第１の所定数以上である前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出ステップと、前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定数以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップとを実行させるための音響信号分析用プログラムを提供する。
［１３］  また、コンピュータに、音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出する音程領域検出ステップと、前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域の個数を計数し、この計数結果が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップとを実行させるための音響信号分析用プログラムを提供する。
［１４］  また、コンピュータに、音響信号を複数の周波数バンドに分割して、前記複数の周波数バンドそれぞれにおける単位時間毎の成分強度を要素とする周波数成分データを生成する周波数分析ステップと、前記周波数成分データの要素を読み出し、その読み出した要素が所定の閾値以上であるという条件、又は、その読み出した要素の方が、その読み出した要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件、又は、その読み出した要素の倍音成分に対応する要素である倍音要素の方が、その倍音要素の近傍の周波数成分の要素に基づき算出された値よりも大きいという条件のうち、少なくとも１つの条件を満足する要素をピーク要素として検出するピーク要素検出ステップと、前記複数の周波数バンドそれぞれについて、前記単位時間を含む時間長を有する第１の区間毎に、前記ピーク要素の個数、及び前記ピーク要素の値の総和を計数し、前記ピーク要素の個数が第１の所定数以上であり、かつ前記ピーク要素の値の総和が第１の所定値以上である場合に、前記第１の区間を、その周波数バンドにおける音程領域として検出すると共に、前記ピーク要素の値の総和を、その音程領域の音程領域強度とする音程領域検出ステップと、前記第１の区間を含む時間長を有する第２の区間毎に、前記複数の周波数バンドそれぞれを対象として前記音程領域強度の総和を計数し、この総和が第２の所定値以上である場合に、その前記第２の区間を音楽区間として検出する音楽区間検出ステップとを実行させるための音響信号分析用プログラムを提供する。
【発明の効果】
【０００９】
本発明によれば、音響信号について、音楽が含まれる信号区間に存在する確率の高い有音程楽器の発音区間を精度良く検出することができるため、多様な入力ソースによる音響信号の中から音楽区間を精度良く検出することができる。
【００１０】
また、本発明によれば、音楽の存在しない音声区間において、瞬間的に特定の周波数成分の強度が大きくなるような場合があっても、音声区間を音楽区間と誤判定することを飛躍的に低く抑えることができる。
【００１１】
さらに、本発明によれば、音楽で用いられる音階に直接対応する周波数成分を抽出することができるため、有音程楽器が発音している場合に、この発音された音程の近傍の音程の周波数成分は小さいという性質を演算処理に十分に反映させることができるため、音楽区間をより精度良く検出することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明を実施するための最良の形態について、好ましい実施例を示して詳細に説明する。
【実施例１】
【００１３】
図１に、本発明の第１の実施例である音響信号分析装置の全体構成を示す。同図において、音響信号分析装置１は、音響信号入力部１１と、周波数分析部１２と、ピーク要素検出部１３と、音程領域検出部１４と、音楽区間検出部１５とを備えている。そして、各処理部は、各種演算処理及び当該処理部を制御するための演算処理回路１１ａ〜１５ａをそれぞれ具備している。さらに、音響信号分析装置１には、不図示ではあるが、本発明の実施形態である音響信号分析用プログラムを実行して前記各処理部を制御するための、ＣＰＵを具備した制御部を備えている。この音響信号分析装置１は、音響信号２が音響信号入力部１１に入力され、同図に示す信号処理の流れにより各種処理がされた後、音楽区間検出部１５から音楽区間情報３を外部に出力するようになっている。
【００１４】
音響信号２は、ＰＣＭデータ、アナログ音声信号、デジタル圧縮信号等のオーディオ信号フォーマットのうち、いずれの形式であってもよい。
【００１５】
音響信号入力部１１は、入力された音響信号２から所定のサンプリング周波数ＦｓのＰＣＭデータを生成する機能を有する。具体的には、音響信号入力部１１は、音響信号２がアナログ音声信号である場合はデジタル変換処理を実行し、一方、音響信号２がデジタル圧縮信号である場合はデコード処理を実行する。また、音響信号２がＰＣＭデータである場合は、音響信号入力部１１は、入力された音響信号２をそのまま次段の周波数分析部１２に供給するが、入力源のサンプリング周波数がサンプリング周波数Ｆｓと異なる場合には、レート変換処理を実行してサンプリング周波数ＦｓのＰＣＭデータに変換する。
【００１６】
なお、以下説明においては、音響信号入力部１１から出力されるＰＣＭデータを、音響データｘ［ｍ］（ｍ＝０〜Ｌ−１、Ｌは１以上の整数であり音響データの総数を示す。）、又は音響データと記載する。
【００１７】
周波数分析部１２は、音響信号入力部１１から出力された音響データを入力して周波数分析処理を実行し、単位時間毎に所定の周波数成分の成分強度を要素とする行列データを作成する機能を有する。
【００１８】
周波数分析部１２の処理について、図２のフローチャートを参照して説明する。本実施例においては、周波数分析部１２は、音響データを固定長のフレームに分割し、フレーム単位での処理を実行する。また、周波数分析の方法としては公知のＳＴＦＴ（Ｓｈｏｒｔ−ｔｉｍｅ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ）を用いるが、これ以外にもウェーブレット変換やフィルターバンク等の方法を用いてもよい。また、本実施例では、全ての周波数成分を同一時間間隔で生成しているが、周波数バンドに応じて時間間隔を変えるようにして周波数成分を生成するようにしてもよい。
【００１９】
なお、以下の説明においては、フレーム長をＮ、フレームシフト長をＳとする。フレームシフト長Ｓに相当する時間長が単位時間である。
【００２０】
フレームの総数をＭとすると、フレーム総数Ｍは、数式１により算出される。
【００２１】
【数１】
0004735398.tif 000002
【００２２】
上記のｆｌｏｏｒ関数は、小数点以下を切り捨てた整数を返す関数である。なお、本実施例においては、Ｌ≧Ｎであるものとする。図２のフローチャートにおいて、周波数分析部１２の演算処理回路１２ａは、フレーム番号を示す制御変数ｉを０に設定する（ステップＳ１１０）。次に、演算処理回路１２ａは、ｉ番目のフレームを作成する（ステップＳ１２０）。すなわち、図３に示すように、音響データの先頭からｉ×Ｓ個分オフセットされた位置からＮ個のデータを抽出し、これに数式２に示すように、窓関数ｗを乗じてｉ番目のフレームデータｙ［ｉ］［ｎ］（ｎ＝０〜Ｎ−１）を生成する。
【００２３】
【数２】
0004735398.tif 000003
【００２４】
窓関数ｗとしては、例えば数式３に示すハミング窓を用いることができる。この他にも、方形窓、ハニング窓、ブラックマン窓等を用いてもよい。
【００２５】
【数３】
0004735398.tif 000004
【００２６】
次に、演算処理回路１２ａは、数式４によってｉ番目のフレームの離散フーリエ変換（ＤＦＴ）を計算する（ステップＳ１３０）。
【００２７】
【数４】
0004735398.tif 000005
【００２８】
次に、演算処理回路１２ａは、ステップＳ１３０により算出された複素系列ａ［ｉ］［ｋ］（ｋ＝０〜Ｎ−１）の実数部Ｒｅ｛ａ［ｉ］［ｋ］｝と虚数部Ｉｍ｛ａ［ｉ］［ｋ］｝とを用いて、数式５又は数式６によりｉ番目のフレームのスペクトル系列ｂ［ｉ］［ｋ］（ｋ＝０〜Ｎ／２−１）を計算する（ステップＳ１４０）。
【００２９】
【数５】
0004735398.tif 000006
【００３０】
【数６】
0004735398.tif 000007
【００３１】
数式５を適用する場合は、スペクトル系列ｂ［ｉ］［ｋ］がパワースペクトルとなり、数式６を適用する場合は、スペクトル系列ｂ［ｉ］［ｋ］が振幅スペクトルとなる。
【００３２】
次に、演算処理回路１２ａは、ＤＦＴの結果からフレームｉ、周波数バンドｑにおける周波数成分ｃ［ｉ］［ｑ］（ｑ＝０〜Ｑ−１、Ｑは１以上の整数であり周波数バンド数を示す。）を計算する（ステップＳ１５０）。ここで、ステップＳ１５０における計算方法としては、例えば以下の２通りを適用することができる。
【００３３】
周波数成分ｃ［ｉ］［ｑ］を計算する第１の方法は、数式７によりスペクトル系列ｂ［ｉ］［ｋ］の一部又は全部をｃ［ｉ］［ｑ］に対応させる方法である。
【００３４】
【数７】
0004735398.tif 000008
【００３５】
ここで、λは０以上の所定の整数であり、周波数バンドの最低周波数を決めるパラメータである。また、周波数バンド数Ｑは（Ｎ／２−λ）以下である所定の値に設定する。この第１の計算方法は計算量が最も少なく簡便である利点を有している。しかし、周波数バンドの周波数間隔が等間隔となり、音楽で用いられている音階とは無関係となるため、音楽区間の検出精度は以下説明する第２の方法の方が高い。
【００３６】
周波数成分ｃ［ｉ］［ｑ］を計算する第２の方法は、数式８により音階に対応した周波数成分を算出する方法である。
【００３７】
【数８】
0004735398.tif 000009
【００３８】
この方法では、音楽で用いられている音階の周波数に対応した周波数成分が得られるため、より高い精度で音楽区間を検出することが可能である。
【００３９】
ここで、ｚ［ｑ］［ｋ］（ｑ＝０〜Ｑ−１，ｋ＝０〜Ｎ／２−１）は、図４に示すような帯域特性を有するフィルタ群である。各フィルタの中心周波数は、音階の周波数に対応しており、中心周波数での減衰が少なく、中心周波数から離れるに伴い減衰が大きくなり、隣接するフィルタの中心周波数付近で通過特性が０になる特性を有している。同図（ａ）〜（ｄ）は、音階のＣ１音程をバンド０に対応させて、以降半音毎に１つのバンドに対応させて、最後に５オクターブ上のＢ６音程をバンドＱ−１に対応させた帯域特性を模式的に表している。同図（ａ）はＣ１に対応した周波数を通過させるフィルタ、同図（ｂ）は同図（ａ）より半音高いＣ＃１に対応した周波数を通過させるフィルタ、同図（ｃ）は最高音より半音低いＡ＃６に対応した周波数を通過させるフィルタ、そして同図（ｄ）は最高音のＢ６に対応した周波数を通過させるフィルタの帯域特性を示したものである。
【００４０】
スペクトル系列ｂ［ｉ］［ｋ］は周波数間隔が等間隔であるのに対して、音階は高音部になるほど隣り合った音程間の周波数間隔が広がるので、フィルタ群ｚ［ｑ］［ｋ］の中心周波数もそれに対応して高音部ほど隣り合った中心周波数の間隔が広くなっている。例えば、図４（ａ）に示すｚ［０］［ｋ］と同図（ｂ）に示すｚ［１］［ｋ］との各中心周波数の差よりも、同図（ｃ）に示すｚ［Ｑ−２］［ｋ］と同図（ｄ）に示すｚ［Ｑ−１］［ｋ］との各中心周波数の差の方が大きい。また、各フィルタの帯域幅も、同様に高音部ほど広くなっている。例えば、図４（ｄ）に示すｚ［Ｑ−１］［ｋ］の帯域幅は、同図（ａ）に示すｚ［０］［ｋ］の帯域幅よりも広くなっている。
【００４１】
なお、図４に示した帯域特性の例は音階の各音程（半音）に一致した周波数バンドであるが、音階の各音程を更に細かく分割するような周波数バンドを得るようにしてもよい。また、中心周波数の設定を変更することにより、平均律、純正律、中全音律などの様々な音階に対応することができる。
【００４２】
図２のフローチャートの説明に戻り、周波数分析部１２の演算処理回路１２ａは、ステップＳ１５０の処理の次に、フレーム番号を示す制御変数ｉの値を１増やす（ステップＳ１６０）。次に、演算処理回路１２ａは、フレーム番号を示す制御変数ｉの値がフレーム総数Ｍより小さいか否か判定する（ステップＳ１７０）。そして、制御変数ｉがフレーム総数Ｍより小さい場合はステップＳ１２０に移行し、フレーム総数Ｍ以上である場合はすべてのフレームについて処理を完了してとして周波数分析処理を終了する。
【００４３】
以上の処理が終了した時点で、周波数分析部１２は、周波数成分ｃ［ｉ］［ｑ］（フレームｉ＝０〜Ｍ−１、バンドｑ＝０〜Ｑ−１）を行列データとして具備するメモリに記憶する。図５に、周波数分析部１２で作成された行列データを模式的に示す。同図では、フレームを横軸、周波数バンドを縦軸に示しており、成分強度の強い要素を黒い線分として表わしている。そして、同図（ａ）は、音楽の存在しない音声区間（例えば、アナウンス）の行列データを示しており、一定時間以上持続する周波数成分が少ないことを特徴として示している。一方、同図（ｂ）は、有音程楽器が発音している音楽区間を示しており、一定時間持続する周波数成分が多いことが特徴である。また、同図（ｂ）については、楽器の基本周波数の他に、基本周波数の整数倍の周波数を有する倍音周波数が存在することも特徴である。一般的な音楽では、発音されている音程の近傍の音程に対応する周波数成分は、相対的に小さい。本発明は、同図（ａ）に示すような音声区間を精度良く除外し、同図（ｂ）に示すような音楽区間を精度良く検出することを目的とするものである。
【００４４】
次に、ピーク要素検出部１３の処理フローについて、図６のフローチャートを参照して説明する。ピーク要素検出部１３においては、有音程楽器により発音されている区間ではその音程に対応する周波数成分が大きくなり、又その音程に対応する周波数成分は近傍の周波数成分よりも相対的に大きいという特性を利用する。すなわち、ピーク要素検出部１３は、周波数分析部１２に行列データとして記憶されている周波数成分ｃ［ｉ］［ｑ］を読み出し、その値が所定の閾値以上である場合、その近傍の周波数成分と比較して相対的に大きい場合、又はその周波数成分と倍音関係にある倍音成分が該倍音成分の近傍の周波数成分と比較して相対的に大きい場合に、その周波数成分をピーク要素として検出する処理を実行する。
【００４５】
まず、ピーク要素検出部１３の演算処理回路１３ａは、探索を開始するフレーム番号を表す制御変数ｉを０に設定する（ステップＳ２１０）。次に、演算処理回路１３ａは、周波数バンドを示す制御変数ｑをピーク要素の対象範囲の最小のバンドＱ１に設定する（ステップＳ２２０）。ここで、Ｑ１は、後述する整数Ｇ２以上、且つ後述する整数Ｇ４以上、且つ後述する整数Ｑ２以下の所定の整数である。
【００４６】
次に、演算処理回路１３ａは、周波数成分ｃ［ｉ］［ｑ］がピーク要素であるか否かを判定する（ステップＳ２３０）。周波数成分ｃ［ｉ］［ｑ］がピーク要素であると判定した場合は、ステップＳ２４０に移行し、ピーク要素でないと判定した場合は、ステップＳ２５０に移行する。ステップＳ２３０において有効な成分を判定する具体的な方法としては、以下に説明する７つの方法のいずれか、または複数の方法の組合せを用いることができる。
【００４７】
ピーク要素を判定する第１の方法は、数式９を用いて、ｃ［ｉ］［ｑ］が閾値α［ｑ］以上である場合にピーク要素であると判定する方法である。
【００４８】
【数９】
0004735398.tif 000010
【００４９】
閾値α［ｑ］は、以下に示す２つの方法のうちいずれかを用いて設定する。すなわち、閾値α［ｑ］を決定する第１の方法は、予め設定された定数を用いて決定する方法であり、この方法によれば、演算量が最も少なく簡便である。また、閾値α［ｑ］を決定する第２の方法は、数式１０に示すように全フレーム（Ｍ個）のバンド毎の周波数成分の平均値を用いる方法である。ここで、βは予め設定されている定数である。
【００５０】
【数１０】
0004735398.tif 000011
【００５１】
ピーク要素を判定する第２の方法は、数式１１を用いる方法である。
【００５２】
【数１１】
0004735398.tif 000012
【００５３】
これは、バンドｑ（中心バンドとも言う。）と同一時間にある所定個数の周波数バンド（近傍バンドとも言う。）の周波数成分の最大値を中心バンドの両側について各々求め、その２つの最大値よりもｃ［ｉ］［ｑ］が大きい場合に、ピーク要素であると判定する方法である。数式１１において、Ｇ１及びＧ２はＧ１≦Ｇ２を満たす整数であり、周波数分析部１２において、音階の各音程（半音）に各周波数バンドを一致させた場合は、Ｇ１＝Ｇ２＝１とすればよい。また、音階の各音程を更に細かく分割するような周波数バンドを用いた場合には、隣接する音程の周波数に対応させるか、又は隣接する音程間の使用されない周波数に対応させるようにＧ１及びＧ２を設定する。また、∩はＡＮＤ条件を意味し、ｍａｘは引数の中の最大値を返す関数を意味する。
【００５４】
このピーク要素を判定する第２の方法は、事前に設定する必要のある閾値を用いないため、特に分析対象の音響信号レベルが大きく変動するような場合に好適である。また、音楽以外の区間を音楽区間と誤検出する率を低く抑えたい場合や、周波数分析部１２で用いたバンドの周波数分解能が比較的高い場合に適している。
【００５５】
ピーク要素を判定する第３の方法は、数式１２を用いる方法である。
【００５６】
【数１２】
0004735398.tif 000013
【００５７】
これは、近傍バンドの周波数成分の最小値を中心バンドの両側について各々求め、その２つの最小値よりもｃ［ｉ］［ｑ］が大きい場合に、ピーク要素と判定する方法である。数式１２におけるＧ１，Ｇ２，及び∩は前述したものと同じである。また、ｍｉｎは引数の中の最小値を返す関数を意味する。このピーク要素を判定する第３の方法は、事前に設定する必要のある閾値を用いないため、分析対象の音響信号レベルが大きく変動するような場合に適している。また、音楽区間の検出漏れを減らしたい場合や、周波数分析部１２で用いたバンドの周波数分解能が比較的低い場合に適している。
【００５８】
ピーク要素を判定する第４の方法は、数式１３を用いる方法である。
【００５９】
【数１３】
0004735398.tif 000014
【００６０】
これは、近傍バンドの周波数成分の総和に一定比率γを乗じた値よりも中心バンドの周波数成分ｃ［ｉ］［ｑ］の方が大きい場合にピーク要素である判定する方法である。ここで、Ｇ１及びＧ２は前述したものと同じであり、γは定数である。
【００６１】
有音程楽器が発音している区間においては、一般的には、基本周波数の他に基本周波数のｄ倍の周波数を持つｄ次倍音成分が存在する。以下に説明するピーク要素を判定する第５〜７の方法ではこの特性を利用する。
【００６２】
ピーク要素を判定する第５の方法は、数式１４を用いる方法である。
【００６３】
【数１４】
0004735398.tif 000015
【００６４】
これは、中心バンドのｄ次の倍音（２≦ｄ≦Ｄ、Ｄは２以上の整数）に対応する周波数バンド（倍音バンドと言う。）を特定し、倍音バンドの近傍の周波数成分の最大値を倍音バンドの両側についてそれぞれ求め、ｄ＝２〜Ｄの全てについて２つの最大値よりも倍音バンドの周波数成分が大きい場合に、ｃ［ｉ］［ｑ］をピーク要素とする方法である。ここで、Ｇ３及びＧ４はＧ３≦Ｇ４を満たす整数であり、周波数分析部１２において、音階の各音程（半音）に各周波数バンドを一致させた場合は、Ｇ３＝Ｇ４＝１とすればよい。また、音階の各音程を更に細かく分割するような周波数バンドを用いた場合には、隣接する音程の周波数に対応させるか、又は隣接する音程間の使用されない周波数に対応させるようにＧ３及びＧ４を設定する。なお、関数ｈ（ｄ，ｑ）は、バンドｑのｄ倍の周波数（ｄ次倍音）に対応するバンド番号を返す関数である。
【００６５】
ピーク要素を判定する第６の方法は、数式１５を用いる方法である。
【００６６】
【数１５】
0004735398.tif 000016
【００６７】
これは、中心バンドのｄ次の倍音（２≦ｄ≦Ｄ、Ｄは２以上の整数）に対応する周波数バンド（倍音バンド）を特定し、倍音バンドの近傍の周波数成分の最小値を倍音バンドの両側について各々求め、ｄ＝２〜Ｄの全てについて、２つの最小値よりも倍音バンドの周波数成分が大きい場合に、ｃ［ｉ］［ｑ］をピーク要素とする方法である。ここで、Ｇ３，Ｇ４，及びｈ（ｄ，ｑ）は前述したものと同じである。
【００６８】
ピーク要素を判定する第７の方法は、数式１６を用いる方法である。
【００６９】
【数１６】
0004735398.tif 000017
【００７０】
これは、ｄ次倍音バンド（２≦ｄ≦Ｄ、Ｄは２以上の整数）の近傍のバンドの周波数成分の総和に一定比率を乗じた値よりもｄ次倍音バンドの周波数成分の方が大きい場合にｃ［ｉ］［ｑ］をピーク要素とする方法である。ここで、Ｇ３，Ｇ４，及びｈ（ｄ，ｑ）は前述と同じであり、η［ｄ］は倍音の次数によって決まる所定の定数（比率）である。
【００７１】
なお、上述した数式１１〜１６においては、フレームｉの周波数成分のみを用いて計算しているが、これに限定されることなく、例えば、ｉ＋１、ｉ−１といったフレームｉと時間的に近い近傍のフレームをも用いて計算するようにしてもよい。
【００７２】
さらには、上述したピーク要素を判定する第１〜７の方法を適宜ＡＮＤ条件で組み合わせて、全ての条件を満たす場合にピーク要素であると判定するようにしてもよい。具体的には、例えば、ピーク要素を判定する第１，２，及び５の方法を、数式１７に示すようにＡＮＤ条件で組み合わせて判定を行ってもよい。
【００７３】
【数１７】
0004735398.tif 000018
【００７４】
特に、基本周波数に関する条件である第２〜４の方法のうちのいずれかと、倍音成分に関する条件である第５〜７の方法のうちのいずれかとを、ＡＮＤ条件で組み合わせて判定することによって、より高い精度で音楽区間を検出することが可能になる。
【００７５】
図６のピーク要素検出部１３の処理の説明に戻り、ステップＳ２３０の次に、演算処理回路１３ａは、ピーク要素検出部１３が具備するピーク要素メモリに、ピーク要素であると判定したフレーム番号ｉとバンド番号ｑと周波数成分ｃ［ｉ］［ｑ］とを対応させたデータ（ｉ，ｑ，ｃ［ｉ］［ｑ］）を図１２に示すような形式で記憶する（ステップＳ２４０）。
【００７６】
次に、演算処理回路１３ａは、周波数バンドを表わす制御変数ｑの値を１増やす（ステップＳ２５０）。次に、演算処理回路１３ａは、制御変数ｑがピーク要素の対象範囲の最大のバンドＱ２以下であるか否かを判定する（ステップＳ２６０）。但し、Ｑ２は、Ｑ２＜Ｑ−Ｇ２、且つＱ２＜Ｑ−Ｇ４、且つＱ１以上の所定の整数である。制御変数ｑがＱ２以下である場合は、ステップＳ２３０に戻り、そうでない場合はステップＳ２７０に進む。
【００７７】
次に、演算処理回路１３ａは、フレーム番号を示す制御変数ｉの値を１増やす（ステップＳ２７０）。次に、演算処理回路１３ａは、フレーム番号を示す制御変数ｉの値がフレーム総数Ｍ未満であるか否かを判定する（ステップＳ２８０）。制御変数ｉがフレーム総数Ｍ未満である場合はステップＳ２２０に移行し、フレーム総数Ｍ以上である場合はピーク要素検出部１３の処理を終了する。
【００７８】
次に、音程領域検出部１４の処理フローを図７のフローチャートを参照して説明する。音程領域検出部１４では、ピーク要素検出部１３のピーク要素メモリを参照して処理を実行する。まず、音程領域検出部１４の演算処理回路１４ａは、フレーム番号を示す制御変数ｐを０に設定する（ステップＳ３１０）。次に、演算処理回路１４ａは、周波数バンドを示す制御変数ｑをピーク要素検出部１３で用いた定数Ｑ１に設定する（ステップＳ３２０）。
【００７９】
次に、演算処理回路１４ａは、ピーク要素検出部１３のピーク要素メモリを参照して、フレーム番号がｐ以上、且つ（ｐ＋Ｈ）未満であり、且つ周波数バンドがｑであるピーク要素の個数Ｃを計数する（ステップＳ３３０）。ここで、Ｈは予め設定された整数である。
【００８０】
ここでさらに、周波数の微小なゆらぎを許容してピーク要素の個数Ｃを計数する処理を行ってもよい。例えば、ｃ［ｉ−１］［ｑ］及びｃ［ｉ＋１］［ｑ］がピーク要素であり、ｃ［ｉ］［ｑ］がピーク要素でない場合に、ｃ［ｉ］［ｑ−１］又はｃ［ｉ］［ｑ＋１］がピーク要素であれば周波数の微小なゆらぎがあると見なし、ｃ［ｉ］［ｑ］をピーク要素と見なして個数Ｃを計数するといった処理を行う。
【００８１】
次に、演算処理回路１４ａは、ステップＳ３３０で計数されたピーク要素の個数ＣがＣ１以上であるか否かを判定する（ステップＳ３４０）。ここで、Ｃ１は０＜Ｃ１≦Ｈを満たす整数である。ピーク要素の個数ＣがＣ１以上である場合は、フレーム番号がｐ以上で（ｐ＋Ｈ）未満であり、且つ周波数バンドがｑの領域を音程領域と判定してステップＳ３５０に進む。データ個数ＣがＣ１未満である場合は、ステップＳ３６０に移行する。
【００８２】
次に、演算処理回路１４ａは、音程領域の先頭のフレーム番号ｐ、音程領域の最後のフレーム番号ｐ＋Ｈ−１、及びバンド番号ｑを対応させて、音程領域検出手段１４が具備する音程領域メモリに図１３に示すような形式で記憶する（ステップＳ３５０）。
【００８３】
次に、演算処理回路１４ａは、周波数バンドを表わす制御変数ｑの値を１増やす（ステップＳ３６０）。次に、演算処理回路１４ａは、制御変数ｑが定数Ｑ２以下であるか否かを判定する（ステップＳ３７０）。ここで、Ｑ２はピーク要素検出部１３で用いた所定の整数である。制御変数ｑがＱ２以下である場合は、ステップＳ３３０に移行し、そうでない場合はステップＳ３８０に移行する。
【００８４】
次に、演算処理回路１４ａは、フレーム番号を示す制御変数ｐの値をＨだけ増やす（ステップＳ３８０）。次に、演算処理回路１４ａは、フレーム番号を示す制御変数ｐの値が（Ｍ−Ｈ）未満であるか否かを判定する（ステップＳ３９０）。ここで、Ｍはフレーム総数である。制御変数ｐが（Ｍ−Ｈ）未満である場合は、ステップＳ３２０に移行する。制御変数ｐが（Ｍ−Ｈ）以上である時は、音程領域検出部１４の処理を終了する。
【００８５】
次に、音楽区間検出部１５の処理フローを図８のフローチャートを参照して説明する。音楽区間検出部１５では、音程領域検出部１４の音程領域メモリを参照して処理を実行する。まず、音楽区間検出部１５の演算処理回路１５ａは、フレーム番号を示す制御変数ｉを０に設定する（ステップＳ４１０）。
【００８６】
次に、演算処理回路１５ａは、音程領域検出部１４の音程領域メモリを参照して、音程領域開始位置がｉ以上で、且つ音程領域終了位置が（ｉ＋Ｊ）未満である音程領域の個数Ｅを計数する（ステップＳ４２０）。ここで、Ｊは、検出する音楽区間の最小の長さを決定する定数であり、Ｊ≧Ｈを満たす整数である。通常は、Ｈの数倍〜数十倍の長さに設定すればよい。
【００８７】
次に、演算処理回路１５ａは、ステップＳ４２０でカウントされた音程領域の個数ＥがＥ１以上であるか否かを判定する（ステップＳ４３０）。ここで、Ｅ１は１以上の整数である。ＥがＥ１以上である場合は、フレーム番号がｉ以上で（ｉ＋Ｊ−１）以下の区間を音楽区間と判定してステップＳ４４０に移行する。一方、ＥがＥ１未満である場合はステップＳ４５０に移行する。
【００８８】
次に、演算処理回路１５ａは、音楽区間の先頭のフレーム番号ｉと、音楽区間の最後のフレーム番号（ｉ＋Ｊ−１）とを対応させて、図１４に示すような形式で音楽区間検出手段１５が具備する音楽区間メモリに記憶する（ステップＳ４４０）。
【００８９】
次に、演算処理回路１５ａは、フレーム番号を示す制御変数ｉの値をＪだけ増やす（ステップＳ４５０）。次に、演算処理回路１５ａは、フレーム番号を示す制御変数ｉの値が（Ｍ−Ｊ）未満であるか否かを判定する（ステップＳ４６０）。ここで、Ｍはフレーム総数である。制御変数ｉが（Ｍ−Ｊ）未満である場合は、ステップＳ４２０に移行する。一方、制御変数ｉが（Ｍ−Ｊ）以上である場合はステップＳ４７０に移行する。
【００９０】
次に、演算処理回路１５ａは、音楽区間メモリのデータを音楽区間情報３として出力し、音楽区間検出部１５の処理を終了する（ステップＳ４７０）。なお、ある音楽区間の最後のフレーム番号と別の音楽区間の先頭のフレーム番号が連続している場合に（例えば、図１４の２行目と３行目）、これらを統合して１つの音楽区間とする処理を行うようにしてもよい。
【００９１】
ここで、図５を用いて従来技術との違いについて説明する。従来技術では、隣接する周波数成分の差分値（１次差分又は２次差分）を所定の時間分加算した総和が所定の閾値よりも大きい場合に音楽区間と判定するものである。このため、ある瞬間の特定の周波数成分が大きい場合には、それに影響されて差分値及び総和が大きくなるため、図５（ａ）のような音声区間であっても音楽区間として誤判定される場合があった。このように、従来技術では、多様な入力ソースや多様なジャンルの音楽に対して、十分な精度で音楽区間を検出することが困難である。
【００９２】
一方、本実施例では、前述したように、隣接する周波数成分の差分値の総和を用いることなく音楽区間を判定するものである。ピーク要素検出部１３において、各フレーム、周波数バンド毎にピーク要素か否かの判定を行い、音程領域検出部１４において、所定時間Ｈ内に同一周波数バンドのピーク要素がＣ１個以上ある場合に音程領域と判定し、音楽区間検出部１５において、所定時間Ｊ内の音程領域の個数がＥ１以上である場合に、音楽区間と判定する。これにより、図５（ａ）のような音声区間において、ある瞬間の特定の周波数成分が大きい場合であっても、音程領域検出部１４において音程領域と判定され難いため、音楽区間と誤判定されることを抑制することができる。
【００９３】
また、従来技術で用いる周波数成分は、音楽の音階とは異なるため、本来は隣接する周波数成分との差分が、音階上で隣接する音程間での差分に相当するのが望ましいのに対し、実際には同一音程同士の差分となったり、離れた音程との差分になったりする場合があった。このため、有音程楽器のみが存在する図５（ｂ）のような区間であっても、音程によっては検出精度が十分でない場合があった。しかしながら、本実施例では、周波数分析部１２において、音楽の音階に対応する周波数成分を算出することができ、隣接する周波数成分を用いた演算処理を、隣接する音程間の処理操作に直接対応させることができるため、音楽区間の検出精度を高くすることができる。
【実施例２】
【００９４】
本発明の第２の実施例の全体構成は図１と同一である。そして、音響信号入力部１１、周波数分析部１２、ピーク要素検出部１３、及び音楽区間検出部１５の各処理動作は、第１の実施例と同一であるためその説明を省略する。
【００９５】
本実施例における音程領域検出部１４の処理フローを図９のフローチャートを参照して説明する。音程領域検出部１４では、ピーク要素検出部１３のピーク要素メモリを参照して処理を実行する。まず、音程領域検出部１４の演算処理回路１４ａは、フレーム番号を示す制御変数ｐを０に設定する（ステップＳ３１０）。次に、演算処理回路１４ａは、周波数バンドを示す制御変数ｑをピーク要素検出部１３で用いた定数Ｑ１に設定する（ステップＳ３２０）。
【００９６】
次に、演算処理回路１４ａは、ピーク要素検出部１３のピーク要素メモリを参照して、フレーム番号がｐ以上で、且つ（ｐ＋Ｈ）未満であり、周波数バンドがｑであるピーク要素の個数Ｃを計数する（ステップＳ３３０）。ここで、Ｈは予め設定された１以上の整数である。
【００９７】
ここでさらに、周波数の微小なゆらぎを許容してピーク要素の個数Ｃを計数する処理を行ってもよい。例えば、ｃ［ｉ−１］［ｑ］及びｃ［ｉ＋１］［ｑ］がピーク要素であり、ｃ［ｉ］［ｑ］がピーク要素でない場合に、ｃ［ｉ］［ｑ−１］又はｃ［ｉ］［ｑ＋１］がピーク要素であれば周波数の微小なゆらぎがあると見なし、ｃ［ｉ］［ｑ］をピーク要素と見なして個数Ｃを計数するといった処理を行う。
【００９８】
次に、演算処理回路１４ａは、ピーク要素検出部１３のピーク要素メモリを参照して、数式１８に示すように、フレーム番号がｐ以上で、且つ（ｐ＋Ｈ）未満であり、周波数バンドがｑであるピーク要素ｃ［ｉ］［ｑ］の値の総和Ｒを算出する（ステップＳ３３１）。
【００９９】
【数１８】
0004735398.tif 000019
【０１００】
次に、演算処理回路１４ａは、ステップＳ３３１において計数したデータ個数ＣがＣ１以上であり、且つステップＳ３３２において算出したＲが所定の値Ｒ１以上であるか否かを判定する（ステップＳ３３２）。ここで、Ｃ１は０＜Ｃ１≦Ｈを満たす整数である。データ個数ＣがＣ１以上であり、且つＲがＲ１以上である場合は、フレーム番号がｐ以上で、且つ（ｐ＋Ｈ）未満であり、周波数バンドがｑの領域を音程領域であると判定し、ステップＳ３５０に移行する。そうでない場合はステップＳ３６０に移行する。
【０１０１】
次に、演算処理回路１４ａは、周波数バンドｑと、音程領域の先頭のフレーム番号ｐと、音程領域の最後のフレーム番号ｐ＋Ｈ−１とを対応させて、音程領域検出手段１４が具備する音程領域メモリに図１３に示すような形式で記憶する（ステップＳ３５０）。
【０１０２】
次に、演算処理回路１４ａは、周波数バンドを表わす制御変数ｑの値を１増やす（ステップＳ３６０）。次に、演算処理回路１４ａは、制御変数ｑが定数Ｑ２以下であるか否かを判定する（ステップＳ３７０）。ここで、Ｑ２は、ピーク要素検出部１３で用いた所定の整数である。制御変数ｑがＱ２以下である場合は、ステップＳ３３０に移行し、そうでない場合はステップＳ３８０に移行する。
【０１０３】
次に、演算処理回路１４ａは、フレーム番号を示す制御変数ｐの値をＨだけ増やす（ステップＳ３８０）。次に、演算処理回路１４ａは、フレーム番号を示す制御変数ｐの値が（Ｍ−Ｈ）未満であるか否かを判定する（ステップＳ３９０）。ここで、Ｍはフレーム総数である。制御変数ｐが（Ｍ−Ｈ）未満である場合は、ステップＳ３２０に移行し、制御変数ｐが（Ｍ−Ｈ）以上である場合は、音程領域検出部１４の処理を終了する。
【０１０４】
本実施例では、音程領域検出部１４のステップＳ３３２の処理において、所定時間Ｈ内に同一周波数バンドのピーク要素がＣ１個以上あり、且つピーク要素の値の総和Ｒが所定値Ｒ１以上である場合に音程領域であると判定しているので、音声区間を音楽区間と誤判定する可能性が更に少なくなる。
【実施例３】
【０１０５】
本発明の第３の実施例の全体の構成は図１同一である。そして、そして、音響信号入力部１１、周波数分析部１２、及びピーク要素検出部１３の各処理動作は、第１の実施例と同一であるためその説明を省略する。
【０１０６】
本実施例における音程領域検出部１４の処理フローを図１０に示すフローチャートに基づいて説明する。但し、同図におけるステップＳ３５１以外のステップの処理については第２の実施例と同一であるため、その説明を省略してステップＳ３５１のみについて説明する。
【０１０７】
同図におけるステップＳ３５１では、音程領域検出部１４の演算処理回路１４ａは、周波数バンドｑ、音程領域の先頭のフレーム番号ｐ、音程領域の最後のフレーム番号ｐ＋Ｈ−１、及び前述のステップＳ３３２で算出したＲを対応させて、音程領域検出手段１４の音程領域メモリに図１５に示すような形式で格納する。
【０１０８】
次に、音楽区間検出部１５の動作を図１１のフローチャートを参照して説明する。まず、音楽区間検出部１５の演算処理回路１５ａは、フレーム番号を示す制御変数ｉを０に設定する（ステップＳ４１０）。次に、演算処理回路１５ａは、音程領域検出部１４の音程領域メモリを参照して、音程領域開始位置がｉ以上で、且つ音程領域終了位置が（ｉ＋Ｊ）未満である音程領域の強度Ｒの総和Ｙを算出する（ステップＳ４２１）。ここで、Ｊは検出する音楽区間の最小の長さを決定する定数であり、且つＪ≧Ｈを満たす整数である。通常は、Ｈの数倍〜数十倍の長さに設定すればよい。
【０１０９】
次に、演算処理回路１５ａは、ステップＳ４２１で算出したＹがＹ１以上であるか否かを判定する（ステップＳ４３１）。ここで、Ｙ１は所定の定数である。ＹがＹ１以上である場合は、フレーム番号がｉ以上で（ｉ＋Ｊ−１）以下の区間を音楽区間であると判定してステップＳ４４０に移行する。一方、ＹがＹ１以上でない場合はステップＳ４５０に移行する。
【０１１０】
次に、演算処理回路１５ａは、音楽区間の先頭のフレーム番号ｉと、音楽区間の最後のフレーム番号（ｉ＋Ｊ−１）とを対応させて、音楽区間検出手段１５が具備する音楽区間メモリに記憶する（ステップＳ４４０）。
【０１１１】
次に、演算処理回路１５ａは、フレーム番号を示す制御変数ｉの値をＪだけ増やす（ステップＳ４５０）。次に、演算処理回路１５ａは、フレーム番号を示す制御変数ｉの値が（Ｍ−Ｊ）未満であるか否かを判定する（ステップＳ４６０）。ここで、Ｍはフレーム総数である。制御変数ｉが（Ｍ−Ｊ）未満である場合はステップＳ４２１に移行し、制御変数ｉが（Ｍ−Ｊ）以上である場合はステップＳ４７０に移行する。
【０１１２】
次に、演算処理回路１５ａは、音楽区間メモリのデータを音楽区間情報３として出力し、音楽区間検出部１５の処理を終了する（ステップＳ４７０）。なお、ある音楽区間の最後のフレーム番号と別の音楽区間の先頭のフレーム番号が連続している場合に（例えば、図１４の２行目と３行目）、これらを統合して１つの音楽区間にする処理を行うようにしてもよい。
【０１１３】
以上、説明したように、本実施例では、音程領域検出部１４のステップＳ３３２の処理において、所定時間Ｈ内に同一周波数バンドのピーク要素がＣ１個以上あり、かつピーク要素の値の総和Ｒが所定値Ｒ１以上である場合に音程領域と判定するのに加えて、音楽区間検出部１５のステップＳ４３１の処理において、所定時間Ｊ内のＲの総和Ｙを算出して音楽区間の判定を行っているので、有音程楽器が比較的大きな音で発音されていて、発音回数が少ないような場合における音楽区間の判定に好適である。
【産業上の利用可能性】
【０１１４】
以上説明したように、本発明は、音響信号を含むコンテンツから音楽区間を検出することができるので、コンテンツを内容に応じた小区間（チャプター）に分割する機能を有する持つ映像機器やコンテンツ検索装置に有用である。
【図面の簡単な説明】
【０１１５】
【図１】本発明の第１〜第３の実施例における音響信号分析装置１の全体構成を示すブロック図である。
【図２】本発明の第１〜第３の実施例における周波数分析部１２の処理動作を説明するためのフローチャートである。
【図３】本発明の第１〜第３の実施例における周波数分析部１２のフレーム作成動作を説明するための図である。
【図４】本発明の第１〜第３の実施例における周波数分析部１２の周波数成分計算動作で使用するフィルタ群の特性を模式的に示した図である。
【図５】本発明の第１〜第３の実施例における周波数分析部１２で作成された行列データの特性を模式的に示した図である。
【図６】本発明の第１〜第３の実施例におけるピーク要素検出部１３の処理動作を説明するためのフローチャートである。
【図７】本発明の第１の実施例における音程領域検出部１４の処理動作を説明するためのフローチャートである。
【図８】本発明の第１及び第２の実施例における音楽区間検出部１５の処理動作を説明するためのフローチャートである。
【図９】本発明の第２の実施例における音程領域検出部１４の処理動作を説明するためのフローチャートである。
【図１０】本発明の第３の実施例における音程領域検出部１４の処理動作を説明するためのフローチャートである。
【図１１】本発明の第３の実施例における音楽区間検出部１５の処理動作を説明するためのフローチャートである。
【図１２】本発明の第１〜第３の実施例におけるピーク要素検出部１３のデータ格納形式を示した図である。
【図１３】本発明の第１及び第２の実施例における音程領域検出部１４のデータ格納形式を示した図である。
【図１４】本発明の第１〜第３の実施例における音楽区間検出部１５のデータ格納形式を示した図である。
【図１５】本発明の第３の実施例における音程領域検出部１４のデータ格納形式を示した図である。
【符号の説明】
【０１１６】
１  音響信号分析装置
２  音響信号
３  音楽区間情報
１１  音響信号入力部
１２  周波数分析部
１３  ピーク要素検出部
１４  音程領域検出部
１５  音楽区間検出部
１１ａ〜１５ａ  演算処理回路
【図１】
0004735398.tif 000020
【図２】
0004735398.tif 000021
【図３】
0004735398.tif 000022
【図４】
0004735398.tif 000023
【図５】
0004735398.tif 000024
【図６】
0004735398.tif 000025
【図７】
0004735398.tif 000026
【図８】
0004735398.tif 000027
【図９】
0004735398.tif 000028
【図１０】
0004735398.tif 000029
【図１１】
0004735398.tif 000030
【図１２】
0004735398.tif 000031
【図１３】
0004735398.tif 000032
【図１４】
0004735398.tif 000033
【図１５】
0004735398.tif 000034