JP2015200685A - アタック位置検出プログラムおよびアタック位置検出装置 - Google Patents

アタック位置検出プログラムおよびアタック位置検出装置 Download PDF

Info

Publication number
JP2015200685A
JP2015200685A JP2014077506A JP2014077506A JP2015200685A JP 2015200685 A JP2015200685 A JP 2015200685A JP 2014077506 A JP2014077506 A JP 2014077506A JP 2014077506 A JP2014077506 A JP 2014077506A JP 2015200685 A JP2015200685 A JP 2015200685A
Authority
JP
Japan
Prior art keywords
attack
acoustic
waveform
attack position
sound
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2014077506A
Other languages
English (en)
Inventor
大地 渡邉
Daichi Watanabe
大地 渡邉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yamaha Corp
Original Assignee
Yamaha Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yamaha Corp filed Critical Yamaha Corp
Priority to JP2014077506A priority Critical patent/JP2015200685A/ja
Publication of JP2015200685A publication Critical patent/JP2015200685A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Auxiliary Devices For Music (AREA)

Abstract

【課題】予め複数のテンプレートを用意することなく、音響信号から高い精度で効率的に特定のアタック発生源に対応するアタック位置を検出することが可能なアタック位置検出プログラムおよびアタック位置検出装置を提供する。
【解決手段】アタック位置検出装置100において、音響パワー波形生成部3は、時間軸上の音響信号から音響パワー波形を生成する。周波数帯域設定部4は、一または複数の周波数帯域を設定する。テンプレート波形抽出部6は、音響パワー波形からアタックに相当する部分をテンプレート波形として抽出する。マッチング処理部7は、音響パワー波形に対するテンプレート波形のマッチング処理を行う。アタック位置検出部8は、マッチング処理の結果に基づいて時間軸上の音響信号におけるアタック位置を検出する。
【選択図】図1

Description

本発明は、音響信号のアタック位置を検出するアタック位置検出プログラムおよびアタック位置検出装置に関する。
音響信号からドラム音等のリズム楽器の音の発生時刻を検出する方法が提案されている。例えば、非特許文献1には、テンプレートの適応およびマッチングによりドラム音を認識する方法が記載されている。テンプレートの適応では、適当なドラム音スペクトルを初期テンプレートとして用意する。初期テンプレートを時間方向へずらしながら音響信号の部分スペクトルと比較し、ドラム音スペクトルを含んでいると推定される部分スペクトルを抽出する。抽出された部分スペクトルに基づいて初期テンプレートを更新する。この操作を繰り返すことにより、ドラム音の発生時刻の検出に最適なテンプレートを得る。その後、最適なテンプレートと音響信号の部分スペクトルとのマッチングを行う。それにより、ドラム音の発生時刻を検出することができる。
「IEEE Transactions on Audio,Speech,and Language Processing」、2007年1月、Vol.15、No.1、p.333−345
音響信号におけるリズム音のアタック(立ち上がり)の発生時点(以下、アタック位置と呼ぶ)を検出することにより、音響信号からリズムパターンを抽出することができる。
上記の非特許文献1の方法を用いると、音響信号においてアタック位置を検出することが可能である。しかしながら、非特許文献1の方法では、リズム楽器の種類ごとに初期テンプレートを用意する必要がある。また、同じ種類の楽器の演奏を録音することにより得られる音響信号であっても、演奏方法、録音状態および楽器の個体差等により音の波形が異なる。そのため、適当な初期テンプレートを選択することは容易でない。また、たとえ上記のテンプレートの適応を行った場合でも、初期テンプレートの選択によってマッチングの精度が大きく異なる。
本発明の目的は、予め複数のテンプレートを用意することなく、音響信号から高い精度で効率的に特定のアタック発生源に対応するアタック位置を検出することが可能なアタック位置検出プログラムおよびアタック位置検出装置を提供することである。
本発明に係るアタック位置検出プログラムは、時間軸上の音響信号から音響パワーに関する音響パワー情報の時間分布を音響パワー情報分布として生成する生成ステップと、音響パワー情報分布から一打中の少なくともアタックに相当する部分をテンプレート波形として抽出する抽出ステップと、音響パワー情報分布に対するテンプレート波形のマッチング処理により時間軸上の音響信号におけるアタック位置を検出する検出ステップとを、コンピュータに実行させる。
本発明に係るアタック位置検出装置は、時間軸上の音響信号から音響パワーに関する音響パワー情報の時間分布を音響パワー情報分布として生成する生成手段と、音響パワー情報分布から一打中の少なくともアタックに相当する部分をテンプレート波形として抽出する抽出手段と、音響パワー情報分布に対するテンプレート波形のマッチング処理により時間軸上の音響信号におけるアタック位置を検出する検出手段とを備える。
音響パワー情報分布においては、特定のアタック発生源によるアタックに相当する部分とそのアタック以外の部分とで変化が異なる。そのため、一打中の少なくともアタックに相当する部分をテンプレート波形として容易に抽出することができる。また、音響パワー情報分布は検出対象であるアタックに相当する部分を含む音響信号から生成されるので、テンプレート波形が検出対象であるアタック発生源によるアタックに正確に適合する。さらに、目的のアタック発生源に対応するテンプレート波形の選択作業が不要である。したがって、予めアタック発生源ごとおよび音響信号ごとに複数のテンプレート波形を用意することなく、特定のアタック発生源に対応するアタック位置を高い精度で効率的に検出することが可能である。
アタック位置検出プログラムは、一または複数の周波数帯域を設定する設定ステップをさらにコンピュータに実行させ、生成ステップは、設定された周波数帯域ごとに音響パワー情報分布を生成するステップを含んでもよい。
この場合、設定された各周波数帯域に対応するそれぞれ異なるアタック発生源ついて、音響信号に含まれる一または複数のアタック位置を正確に検出することができる。
生成ステップは、時間軸上の音響信号を周波数軸上の音響信号に変換するステップと、周波数軸上の音響信号に基づいて設定された各周波数帯域について単位時間ごとの音響パワー情報を算出するステップと、各周波数帯域について単位時間ごとの音響パワー情報から音響パワー情報分布を生成するステップとを含んでもよい。
この場合、周波数帯域によって音響パワー情報分布が異なるため、検出対象の各アタック発生源の音色の主要な周波数帯域について音響パワー情報分布を生成することにより、各アタック発生源に対応するアタック位置の検出の精度が向上する。
音響パワー情報は、音響パワー、または音響パワーの変化率を含んでもよい。
この場合、音響パワーの時間分布および音響パワーの変化率の時間分布においては、アタックに相当する部分は他の部分に比べて急峻に変化する。そのため、アタックに相当する部分をテンプレート波形として容易かつ正確に抽出することができる。
本発明によれば、予め複数のテンプレートを用意することなく、音響信号から高い精度で効率的に特定のアタック発生源に対応するアタック位置を検出することが可能となる。
本発明の一実施の形態に係るアタック位置検出装置の構成を示す機能ブロック図である。 図1のアタック位置検出装置のハードウエア構成の一例を示すブロック図である。 主として音響パワー波形の算出方法を説明するための波形図である。 主として音響パワー波形の算出方法を説明するための波形図である。 テンプレート波形の抽出処理を示すフローチャートである。 テンプレート波形の抽出処理を示すフローチャートである。 図1のアタック位置検出装置により行われるアタック位置検出処理を示すフローチャートである。 アタック位置検出処理の一例を示す波形図である。
以下、本発明の実施の形態に係るアタック位置検出装置およびアタック位置検出プログラムについて図面を用いて詳細に説明する。
(1)アタック位置検出装置の機能的な構成
図1は本発明の一実施の形態に係るアタック位置検出装置100の構成を示す機能ブロック図である。
図1のアタック位置検出装置100は、音響信号記憶部1、周波数変換部2、音響パワー波形生成部3、周波数帯域設定部4、音響パワー波形記憶部5、テンプレート波形抽出部6、マッチング処理部7およびアタック位置検出部8を含む。
音響信号記憶部1は、音響信号(オーディオデータ)を記憶する。音響信号とは、楽曲等の音の時間的変化を表すデータである。ここで、楽曲は、広く音楽の曲を意味し、楽器の演奏による曲および人の声による曲を含む。本実施の形態では、音響信号は、リズム楽器等によるリズムパターンを含み、例えば、リズム音を繰り返し含むループ素材である。リズム楽器としては、バスドラム、スネアドラム、タム、ハイハット、その他のシンバル類、タブラおよびジャンベ等が挙げられる。リズム音には、リズム楽器の音、リムショット、クラップ(手拍子)等がある。また、リズム音のアタックを発生するアタック発生源には、リズム楽器、リム、人の手等がある。
周波数変換部2は、音響信号記憶部1に記憶される音響信号をFFT(高速フーリエ変換)により一定のフレームごとに周波数軸上(周波数領域)の音響信号に変換する。ここで、フレームはFFTの処理単位である。
周波数帯域設定部4は、音響信号の周波数帯域のうち検出対象であるリズム音を含む一または複数の周波数帯域を設定する。この場合、周波数帯域設定部4は、例えば、ユーザの操作に基づいて一または複数の周波数帯域を設定する。ユーザは、例えば、低周波数帯域、中間周波数帯域および高周波数帯域を設定することができる。低周波数帯域は、例えば20Hz〜100Hzであり、中間周波数帯域は、例えば100Hz〜300Hzであり、高周波数帯域は、例えば300Hz〜8kHzである。低周波数帯域には、例えば、バスドラムの音が含まれる。また、中間周波数帯域には、例えば、スネアドラム、タム、リムショットまたはクラップの音が含まれる。さらに、高周波数帯域には、例えば、ハイハットまたはその他のシンバル類の音が含まれる。ユーザは、周波数帯域の数および各周波数帯域の範囲を任意に変更することができる。
音響パワー波形生成部3は、周波数変換部2により得られた周波数軸上の音響信号に基づいて、周波数帯域設定部4により設定された周波数帯域ごとに音響パワー情報分布として音響パワー波形を生成する。音響パワー波形の生成方法の詳細については後述する。音響パワー波形は、時間軸上での音響信号の音響パワーの変化(分布)を表す。音響パワー波形記憶部5は、音響パワー波形生成部3により生成された音響パワー波形を記憶する。
テンプレート波形抽出部6は、音響パワー波形記憶部5に記憶される音響パワー波形から検出対象であるリズム音のアタックを含むテンプレート波形を抽出する。後述するように、テンプレート波形は、音響パワー波形の一部である。
マッチング処理部7は、音響パワー波形記憶部5に記憶される音響パワー波形に対してテンプレート波形抽出部6により抽出されたテンプレート波形のマッチング処理を行う。アタック位置検出部8は、マッチング処理部7によるマッチング処理の結果に基づいて、検出対象であるリズム音のアタック位置を検出する。検出されたアタック位置は、時間軸上の音響信号におけるリズム音の立ち上がりのタイミングである。
(2)アタック位置検出装置100のハードウエア構成
図2は図1のアタック位置検出装置100のハードウエア構成の一例を示すブロック図である。
図2のアタック位置検出装置100は、CPU(中央演算処理装置)110、ROM(リードオンリメモリ)120、RAM(ランダムアクセスメモリ)130、記憶装置140、表示装置150、入力装置160および出力装置170を含む。
ROM120は、例えば不揮発性メモリからなり、システムプログラムおよびアタック位置検出プログラム等のコンピュータプログラムを記憶する。RAM130は、例えば揮発性メモリからなり、CPU110の作業領域として用いられるとともに、各種データを一時的に記憶する。CPU110は、ROM120に記憶されたアタック位置検出プログラムをRAM130上で実行することにより後述するアタック位置検出処理を行う。この場合、図1の各構成要素の機能が実現される。
記憶装置140は、ハードディスク、光学ディスク、磁気ディスクまたはメモリカード等の記録媒体を含む。この記憶装置140には、図1の音響信号記憶部1および音響パワー波形記憶部5が構成される。上記のアタック位置検出プログラムが記憶装置140に記憶されてもよい。
なお、本実施の形態におけるアタック位置検出プログラムは、コンピュータが読み取り可能な記録媒体に格納された形態で提供されてROM120または記憶装置140にインストールされてもよく、通信網を介した配信の形態で提供されてROM120または記憶装置140にインストールされてもよい。
表示装置150は、液晶表示装置、有機EL(エレクトロルミネッセンス)表示装置またはプラズマディスプレイ装置等からなる。入力装置160は、マウス、キーボード、および音響入力端子等を含む。
表示装置150および入力装置160は、アタック位置検出処理の開始の指示、検出対象であるリズム音を含む周波数帯域の設定、およびアタック位置の検出結果の表示等に用いられる。表示装置150および入力装置160がタッチパネルとして一体化されてもよい。
出力装置170は、音響出力端子およびヘッドフォン等を含む。出力装置170が音響信号を音として出力するスピーカを含んでもよい。出力装置170の音響出力端子からは音響信号が出力される。また、アタック位置に基づいて検出されるリズムパターンが出力装置170の音響出力端子から出力されてもよい。
アタック位置検出装置100は、CPU110の代わりにDSP(Digital Signal Processor)を備えてもよく、またはCPU110に加えてDSPを備えてもよい。また、図1の各構成要素の一部または全てが電子回路等のハードウエアにより構成されてもよい。
(3)音響パワー波形の算出
図3および図4は主として音響パワー波形の算出方法を説明するための波形図である。図3および図4において、tは時間(フレーム)を表し、fは周波数を表し、Pは音響パワーを表す。
図3の左上部分に音響信号ASの一例が示される。横軸は時間tを表し、縦軸は振幅を表す。図3の例では、音響信号ASはフレームF1,F2,…,Fnに区分される。nは自然数である。まず、時間軸上の音響信号ASをFFTによりフレームごとに周波数軸上の音響信号に変換する。それにより、図3の左部分に示されるように、フレームF1〜Fnの各々についての周波数軸上の音響信号が得られる。なお、図3の左部分には、周波数軸上の音響信号の波形は図示されていない。各フレームF1〜Fnについての音響信号に一または複数の周波数帯域が設定される。図3の例では、低周波数帯域、中間周波数帯域および高周波数帯域が設定される。
次に、フレームF1〜Fnの各々について、音響信号を構成する周波数成分ごとの音響パワーを算出する。それにより、図3の中央部に示されるような結果が得られる。
さらに、フレームF1〜Fnの各々について、各周波数帯域内の複数の周波数成分の音響パワーの合計を算出し、算出結果を各周波数帯域の音響パワーとする。それにより、図3の右部分に示されるような結果が得られる。
次に、フレームF1〜Fnの周波数帯域ごとに時間軸上での音響パワーの分布を音響パワー波形として生成する。図3の例では、フレームF1〜Fnの低周波数帯域の音響パワーから図4(a)に示す時間軸上での音響パワー波形が生成される。また、フレームF1〜Fnの中間周波数帯域の音響パワーから図4(b)に示す時間軸上での音響パワー波形が生成される。さらに、フレームF1〜Fnの高周波数帯域の音響パワーから図4(c)に示す時間軸上での音響パワー波形が生成される。
フレーム長(フレームサイズ)は、例えば256サンプル〜4096サンプルであり、サンプリング周波数は、例えば44.1kHzである。フレーム長が大きいほど周波数分解能が高くなる。一方、フレーム長が小さいほど時間分解能が高くなる。例えば、バスドラム等の低周波数帯域のアタック位置の検出の場合には、必要な時間分解能を確保できる範囲で周波数分解能を高くするためにフレーム長を大きめに設定することが好ましい。それにより、低周波数帯域のアタック位置の検出精度を向上させることができる。一方、例えばハイハットのように連打が予想される場合には、時間分解能を高くするためにフレーム長を小さめに設定することが好ましい。それにより、複数種類のリズムの差異を識別することができる。
(4)テンプレート波形の抽出処理
図5および図6はテンプレート波形の抽出処理を示すフローチャートである。次に、図4(a)および図5を参照しながらテンプレート波形抽出部6によるテンプレート波形の抽出処理の一例を説明する。ここでは、一例として、図4(a)に示す低周波数帯域におけるテンプレート波形の抽出処理について説明する。
まず、テンプレート波形抽出部6は、音響パワー波形内で最大値Maxを有するフレームの位置を最大フレーム位置pmとして検出する(ステップS1)。次に、最大値Maxの一定率の音響パワーを第1のしきい値Thとして決定する(ステップS2)。ここで、一定率として、0以上1未満の任意の値を設定することができる。本例では、一定率は0.3である。
次いで、音響パワー波形において最大フレーム位置pmから時間軸上で前方向に向って第1のしきい値Thに等しい音響パワーを有するフレームを探索し(ステップS3)、第1のしきい値Thに等しい音響パワーを有するフレームが検出されたか否かを判定する(ステップS4)。
第1のしきい値Thに等しい音響パワーを有するフレームが検出された場合には、検出されたフレームをテンプレート波形の先頭フレームp1として決定する(ステップS5)。最大フレーム位置pmが音響パワー波形の開始フレームに近い場合には、最大フレーム位置pmよりも以前に第1のしきい値Thに等しい音響パワーが存在しないことがある。そのため、第1のしきい値Thに等しい音響パワーを有するフレームが検出されない場合には、音響パワー波形の開始フレームをテンプレート波形の先頭フレームとして決定する(ステップS6)。
次いで、音響パワー波形において最大フレーム位置pmから時間軸上で後方向に向って第1のしきい値Thに等しい音響パワーを有するフレームを探索し(ステップS7)、第1のしきい値Thに等しい音響パワーを有するフレームが検出されたか否かを判定する(ステップS8)。
第1のしきい値Thに等しい音響パワーを有するフレームが検出された場合には、検出されたフレームをテンプレート波形の末尾フレームp2として決定する(ステップS9)。最大フレーム位置pmが音響パワー波形の最終フレームに近い場合には、最大フレーム位置pmよりも以後に第1のしきい値Thに等しい音響パワーが存在しないことがある。そのため、第1のしきい値Thに等しい音響パワーを有するフレームが検出されない場合には、音響パワー波形の最終フレームをテンプレート波形の末尾フレームとして決定する(ステップS10)。
最後に、音響パワー波形において、決定された先頭フレームp1から末尾フレームp2までをテンプレート波形TPとして抽出する(ステップS11)。
なお、例えば一打(発音)の持続時間の長いバスドラムを細かく連打する場合、最初のアタックの音響パワーが減衰する前に次のアタックが重なって複数のアタックを含むテンプレート波形が抽出される可能性がある。このような場合には、上記の方法で抽出されたテンプレート波形の最初の一定時間の部分をテンプレート波形とする。この場合の一定時間は、例えばバスドラムの一打分の演奏操作の時間である。また、音響パワーが第1のしきい値Th以下に低下しない場合でも、アタックとみなすことができる音響パワー波形の部分をテンプレート波形として抽出してもよい。例えば、音響パワーの一定時間の減衰と一定時間の増加との境界をテンプレート波形の先頭フレームまたは末尾フレームとしてテンプレート波形を抽出してもよい。
(5)アタック位置検出装置100の全体の動作
図7は図1のアタック位置検出装置100により行われるアタック位置検出処理を示すフローチャートである。また、図8はアタック位置検出処理の一例を示す波形図である。図7のアタック位置検出処理は、図2のCPU110がROM120または記憶装置140に記憶されたアタック位置検出プログラムを実行することに行われる。
図8の最上段には、図1の音響パワー波形記憶部5に記憶される音響信号の一例が示される。まず、周波数帯域設定部4は、検出対象となるリズム音を含む一または複数の周波数帯域を設定する(ステップS21)。初期状態では、予め定められた一または複数の周波数帯域が設定される。ユーザは、通常、音響信号に含まれるリズム音の種類を認識しているので、図2の入力装置160の操作により、音響信号に応じて周波数帯域の数および範囲を変更することができる。さらに、ユーザがリズム音の種類を入力することにより周波数帯域設定部4がそのリズム音の種類に応じた周波数帯域を設定してもよい。例えば、音響信号がバスドラム、スネアドラムおよびハイハットの音を含む場合には、低周波数帯域、中間周波数帯域および高周波数帯域が設定される。
周波数変換部2は、音響信号にFFTを行う(ステップS22)。それにより、時間軸上の音響信号が周波数軸上の音響信号に変換される。
次に、音響パワー波形生成部3は、周波数軸上の音響信号の周波数成分ごとの音響パワーをフレームごとに算出し(ステップS23)、周波数帯域設定部4により設定された各周波数帯域における音響パワーの合計をフレームごとに算出する(ステップS24)。また、音響パワー波形生成部3は、周波数帯域ごとに時間軸上での音響パワーの分布を音響パワー波形として生成する(ステップS25)。周波数帯域ごとの音響パワー波形は、音響パワー波形記憶部5に記憶される。図8の2段目には、音響パワー波形の一例が示される。
テンプレート波形抽出部6は、周波数帯域設定部4により設定された一または複数の周波数帯域のうち一の周波数帯域を設定された選択順序に従って選択する(ステップS26)。具体的には、複数の周波数帯域にそれぞれ属する複数のリズム音のアタックが検出対象である場合には、複数の周波数帯域の選択順序が予め設定される。初期設定では、低周波数帯域、中間周波数帯域および高周波数帯域が順に選択される。ユーザは、周波数帯域の選択順序を設定または変更することができる。さらに、テンプレート波形抽出部6は、音響パワー波形記憶部5に記憶された音響パワー波形のうち選択された周波数帯域の音響パワー波形に基づいて、図5および図6のテンプレート波形の抽出処理によりテンプレート波形を抽出する(ステップS27)。
マッチング処理部7は、選択された周波数帯域の音響パワー波形に対するテンプレート波形のマッチング処理を行う(ステップS28)。マッチング処理では、音響パワー波形に対してテンプレート波形を時間軸上で1フレームずつずらしながら、音響パワー波形とテンプレート波形との一致度を示す相関関数の値を算出する。マッチング処理部7は、マッチング処理の結果に基づいてアタック位置を検出する(ステップS29)。マッチング処理およびアタック位置の検出方法の詳細については後述する。
その後、マッチング処理部7は、周波数帯域設定部4により設定された周波数帯域のうち未だアタック位置が検出されていない他のリズム音に対応する周波数帯域があるか否かを判定する(ステップS30)。他のリズム音に対応する周波数帯域がある場合には、ステップS26に戻り、その中のいずれかの周波数帯域についてステップS26〜S30の処理を行う。ステップS30において該当する他の周波数帯域がない場合には、アタック位置検出処理を終了する。
ここで、ステップS28のマッチング処理で用いられる相関関数について説明する。相関関数C(τ)は次式で表される。
Figure 2015200685
上式(1)において、fはテンプレート波形のフレームごとの音響パワーであり、fは音響パワー波形のフレームごとの音響パワーである。tは時間(フレーム)であり、τはテンプレート波形のフレーム単位のずらし時間である。Nはテンプレート波形のフレーム数であり、Nは音響パワー波形のフレーム数である。ずらし時間τは、0≦τ≦N−Nである。
ずらし時間τを0からN−Nまで変化させ、複数の相関関数C(τ)の値を算出する。上式(1)の相関関数C(τ)を用いる場合、相関関数C(τ)の値が小さいほど音響パワー波形とテンプレート波形との一致度が高い。
また、相関関数C(τ)の値の移動平均を用いて第2のしきい値を算出する。あるフレームでの第2のしきい値を求めるための移動平均は、そのフレーム以前の一定数のフレームにおける相関関数C(τ)の値の平均である。
図8の3段目には、相関関数C(τ)の値の変化が実線で示され、第2のしきい値の変化が点線で示される。また、図8の最下段には、アタック位置の検出結果が棒線で示される。
本実施の形態では、相関関数C(τ)の値が第2のしきい値を一定期間(一定のフレーム数)以上超えた場合における最初のフレームをアタック位置として検出する。図8の例では、4箇所において、実線で示される相関関数C(τ)の値が点線で示される第2のしきい値を一定期間(1フレームが2048サンプルの場合、例えば2フレーム)以上超えている。アタック位置は、それらの期間の最初のフレームとなるので、相関関数C(τ)の値が第2のしきい値を超えたフレームが、棒線で示すようにアタック位置として検出される。
相関関数C(τ)の値の変化は、アタック位置で下向きのピークを有する。しかし、音響パワー波形の種類によっては、相関関数C(τ)の値の変化においてアタック位置以外の箇所で細かいピークが現れることがある。例えば、アタック後に音量が減衰する区間で細かいピークが発生する。この場合、相関関数C(τ)の値のピーク位置をアタック位置として検出すると、細かいピークの位置をアタック位置として誤検出する可能性がある。そこで、本実施の形態では、アタック位置の誤検出を防止するために、相関関数C(τ)の値の移動平均を第2のしきい値として用いてアタック位置を検出する。それにより、無音状態からアタックによる急峻な音響パワーの変化を検出することができるとともに、アタック後の音量が減衰している区間での細かいピークの検出を防止することができる。
また、本来のアタック以外の細かいピークにより相関関数C(τ)の値が第2のしきい値を仮に超えてしまった場合でも、相関関数C(τ)の値が第2のしきい値を超える時間は短い。そのため、相関関数C(τ)の値が第2のしきい値を一定期間(例えば2フレーム)以上超えた場合における最初のフレームをアタック位置として検出することにより、アタック位置の誤検出を防止することができる。
第2のしきい値として、例えば、5フレーム程度における相関関数C(τ)の値の移動平均を用いる。細かいアタックを検出する場合には、移動平均のフレーム数を少なめ(例えば3フレーム程度)に設定し、テンプレート波形と類似するアタックのみを検出する場合には、移動平均のフレーム数を多め(例えば7フレーム程度)に設定する。また、移動平均に1以上の定数を乗じた値を第2のしきい値として用いてもよい。定数の一例は1.15である。細かいアタックを検出する場合には定数を小さめに設定し、テンプレート波形と類似するアタックのみを検出する場合には定数を大きめに設定する。なお、移動平均に定数を加算した値を第2のしきい値として用いてもよい。
(6)実施の形態の効果
以上のように、本実施の形態によれば、時間軸上の音響信号から音響パワー波形が生成され、音響パワー波形からアタックに相当する部分がテンプレート波形として抽出される。さらに、音響パワー波形に対するテンプレート波形のマッチング処理により時間軸上の音響信号におけるアタック位置が検出される。
この場合、音響パワー波形において、アタックに相当する部分とアタック以外の部分とで変化が異なる。そのため、アタックに相当する部分をテンプレート波形として容易に抽出することができる。また、音響パワー波形は検出対象であるアタックを含む音響信号から生成されるので、テンプレート波形が検出対象であるアタックに正確に適合する。さらに、テンプレート波形を別の音響パワー波形から選択する作業が不要である。したがって、検出対象である各アタック発生源または各音響信号のために予め多数のテンプレート波形を用意することなく、アタック位置を高い精度で効率的に検出することが可能である。
また、設定された一または複数の周波数帯域ごとに音響パワー波形が生成されるので、一または複数の周波数帯域にそれぞれ含まれる一または複数のアタックを正確に検出することができる。したがって、音響信号に異なる周波数帯域の複数種類のリズム音が含まれる場合に、複数種類のリズム音のアタックを容易に識別し、それぞれのリズム音のアタック位置を正確に検出することができる。
さらに、検出されたアタック位置に基づいて音響信号におけるリズムパターンを抽出することができる。抽出されたリズムパターンは、例えば、抽出されたリズムパターンに類似するリズムパターンを有する楽曲を検索すること、抽出されたリズムパターンに合わせた他のパートの演奏データを作成すること、または抽出されたリズムパターンに基づいて別のループ素材を作成することに活用することができる。
(7)他の実施の形態
(a)上記実施の形態では、音響パワー情報として音響パワーを用い、音響パワー情報分布として時間軸上の音響パワー波形を用いているが、音響パワー情報および音響パワー情報分布はこれらに限定されない。例えば、音響パワー情報としてスペクトル差分(周波数成分ごとの音響パワーの時間差分の総和)を用い、音響パワー情報分布としてスペクトル差分の時間軸上の波形を用いてもよい。具体的には、周波数成分ごとの隣接するフレームにおける音響パワーの差分の絶対値を算出することにより時間軸上での音響パワーの変化率(微分)を示す波形が生成される。アタック位置では、音響パワーの変化率が大きくなるため、スペクトル差分の時間軸上の波形に基づいてアタック位置を検出することができる。
(b)音響信号が1種類のリズム音のみを含む場合には、単一の周波数帯域を設定してもよい。この場合、時間軸上の音響信号を周波数軸上の音響信号に変換せずに、時間軸上の音響信号から時間軸上の音響パワー波形を生成してもよい。
(c)マッチング処理における相関関数は、上式(1)の相関関数に限定されない。上式(1)で表される相関関数C(τ)の代わりに、次式で表される相関関数C(τ)を用いてもよい。
Figure 2015200685
上式(2)において、fはテンプレート波形のフレームごとの音響パワーであり、fは音響パワー波形のフレームごとの音響パワーである。tは時間(フレーム)であり、τはテンプレート波形のフレーム単位のずらし時間である。Nはテンプレート波形のフレーム数であり、Nは音響パワー波形のフレーム数である。ずらし時間τは、0≦τ≦N−Nである。
ずらし時間τを0からN−Nまで変化させ、複数の相関関数C(τ)の値を算出する。上式(2)の相関関数C(τ)を用いる場合、相関関数C(τ)の値が大きいほど音響パワー波形とテンプレート波形との一致度が高い。
(d)音響信号は、例えば1小節から数小節の長さを有するループ素材であってもよい。例えば、ドラムス系のループ素材は、音楽作成プログラムを用いてバスドラムおよびハイハット等のリズム楽器の音を複写および貼り付けにより作成される場合がある。このような場合、テンプレート波形に適合するアタックを容易かつ正確に検出することができる。
(e)上記実施の形態では、音響信号が図1の音響信号記憶部1に記憶されるが、音響信号がインターネット上のサーバに記憶され、アタック位置検出装置100がサーバに記憶された音響信号におけるアタック位置を検出してもよい。
(f)上記実施の形態に係るアタック位置検出装置100は、CPU110等のハードウエアおよび音響信号分析制御プログラム等のソフトウエアにより実現されるが、図1のアタック位置検出装置100の各構成要素が電子回路等のハードウエアにより実現されてもよい。
(g)相関関数C(τ)の値からアタック位置を検出する方法は、相関関数C(τ)の移動平均を第2のしきい値として用いる方法に限定されない。音響パワー波形に本来のアタック以外の細かいピークが現れない場合には、相関関数C(τ)の値の変化におけるピークの位置をアタック位置として検出してもよい。あるいは、例えば相関関数C(τ)の取り得る値の範囲内のある値を移動平均の代わりに、第2のしきい値として採用してもよい。さらに、アタック位置の検出結果を見ながらユーザが第2のしきい値を調整できる構成であってもよい。
(h)上記実施の形態では、テンプレート波形の先頭フレームおよび末尾フレームを決定するために共通の第1のしきい値を用いているが、テンプレート波形の先頭フレームおよび末尾フレームを決定するために異なるしきい値を用いてもよい。また、第1のしきい値を記憶された周波数帯域ごとの音響パワー波形の特徴等に基づいて自動的に調整してもよい。例えば、ある周波数帯域における全体の音量が大きく、音響パワー波形の最小値が大きい場合には、第1のしきい値が音響パワー波形の最小値以下にならないように、第1のしきい値を最小値と最大値との間に自動的に調整する。
(8)請求項の各構成要素と実施の形態の各部との対応
以下、請求項の各構成要素と実施の形態の各部との対応の例について説明するが、本発明は下記の例に限定されない。請求項の各構成要素として、請求項に記載されている構成または機能を有する他の種々の要素を用いることができる。
上記実施の形態では、ステップS22〜S25が生成ステップの例であり、ステップS27が抽出ステップの例であり、ステップS28,S29が検出ステップの例であり、ステップS21が設定ステップの例であり、CPU110がコンピュータの例である。また、音響パワー、または音響パワーの差分スペクトルが音響パワー情報の例であり、音響パワー波形、または音響パワーの差分スペクトルの波形が音響パワー情報分布の例である。
さらに、CPU110または音響パワー波形生成部3が生成手段の例であり、CPU110またはテンプレート波形抽出部6が抽出手段の例であり、CPU110、またはマッチング処理部7およびアタック位置検出部8が検出手段の例である。
本発明は、音響信号のリズム音等のアタック位置の検出に利用することができる。
1…音響信号記憶部,2…周波数変換部,3…音響パワー波形生成部,4…周波数帯域設定部,5…音響パワー波形記憶部,6…テンプレート波形抽出部,7…マッチング処理部,8…アタック位置検出部,100…アタック位置検出装置,110…CPU,120…ROM,130…RAM,140…記憶装置,150…表示装置,160…入力装置,170…出力装置

Claims (5)

  1. 時間軸上の音響信号から音響パワーに関する音響パワー情報の時間分布を音響パワー情報分布として生成する生成ステップと、
    前記音響パワー情報分布から一打中の少なくともアタックに相当する部分をテンプレート波形として抽出する抽出ステップと、
    前記音響パワー情報分布に対する前記テンプレート波形のマッチング処理により前記時間軸上の音響信号におけるアタック位置を検出する検出ステップとを、コンピュータに実行させる、アタック位置検出プログラム。
  2. 一または複数の周波数帯域を設定する設定ステップをさらに前記コンピュータに実行させ、
    前記生成ステップは、前記設定された周波数帯域ごとに前記音響パワー情報分布を生成するステップを含む、請求項1記載のアタック位置検出プログラム。
  3. 前記生成ステップは、
    前記時間軸上の音響信号を周波数軸上の音響信号に変換するステップと、
    前記周波数軸上の音響信号に基づいて前記設定された各周波数帯域について単位時間ごとの音響パワー情報を算出するステップと、
    各周波数帯域について前記単位時間ごとの音響パワー情報から前記音響パワー情報分布を生成するステップとを含む、請求項2記載のアタック位置検出プログラム。
  4. 前記音響パワー情報は、音響パワー、または音響パワーの変化率を含む、請求項1〜3のいずれか一項に記載のアタック位置検出プログラム。
  5. 時間軸上の音響信号から音響パワーに関する音響パワー情報の時間分布を音響パワー情報分布として生成する生成手段と、
    前記音響パワー情報分布から一打中の少なくともアタックに相当する部分をテンプレート波形として抽出する抽出手段と、
    前記音響パワー情報分布に対する前記テンプレート波形のマッチング処理により前記時間軸上の音響信号におけるアタック位置を検出する検出手段とを備える、アタック位置検出装置。
JP2014077506A 2014-04-04 2014-04-04 アタック位置検出プログラムおよびアタック位置検出装置 Pending JP2015200685A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014077506A JP2015200685A (ja) 2014-04-04 2014-04-04 アタック位置検出プログラムおよびアタック位置検出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014077506A JP2015200685A (ja) 2014-04-04 2014-04-04 アタック位置検出プログラムおよびアタック位置検出装置

Publications (1)

Publication Number Publication Date
JP2015200685A true JP2015200685A (ja) 2015-11-12

Family

ID=54551998

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014077506A Pending JP2015200685A (ja) 2014-04-04 2014-04-04 アタック位置検出プログラムおよびアタック位置検出装置

Country Status (1)

Country Link
JP (1) JP2015200685A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108320756A (zh) * 2018-02-07 2018-07-24 广州酷狗计算机科技有限公司 一种检测音频是否是纯音乐音频的方法和装置
WO2019043798A1 (ja) * 2017-08-29 2019-03-07 Pioneer DJ株式会社 楽曲解析装置および楽曲解析プログラム
JP2020154149A (ja) * 2019-03-20 2020-09-24 ヤマハ株式会社 オーディオ信号の処理方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019043798A1 (ja) * 2017-08-29 2019-03-07 Pioneer DJ株式会社 楽曲解析装置および楽曲解析プログラム
JPWO2019043798A1 (ja) * 2017-08-29 2020-08-27 AlphaTheta株式会社 楽曲解析装置および楽曲解析プログラム
US11205407B2 (en) 2017-08-29 2021-12-21 Alphatheta Corporation Song analysis device and song analysis program
CN108320756A (zh) * 2018-02-07 2018-07-24 广州酷狗计算机科技有限公司 一种检测音频是否是纯音乐音频的方法和装置
CN108320756B (zh) * 2018-02-07 2021-12-03 广州酷狗计算机科技有限公司 一种检测音频是否是纯音乐音频的方法和装置
JP2020154149A (ja) * 2019-03-20 2020-09-24 ヤマハ株式会社 オーディオ信号の処理方法
WO2020189107A1 (ja) * 2019-03-20 2020-09-24 ヤマハ株式会社 オーディオ信号の処理方法、装置およびプログラム
CN113574598A (zh) * 2019-03-20 2021-10-29 雅马哈株式会社 音频信号的处理方法、装置及程序
JP7275711B2 (ja) 2019-03-20 2023-05-18 ヤマハ株式会社 オーディオ信号の処理方法
US11877128B2 (en) 2019-03-20 2024-01-16 Yamaha Corporation Audio signal processing method, apparatus, and program

Similar Documents

Publication Publication Date Title
RU2743315C1 (ru) Способ классификации музыки и способ детектирования долей музыкального такта, носитель данных и компьютерное устройство
JP5454317B2 (ja) 音響解析装置
US10497348B2 (en) Evaluation device and evaluation method
JP2023081946A (ja) 学習装置、自動採譜装置、学習方法、自動採譜方法及びプログラム
US9245508B2 (en) Music piece order determination device, music piece order determination method, and music piece order determination program
Turchet et al. Real-time hit classification in a Smart Cajón
JP6690181B2 (ja) 楽音評価装置及び評価基準生成装置
JP2008250008A (ja) 楽音処理装置およびプログラム
US11847998B2 (en) Methods and apparatus for harmonic source enhancement
JP2017161574A (ja) 音信号処理方法および音信号処理装置
JP6554850B2 (ja) 電子鍵盤楽器、共鳴音発生装置、方法、プログラムおよび電子楽器
JP2015079151A (ja) 楽曲判別装置、楽曲判別装置の判別方法、プログラム
JP2015200685A (ja) アタック位置検出プログラムおよびアタック位置検出装置
JP2016071291A (ja) 写像推定装置
JP2013164584A (ja) 音響処理装置
WO2015166981A1 (ja) ピッチ情報生成装置、ピッチ情報生成方法、プログラム、及びコンピュータ読み取り可能な記録媒体
US20170263230A1 (en) Sound production control apparatus, sound production control method, and storage medium
Dittmar et al. Real-time guitar string detection for music education software
KR20200101040A (ko) 오디오 신호 패턴을 이용한 햅틱 신호 발생 방법 및 장치
JP6601109B2 (ja) 楽器類識別装置
JP2014134688A (ja) 音響解析装置
JP5879813B2 (ja) 複数音源の識別装置および複数音源に連動する情報処理装置
JP2017161572A (ja) 音信号処理方法および音信号処理装置
WO2017164216A1 (ja) 音響処理方法および音響処理装置
JP2017006286A (ja) 評価装置及び評価方法