JoumalofSignalProcessing,Vb1.5,No.6,pp,397-408,November2001
基礎シリーズMAILABで学ぶディジタル信号処理の基礎(全6回)
騨篭
MATLABで学ぶディジタル信号処理の基礎
IntroductiontoDigitalSignalProcessingwithMAlrLAB
-第6回2次元ディジタル信号処理一
一6.Two-DimensionalDigitalSignalProcessing-
川又政征*
MasayukiKajWamata*
Joumalor
Exercises
S量gnalProcessmg●
信号処理
基礎シリーズ MATLABで学ぶデイ ジタル信号処理の基礎(全6回) 蕊
MATLABで学ぶディジタル信号処理の基礎
In士roductiontoDigitalSignalProcessingwithMAjrLABExercises
-第6回2次元ディジタル信号処理一
一6.Two-DimensionalDigitalSignalProcessing-
川又政征狼
MasayukiKawamata*
1.はじめに
第6回のこの講座は,"MAjrLABで学ぶディジタル
信号処理の基礎”の最終回である。今回は2次元ディ
ジタル信号処理の基礎として2次元信号とその変換お
よび2次元FIRディジタルフィルタをとりあげる。
2次元信号とは2変数の関数として表される信号で
ある。その代表は画像である。本講座では,まず,2次
元ディジタル信号の変換として,2次元離散空間フー
リエ変換と2次元離散フーリエ変換を導入する。次に,
2次元z変換,たたみこみ,およびFIRディジタル
フィルタについてとりあげている。2次元の“変換",
"たたみこみ,》,“フィルタ”の概念と役割は,第1回
~第5回の講座で紹介した1次元の場合と同じもので
あることは言うまでもない。
この講座はディジタル信号処理の基礎の解説を目的
としているため,今回の2次元ディジタル信号処理の
内容は,第1回から第5回までの1次元ディジタル信
号処理の内容のいわば“2変数',版の範囲にとどめて
いる。実際には,1次元ディジタル信号処理にはない
計算の煩雑さや理論的な難しさが2次元ディジタル信
号処理にはある。2次元ディジタル信号処理に固有の
理論や課題については,多次元信号処理に関する専門
書[11-[7]を参照されたい。
なお,今回の講座のプログラムの実行のために,
MATLABのSignalProcessing‘Ibolboxの他に
*東北大学大学院工学研究科
〒980-8579仙台市青葉区荒巻字青葉O5
mohokuUniversity,Sendaj980-8579,Japan
E-mail:kawamata◎ecei、tohoku.ac,jp
JoumalofSignalProcessing,Vol、5,No.6,November2001
ImageProcessingToolboxが必要であることに注意
してほしい。具体的には,freqz2,fwind2,ftrans2
がImageProcessingToolboxの中の関数である。
2.2次元連続空間信号と離散空間信号
2次元連続空間信号は鰯(t,,t2)のように2変数の
関数であり,実数または複素数の値をとる。ここで,
t,とt2は連続の実数であり,空間変数とよばれる。
t,軸とオ2軸はそれぞれ水平軸と垂直軸ともよばれる。
2次元連続空間信号〃(t,》t2)は,グラフとして描く
ならば,t,-t2平面上の曲面となる。もし,z(t,,t2)の
値を点(t,,t2)における輝度に対応させ,値が大きいときは高い輝度値を表し,値が小さいときは低い輝度
値を表すものとすると,鯵(t,,t2)は平面上の濃淡の情
報を表すものとなる。2次元連続空間信号として代表
的なものは画像である。
2次元離散空間信号は図6Jのように平面の格子点
上でのみ値をもつ2次元数列鰯(、1,”2)として表され
る。2次元離散空間信号〃(”1,,2)は2次元連続空間
信号駆け,,t2)を次のように標本化して得られることが多い。
、Z(”1Zl,”2過)=麺(t1,t2)ltl="1四,t2="2唖(1)
ここで,四と遇はそれぞれ水平方向と垂直方向の標
本化周期である。本講座では,簡単のため期=蝿=1
として2次元離散空間信号をZ(何1,,2)で表す。以後,
2次元離散空間信号を単に2次元信号あるいは信号と
よぶことにする。
2次元信号を表すために行列あるは配列を用いると
便利なことが多い。たとえば,次のように行列で表示
397
【例題6.1】2次元複素指数関数は二つの周波数
を持っているために,その形がわかりにくい。そ
こで,MATLABを用いて2次元複素指数関数を
描いてみよう。
周波数が((リMノ2)=(7r/5,7r/10)のとき,2次
元複素指数関数の実部COS((J1nl+uノ2,2)と虚部
Sin((J,、,+(4ノ2,2)を計算し,濃淡画像として表示せよ。
n2
398
、1
//9/6/、
図6.12次元離散空間信号z(、,,、2)
Fig.6.12-Ddiscrete-spacesignalz(、1,,2)
11次元,2次元,多次元をそれぞれ1-,,2-,,M-Dと略記することが多い。
●●ロ
e、、0ノe、、Bノ
諏卸
垂烈
、ロⅡクク
》“”釦
u一
叩、一
〈Uq今、
砥Ⅲ日″〃
●タ●Qク●●夕
s、〃S・〃
〈岨″目●Qク師”釦、日″夕、画■″夕〃ⅡⅡ、〃″0Ⅱ、
《h〉(U。.(Zワーs『’一s『’一
“1〈Unn.『’一e・工e
図ノ″〃く**
琴曲遮曲
●『0《、べ”〕●●
参″!、数P.122.,猟.‐弾
rWW
関一一g++;、‐ノ.,、‐ノ
・吟皿坐△『日一・旬0-、、■″夕《扉L》●Qク、U″〃〔言《》●Q〃
、数2snn’一‐、,ノ2,、●ノ
・上日
We**。.《z、″・クワ一、″
》繍捌Ⅶ.,咋州血脈地仙伽脈地仙伽
、・・ワー、△1ワー、△1
頁)元酬脱叩釦唾一・一鈍叩唖聖鋤埜唾函
伽秋肥実1n
oダ
ウI□”んCwんW》NFI』《一‐)《ごwんsp今x〃んsp今x
した2次元信号を考える。
-今
i)助y0e-h(
α,a0〉
z(、,,、2)= (2)
”,↓
下線の引いてある位置を座標軸の原点(0,0)と考え,
縦方向を、,の軸に,横方向を、2の軸と考える。行
列(配列)に表されていない範囲の信号の値は零と考
えるものとする。このような表記を用いると,有限の
領域の2次元信号が簡潔に記述される。
2次元の連続空間信号と離散空間信号と同様に,Ⅳ
次元の連続空間信号z(t,,t2,…,tjV)や離散空間信号
z(”1,,2,…,njv)を考えることは容易である。jV>2
のとき,このような信号は多次元信号とよばれる'。 3.22次元離散空間フーリエ変換の定義
2次元信号〃(”1,,2)の2次元離散空間フーリエ変
換X(e”',e伽2)は次のように定義される。
3.2次元離散空間フーリエ変換
3.12次元複素指数関数 OCOO
X(eル',eル2)=EEz(",,"2)e-ル'",e-…,”1=一○○”2=一○○
(4ノ1シ(4ノ2=二一7r~7r (4)2次元複素指数関数は次式のように表され,二つの
周波数(ムノ11rad]と‘J2Iradlによって特徴づけられる複素数関数である。
1次元の場合と同様に,X(e”',e池2)は信号z(、,,、2)の周波数スペクトルとよばれ,一般には複素数である。
|X(e”1,e池2)|は信号z(、,,”2)の振幅スペクトルと
よばれ,Ⅸ(e”',eル2)は位相スペクトルとよばれる。
ここで注意しなければならないことは,2次元の場合,
,/E3?~千~[薯によって周波数の高低が決まることである。すなわち,、/E寒~千~E恵が相対的に小さい"剛2の領域
は周波数の低い領域を表し,、/画?~エー [弓が相対的に大きいuノ1-LJ2の領域は周波数の高い領域を表す。2次元
離散空間フーリエ変換を求めるために,関数freqz2がMATLABには用意されている。
ej“'”'+池2”2,78,,,2=-00~00 (3)
",と“2をそれぞれ水平方向と垂直方向の周波数と
よぶ。2次元複素指数関数は2次元信号のフーリエ表
現のための核となるものである。また,1次元の場合
と同様に,システムやフィルタの周波数応答を考察す
るための入力信号として用いられる。
JoumaIofSignalProcessing,Vol、5,No.6,November2001
20
JoumalofSignalProcessing,Vol、5,No.6,November2001
識醗誠錨圏蕊
,圏蕊蕊 園蕊 識 圏 感。群麗蕊霞園 睡闘圏露蕊蕊畷 . , 圏蕊通圃圏認蕊霞蕊蕊園..,...露函醗溌.、悶識蕊鰯.鰯圏圏溌..:麗蕊議題‘蕊圃園麗
蕊蕊、:麗圏闘蕊繍溌圏懲鰯圏画蕊鰯函蕊蕊|圃畷騒 函・’蕊鰯..適蕊i闘 鰯蕊園
”儲■下
一蕊
蕊.“。。
蕊一一曜
聞溺点罰
す弔
乱掘岬料
0,2
【例題6.2】次の2次元信号鯵(仰,,、2)(図6.3(a))
の2次元離散空間フーリエ変換X(e”1,ej"2)を求め,その振幅スペクトルを図示せよ。
…六/i黙’”(0’’0ノ
い“畷竺一誼離
》醗醗一一{群峰
一一志鐸垂
悪鋒l↑」闘
蕊‐磯園騒鰯.“
蕊騨圃鰯
蕊圏鰯蕊、”・翻闘
灘函認蕊‐..麗遡園蕊
圏露弾蕊溌画蕊
・ど麗函闘繍・
計溌圏園懇蕊
5
03
10
N匡幸↑ご一×
零珂一‐1
…醗睡画画一蕊空
圏一一蕊‐一塁調
園識i!蕊雪一認‐・瀞.
ざulO
詞信一
蕊圃醗鰯I
騨蕊・“
...”翻露
』一一一識部
躍闘繍
識3
50
、200、,
(a)信号〃(知,’'32)
(a)Signalz(、,1,,2)
蕊
~一瞬
ロ lO
n
図U
(a)実部
(a)Realpart
鰯(”,,”2)
=幸肌亙w"雪)‘…‘…剛…(5)冗1シn'2=一○○~○○
50
0
“s『①凸Fg-①)×’
20
2次元離散空間フーリエ変換X(ej"',e"2)から信
号鰯(n,’'’2)を求める逆変換は以下の式によって与え
られる。
蕊麗圏園識.蕊園圏騒ぎ
撫鰯罰圃蕊蕊園翻鰯唖
冨蕊磯圃圃圏渉
塵蕊i蕊圃圏鰯盛醗慰
蕊圏詞麗蕊“感露圃蕊
闘蕊隷園睡蕊灘鐸麟瞳画蕊
睦溌一慰識.“騒圃圏蕊
一圏翻岸、・譲蕊蕊圃蕊蕊
認懲“・溌雪‐一!【蕊再製一
41 I
撫串…二一畿I率簿一一一熱
闘画蕊I騨圏閏鰯繍‐
繍雲麓蕊圏圏溺誌‐溌
蕊圃感蕊慰瞳騒騒
I蕊圏圃麗蕊蝶鰯圏圏蕊
蕊一■醗譲“倉》圏圃鰯蕊
閏認・“.誰騨鴎圏蕪
謹鯉函羅蕊、‐‐蕊掴
、露函国蕊蕊一一篭
識欝一一一蕊…蕊閥一驚
一一一蕊.燕謎一一.一.
15
050
1副匡
(b)振幅スペクトル|X(e犯1,e”2)|
(b)MagnitudespectrumlX(ej"1,e”2)|
図6.32次元信号とその振幅スペクトル
Fig.6.32-Dsignalanditsmagnitudespectrum
蕊
鍵
醗蕊 灘圃.:
0 10
,
20
(b)虚部
(b)Imaginarypart
図622次元複素指数関数
2-Dcomplexexponcntialffmction
【Program6.2】(図6.3)%2次元離散空間フーリエ変換
cユear;
%信号
x=[0110;
1331;
1331;
0110]/20;
%信号の表示
s=size(X)-1j
nl=0:s(1);n2=0:s(2);
subpユot(2,2,1);
Inesh(n1,,2,x);
axis([OS(1)0s(2)00.2]);
xユabeユ(,n-1));ylabeユ('n-2j);
zlabel('x(n-1,,-2),);
%周波数スペクトルの計算
[X,fl,f2]=freqz2(x);
wl=fl*pi;w2=f2*Pi;%振幅スペクトルの表示
subpユot(2,2,2);
mesh(w1,W2,abs(X));
axis([一pipi-pipiO1]);
xユabeユ(j、omega-1[rad],);
Fig.6.2
399
ylabe1('、omega-2[rad]’);
zlabel(,|X(e′、{j、omega-1},eへ{j、omega-2})|,);
400
50
副亡一一こ)×
4.2次元離散フーリエ変換
0514.12次元離散フーリエ変換の定義
15
n200,,
(a)信号z(、,,、2)
(a)Signalz(、,,”2)
いま,側,=0~lVi-1,”2=0~M-1の有限区
間の2次元信号Z(、1,,2)を考える。これを(Ⅳ1'M)
点信号とよぶ。(IVi,M)点信号z(、1,722)の2次元
離散フーリエ変換(2次元DFT)は次式のように定義
される。
【Program6.3】(図6.4)%2次元離散フーリエ変換の例
c1ear;
%信号
N1=16;N2=16;
[n1,,2]=meshgrid(0:N1-1,0:N2-1);
15
0505
1
1
“エ争一エ)×一
Ⅳ,-1jV2-1
ニヱヱ鰯(",,"2)wlIZ"lwjIi;"2,”1=on2=0
ル1=0~IVi-1,k2=O~jV2-1(7)
X(ん,’ん2)
15
k200k,
(b)振幅スペクトル|X(ん1,k2)|
(b)MagnitudespectrumlX(k1,k2)|
図6.42次元信号と振幅スペクトル
42-Dsignalanditsmagnitudespe’
ここで,WMとWMは次の回転因子である。
WM=抑(-'芸)ルF・叩(-,蓋)(812次元信号z(、1,”2)はX(ん1,k2)から次の2次
元離散フーリエ逆変換(2次元IDFT)により求めら
れる。
…た赤熊x(胤州蝿峨、,=0~IVi-1,,2=O~M-1(9)
Fig.6.42-Dsignalanditsmagnitudespectrum
x=zeros(N1,N2);
x(1:4,1:4)=1;
%信号の表示
subp1ot(2,2,1);
mesh(n1,,2,x);
axis([ON1-10N2-101]);
xlabel('n-1');ylabel('n-2,);
zlabe1(,x(n-1,,-2)’);
%離散フーリエ変換
X=fft2(x);
%振幅スペクトルの図示
subp1ot(2,2,2);
mesh(n1,,2,abs(X));
axis([ON1-10N2-1016]);
xlabe1('k-1');ylabeユ('k-2');zlabe1(’1X(k-1,k-2)|,);
MATLABには2次元DFTと2次元IDFTとして
関数fft2とifft2が用意されている。これらは,後
に述べる高速フーリエ変換のアルゴリズムを用いてい
るものである。
定義式(7)から2次元DFTを求める直接計算法の
計算量は,O(jVfIV;)となる。信号のサイズが大きい場合,2次元DFTのこの計算量は極めて大きな値と
なることに注意が必要である。
式(7)の2次元DFTを求めるために,1次元DFT
を利用すると計算量を減少させることができる。図6.5
【例題6.3】次の(16,16)点の2次元信号
懇(、1,,2)の2次元DFTX(k,,片2)を求め,信
号z(nlln2)と振幅スペクトル|X(k1,k2)|を図示せよ。
{',、1,712=0~3
0,その他4.2行-列分解に基づく高速フーリエ変換〃(仰,,"2) (10)
JournalofSignalProcessing,Vol、5,No.6,November2001
|,0ヤ
妾‘I=9二才の(0‘O)=(zu‘ru)手化/W/抄剰甫①聖砿z8
.才〔ノl出畢乙A江CO騨園‘到敏1⑦竃二淫平ユェ砿Z
伽(!|か…側(廃)曇(州’
・手頃半畢(zu‘IfM
年用⑦星才郭cY鱒(8u‘Iu)鰯厚YZ1(zu‘[u)V
鐸/l〃丘/Y毎忽ル圭聖琢乙①砿【f、9鴎冊】
。受くりq(蝉才。受gIu量幽と
/W<上珊束鱒(gu‘Iu)v‘Q薄〉/1金。(8u‘Iu)v刺
(zⅧ‘Iu)/1年用‘z二才受_PL才(zu‘Iu)9と/w/抄卿東
畢(gu‘Iu)釘‘剰語。受嘩旦_量幽と/w/<ル叫東①毎/Y
少乙/I崎蕉ル圭聖砿醐(zu‘Iu)り。受gu[F用辱/l(少乙
§α(叩‘Iu)〃‘cIgiu年Y鐸/1〃ムリ(gu‘Iu)〃‘弘二二
°受嘩エ岬才等イイルこ/1「等察し妾エ理乙‘剰裂蔦娼受坤
軍峯且_(f[)¥靴'1受卑(81)準‘幸い舗与⑦面;mI告ョ
(斑)(gu‘Iu)v*(zu‘Iu)鰯=Oc-=Z3Yoo-=I3Y
(通ヴー乙州一[")v(雇州)zZZ=(雇"‘I似)m OOOC
写q(蓮_,皇
。受割丑沓早蜘凹‘9J_/1塀華畢1塁謡⑦(zu‘Iu)勿才
(zu‘Iu)v①竿可‘9Q_《僻z1号雷①エ砿z‘到謝凹才与
笥⑦聖欺1.畳嘩測才才増.篭ユュエ砿乙‘剰蔦提①。
(81)(8u‘Iu)z*(gu‘叩)V=○○一=zvOC-=1V
(z‘Y-2州一[")鰯(乙州)vZZ=(z"‘W OCOC
o匡才尊象翠蔦程⑦砿豊頃率孝(gu‘Iu)/1号ヨエ砿zg
〔α(乙叫‘Tu)V才(zu‘Iu)勿昌ヨエ率いGf⑦9.9国
窄言窄郭郭茎域乙・目
(剛191剛81p)uO脚nloAuooq-Z9、9.8m
(毎/,〃創崎褒少妾)竜二淫ユュエ砿89.9lx’
。
瀞lu
(zu‘'u)((zu‘'u)x
|,00Z」equje八oN‘9.ON‘9.1o八‘6u1sseoo」dleu61SJoIeu」no「
。受雌くり黄白〔α草提琢南鼎鱒才三
豊卑弘(WWzgolgAIW)O判喜章程⑦L皿謝号胆
-封W才才皿皿且鵠仔I丘一旦星▽エ「'J二/Iは①。。受
嘩臼敏半鱒皿Ⅲエ玖献ノI薄くi7⑦喜蔦程。-①受寡ユ
ミα才二受尊〔9星斡g-L皿エ率I琴章程⑦mq聖欺I
⑦回卑①坤曇坤妾‘与留①塞星、、'⑦Z蝉W才Wo91才裂
年①調号11丘一旦星裂享受-2草提畢Lmエ平匝IGf⑦
。。受星且_趨碗1LⅢエ率I①(zl)¥才(Ⅱ)準
剰mq聖琢E‘ユc§*Q、。受禦弘Ⅲq聖歌I⑦
副W①ユ〔に動(凶年zu)u卑亘垂剰竿丁。-.二
(zI)I-aAI~0=z¥‘'一W~0=[ヴ0=乙也
‘z"細(z"‘[抑Z=(z州)xl-W
。豊科峯二IGf①恥1(ム)¥‘才受《咽畢(gu‘1V)Ⅲ
Ⅲq聖欺I①。。受gI2g-mqエ砿I⑦副W⑦
ユ〔に到似年[u)u卑土>|z刺(zu‘I3Y)J‘才〉獣才
(Ⅱ)’一W~0=zu‘1-W~0=1V0=Iu
‘,哩蜘(忽泌‘叩)遜宝=(z"‘wI-IAI
bl
(
。IGf卒聖到
uo剛soduIoo3puumlo3-AAoH9,9.8m
錫911空一身9.9園
1-1N・・・101-1N・・・10
【)OOC
r)()【)(』
I【nIE
J【)【)【】
I【nlE
1-1N・・・10
一zN
0
1
'一zN
u
1572
402
【Program6.4】%2次元たたみこみ
%インパルス応答と入力
h=[12;
24];
x=[010;
111;
010];
%出力
y=conv2(h,x)
n2
00 nlnl
図6.72次元FIRフィルタの入出力関係
Fig.6.71nput-outputrelationof2-DFIRfilter
以下ディスプレイの表示
Y(zllz2)=H(z1,z2)X(z1,z2)(20)
1
7.2次元FIRフィルタy
0120
JournalofSignalProcessing,Vol、5,No.6,November2001
2784
0240
7.1FIRフィルタのアルゴリズム
2次元単位インパルス応答〃('31,”2)を有する2次
元ディジタルフィルタのたたみこみの表現を以下のよ
うに記述する。6.2次元z変換
2次元信号z(、1,,2)の2次元z変換X(z1,z2)は次式で定義される。
X(z,,z2)=EZ麺(",,蝿2)Zr"'zす"’(17)”1=一OOn2=一○○
これに対して,逆z変換は
…)=赤克上rM重f‘-1z芽-'伽,(18)
と表せる。ここで,C,およびのはz,平面および
z2平面の原点を囲む適当な閉曲線である。
2次元信号鰯(、,,、2)のz変換X(z,,z2)において,z,=e”’およびz2=e池2とおくと,複素関数
X(z,,z2ル,=e池,,z2=e”2は信号〃(、',”2)の周波数ス
ペクトルを表す。このことは式(4)と式(17)の比較から理解される。
2次元z変換の最も重要な性質は,次式の推移とた
たみこみに関するものである。
,(",,"2)=EE順,k2)鰯(町一k,,"2-k2)(ん1,k2)ES
(21)
ここで,sはインデックス(ん,,k2)の範囲であり,こ
の範囲の外ではん(k,,k2)はすべてOであるものとす
る。sはん(ん,,k2)のサポート領域とよばれる。
サポート領域sが(、,,、2)の有限の領域であるとき,この単位インパルス応答は有限区間の単位インパ
ルス応答である。有限区間の単位インパルス応答をも
つ2次元ディジタルフィルタは2次元FIRフィルタ
とよばれる。
たとえば,〃(、,,、2)のサポート領域が次の領域であるとする。
s={(”1,,2)|〃1=0,1,,2=0,1}(22)
このとき,2次元FIRフィルタは以下のたたみこみに
よって入力から出力をつくりだす。
Wllln2)=ノZ(O'0)〃(、1,,2)+ノル(1,0)z(、1-1,,2)
+ノZ(0,1)z(nMl2-1)+ノZ(1,1)〃(、1-1,,2-1)(23)
・推移
〃(、l-ん1,,2-k2)〈->zrk'z蚕k2X(z1,z2)(19)
。たたみこみ
〃(”11,2)=ノZ(nlln2)*〃(、1,”2)
したがって,この2次元FIRフィルタの入出力関係
は図6.7のように表される。
サポート領域sが(、,,、2)の無限の領域に広がっ
ているとき,この単位インパルス応答は無限区間の単
位インパルス応答である。無限区間の単位インパルス
応答をもつ2次元ディジタルフィルタは2次元IIR
フィルタとよばれる。2次元IIRフィルタは2次元の
差分方程式によって記述され,入力信号から出力信号
を再帰的につくりだす。
【例題6.5】次の2次元FIRフィルタ〃(、1,,2)
の周波数応答を求めて図示することで,このフィ
ルタが低域フィルタであることを示せ。
I 11’21
131
121
7.2伝達関数と周波数応答 1|喝
h,(、,,、2) (29)
z変換のたたみこみの性質を利用し,式(21)の両
辺の2次元z変換を求めると次式が得られる。 周波数応答を求めるために,関数freqZ2を用
いよ。
Y(zl'z2)=H(zl,Z2)X(Z1,Z2)(24)
403
上式から,出力のz変換Y(z,,z2)と入力のz変換
X(zllz2)の比Y(z1,Z2)/X(z1,z2)を求めると
H(zl,z2)=EE向(A1,片2)Zr臆'z可胸。(25)(ん',k2)ES
となる。このz変換H(Z1,Z2)は2次元ディジタル
フィルタの単位インパルス応答h(孔,,、2)のz変換で
あり,このディジタルフィルタの伝達関数とよばれる。
たとえば,式(23)で表される2次元FIRフィルタの伝達関数は以下のようになる。
と表される。上式から,H(ej"1,e"2)は,この2次元
FIRフィルタの周波数応答を表すことがわかる。また,
式(27)と式(25)の比較から,伝達関数H(zl,z2)にz=ej"’とz=e”2を代入したものが周波数応答で
あることになる。
周波数応答H(e”1,e”2)は,向(、,,”2)によって決
定されるため,九(凡,,、,2)を適切に選ぶことによって
低域フィルタ,高域フィルタ,帯域フィルタなどの周
波数選択性フィルタを実現することができる。
0,2
10
吋仁P一こ)丘
02
2
、2 00、,
(a)単位インパルス応答
(a)Unitimpulseresponse
h(0,0)+h(1,0)zr1+〃(0,1)z5’
十月(1,1)zrlz訂1(26)
H(z,,z2)
【Program6.5】(図6.8)X2次元FIRフィルタの周波数応答
%インパルス応答
h=[111;
232;
111]/13;
Xインパルス応答の図示
s=size(h)-1;
nl=0:s(1);n2=0:s(2);
subp1ot(2,2,1);
mesh(n1,,2,h);
aXis([OS(1)0s(2)00.25]);
xユabe1('n-1');yユabeユ(jn-2');
50
0
Wa「の二Fg『の)工一さて,2次元FIRフィルタの単位インパルス応
答h(”1,?32)の2次元離散空間フーリエ変換を
H(ej"1,e”2)とおく。すなわち,
H(e”1,e池2)=ZEb(ん,,A2)e-池血e-池曾胸.(ん,’ん2)ES
(27)
このとき,2次元ディジタルフィルタに周波数“,と
〔J2の複素指数関数鰯('z,,、2)=e"'"'+j"2"2を入力
したときの出力は式(21)から
(b)振幅特性
(b)Magnituderesponse
図6.82次元FIRフイルタの振幅特性
Fig.6.8Magnituderesponseof2-DFIRfilter
〃(”1,,,2)=H(e”1,e"2)e"'"'+”2"2(28)
JoumalofSignalProcessing,Vo1.5,No.6,November2001
zユabeユ('h(n-1,,-2),);
%振幅特性の図示
[H,fl,f2]=freqz2(h);
wl=fl*Pi;w2=だ2*Pi;
sUbp1ot(2,2,2);
mesh(w1,W2,abs(H));
axis([-pipi-pipiO1]);
nabel(,、omega-1[rad],);
yユabel('、omega-2[rad],);
zlabel(,|H(eヘ{j、oInega-1},e会{j、oInega-2))|,);
8.2次元FIRフィルタの設計
2次元ディジタルフィルタの零位相または線形位相
特性は多くの信号処理において望ましい特性である。
とくに画像や映像処理において必要とされる位相特性
である。2次元の場合においても,FIRフィルタは零
位相または線形位相特性を容易に実現することができ
る。ここでは零位相特性を有するFIRフィルタの設
計のための代表的な方法である窓関数法とマクレラン
変換法を紹介する。
8.1零位相特性と線形位相特性
2次元ディジタルフィルタHz(Z1,z2)の周波数応答
Hz(z,,z2ル,=ej‘‘,,,z2=ej"2が実数であるとき,この位相特性を零位相特性という。実数の単位インパルス応
答んz(、,,、2)が次のような対称性
肱(nlln2)=し(-,1,-n2) (30)
を有するとき,フィルタは零位相特‘性をもつ。
零位相の伝達関数L(z,,z2)に適当なzrlV,とz五Mをかければ,その振幅特性を変えずに線形位相
の伝達関数剛Z,,Z2)
駒(z1,z2)=zrjv'z訂jv2Hz(z1,z2)(31)
が得られる。実際,このフィルタの位相特性8(‘‘ノ,,"2)は
ル1,(』ノ2)=-(jVi(4ノ1+雌吻)(32)
であり,線形位相となっている。
線形位相フィルタH2(z,,z2)の単位インパルス応答
Mn,,、2)は,式(31)の空間領域表現から
Mn1,,2)=此(nl-jVi,、2-M)(33)
と表され,肱(、,’'22)を水平方向と垂直方向にそれぞ
れjviと脇だけ遅延させて得られるものである。
404
8.2窓関数法による設計
この方法は,1次元FIRフィルタの窓関数法による
設計(第5回,第3章)を2次元の場合に直接的に拡張
したものである。まず,所望のフィルタの周波数応答
Ha(e”',e”2)とその単位インパルス応答Mn,,n2)が次の様な2次元離散空間逆フーリエ表現によって結
びつけられていることに注意してほしい。
Mn,,"2)
=幸ノMHIIにル1,‘”雪)‘……書…、lシ、2=-CO~○○ (34)
上式を用いれば,与えられた零位相の理想的周波数応答
Ha(e”',e山2)から,この周波数応答を有するフィルタ
の単位インパルス応答Mn,,n2)を求められる。ただ
し,単位インパルス応答ノzd(、,,、2)が実数かつ零位相
となるためには,Ha(e”',e池2)=Hti(e-”',e-”2)でなければならない。このようにして得られる単位イ
ンパルス応答は’Mnll"2)=ん.(一n1,-,2)となり,零位相となる。
この単位インパルス応答〃d(、,,、2)のサポート領
域Sは,多くの場合,泥,,n2=一○○~+COの範囲
に広がるので,Mn1,,2)に次のように2次元窓関数
1"2(、1,,2)をかけて,サポートが有限になるようにす
れば,零位相のFIRフイルタノル(、1,,2)が得られる。
h(、1,,2)=ノld(、1,,2)f"2(、1,,2)(35)
2次元窓関数iU2('’1,九2)は,対称性I"2(、1,〃2)=
⑩2(-側1,-"2)を持つことが必要であり,|”11と|”21が大きくなるにしたがって滑らかに減少する有限のサ
ポート領域の信号である。通常よく用いられる1次元
窓関数を⑩,(、)とすれば,以下のような分離形と対称形の2次元窓関数が得られる。
分離形f"2(、1,,2)
対称形切2("1,,2)
”,(",)uノ,(、2),
|”,'三jVi,|、21≦jV2(36)
肋(,応這),,/房~君君≦Ⅳ(37)
MATLABでは窓関数を用いた2次元FIRフィルタ
の設計法の関数として,分離形窓を用いるfwindlと
対称形窓を用いるfwind2が用意されている。
JoumalofSignaIProcessing,Vol、5,No.6,November2001
【例題6.6】図6.9(a)に示されるような遮断周
波数Ucの円対称の通過域をもつ2次元低域FIR
フィルタを設計しよう。望ましい周波数応答を式
で表せば
職洲-{;:鮮雪蝿"“となる。
関数fwind2を用いて,遮断周波数がLJc=7r/2
の2次元FIRフィルタを設計し,その単位インパ
ルス応答と振幅特性を求めて図示せよ。ただし,円
対称のハミング窓関数(窓のサイズvn3+、;≦20)を用いるものとする。
405
1
50
0
-(侭S『の阜戸3-の)℃工一
- 2 - 2
の2[「ad】①,[rad]
(a)設計仕様Ha(ej"',eル'2)
(a)DesignspecificationHd(e池,,e"2)
210
0010
(N匡幸帝匡)二
マクレラン変換法は,設計が容易な1次元FIRフィ
ルタの周波数変数“に2変数の周波数“1と“2の関
数岬,,U2)を代入することで,2次元FIRフィルタの周波数応答を得るものである。
8.3マクレラン変換による設計
【Program6.6】(図6.9)X窓関数法による2次元F工Rフィルタの設計
Clear;
M=64;
[fl,f2]=rreqspace(M,'meshgrユd,);
wl=fl*Pi;w2=f2*Pi;
X理想的振幅特性
Hd=Zeros(M,M);
Hd(sqrt(w1.へ2十W2.ー2)〈pi/2)=1;
subpユot(2,2,1);Inesh(W1,W2,Hd);
aXiS([-PユPi-PiPiO1]);
xユabeユ()、Omega-1[rad]〉);
ylabeユ(>、Omega-2[rad]》);
zlabeユ(》|H-d(e~{j、omega-1},eへ{j、oInega-2})|’);%円対称ハミング窓
[n1,,2]=meshgrid(-M/2:M/2);
r=sq工t(n1.へ2十,2.へ2);N=20;
R=sqrt(n1.へ2+n2.'、2)〈N;
win=(0.54+0.46*COS(pi*r,/N)).*R;
%窓関数によるFIRフィルタ
h=fwmd2(Hd,win);
subpユot(2,2,2);
Inesh(n1,,2,h);
axis([-M/2M/2-M/2M/2-0.10.2]);
xユabeユ('n-1');ylabeユ('n-2');zユabel(,h(n-1,,-2),);
%設計されたF工Rフィルタの振幅特性
[H,fl,f2]=freqz2(h);
wl=fl*Pi;w2=f2*Pi;
subpユot(2,2,3);Inesh(W1,W2,abs(H));
axis([‐pipユーpipiO1]);xlabeユ('、omega-1[rad]’);
yユabel('、olnega-2[rad],);zユabeユ(,|H(e令{j、omega-1},e今{j、olnega-2})|,);
、2 ,,
(b)設計されたFIRフィルタの
単位インパルス応答h,(n,,n2)
(b)Unitimpulseresponse月(、1,,,2)
ofthedesignedFIRfilter
JoumalofSignalProcessing,Vol、5,No.6,November2001
50
0
例s『①卓亭g『①)工一
-2
⑩2[radl‐2の,[rad}
(c)設計されたFIRフィルタの
振幅特性H(e”1,e”2)
(c)MagnituderesponseH(e"',ej"2)
ofthedesignedFIRfilter
窓関数法によるFIRフィルタの設計
Designof2-DFIRfilterbywindowing
method
図6.9
Fig.6.9
1次元零位相FIRフィルタの伝達関数H,(z)は高
次の場合でも,計算機を用いれば容易に求められる。
適当な方法で設計された1次元零位相FIRフィルタ
の単位インパルス応答を月,(k)(た=-1V~Ⅳ)とすれば,その周波数応答は
Hi(e”)
IV
E向,(ん)e-伽ルー-IV
jV
向,(O)+E2M’)cCs(k")ん=1
N
α(0)+Eα(k)(COS")臆(39)ん=1
のように,cOSUの多項式の形に変形できることが知
られている。
一方,2次元零位相FIRフィルタの単位インパルス
応答h2(、1,,2)(、1,,2=-Ⅳ~Ⅳ)の周波数応答は
jVjV
H2(eル1,eル2)=EE九2(",,"2)e-j"'"1-…”,=-JV”2=-N
=ん2(0,0)+EE2ん2(",,"2)cCs(",",+伽2)(40)(",,n2)ES
と書ける。ただし
S {(、,,、2)|、,=O~Ⅳ,、2=-1V~Ⅳ,
ただし(、,,、2)=(0,0)を除く}(41)
ここで,1次元周波数応答H,(e”)から2次元周波数
応答H2(e”',e池2)を得るために,1次元周波数⑳と
2次元周波数((JMノ2)の間の変換cCs(』ノー抑1,(4ノ2)
を導入し,H2(e”',e池2)を得る。すなわち
H2(eJ"',e”2)=H,(e”)|c…=抑,,"2)(42)
ただし
9((』’11(4ノ2)=A+BCOS"1+CCOS"2
+Dcos(LJ1-(4ノ2)+ECOS("1+LJ2)(43)
ここで,A,B,C,D,Eは2次元周波数の特性を制御
するためのパラメータである。上式のような変換をマ
クレラン変換という。例えば
A=-妾B=c=;,D=E=;(44)とおけば,円対称に近い2次元の低域フィルタを1次
元の低域フィルタから導くことができる。
406
式(42)を満足するH2(e”1,e”2)の単位インパル
ス応答〃2(”,,、2)を求めるために,式(42)の右辺を
変形すれば,H,(e”)は次のように書き換えられる。
IV
H,(e'")|…=卯,,"2)=α(0)+Eα(k)[卯,,"2)]&k=1
=62(0,0)+EE2b2(",,"2)cCs(",",+"2"2)(45)(72,,732)ES
したがって,上式と式(40)を等しいとおけば,ん,(k)
からノ12(、,伽)が求められることになる。MATLABでは,マクレラン変換による2次元FIR
フィルタの設計法として,ftrans2がある。
【例題6.7】図6.10(a),(b)に示される1次元FIRフィルタは,カイザー窓により設計された
FIRフィルタ(長さ39,第4回の第3章の例題
4.3を参照)である。この1次元FIRフィルタに
マクレラン変換(式(43)と式(44))を適用して2
次元FIRフィルタを設計し,その単位インパル
ス応答と振幅特’性を図示せよ。
【Program6.7】(6.10,6.11)%マクレラン変換による2次元FIRフィルタの設計
Clear;
%カイザー窓による1次元FIRフィルタhl
wp=0.4*pi;WS=0.6*pi;
a1pha=6.0;N=39;
wc=(wP+WS)/2;
hl=firl(N-1,Wc/pi,kaiser(N,a1pha));%インパルス応答hlと振幅特性H1の表示
、=0:N-1;
subplot(2,2,1);steIn(n,hl);
axis([ON-1-0.10.6]);grid;
x1abel('TiInen');ylabeユ('h-1(、),);
w=ユinspace(-pi,pi-pi/512,512);
H1=freqz(h1,1,W);
subplot(2,2,2);
p1ot(w,abs(H1));
axis([-PiPi01.2]);grid;
xlabe1('Frequency、omega[rad],);
y1abel(,|H-1(e~{j、omega})|,);%マクレラン変換
h2=ftrans2(hl);
%2次元インパルス応答h2と振幅特‘性H2の表示
nl=0:N-1;n2=0:N-1;
subp1ot(2,2,3);mesh(n1,,2,h2);
axis([ON-10N-1-0.10.25]);
JournaIofSignalProcessing,Vol、5,No.6,November2001
150
0
(ザ一の↑』9-①)図工’
。;
JoumalofSignalProcessing,Vol,5,No.6,November2001
210
0010
(N匡邑戸匡)N垂
0.4
の|①
三一
二0.2
"…i割jtfⅡW|…、0]
、2 00n,
(a)単位インパルス応答
(a)Unitimpulseresponse
0102030
Time、
(a)1次元FIRフィルタの単位インパルス応答
(a)Unitimpulseresponseofal-DFIRfilter
本基礎シリーズの第1回~第5回については主に拙
著I8lを参考にして構成し,第6回については主に拙著
[5]を参考にして構成したものである。ただし,書籍とは異なり,本シリーズの紙幅の制約の都合上,ディ
ジタル信号処理の基礎的な概念と方程式を与えること
にとどめざるを得ないため,実際に多数のMAjrLAB
のプログラムを実行することで内容が理解できるよう
に執筆するようにつとめた。
9.おわりに
407
βjJllll垢・q。
。olIjIjⅡIjIIIlb
』。。li剤Jlj,j’JJ
11
864
000
-垂二①)一工一
0.2
0
‐ 2O2
Frequencyの[rad]
(b)1次元FIRフィルタの振1幅特性
(b)Magnituderesponseofal-DFIRfilter
図6.101次元FIRフィルタ
Fig.6.101-DFIRfilter
(b)設計された2次元FIRフィルタの
振幅特性
(b)Magnituderesponse
図6.11マクレラン変換による2次元FIRフィルタ
の設計
Fig.6.11Designof2-DFIRfilterbyMcClellan
transfbrmation
j
j
212
.,.,
、.jj
,.,j;
1,j
くJ2.111
1,hPOdd
ejく*aa
b222J・1rr
a一ZfjpEE
1,q2
y,e一一H112
1工;くP一一
◇,一f2JS一aa
jnW4bgg
,く一一,a・1ee
l2.,2,P、m
’-1.1-2OO
nh2P2W・1、、
,,f*く,P,,
くく,1t1一くく
工11fOWに11
eef1くくee
bb,一一PhSbb
aa2bS・工aa
鯉型阻刺釦咋郵狸虹
MAjrLABは極めて強力で便利な道具である。この
ため,ともするとディジタル信号処理において重要な
たたみこみ,フィルタリング;変換などのアルゴリズ
ムが見えにくくなってくる。そこで,重要なアルゴリ
ズムがMATLABのプログラム中に現われるように配
慮したつもりである。読者の方々のご意見。ご批判を
いただければ幸いである。
なお,本基礎シリーズで示したMATLABのプログ
ラムは以下のページからダウンロードできる。この
プログラム中には,本文中のプログラムでは記載でき
なかった注釈も十分にはいっており,記述がよりわか
りやすくなっているので,ご利用いただければ幸いで
ある。
http://www、1,k.ecei・tohoku・ac.』p/jspmatlab/
zlabeユ(,lH-2(eヘ{j、omega-1},eへ{j、omega-2})|》);
10.謝辞
信号処理学会会長谷萩隆嗣先生には,一年間にわ
たる基礎シリーズの連載をすすめていただき,シリー
ズの執筆に関して有益なご助言をいただきました。こ
こに心から感謝いたします。また,萩原瑞木君と橋本
敬太郎君(東北大学大学院工学研究科電子工学専攻)
には,原稿を読んでいただき,式や表現の誤りを訂正
したいただきました。ここに深く感謝いたします。
参考文献
[1]、E・DudgeonandR・MMersereau:Multidimensional
DigitalSignalProcessing,Prentice-Hall,1984.
[21A・KJain:nmdamentalsofDigitallmageProcessmg,
Prentice-Hall,1989.
[3]J・SLim:Two-DimensionalSignalandlmageProcess‐
ing,Prentice-Hall,1990.
[4]W-S、LuandA・Antoniou:Two-DimensionalDigital
Filters,MarcelDecker,1992・
[5]川又政征,樋口龍雄:多次元ディジタル信号処理,朝倉書店,1995.
16]雛元孝夫,浜田望,川又政征,田口亮,村岡輝雄:2次元信号と画像処理,計測自動制御学会,1996.
[7]H・Schr6derandH・Blume:One-andMultidimensional
SignalProcessing,Wiley,2000.
[8]樋口龍雄,川又政征:MAjrLAB対応ディジタル信号処理,昭晃堂,2000.
408
川又政征1982年東北大学大学
院工学研究科電子工学専攻博士課程修
了,1995年同通信工学科教授,1997
年東北大学大学院工学研究科電子工学専攻教授。この間,1次元および多
次元ディジタルフィルタの設計,知的
信号処理,画像・映像処理などに関す
る研究に従事。1984年度計測自動制
御学会論文賞,1996年度計測自動制
御学会著述賞,1997年第11回日
本IBM科学賞を受賞。電子情報通信
学会,計測自動制御学会,情報処理学
会,映像メディア学会,IEEEなどの
会員。IEEESeniorMember(1992)。
郡
《》舗聴・ぃ岬。
督霞が側
畏
、為爵.
JoumaIofSignalProcessing,Vol5,No.6,Novembe「2001
Top Related