波形編集

<波形解析の方法>
①まず、音楽ファイルを用意します。

②次に、波形編集が可能なソフトを用意します。
 例として、「Rip!AudiCO:http://www.vector.co.jp/soft/win95/art/se202196.html」を利用します。
 これは、音楽CD,Ogg,WAV,WMA,MP3を、相互に変換することが可能なソフトです。

③用意した音楽ファイルを、WAVファイルへ変換します。

④続いて、WAVファイルをCSVファイルへ変換するソフトを用意します。
 例として、「WavCsvWav:http://sunfieldkikaku.web.fc2.com/newpage9.html」を利用します。
 これは、WAVファイルを、エクセルで利用可能なCSVファイル(データをカンマ(",")で区切った形式)に変換することが可能なソフトです。

⑤変換したWAVファイルを、さらにテキストデータのCSVへ変換します。
 WAVファイルは短時間に膨大なデータが密に詰め込まれているので、切り出す区間を決めて短時間の波形を切り抜きます。
 「開始時刻」と「終了時刻」を設定して、「変換実行」します。
 これで、エクセルで利用することができるデータとなりました。

⑥エクセルで開くと、1列目に時間、2列目にLch、3列目にR chの順で並んでいます。
 短時間のファイルでも、膨大な行のデータになっています。
 データを選択して、「折れ線グラフ」を描画します。

図1)
グラフの各系列(波形)は、上から順に、
 系列1(灰色):生データを正規化(最大値で割って、0-1の範囲に変換)
 系列3(水色):系列1のデータを2乗
 系列4(赤色):系列1のデータを3乗
 2乗、3乗となるにつれて、波形が先鋭化するのが分かります。
 べき乗では、絶対値が小さい値はより小さくなり、絶対値が大きな値はより大きくなるためです。
 ここで、あらかじめ1以下に正規化してあるために、最大値1を超えることはありません。
 つまり、小さな基線ノイズを0に近似して、ピーク値を誇張する作用があります。
 2乗の場合は、必ず正になってしまうため、絶対値のグラフと比較した方が良いかもしれません。

図2)
グラフの各系列(波形)は、上から順に、
 系列1(紫色):生データを正規化(最大値で割って、0-1の範囲に変換)して絶対値化
 系列2(緑色):生データを正規化(最大値で割って、0-1の範囲に変換)して絶対値化したものを負数化
 系列3(水色):生データを正規化(最大値で割って、0-1の範囲に変換)したものを2乗
 絶対値化の波形では、負数の生データがX軸を対象に正方向に折り返されています。
 2乗の波形は、絶対値の波形と全体像がそれほど変わりませんが、変化がより誇張された形になってします。
 なお、2乗の波形も絶対値化と同様、負数が存在しません。

図3)
①系列1-4
グラフの各系列(波形)は、上から順に、
 系列1(灰色):生データを正規化(最大値で割って、0-1の範囲に変換)
 系列2(橙色):系列1において、前値からの差分(現在値から前値を減算)
 系列3(水色):系列2を正規化(最大値で割って、0-1の範囲に変換)したものを3乗
 系列4(赤色):系列1を3乗
②系列1と系列4:元の波形と3乗の波形
 3乗を行うことで、正負の符号を保存したままで、グラフの尖度を上げることができます。


③系列1と系列2:元の波形と微分(差分法)の波形
 差分は、一定の短時間における変化量のため、一定間隔で現在値から前値を差し引いた差分は、離散的な微分グラフとなります。
 (連続的な微分グラフは、無限小の短時間における変化量を表します)
 差分は常に絶対値の減少方向へ向かうため、+1→+1で差分0,+1→0で差分1,+1→-1で差分2と、差分は0-2の範囲に収まります。
 (ほとんどの場合、ごく短時間における差分は1/2振幅以下で推移するようですので、振幅2倍表示した方が見やすいかもしれません。
④系列2と系列3:微分(差分法)の波形と微分(差分法)の3乗の波形
 3乗を行うことで、正負の符号を保存したままで、グラフの尖度を上げることができます。

<差分法とは>
 微分において、関数値の差を変数値の差で割った値を、微分値の近似値として使用する方法です。
 本来の微分においては、変数値の差を0に近付けた際の、関数値の差を変数値の差で割った値の極限値が、微分値になります。
 数列の漸化式のように、(現在値-前値)=後方差分,(次値-現在値)=前方差分,(次値-前値)/2=中央差分として計算します。
 http://ja.wikipedia.org/wiki/%E5%B7%AE%E5%88%86%E6%B3%95

図4)
グラフの各系列(波形)は、上から順に、
 系列1(青色):生データを正規化(最大値で割って、0-1の範囲に変換)
 系列2(赤色):系列1において、開始時からの累積値(現在値に前値を加算)
 現在値に一定の短時間における増分を加算していくと、累積値(グラフ下面積)となり、離散的に積分グラフになります。
 (連続的な積分グラフは、無限小の短時間における変化量を表します)
 正負はそのままで加算するため、負値の累積的な加算は、X軸より下のグラフ下面積を減算することになります。
 (グラフ下面積は、X軸とグラフに挟まれる領域の面積のため、X軸より下のグラフでは、正確にはグラフ上面積です)
 正負に平等に振れる振動では、X軸より上のグラフ下面積と、X軸より下のグラフ下面積はほぼ相殺され、2倍振幅をほとんどオーバーしません。

図5)
グラフの各系列(波形)は、上から順に、
 系列1(灰色):生データを正規化(最大値で割って、0-1の範囲に変換)
 系列2(水色):系列1の2乗(平方)
 系列3(紫色):系列1の絶対値を1/2乗(平方根)
 系列4(緑色):系列1を絶対値化
 平方(2乗)では、グラフはピークが尖鋭化して、裾は基線に近付きます。
 グラフはピークを保ったまま、基線の方向に圧縮され、差が拡大されます。
 平方根(1/2乗)では、グラフのピークが鈍化して、裾はピークに近付きます。
 グラフはピークを保ったまま、最大振幅の方向に拡張され、差が縮小され、全体的に均一化されます。

<べき乗値について>
 X^n(Xのn乗)において、n=0ではX=1となり、n<0では(1/X)^(ABS(n))=(Xの逆数 ^ nの絶対値)になります。
 n>1では、0<X<1においてX^n<Xとなり、X>1においてX<X^nとなります。
 0<n<1では、0<X<1においてX<X^nとなり、X>1においてX^n<Xとなります。
 n>1では、nが偶数の場合は、X^n≧0となります。
 0<n<1では、1/n(nの逆数)が偶数の場合は、X≧0である必要があります。

最終更新:2013年09月16日 02:18
ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。