q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf ·...

18
Department of Computer Science and Electronic Engineering, National Institute of Technology, Tokuyama College Q12 畳み込みって何ですか? 宮﨑 亮一 (徳山工業高等専門学校,学生若手フォーラム幹事会)

Upload: others

Post on 19-Jan-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

Department of Computer Science and Electronic Engineering, National Institute of Technology, Tokuyama College

Q12 畳み込みって何ですか?

宮﨑 亮一 (徳山工業高等専門学校,学生若手フォーラム幹事会)

Page 2: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  画像,音響,電気回路等,様々な分野で用いられる. Ø エコー,ローパスフィルタ,・・・

•  wikipediaの説明によると Ø 畳み込み(convolution)は関数 を平行移動しながら関数 を重ね足し合わせる二項演算

•  畳み込み定理,円状畳み込み,直線上畳み込み,・・・

畳み込みって何?

2

fg

(f ⇤ g)(t) =Z

f(⌧)g(t� ⌧)d⌧

Page 3: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

例:クリーン音声とインパルス応答

3

0 1 2 3 4 5 6 7 8 9

x 104

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

0 0.5 1 1.5 2 2.5 3

x 104

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

0 1 2 3 4 5 6 7 8 9 10

x 104

−6

−4

−2

0

2

4

6

8

=⇤

クリーン音声 (反射や残響の影響がない)

インパルス応答 (部屋の反射や残響の特性)

残響時間の長いインパルス応答をクリーン音声に 畳み込むと,信号が伸びた(響いた)ように聞こえる

x(k)s(k) h(k)

x(k) = (s ⇤ h)(k) =kX

m=0

s(m)h(k �m)

Page 4: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  線形性

•  時不変性

•  線形時不変システムの基本演算は畳み込み

線形時不変システム

4

Lf(t) L[f(t)] = g(t)

L[C1f1(t) + C2f2(t)] = C1L[f1(t)] + C2L[f2(t)]

L[f(t� ⌧)] = g(t� ⌧)

g(t) = L[f(t)] =

Z 1

�1f(⌧)h(t� ⌧)d⌧ = f(t) ⇤ h(t)

Page 5: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  まず,単位インパルス信号(連続時間の場合はデルタ関数)を考える.

•  例:エコーをかけるシステムの場合

単位インパルスとインパルス応答

5

�[n] =

⇢1 (n = 0)0 (n 6= 0) n

�[n]

n

�[n]

n

0

0

L

0

h[n]インパルス応答

Page 6: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  線形時不変システムの場合 Ø インパルス応答が既知であれば,あらゆる入力に対する出力を求める事ができる.

Ø 入力:

線形時不変システムを考える

6

n

�[n]

n0

L

0

h[n]

n n0

L

0

· · · , x[�1] = 0, x[0] = 2, x[1] = 4, x[2] = 3, x[3] = 0, · · ·

?x[t]

Page 7: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  線形性 Ø  Ø 出力は単位インパルス応答の振幅を2倍

時刻 のとき

7

n = 0

L[C1f1(t) + C2f2(t)] = C1L[f1(t)] + C2L[f2(t)]

n n0

L

0

x[0]h[n]x[0]

Page 8: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

n = 1

•  線形性 Ø  Ø 出力は単位インパルス応答の振幅を4倍

•  時不変性 Ø  Ø 出力は単位インパルス応答を1時刻遅らせる

時刻 のとき

8

n n0

L

0

x[1]

h[n]x[1]

L[C1f1(t) + C2f2(t)] = C1L[f1(t)] + C2L[f2(t)]

L[f(t� ⌧)] = g(t� ⌧)

Page 9: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

h[n]x[2]

時刻 のとき n = 2

•  線形性 Ø  Ø 出力は単位インパルス応答の振幅を3倍

•  時不変性 Ø  Ø 出力は単位インパルス応答を2時刻遅らせる

9

L[C1f1(t) + C2f2(t)] = C1L[f1(t)] + C2L[f2(t)]

n n0

L

0

x[2]

L[f(t� ⌧)] = g(t� ⌧)

Page 10: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

最終的な出力

10

n n0

L

0

x[n]

y[n] =1X

m=�1h[n�m]x[m]

=2X

m=0

h[n�m]x[m]

= 2h[n] + 4h[n� 1] + 3h[n� 2]

Page 11: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

畳み込みの解釈

インパルス 応答

時間k

大 0

1

2

よ よ

+ +

+ +

x(4)x(3)x(2)x(1)x(0)

s(0)

s(1)

s(2)

h(2)h(1)h(0)

11

Page 12: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  Ø  はフーリエ変換 Ø ラプラス変換やz変換にも適用できる

•  略証

畳み込み定理 F(f ⇤ g) = F(f)F(g)

F(·)

F(f(t) ⇤ g(t)) =Z 1

�1exp(�j!t)

Z 1

�1f(⌧)g(t� ⌧)d⌧

�dt

=

Z 1

�1f(⌧)

Z 1

�1exp(�j!t)g(t� ⌧)d⌧

�dt

=

Z 1

�1f(⌧) exp(�j!t)

Z 1

�1exp(�j!(t� ⌧))g(t� ⌧)dt

�d⌧

= F(f(t))F(g(t))

12

Page 13: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  N点の畳み込みを考える

畳み込み定理

•  畳み込み和を直接計算 •  FFT→掛け算→IFFT

計算量: O(N2) O(N logN)計算量:

(h ⇤ s)(k) =NX

m=0

h(m)s(k �m) (h ⇤ s)(k) = F�1(F(h)F(s))

13

Page 14: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  DFTの積は,時間領域では円状畳み込みとなる. Ø  DFTでは,時間領域信号を周期信号と仮定 Ø フーリエ変換やz変換の積は,円状畳み込みに対応

直線畳込みと円状畳み込み

直線状畳み込み N

2N - 1

円状畳み込み N

2N - 1

はみ出た分は 回りこむ

14

Page 15: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  DFTにおける周波数離散化 →周期的な時間波形同士の直線状畳み込みとも説明できる

DFTの積は円状畳み込み

N N N N N 周期N

15

Page 16: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  ゼロ詰めを行うことで,実質的に直線上畳み込みの演算結果を得ることが出来る.

DFTで直線状畳み込み

2N 2N 2N 周期2N

000000000

000000000

000000000

000000000

000000000

000000000

16

Page 17: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  畳み込み演算がよくわからない Ø キーワードは線形性と時不変性

•  畳み込みの定理 Ø 時間領域で直接畳み込みを計算: Ø  FFT→掛け算→IFFT:

•  直線上畳込みと円状畳込み Ø  DFTの積は円状畳み込み Ø  DFTの積で直線上畳込みを実現するにはゼロ詰め

•  参考資料 Ø  ASJ技術講習会資料「ディジタル信号処理の基礎」

まとめ

17

O(N logN)

O(N2)

Page 18: Q12 畳み込みって何ですか? - 音響学入門ペ ...abcpedia.acoustics.jp/conv.pdf · Department of Computer Science and Electronic Engineering, National Institute of Technology,

•  信号の一方の領域が周期的であれば, もう一方の領域では離散的な量となる. Ø  周期信号⇔離散スペクトル, 非周期信号⇔連続スペクトル Ø  連続信号⇔非周期スペクトル, 離散信号⇔周期スペクトル

補足:連続量と離散量における変換関係

フーリエ変換

フーリエ級数展開 離散フーリエ変換

Z変換

非周期スペクトル 周期スペクトル

連続信号 離散信号

周期信号

非周期信号

離散

スペクトル

連続

スペクトル