画像処理における周波数解析 - doshisha...2016/03/25 ·...
TRANSCRIPT
画像処理における周波数解析
坂口 暁美 廣安 知之 日和 悟
2015年 12月 9日
IS Report No. 1205120901
ReportMedical Information System Laboratory
Abstract
画像処理において,指紋認証や虹彩認識などの生体認証,テクスチャのパターン認識などは画像の周
波数領域における情報が重要となる.本稿では,画像の空間周波数を解析する手法としてのフーリエ
変換やフィルタリングについて述べる.
キーワード: 2次元フーリエ変換, 周波数フィルタリング, Gaborフィルタ
目 次
第 1章 はじめに . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
第 2章 フーリエ変換 . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.1 2次元フーリエ変換 . . . . . . . . . . . . . . . . . . . . . . . . 3
第 3章 周波数フィルタリング . . . . . . . . . . . . . . . . . . . . . . . 5
3.1 周波数フィルタリング . . . . . . . . . . . . . . . . . . . . . . . 5
3.1.1 ローパスフィルタ . . . . . . . . . . . . . . . . . . . . . . . . 5
3.1.2 ハイパスフィルタ . . . . . . . . . . . . . . . . . . . . . . . . 6
3.1.3 バンドパスフィルタ . . . . . . . . . . . . . . . . . . . . . . . 6
第 4章 ガボールフィルタ . . . . . . . . . . . . . . . . . . . . . . . . . 7
4.1 ガボールフィルタ . . . . . . . . . . . . . . . . . . . . . . . . . 7
第 1章 はじめに
規則正しく繰り返される現象の単位時間あたりの繰り返し回数のことを,周波数と呼ぶ.多くの場合,
周波数は1秒あたりの繰り返し数のことを表し,単位にはHzを用いる.1回あたりにかかる時間を,
周期と呼び,周期は周波数の逆数である.しかし,Fig. 1.1に示すように,画像においては時間を空
間に置き換えて周波数を定義する.これを空間周波数という.本稿では,空間周波数解析を行うため
の手法としてフーリエ変換,周波数フィルタリングおよびGaborフィルタについて述べる.
なお,本稿は,「ディジタル画像処理 [改訂新版]」(CG-ARTS協会)1) および「C言語で学ぶ医用
画像処理」(オーム社)2) を参考に作成している.
(a) 2次元濃度パターン (b) 濃度パターンの1次元プロファイル
Fig. 1.1 sin波の画像の変化 (自作)
2
第 2章 フーリエ変換
2.1 2次元フーリエ変換
画像が持っている空間周波数を利用した処理をするためには,適した領域に変換する必要がある.
画像が持つ空間周波数は x方向と y方向で表される空間領域である.この空間領域 f(x, y)を u方向
と v方向で表される空間周波数領域 F (u, v)へ変換し,処理を施した後に再度元の空間領域 f(x, y)に
戻す.この空間領域 f(x, y)と空間周波数領域 F (u, v)への相互変換に用いるのがフーリエ変換とフー
リエ逆変換のフーリエ変換対である.画像は x方向と y方向の2次元で定義されているため,この変
換では2次元フーリエ変換対を用いる.まず,1次元フーリエ変換対について述べる.
F (u) =
∫ ∞
−∞f(x)e−j2πuxdx (2.1)
f(x) =
∫ ∞
−∞F (u)ej2πuxdu (2.2)
この式 (2.1),式 (2.2)を2次元に拡張した2次元フーリエ変換対は以下の式で定義される.
F (u, v) =
∫ ∞
−∞
∫ ∞
−∞f(x, y)e−j2π(ux+vy)dxdy (2.3)
f(x, y) =
∫ ∞
−∞
∫ ∞
−∞F (u, v)ej2π(ux+vy)dudv (2.4)
これらのフーリエ変換は連続信号を対象としているため,デジタル画像を変換する際には使用でき
ない.デジタル画像を変換する場合には.離散フーリエ変換 (Discrete Fourier Transform: DFT)お
よび離散フーリエ逆変換 (Inverse DFT: IDFT)が用いられる.更に,その計算を高速に実行する高
速フーリエ変換(Fast Fourier Transform: FFT)を DFTに適用して,実用的によく用いられてい
る.その理由としては,プログラム上でDFTを行うと,計算量が膨大になるため FFTを用いる.し
かし,データ数は 2のべき乗に制限される.これからDFTおよび IDFTについて述べる.1次元の
DFTおよび IDFTは以下の式で表される.
F (u) =
N−1∑x=0
f(x)e−j 2πuxN (2.5)
f(x) =1
N
N−1∑u=0
F (u)e−j 2πuxN (2.6)
また,2次元のDFTおよび IDFTは以下の式で表される.
3
2.12次元フーリエ変換 第 2 章 フーリエ変換
F (u, v) =N−1∑y=0
M−1∑x=0
f(x, y)e−j 2πuxM e−j 2πvy
N (2.7)
(x, y) =1
MN
N−1∑v=0
M−1∑u=0
F (u, v)e−j 2πuxM e−j 2πvy
N (2.8)
画像に対して2次元 DFTを行うには,まず x方向を1次元 DFTを行い,そしてその結果に対し
てy方向に1次元 DFTを実行する.2次元デジタル画像に対して2次元 DFTを行った変換結果を
表示するには以下の式で表されるパワースペクトルを用いる.しかし,フーリエ変換の結果,一般に
周波数 0での値や,uv軸上での値は非常に大きくなるので,通常対数にして表示する.
|F (u, v)|2 = Re{F (u, v)}2 + Im{F (u, v)}2 (2.9)
2次元DFTによって得られるパワースペクトルをそのまま画像とすると低周波成分が四隅に来て
しまうため,画像中心に (0,0)が位置するように並べ替える.
デジタル画像に対するフーリエ変換は様々な分野において用いられている.特に,空間領域では
フィルタリングを行う際にフィルタと画像の畳み込み積分が必要であったが,空間周波数領域では単
純に積で計算できる.
(a) 入力画像 (b) パワースペクトル画像 (c) 出力画像
Fig. 2.1 sin波の画像の変化 (自作)
これらの操作を画像に行うと,Fig. 2.1に示すとおりになる.通常のFFTによって得られるパワー
スペクトル画像は Fig. 2.1(b)となる.そして,四隅の低周波部分が中心になるように入れ替えを行
い,Fig. 2.1(c)の画像を一般的に用いる.
4
第 3章 周波数フィルタリング
3.1 周波数フィルタリング
画像におけるフーリエ変換の結果は,画像に含まれる各周波数成分を表している.よって,フーリ
エ変換後の各周波数成分ごとの大きさを変えることにより,元の画像の性質を変化させることが出
来る.このような処理を周波数フィルタリングと呼ぶ.元の画像をフーリエ変換したものを F (u, v),
フィルタリングの出力をG(u, v)とするとき,周波数フィルタリングは以下の式で表すことが出来る.
G(u, v) = F (u, v)H(u, v) (3.1)
ここでH(u, v)が周波数フィルタである.周波数フィルタリングでは,入力の各周波数成分 F (u, v)
が,周波数ごとにフィルタH(u, v)と掛け合わされ,出力G(u, v)となる.
また,フィルタリング結果を画像として得るには,G(u, v)に対して,式 (2.5)に示すフーリエ逆変
換を行う必要がある.
3.1.1 ローパスフィルタ
画像に含まれる空間周波数成分のうち,低周波成分は残し,高周波成分は除去するようなフィルタ
をローパスフィルタ (Lowpass Filter: LPF)と呼ぶ.LPFを施した画像は高周波成分が取り除かれ,
Fig. 3.1(b)に示すように結果として平滑化された画像となる.
(a) フィルタリング後の
パワースペクトル画像
(b) 出力画像
Fig. 3.1 ローパスフィルタ (自作)
5
3.1周波数フィルタリング 第 3 章 周波数フィルタリング
3.1.2 ハイパスフィルタ
ローパスフィルタとは逆に,画像の高周波成分は残し,低周波成分を除去するようなフィルタを,
ハイパスフィルタ (Highpass Filter: HPF)と呼ぶ.HPFを施した画像からは低周波成分が取り除か
れ,濃度変化だけが画像に残り,Fig. 3.2(b)に示すようなエッジを強調したような画像が得られる.
(a) フィルタリング後の
パワースペクトル画像
(b) 出力画像
Fig. 3.2 ハイパスフィルタ (自作)
3.1.3 バンドパスフィルタ
画像に含まれる空間周波数のうち,ある中間的な周波数の範囲を残すようなものを,バンドパス
フィルタ (Bandpass Filter: BPF)と呼ぶ.BPFを施された画像からは,Fig. 3.2(b)に示すように平
滑化された部分とエッジが強調された部分のある画像が得られる.
(a) フィルタリング後の
パワースペクトル画像
(b) 出力画像
Fig. 3.3 バンドパスフィルタ (自作)
6
第 4章 ガボールフィルタ
4.1 ガボールフィルタ
フーリエ変換が,所望の周波数成分が領域の何処にあるのかわからないのに対して,ガボールフィ
ルタ (Gabor Filter)は領域のどの位置に,どの方向の周波数が,どの強度であるかを知ることが出
来る.ガボールフィルタは,正弦波とガウス関数の積で表される.パラメータを操作することで様々
な方向と強度をもつフィルタを多数準備して特徴抽出を行う.このフィルタ群をフィルタバンクと呼
び,特徴量を抽出する.この特徴量を用いて認識や識別を行う手法が提案されている.ガボールフィ
ルタでは,哺乳類の脳の初期視覚野の活動をモデル化出来ることから,テクスチャを持つ物体を認識
するための特徴抽出として用いられる動機付けとなっている.以下に,2次元ガボールフィルタの式
を示す.
g(x, y, λ, φ) = e−x2+y2
2σ2 e2πλi(xcosφ+ysinφ) (4.1)
ここで,λは周波数で φは回転を表す.この関数は,実数部と虚数部の成分をもち,以下となる.
g(x, y, λ, φ) = e−x2+y2
2σ2 cos(2πλ(xcosφ+ ysinφ))
g(x, y, λ, φ) = e−x2+y2
2σ2 sin(2πλ(xcosφ+ ysinφ))
(4.2)
入力された画像に対してガボールフィルタを畳み込んで,特徴量 G(x, y, λ, φ)を表す式は以下と
なる.
G(x, y, λ, φ) =∑u
∑v
I(x, y) ∗ g(x− u, y − v, λ, φ) (4.3)
ここで I(x, y)は入力画像である.
φのパラメータのみを変えて作成したガボールフィルタバンクの例を Fig. 4.1に示す.
また,λのパラメータのみを変えて作成したガボールフィルタバンクの例を Fig. 4.2に示す.
7
4.1ガボールフィルタ 第 4 章 ガボールフィルタ
(a) φ = 0◦ (b) φ = 30◦ (c) φ = 60◦
(d) φ = 90◦ (e) φ = 120◦ (f) φ = 150◦
Fig. 4.1 6方向に向きを変えたガボールフィルタ例 (自作)
(a) λ = 0 (b) λ = 30 (c) λ = 60
(d) λ = 90 (e) λ = 120 (f) λ = 150
Fig. 4.2 周波数を変更したガボールフィルタ例 (自作)
8