とりあえず、以下のお題をそのまま解いて見ましょう。
Rによる信号処理tamosblog.wordpress.com
振幅が1で周波数10[Hz]の正弦波と,振幅が1/4で周波数30[Hz]の余弦波の合成波信号データについて,離散フーリエ変換(FFT)によって得られた振幅スペクトルを取得しなさい.ただし,サンプリング周波数FSは160[Hz],標本間隔DTは6.25[ms](1/FS), 標本の個数Nは16個とする.
統計言語Rによるプログラミング例(初期値設定)
FS <- 160 # サンプリング周波数 FS=160[Hz]
DT <- 1/FS # 標本間隔 DT=1/160=0.00625[s]
N <- 16 # データ数 N=16
i <- 0:(N-1) # 添字(index)の範囲 i
- DT*16=0.00625*16=0.1[s]を基本波の周期とする。
- 従ってその逆数である10[Hz]が基本波の周波数となる。
スペクトラム表示関数
Spectrum_disp<-function(x,N){
i <- 0:(N-1)
spec <- fft(x)/N
plot(i, Re(spec), type='h', xaxt='n', yaxt='n', col='blue', lty=3, lwd=2, ylim=c(-0.8,0.8), ylab='', xlab='')
par(new=T) #上書き
plot(i, Im(spec), type='h', xaxt='n', yaxt='n', col='red', lty=1, lwd=2, ylim=c(-0.8,0.8), ylab=expression(paste('Spectrum ', X[k])), xlab='Index k')
axis(1, pos=0, at=0:N, adj=0)
axis(2, at=seq(-1, 1, by=0.25))
legend(0.5, 0.7, legend=c(expression(Re(X[k])), expression(Im(X[k]))), lty=c(3,1), col=c('blue', 'red'), lwd=c(2,2))
}
振幅1,10[Hz]の正弦波
siga <- sin(2*pi*10*DT*i)
plot(DT*i, siga, xlab='Time', type='o')
#sigaのFFT結果
Spectrum_disp(siga,N)
- k=1の場合が基本周波数10[Hz]
- 奇関数Sinの成分なので虚部にスペクトルが現れる。
- ちょうどk=8を折り返し周波数として半分ずつの数値がk=1とk=15の位置に対照的に現れる。
振幅0.25,30[Hz]の余弦波(sigb)
sigb <- 0.25*cos(2*pi*30*DT*i)
plot(DT*i, sigb, xlab='Time', type='o')
#sigaのFFT結果
Spectrum_disp(sigb,N)
- k=3の場合が周波数30[Hz]
- 偶関数Cosの成分なので実部にスペクトルが現れる。
- ちょうどk=8を折り返し周波数として半分ずつの数値がk=3とk=13の位置に対照的に現れる。
合成波(sig)
sig <- siga + sigb
plot(DT*i, sig, xlab='Time', type='o')
#sigのFFT結果
Spectrum_disp(sig,N)
- スペクトルの内容はまさにsiga+sigbになっている。
スペクトルの3D表示
library(rgl)
Samples_z<-i
Real_x<-Re(fft(sig))
Imagin_y<-Im(fft(sig))
plot3d(Real_x,Imagin_y,Samples_z)
movie3d(spin3d(axis=c(0,0,1),rpm=5),duration=10,fps=25,movie="~/Desktop/test")
#Movieファイル出力ディレクトリーは環境依存
ここで用語解説。
音声等のアナログ波形を、デジタルデータにするために必要な処理である標本化(サンプリング)で、単位時間あたりに標本を採る頻度。単位はHzが一般に使われるが、sps (sample per second) を使うこともある。サンプリングレート、サンプルレートとも呼ばれる。
概要
ある波形を正しく標本化するには、波形の持つ周波数成分の帯域幅の2倍より高い周波数で標本化する必要がある(これをサンプリング定理と呼ぶ)。
- 逆に、サンプリング周波数の1/2の帯域幅の外側の周波数成分は、復元時に折り返し雑音となるため、標本化の前に帯域制限フィルタにより遮断しておかなければならない。
- 音楽CDで使用されるサンプリング周波数は44.1kHzであるため、直流から22.05kHzまでの音声波形を損なわずに標本化できる。あらかじめ、カットオフ周波数20kHzないし22kHz程度のローパスフィルタで前処理が行なわれているが、人の可聴域の上限20kHzにほぼ一致しているため、実用上問題なく音声を再現できることになる。
- 理論的には22.05kHzまで伝送可能だが、いかに急峻な減衰特性を持つフィルタといえども無限の減衰勾配を持つことはできない。22.05kHz以上で所定の減衰特性を持ち、かつできるだけ広い通過帯域と許容できる位相特性を持つフィルタとして、古いCDでは20kHz前後のカットオフ特性が選ばれることが多く、最低18kHzあたりから急激に減衰し21kHz付近でほぼ音は出なくなっていた。ただし現在ほとんどのCDでは22kHzぎりぎりまで音が出るようになっており、スペクトラムアナライザーソフトで容易に確認できる。
50kHzから60kHz以上のサンプリング周波数は人間にとって有用な情報をもたらさない。初期のプロオーディオメーカーが50kHz周辺のサンプリング周波数を選んだのはその理由による。 オーディオ機器で96kHzや192kHzなどのより高いサンプリング周波数が販売面で好まれる場合もあるが、研究の結果、人間にとって超音波が聴覚できないことがわかっている。しかしながら、超音波が相互変調歪みの形で聴こえる場合もある。これは元の音源にはなかった音である。
どのサンプリングレートを選ぶべきか?
高サンプリング周波数の利点は、ADCやDACのローパスフィルタの設計の要求を緩和できることにある。ただし、最近のΔΣ変調によるオーバーサンプリングコンバータにとって、この利点は重要ではない。
- プロのエンジニアの国際団体であるAudio Engineering Societyは音源の制作、編集過程においてPCM 48kHzを多くの場面で適用することを推奨している。コンシューマ用途ではCDなど44.1kHz、通信用途では32kHz、アンチエイリアシング・フィルタを緩和するためには96kHzを使用することも可能としている。
- また、フィルム映画やテレビジョン信号も、本来時間的に連続した画像を離散的な時刻で撮影した「コマ」を記録・再生するので、フレームレートも広い意味でのサンプリング周波数ととらえ、三次元ビデオ信号処理として扱われる。これは特にフレームレート変換を伴う方式変換技術や、インターレース/プログレッシブ走査変換、フレーム間圧縮を伴う高効率符号化技術などでは重要な概念である。
- サンプリング周波数の選択サンプリング周波数は、原理的には標本化すべき原信号の最も高い周波数成分(帯域幅)の2倍より高い任意の周波数でよいが、放送や録音などでは一度決めると互換性の点から変更することが難しい。T1回線の電話の8kHzのように「キリのよい」周波数が選ばれるとともに、既存のシステムとの互換性(または非互換性)をもとに選ばれることも多い。
CD-DAなどのサンプリング周波数44.1kHzは、一見するとキリの悪い意味のない周波数に見えるが、これはPCMプロセッサーに由来する。
- テレビとその映像信号の水平同期周波数15.75kHzの3×(14/15)倍である。1水平走査内に6標本(ステレオ各チャンネル3標本ずつ)をビデオ信号の形に変調して記録する。
- PCMプロセッサーで利用したVTRでは、垂直帰線区間をヘリカルスキャン方式の回転ヘッドの切替えタイミングとしており記録に使えないため、その付近の各フィールド毎17.5本(総走査線数の1/15)の走査線の部分を使っていない。
- ただし、カラーテレビ放送のNTSCの水平同期周波数は(約)15.734 kHzで、VTRには15.734kHzのものと15.75kHzのものが混在していたため、サンプリング周波数も44.056kHzと44.1kHzが混在していた時期があった(CD-DAでは44.1 kHzに統一されている)。
- ちなみにNTSCのHSYNCは正確には 15.75 × (1000/1001) = 15.73426573426...(kHz) で、15.73426573426... × 3 × (14/15) = 44.0559440559... ≒ 44.056、15.75 × 3 × 14 / 15 = 44.1である。
1970年代に世界で初めて実用デジタル音楽録音を実現した日本コロムビアのDN-023R(PCMプロセッサではない)では、どれかのヘッドが常に記録状態にあり、垂直帰線区間も全てそのまま記録できる2インチVTRを改造・使用したので、映像信号のすべてに記録でき、サンプリング周波数は47.25kHzと、水平同期周波数15.75kHzのちょうど3倍となっている。また1980年代末に開始した日本における衛星放送(及び、のちのDVDなど)の音声は48kHzのサンプリング周波数を使っている。
サンプリングレートコンバータ
サンプリング周波数が異なる機器同士でも録音が出来るようにする装置を、サンプリングレートコンバータと呼ぶ。
例えば、BSのBモード音声をMD、または音楽用CD-R/CD-RWに録音しようとすると、サンプリング周波数はそれぞれ48kHzと44.1kHzとなり、そのままでは録音ができない。そこでサンプリングレートコンバータを用いると、MDレコーダー、およびCDレコーダー側でサンプリング周波数が44.1kHzに変換され、録音が可能になる。2010年現在の時点におけるデジタル入力端子が装備された(例外あり)MDレコーダー(据え置き型、ポータブル型)、およびCDレコーダーの大部分の機種にはサンプリングレートコンバータが内蔵されている。
帯域幅(たいいきはば)または、帯域(たいいき)、周波数帯域(しゅうはすうたいいき)、バンド幅(英: Bandwidth)とは、周波数の範囲を指し、一般にヘルツ(Hz)で示される。情報理論、電波通信、信号処理、分光法などの分野で重要な概念である。
帯域幅と情報伝達における通信路容量とは密接に関連しており、通信路容量のことを指す代名詞のように俗称的にしばしば「帯域幅」の語が使われる。特に何らかの媒体や機器を経由して情報(データ)を転送する際の転送レートを「帯域幅」あるいは「バンド幅」と呼ぶ。
概要
電波による通信では、搬送波の変調で占める周波数の範囲を占有周波数帯幅、あるいは単に帯域幅と呼ぶ。光学では個々のスペクトル線の幅やスペクトル全体の幅を指す。汎用的な単一定義は存在せず、漠然と関数の周波数領域における広がりの尺度を表すと理解される。
- 分野によっては厳密な意味が定義されている。例えば、帯域幅は周波数関数が 0 であるときの周波数の範囲と定義されることもある。この場合、数学的には関数のサポートに対応する(つまり、関数がゼロでない値となる領域の全長)。
- より厳密で便利な定義として、周波数関数が「小さい」ときの周波数を指す。この場合「小さい」とは、最大値の 3 dB下方を意味するか(あまり使われないが)10 dB 下方を意味する(その他の適当なある値)。いずれにしても、それぞれの関数の「幅」の定義は、それぞれの用法にとって便利なように設定されている。
シャノン=ハートレーの定理によれば、信頼できる通信のデータ転送レートは、通信に使われる周波数の幅に比例する。その意味では、帯域幅とデータ転送レートは同じ意味に使われることがある。
アナログとデジタル
スペクトル密度のグラフ。-3 dBでの帯域幅を示したもの。
アナログ信号は数学的には時間の関数であり、帯域幅Δfは信号をフーリエ変換したときにゼロでない値となる周波数範囲の幅(単位はヘルツ)である。
- 一般にこのゼロでない範囲は非常に広範囲になるため、定義を修正して、ある程度の強さの周波数範囲を指すこともある。この場合、最大値の半分となる範囲を使うことが多い(log(1/2,base=10)≈-0.3 であるため、約 -3 dB で半分となる)。信号の帯域幅は、そのパラメータ(振幅や位相)が時間と共に変化する早さの尺度である。帯域幅が大きければ、信号のパラメータは早く変化する。帯域幅という用語は信号にも使われるが、システムにも適用される。その場合、あるシステムの帯域幅とは、そのシステムが処理できる信号の帯域幅を示す。
- ベースバンドの帯域幅と言った場合、信号の周波数範囲の上限だけを指す。ベースバンド以外の帯域幅は、上限と下限の差分である。
- 例えば、図に示したような非ベースバンドの 3-dB 帯域幅はΔf=f2-f1であるが、他の定義では異なった答えになるだろう。
- よく使われる量として「比帯域; fractional bandwidth」がある。これは帯域幅を中心周波数で割った値である。例えば、中心周波数が10MHzで帯域幅が2MHzなら、比帯域は2/10あるいは20%となる。
- 実数のベースバンドは正の周波数と負の周波数の合成であり、このことが帯域幅の混乱を招く(実信号は複素平面上の右回転するベクトルと左回転するベクトルの合成で表され、角周波数の符号が逆になっている)。帯域幅として正の部分だけを指すことがあり、例えばB=2Wが全帯域幅を表すとした場合、Wは正の帯域幅である。実際、信号を保持するには、少なくとも Wの遮断周波数のローパスフィルタが必要となる。
- 3-dB の帯域幅のバンドパスフィルタは、中心周波数付近のピークから3 dB以内の周波数応答となる範囲となるフィルタである。信号処理や制御理論では、ピークから利得が 3dB減衰する周波数の範囲を帯域幅という。
- 電気回路でのバンドパスフィルタなどでは、帯域幅とは信号の強さが最大の1/sqrt(2)(半分の電力)となる周波数領域の2地点の距離である。
- ASE光源やレーザーのような何らかの光源の出力の帯域幅。光の周波数は非常に高いため、帯域幅は大きくなる。
- 光ファイバーなどの媒体が転送できる周波数の範囲。
- 光増幅器の利得帯域幅。
- 何らかの現象における範囲(反射、非線形プロセスでの位相合わせ、共振など)
- 光変調装置の最大変調周波数(または変調周波数の範囲)
- 測定装置が動作できる周波数の範囲光通信システムのデータ転送レート(Gビット/秒)
デジタル信号処理では、帯域幅は標本化定理に従ってサンプリング周波数と関連している。
- デジタル通信路に加算性ホワイトガウスノイズがあるとき、シャノン=ハートレーの定理により、通信路の帯域幅(伝送路容量)とS/N比の関係が示される。
- 同定理においては、帯域幅B (Hz) に対し、通信路容量 C (bps) が規定される。ただし、C は通信路が誤り無しまたは低誤り率である時に転送可能な最大レート(の理論値)を示す。
- 実際の転送レートR (bps) は、効率的な符号化方式の採用によりCに近づける事ができるが、RがCを超えた場合は誤り率が増大するため正常なデジタル通信ができない。よってCは理想的な通信路における頭打ち転送レートともみなせる。
- 実際デジタル通信での「帯域幅」は、比喩的に使われることもあって曖昧である。ボーの言い換えとして帯域幅やバンド幅という用語を使うこともある。また、伝送路容量(転送可能なビットレート)を表すことも多い。したがって、ビットレート66Mbpsで32本のデータ線からなるデジタルバスの帯域幅は33MHzで容量は 2.1 Gビット/秒となるが、これを「帯域幅が 2.1 Gビット/秒」とすることも少なくない。
- 同様の混乱は可聴帯域のモデムにもある。電話回線の真の帯域幅はわずか4KHzだが、56Kビット/秒もの情報を転送できることから帯域幅を誤ることがある。
関連する統計的量として、ネットワーク全体の帯域幅の総計を示す「2分割帯域幅;(bisection bandwidth)」がある。これは、ネットワークを2つに分割し、その間にある全リンクの帯域幅を合計したものである。
ホスティングサーバでは、「月間最大データ転送量」の意味で(間違って)帯域幅という言葉を使うことがある。ホスティングを提供する企業は、例えば「バンド幅制限はWebサイト当たり月間500ギガバイト」などとしていることがある。この場合、ユーザーがそのサイトから一ヶ月以内に500ギガバイト以上のデータをダウンロードしようとすると、制限を超えてしまう。
他者の帯域幅を不正に利用することを「バンド幅窃盗」と呼ぶこともある(例えば、他のWebサイトの画像を無断で自分のWebサイトにリンクする場合など。ユーザーがそのページにアクセスすると自動的にリンク先サイトへのアクセスも発生し、帯域幅を消費する。いわゆる直リンク)。
周波数の話に入った途端に難易度が急増しましたね。