大分工業高等専門学校紀要

第 51 号(平成 26 年 11 月)

重み計算の削減に基づくバイラテラルフィルタの高速化

平岡透1・和田佳樹2

1情報工学科，2制御情報工学科

画像のエッジを保存してスムージングを行うバイラテラルフィルタが近年注目されているが，バイラテラルフィルタには計算に多くの時間を要するという欠点がある．そこで，バイラテラルフィルタの重みをあらかじめ計算しておくことで，誤差を生じずにバイラテラルフィルタの計算を高速化できる方法を提案する．レナの画像を用いた実験を通して，提案法はバイラテラルフィルタの計算を約7倍に高速化できることを示す．

キーワード : バイラテラルフィルタ，高速化，重み計算

１．はじめに２．方法

画像のエッジを保存してスムージングを行うバイラテラルフィルタ 1）が近年注目されるようになり，画像処理

本章では，まずバイラテラルフィルタを概説し，その後提案法を説明する．

や空間情報処理，コンピュータグラフィックスなどの多くの分野で利用されている 2）3）．しかし，バイラテラルフィ(1) バイラテラルフィルタ

ルタは，計算に多くの時間を要するという欠点がある．こ256 階調で I × J 画素で輝度値が N 階調の画像におけるのため，誤差を生じないバイラテラルフィルタの高速化と空間座標 (i, j ) での入力画素値を d i , j とし，座標 (i, j ) でのして，バイラテラルフィルタの重みの対称性に基づいてバ

出力画素値を f i , j とすると，バイラテラルフィルタではイラテラルフィルタの計算を約 2 倍に高速化できる方法

f i, j を（以下，従来法）４）が提案されている．

i W

本稿では，バイラテラルフィルタの重みをあらかじめ計算しておくことで，誤差を生じずにバイラテラルフィルタ

fi, j の計算を2倍以上に高速化できる方法を提案する．提案法 (( i  k ) 2  ( j l ) 2   ( d i , j  d k ,l ) 2 )k i W l  j Wj Wi Wの有効性を検証するために，図-1に示すレナの画像を用いた実験を行う．

j W

 e

 ed k ,l (( i  k ) 2  ( j l ) 2   ( d i , j  d k ,l ) 2 )(1)

k i W l  j Wで計算する．ここで，  と  は正定数， W はウィンドウサイズである．  は座標 (i, j ) からの距離の影響を調節するパラメータであり，  の値が大きいほど座標 (i, j ) から離れている画素の影響を受けにくくなる．  は座標 (i, j )の画素値 d i , j との差の絶対値の影響を調整するパラメー

タであり， の値が大きいほど画素値 d i , j との差の絶対値の大きい画素の影響を受けにくくなる． W の値が大きいほど，計算時間は大きくなる．以下の実験では，  0.01 ，  0.01 とした．
(2) 提案法
提案法は，階調数 N とウィンドウサイズ W のすべての組合せにおいて，式(1)の exp 関数部（以下，重み）をあら図-1 レナの画像

かじめ計算しておき，式(1)の計算における重みの計算を削減することでバイラテラルフィルタの高速化を実現する．

―7―

大分工業高等専門学校紀要

第 51 号(平成 26 年 11 月)

提案法の手順を以下に示す．

表-1 バイラテラルフィルタの計算時間 [s]Step1： M × M の大きさの N 個の行列を作成し， n 番

I ×J目の行列の s 行 t 列目の要素の値を g s ,t , n とする．
ここで， M  W  1 であり，s と t は 0 から W までの整数である．この行列の要素の値 g s ,t , n を

g s ,t ,n  e  ( s t ) n22

W

2

1,024×1,024

256×256512×512768×768

50.579

2.246

5.037

8.909

10

2.006

8.160

18.39732.72915

4.292

17.64540.00271.33920

7.343

30.51169.406124.028で計算する．このとき，この行列は対称行列となる ので， s  t の 場合 に s 行 t 列 目の要 素の値

表-2 提案法による計算時間 [s]g s ,t , n を計算した際， t 行 s 列目の要素の値 g t , s , nに g s ,t , n を代入することによって計算量を削減す

I ×Jる．
Step2：式(1)のバイラテラルフィルタをi W

f i, j j W  gk i W l  j Wi W

Wi  k , i l , d i , j  d k , ld k ,l

256×256512×512768×768

1,024×1,024

50.081

0.295

0.629

1.076

100.281

1.083

2.368

3.997

150.613

2.371

5.170

9.057

20

1.050

4.133

9.131

16.077j W  gk i W l  j W

表-3 提案法による計算時間の向上率

i  k , i l , d i , j  d k , lI ×Jで計算する．
式(1)による重みの計算回数は， IJ (2W  1) 回である．
提 案 法 に よ る 重 み の 計 算 回 数 は ， 式 (2) に お い て

2N (M  (M  1) / 2)  N (W 2 / 2  W  1) 回である．つまり，提案法の高速化は，画像サイズ I × J が大きい場合，ウィンドウサイズ W が小さい場合，また階調数 N が小さW

256×256512×512768×768

1,024×1,024

5

7.148

7.614

8.008

8.280

10

7.139

7.535

7.769

8.188

15

7.002

7.442

7.737

7.877

20

6.993

7.382

7.601

7.715

い場合において，より効果を発揮すると考えられる．

４．まとめ
３．実験

バイラテラルフィルタの重みをあらかじめ計算しておくことで，誤差を生じずにバイラテラルフィルタの計算を

256 階調のレナの画像にバイラテラルフィルタと提案法高速化できる方法を提案した．レナの画像を用いた実験をを適用した．画像サイズ I × J を 256×256，512×512，通して，提案法はバイラテラルフィルタの計算を約 7 倍に768×768，1,024×1,024 の 4 通り，ウィンドウサイズ W を 5，10，15，20 の 4 通り，合計 16 通りで実験を行った．バイ

高速化できることを示した．

ラテラルフィルタによる計算時間[s]を表-1，提案法による

参考文献
1) C. Tomasi and R. Manduchi: Bilateral Filtering for Gray and

計算時間[s]を表-2 に示す．表-1 と表-2 の計算時間は，10回試行した平均値である．表-1 と表-2 の横方向が画像サイ
ズ I × J ，縦方向がウィンドウサイズ W である．また，バ
イラテラルフィルタによる計算時間を提案法による計算

Color Images, Proc. ICCV, pp. 839-846, 1998.
2) 浦浜喜一：画像の本質を引き出すバイラテラルフィル

時間で割った値（以下，計算時間の向上率）を表-3 に示す．

タによるノイズ除去とイラスト風画像の生成，映像情報メディア学会誌，Vol.62，No.8，pp. 1268-1273，2008．

表-3 より，バイラテラルフィルタの計算を約 7 倍に高速化

3) 平岡透，碇正敬：バイラテラルフィルタを用いたレーできることがわかった．つまり，バイラテラルフィルタのザプロファイラデータからの樹木抽出，写真測量とリ計算を約 2 倍に高速化できる従来法よりも提案法は有効

モートセンシング，Vol.49，No.2，pp.103-108，2010．

な方法である．また，画像サイズ I × J が大きいほど，ウ4) 井上光平，浦浜喜一：重みの対称性に基づくバイラティンドウサイズ W が小さいほど，提案法による高速化の効果が大きくなることもわかった．

ラルフィルタの高速化，電子情報通信学会論文誌，Vol.
J93-D，No.2，pp.148-150，2010．

計算環境は，OSがWindows 7 Enterprise，メモリが4.0GB，CPUが2.90GHz，使用言語はC言語である．

(2014.9.30受付)―8―