4/23

20150423
信号処理システム特論
本日の内容
時間領域と周波数領域
○ ディジタル領域の周波数変換
○ 窓関数~信号解析での注意~
と,その前に前回の補足?
量子化ビット
の影響(画像1)
8bit
1bit
2bit
5bit
6bit
4bit
7bit
量子化ビット
の影響(画像2)
各色8bit
1bit
2bit
5bit
6bit
4bit
7bit
量子化ビットの影響(音)
モーツアルトの代表作、
「アイネ・クライネ・ナハトムジーク」
4ビット:
6ビット:
8ビット:
10ビット:
12ビット:
14ビット:
16ビット:
ヴォルフガング・アマデウス・モーツァルト
エイリアシングの影響(画像1)
元画像
ローパスフィルタなし
空間領域
周波数領域
+π
-π
+π
元画像を1/4に縮小
ローパスフィルタあり
エイリアシングの影響(画像2)
元画像
ローパスフィルタなし
空間領域
+π
周波数領域
-π
+π
元画像を1/4に縮小
ローパスフィルタあり
エイリアシングの影響(音)
元音源: いきものがかり 恋跡
サンプリング周波数:44.1kHz → 8 kHz
(使用できる帯域:0~22.05 → 0~4kHz)
オリジナル(CD音質):
ダウンサンプル後(電話音質)
アンチエイリアシングフィルタ:なし
:あり
今日の内容
時間領域と周波数領域
○ ディジタル領域の周波数変換
○ 窓関数~信号解析での注意~
周波数解析の大まかな分類
連続時間信号
 フーリエ級数展開 ⇒ 周期関数
 フーリエ変換 ⇒ 非周期関数
 離散フーリエ変換
(DFT: Discrete Fourier Transform)
 高速フーリエ変換
(FFT: Fast Fourier Transform ) 離散時間信号
時間ー周波数解析(信号の周波数の時間的変化を解析する手法)
★ 短時間フーリエ変換(Short-time Fourier Transform: STFT )
★ ウェーブレット変換(Wavelet Transform)
フーリエ
(フランス:1768~1830,ナポレオンの時代)
<熱伝導の方程式を解くため>
1807年:「任意の周期関数は三角関数によって
級数展開できる」というフーリエ級数を提案.
フーリエ級数展開
a0 ∞
f (t ) = + ∑ {an cos(nω0t ) + bn sin( nω0t )} ω0 = 2πf 0 , f 0 = 1
2 n =1
T0
対象:周期的連続時間信号(周期=T)
時間:連続・周期的,周波数:離散・非周期的
連続時間のフーリエ変換
フーリエへ変換
∞
X a ( jΩ) = ∫ xa (t )e
−∞
− jΩt
dt
逆フーリエへ変換
1
xa (t ) =
2π
∫
∞
−∞
X a ( jΩ)e jΩt dΩ
ただし, t :時間, Ω
= 2πf
,
f
:周波数
対象:非周期連続時間信号(周期=∞,を仮定)
時間:連続・非周期的,周波数:連続・非周期的
離散時間のフーリエ変換
離散時間フーリエへ変換
X ( jω ) =
∞
− jωnT
(
)
x
nT
e
∑
n = −∞
離散時間フーリエへ逆変換
x(nT ) =
1
ωs
ωs
∫ω
−
s
X ( jω )e − jωnT dω
対象:離散時間信号
時間:離散・非周期的,周波数:連続・周期的
離散フーリエ変換(Discrete Fourier Transform: DFT )
周波数も離散
⇔ コンピュータなどで計算する場合,すべてが離散
離散フーリエへ変換(DFT)
N −1
X ( k ) = ∑ x ( n )e
−j
2πnk
N
,
n =0
k = 0,1,  , N − 1
逆離散フーリエへ変換(IDFT)
1
x ( n) =
N
N −1
∑ X ( k )e
j
2πnk
N
,
k =0
n = 0,1,  , N − 1
DFTの性質
(1)周期性
(2)線形性
(3)対称性
(4)時間シフト
(5)時間畳み込み
DFT: X(mN + k) = X(k)
IDFT: x(mN + n) = x(n)
ただし,m:整数, k, n=0,1,…,N-1
ax(n) + by(n) ↔ aX(k) + bY(k)
X(N - k) = X*(k)
ただし,x(n)は実数とする。
振幅特性:|X(N - k)| = |X(k)|
位相特性:∠[X(N - k)] = ∠[X(k)]
x(n + m0 ) ↔ e
−j
2πk
m0
N
X (k )
N −1
y (n) = ∑ h(l ) x(n − l ) ↔ Y (k ) = H (k ) X (k )
l =0
(6)パーセバルの定理
1
N
N −1
N −1
2
|
(
)
|
=
X
k
x
∑
∑ ( n)
l =0
2
n =0
(補足)DFTの周期性の証明
DFTの性質(1)
X (mN + k ) = X (k )
N −1
DFTの定義式: X (k ) = ∑ x(n)e
−j
2πnk
N
,
n =0
k = mN + k
とすると
N −1
X (mN + k ) = ∑ x(n)e
−j
2πn ( mN + k )
N
−j
2πnk
N
−j
2πnk
N
n =0
N −1
= ∑ x ( n )e
e
−j
2πnmN
N
n =0
N −1
= ∑ x ( n )e
n =0
= X (k )
以上,証明終了。
DFTの周期性
シミュレーションで学ぶディジタル信号処理,CQ出版
[DFT]
時間・周波数の
両方とも周期性
をもつ
DFTの周期性がスペクトル解析に与える影響
cos(2πfn), 0 ≤ n ≤ N − 1
x ( n) = 
その他のn
0,
ただし,f = 0.1 [ Hz ]とする。
N=10 と N=16
でDFTした結果
シミュレーションで学ぶディジタル信号処理,CQ出版
窓かけ (Windowing)
通常,信号は長時間継続している
でも・・・ DFT は,短時間のデータを対象とする
「窓かけ」とは:
長時間のデータから、
短時間のデータを取り出すこと
Tw
Tw:窓長
窓かけ の定式化
原信号 x(t)
×
窓関数
1
0
Tw
=
xw(t)
w(t)
「窓かけ」は,原信号に窓関数 w(t)
を乗じたもの と定式化できる。
左図は「方形窓」:
1
w(t ) = 
0
t0 ≤ t ≤ t0 + Tw
その他
を示したが、
いろいろな形の窓関数がある。
Tw
代表的な窓関数
t0 ≤ t ≤ t0 + Tw (t0 = 0 の場合)の値。
方形窓: w(t ) = 1
ハニング窓:w(t ) = 0.5 − 0.5 cos(2π t / Tw )
ハミング窓:w(t ) = 0.54 − 0.46 cos(2π t / Tw )
ブラックマン窓:w(t ) = 0.42 − 0.5 cos(2π t / Tw ) + 0.08 cos(4π t / Tw )
1
方形
0.8
0.6
ハミング
ハニング
ブラックマン
0.4
0.2
0
0
50
100
Tw
窓かけ によるスペクトルの変化
★ 窓かけは,時間領域では乗算,
周波数領域ではたたみ込みなので,
時間領域
フーリエ変換
周波数領域
xw(t) =
F
Xw(f) =
x(t)
×
w(t)
原信号
X(f)
窓関数
*
W(f)
たたみ込み
窓かけ後の信号は,原信号のスペクトル X(f) に
窓関数のスペクトル W(f) がたたみ込まれる
窓関数の影響
~正弦波のスペクトルを例に~
正弦波
窓関数
スペクトル
F [xw(t)]= F [x(t)]* F [w(t)]
周波数 f0 の正弦波のスペクトルは,
f = f0 におけるパルス(δ関数) δ(f-f0)
0
f0
f
*
f
0
=
窓関数のフーリエ変換(スペクトル)を W(f) とすると,
畳み込んだ結果は
δ(f-f0)*W(f) = W(f-f0)
となり,f = f0 における パルス δ(f-f0)が,
窓関数のスペクトルの形 W(f-f0)に変化する。
0
f
f0
窓関数のスペクトル(1)
方形
ハミング
0
0
-20
-20
-40
-40
-60
-60
-80
-50
0
50
ハニング
周波数
-80
0
-20
-20
-40
-40
-60
-60
-50
0
50
-80
周波数
0
50
周波数
50
周波数
ブラックマン
0
-80
-50
-50
0
方形窓は、正弦波信号の持つ周波数以外の周波数にも、影響を
及ぼす。 ハミング窓も-50dB程度であるが、影響を及ぼす。
窓関数のスペクトル(2)
方形
ハミング
0
-10
-20
ハニング
-30
-40
-50
ブラックマン
-60
-70
-80
-6
-4
-2
0
2
4
6
周波数
● 方形窓は、主成分が鋭い。
● ハミングは第1副成分が小さい
● ブラックマンは主成分が最も広い。
主成分が広いと,周波数分解能が低下する。
【問題】
同じ信号に対して2種の窓関数を使ったところ
以下のスペクトルが得られた。
どちらが正しいスペクトルに近いのか?
ハニング
方形
0
0
-20
-20
-40
-40
-60
-60
-80
-80
-50
0
50
-50
0
答え:どちらも 「正しい」
ものの捉え方,見え方が違うだけ!
50
窓の違いによる結果例(1)
入力信号: 1000Hz の正弦波と,-50dBの 1500Hz の正弦波の和
2つの正弦波とは見えない
2つの正弦波が見える
ハニング
方形
0
-20
-20
[dB]
[dB]
0
-40
-40
-60
-60
0
1000 2000 3000
周波数 [Hz]
4000
0
1000 2000 3000
周波数 [Hz]
方形窓は、大きさの異なる周波数成分の分析には不向き
4000
窓の違いによる結果例(2)
入力信号: 1000Hz と1030Hz の同じ大きさの2つの正弦波の和
2つの正弦波が見える
見えない・・・
方形
ハニング
0
-10
-10
-20
-20
[dB]
[dB]
0
-30
-30
-40
-40
-50
-50
-60
800
900
1000 1100
周波数 [Hz]
1200
-60
800
900
1000 1100
周波数 [Hz]
1200
方形窓は,近接した周波数の解析・分離測定に向いている
短時間フーリエ変換による音声分析
窓の長さも結果に大きく影響
特に,非定常信号の時間・周波数解析や処理において重要
窓長 短 (8ms)
(高い時間分解能)
・ 大まかなスペクトル形状
・ ピッチ周期が見える
窓長 長い (64ms)
(高い周波数分解能)
・ 基本周波数の変化
セ
カ イ
ノ
1000
120
周波数
900
800
100
700
80
600
500
60
400
40
300
200
20
100
200
400
600
800
時間
1000
1200
20
40
60
80
100
時間
120
140
窓関数 (まとめ)
◇ どの窓関数が良いか? ⇒ 明確な答えは無い
用途に応じて,適した窓を選ぶ必要がある
◇ 最も一般的なものは、
信号分析ではハニング窓
音声処理ではハミング窓
◇ 窓関数を用いた分析・処理を行う場合、
何種類かの窓関数を用いて,結果を比較し,
適切なものを選ぶと良い
◇ 窓長も変えたほうが良い (特に非定常信号)
◇ (あまり差が無い場合も多いが,)
色々試して,一度は比較してみるべき!
次回(5月7日)からの講義資料DL
【URL】 http://asplab.org
【PW】 lec2015
講義前日の正午( 12:00,日本時間です)までにはアップ
するようにします(できるようにがんばります) ので,
必要な人は印刷して持参して下さい。