article no. 27 特異値分解を用いた画像分解における 特異値...

11
応用力学研究所研究集会報告 No.18ME-S5 非線形波動現象における基礎理論,数値計算および実験のクロスオーバー(研究代表者 西成 活裕) Reports of RIAM Symposium No.18ME-S5 Crossover among theoretical, numerical and experimental studies on nonlinear waves Proceedings of a symposium held at Chikushi Campus, Kyushu Universiy, Kasuga, Fukuoka, Japan, November 6 - 8, 2006 Research Institute for Applied Mechanics Kyushu University May, 2007 Article No. 27 特異値分解を用いた画像分解における 特異値クラスタを緩和するアルゴリ ズム 笹田昇平 (SASADA Shohei),近藤弘一 (KONDO Koichi)岩崎雅史 (IWASAKI Masashi),中村佳正 (NAKAMURA Yoshimasa) Received November 25, 2006

Upload: others

Post on 31-Jan-2021

0 views

Category:

Documents


0 download

TRANSCRIPT

  • 応用力学研究所研究集会報告No.18ME-S5

    「非線形波動現象における基礎理論,数値計算および実験のクロスオーバー」

    (研究代表者 西成 活裕)

    Reports of RIAM Symposium No.18ME-S5

    Crossover among theoretical, numerical and experimental studies on nonlinear waves

    Proceedings of a symposium held at Chikushi Campus, Kyushu Universiy,Kasuga, Fukuoka, Japan, November 6 - 8, 2006

    Research Institute for Applied Mechanics

    Kyushu University

    May, 2007

    Article No. 27

    特異値分解を用いた画像分解における

    特異値クラスタを緩和するアルゴリ

    ズム

    笹田昇平 (SASADA Shohei),近藤弘一 (KONDO Koichi),

    岩崎雅史 (IWASAKI Masashi),中村佳正 (NAKAMURA

    Yoshimasa)

    (Received November 25, 2006)

  • 特異値分解を用いた画像分解における特異値クラスタを緩和するアルゴリズム

    同志社大学工学部 笹田 昇平 (SASADA Shohei)近藤 弘一 (KONDO Koichi)

    科学技術振興機構 SORST 岩崎 雅史 (IWASAKI Masashi)京都大学情報学研究科 中村佳正 (NAKAMURA Yoshimasa)

    概 要

    本論では Kakarala-Ogunbona (KO) の画像分解アルゴリズムについて考察する.KOアルゴリズムは行列の特異値分解 (SVD) により画像分解を行う手法である.KO 分解における特異値はある画像においてクラスタをなすことがある.一般的な数値計算法は特異値がクラスタをなすとき左特異ベクトルを高精度に求めれない.このとき,KO アルゴリズムの分解,再構成に悪影響を与える可能性がある.そこで本論では特異値クラスタを緩和するアルゴリズムを提案する.元画像にランダム模様のふちを付加した画像から得られる左特異ベクトルをフィルタとして用いる.数値実験により提案アルゴリズムの有効性を示す.さらには,フィルタ行列の量子化について議論する.

    1 研究背景画像データサイズは日々増加している.効率よくデータを扱うためには高性能な画像圧縮技

    術が必要である.非可逆圧縮の現在の業界標準フォーマットは JPEG である.JPEG は元画像に対して離散コサイン変換 (DCT) を行い高周波成分と低周波成分に分解する.JPEG では1 回のみ分解を行うが,繰り返し分解を行う手法が新たな主流となっている.多重分解方法のうちのひとつに JPEG2000(参照 [3]) がある.JPEG2000 は 2 次元離散ウェーブレット変換(2DWT) により画像を高周波成分と低周波成分に分解する.その分解画像の低周波成分に対して繰り返し画像分解を行い多重分解画像を得る.多重分解画像に対して SPIHT [7]などで圧縮符号化すれば圧縮画像が得られる.また,2DWT とは異なる画像分解法としてKakarala-Ogunbona (KO) の画像分解アルゴリズム [5] がある.KO アルゴリズムは行列の特異値分解によるある種の主成分分析である.左特異ベクトルを分解フィルタとして利用する.画像によりフィルタが異なることが特徴である.画像の性質がフィルタに反映される.一方 2DWT ではフィルタが固定である.KO 分解による高精度な画像圧縮技術の開発が期待される.本論では KO アルゴリズムの SVD 計算における問題点を議論する.ある特殊な画像では特異値がクラスタをなすことがある.このとき左特異ベクトルを高精度に求めれない.そのため,分解,再構成に対して悪影響を与える可能性がある.本論ではその回避策として特異値相互の差を拡大するアルゴリズムを提案する.さらには,数値実験によりその効果を実証する.また,左特異ベクトルは画像の分解,再構成に用いるため圧縮データとともに保存する必要がある.そのため,左特異ベクトルのサイズは小さいほうが望ましい.左特異ベクトルの量子化を行いデータサイズの削減を行う.圧縮画像の画質への影響も実験により確認する.

    1

  • 2 Kakarala-Ogunbona の画像分解アルゴリズム画像を縦 M ピクセル,横 N ピクセルの 256 階調グレースケールとすると,画像は M ×N

    型行列X = (Xi,j) (i = 0, 1, · · · , M − 1; j = 0, 1, · · · , N − 1) で表される.ただし,各成分は[0, 255]の整数値である.X に対する Kakarala-Ogunbonaの画像分解 (KO分解)はブロックアルゴリズムに基づき構成される [1,5].まず,行列 X = (Xi,j)を b× b小ブロック行列に分割する.ただし,M , N は bで割り切れるとする.各 b× b型小ブロックの第 (k, l)成分をすべて並べてM ′×N ′ 型ブロック行列X(k,l) = (X(k,l)m,n ) (m = 0, 1, · · · , M ′− 1; n = 0, 1, · · · , N ′− 1) とする.ここで M ′ = M/b, N ′ = N/b とおく.このとき X から X(k,l) への変換は k = 0, 1, · · · ,b−1; l = 0, 1, · · · , b−1に対してB(k,l)b : X 7→ X(k,l); X

    (k,l)m,n = Xbm+k,bn+l と表される.ブロック

    行列 X(k,l) をすべて並べてM ×N 型行列 Y = (Yi,j) とする.元の行列 X から Y への変換はB : X 7→ Y = (X(k,l))0≤k,l

  • 図 1: X から A への変換

    Output. 分解画像 X̂.Step 1. A = K(X) を求める.Step 2. A を特異値分解 A = USV T する.Step 3. Â = UT A を求める.Step 4. X̂ = P−1(Â) を求める.

    分解画像の低周波画像に対して繰り返し KO 分解を行い多重分解画像を得る.得られた多重分解画像に対して圧縮符合化を行えばデータサイズの圧縮が行われる.圧縮画像を復元する場合は逆の操作を行う.KO 分解専用の圧縮符合化はまだ提案されていない.本論では圧縮符合化法として 2DWT 用の SPIHT [7] を用いる [1].2DWT による分解画像は 4 分割画像である.そのため SPIHT を KO 分解に対して用いるときは b = 2 として使用する.これらの手順の構成図を図 3 (a) に示す.例えば図 2 (a) の画像 lena に対して b = 2 の KO 分解を一回行う.特異値は

    σ0 = 6.7 × 104, σ1 = 2.7 × 103, σ2 = 1.8 × 103, σ3 = 1.0 × 103 (3)

    であり,レベル 1 での左直交行列 U は

    U =

    0.4998 0.5805 0.4035 −0.50040.5003 −0.4054 0.5810 0.49780.4998 0.4045 −0.5784 0.50210.5001 −0.5788 −0.4064 −0.4997

    (4)

    となる.分解画像 X̂ は図 3 (b) である.第 1 列目の左特異ベクトル u0 は平均化フィルタσ0v

    T0 = (a

    (0) + · · ·+ a(3))/2 として機能する.第 2 列目以降の左特異ベクトルは高周波フィルタとして機能する.分解画像の低周波部分に対して再度 KO 分解で画像分解を行う.レベル2 での左直交行列 U は

    U =

    0.4997 −0.5750 0.4259 −0.48810.5004 0.4132 0.5605 0.5145

    0.4998 0.4123 −0.5875 0.48490.5000 0.5733 −0.3993 −0.5118

    (5)

    3

  • である.分解レベル毎で左直交行列 U の値が異なることが特徴である.(4),(5) の第 1 特異ベクトルの値はほぼ変化していない.他の高周波部分を表す特異ベクトルの値は大きく変化している.同様の分解を繰り返しレベル 6 まで分解を行った多重分解画像は図 3 (d) となる.多重分解画像を圧縮比 1 bpp の SPIHT により圧縮符合化すると圧縮データのサイズは元データに対して 9.3% となる.さらに圧縮データを SPIHT 復号により再構成した復元画像の PSNRは 37.4 dB である.

    (a) lena (512 × 512画素) (b) 縞画像 (128 × 128画素)

    図 2: サンプル画像

    3 特異値の近接本節では特異値が近接する場合の SVD 計算の問題点について議論する.特異値相互の差の

    最小ギャップを

    gmin = mini6=j

    |σi − σj|2552MN/b2

    (6)

    とする.分母は規格化定数である.図 2 (a) lena の gmin は gmin = 1.9 × 10−7 である.一方,図 2の (b) 縞画像の特異値は

    σ0 = 2.2 × 104, σ1 = 4.1 × 103, σ2 = 5.2 × 10−11, σ3 = 1.9 × 10−11 (7)

    である.σ2 と σ3 はほぼ重複している.特異値相互の差の最小ギャップは gmin = 1.2 × 10−19

    と極めて近接している状態である.ある特殊な画像では特異値が極めて近接する.近接度が高い行列に対して高精度に計算が可能な SVD 数値アルゴリズムはない.また,特異値問題は固有値問題に置き換えれるが,同様に高精度に計算が可能な数値アルゴリズムはない.完全に特異値が重複していれば回避方法は提案されている.しかし,極めて近接している場合の回避方

    4

  • (a) 構成図

    (b) 分解画像 (c) 分解画像 (d) 多重分解画像(b = 2,レベル 1) (b = 2,レベル 2) (b = 2,レベル 6)

    図 3: KO アルゴリズムによる画像の分解

    (a) 縦 (b) 横 (c) 斜め (d) ランダム

    図 4: 各方向成分の画像

    5

  • 法は存在しない.また,SVD アルゴリズムにはさまざまあり,近接度が高いことによる悪影響の表れかたはさまざまある.高近接度状態は KO 分解に悪影響を与える可能性がある.次にどのような画像において特異値が近接するかを実験により確認する.図 4に実験に用い

    る画像を示す.図 4のような (a) 縦縞,(b) 横縞,(c) 斜め縞,(d) ランダム模様の 4 種類の画像をランダムに 10, 000 個作成し横長行列 A の特異値相互の最小ギャップ gmin を調べる.図5に結果を示す.図 5より,(a) 縦縞,(b) 横縞の gmin は O(10−20) 程度で極めて近接している.一方,(c) 斜め縞,(d) ランダム模様の gmin は O(10−6) 程度で十分差がある.以上より,画像がランダムに近くほど近接度が低くなることが期待される.

    4 特異値の近接度を緩和するアルゴリズム本節では近接度を緩和するアルゴリズムを提案する.オリジナルの KO 分解の構成図は図

    6 (a) である.元画像 X に対して横長行列 A を求める.A の特異値分解で求めた U の転置を A の左からフィルタとして作用させる. を並び替え分解画像 X̂ を得る.ある特殊な画像では近接特異値が発生する.そこで,次のアルゴリズムを提案する.元画像 X に対してふちどり画像 X̃ を作る.X̃ を並び替えて横長行列 à を求める.à の特異値分解を行い左特異ベクトル Ũ を得る.このとき,à の近接度は低く SVD 計算の数値不安定性は発生しない.Ũを元画像 X から生成された横長行列 A の左から作用させる.生成された  を並び替えて X̂を得る.これらの操作をまとめると提案手法は次のアルゴリズム 2 と定義される.提案手法の手順は図 6 (b)である.

    アルゴリズム 2 (近接度緩和アルゴリズム)

    Input. 元画像 X.Output. 分解画像 X̂.Step 1. A = K(X), Ã = K(X̃) を求める.Step 2. Ã を特異値分解 Ã = ŨSV T する.Step 3. Â = ŨT A を求める.Step 4. X̂ = P−1(Â) を求める.

    5 数値実験本節では提案手法の実用性を検証する.提案手法による近接度の緩和の効果を実験により確

    認する.従来法と提案手法を用いたときでの PSNR の比較を行う.PSNR は

    10 log(X̂ − X)2

    2552MN[dB]

    と定義する.分母は規格化定数である.ふちどり場所は図 7 の 5 種類で変化させ比較を行う.ふちどり幅 `を 0 から 100 で変化させた場合の比較を行う.MATLAB7.0.4 により実験を行う.縞画像,場所が周回で,幅 ` = 2 のときの近接度緩和の結果を表 1に示す.表 1より,ふ

    6

  • 0 2000 4000 6000 8000 10000Image No.

    10-2210-1910-1710-1410-1210-1010-710-5

    g min

    (c)

    (d)

    (a)(b)

    図 5: 画像の近接度.(a) 縦 (b) 横 (c) 斜め (d) ランダム.

    (a)KO分解 (b)提案手法

    図 6: KO 分解の手順

    図 7: ふちを付加する場所

    7

  • 表 1: 特異値の近接度 gmin (縞画像,周回,` = 2).

    ふちなし ふちありlevel-1 1.2 × 10−19 1.4 × 10−7

    level-2 1.3 × 10−19 5.2 × 10−7

    level-3 3.9 × 10−19 3.4 × 10−6

    表 2: 提案手法の PSNR の従来法 (49.3 dB) に対する変化量 (縞画像).(a) svdルーチンによる計算 (b) eigルーチンによる計算

    左 右 上 下 周回` = 2 +0.1 +0.2 +0.3 +0.2 −0.1` = 5 +1.8 +1.5 −1.0 −0.7 −1.2` = 10 +1.7 +0.4 +1.5 −0.3 +0.2` = 20 +1.2 +0.2 −0.3 +0.2 +0.8` = 50 +1.1 +1.7 +1.3 +0.8 —*

    ` = 100 −0.5 +0.4 +0.7 +0.2 —*

    左 右 上 下 周回` = 2 +0.5 +0.3 +0.2 +0.5 +0.1

    ` = 5 +1.6 0 −0.9 −1.1 +0.6` = 10 0 +0.2 +0.1 −0.6 +0.3` = 20 0 −1.0 +0.4 +0.8 −0.1` = 50 +1.0 +1.3 +0.7 +1.4 −1.9` = 100 +1.1 −0.4 +0.3 +0.5 +0.7

    (*) はメモリオーバーのため計算不可.

    ちを付加したことで近接度が緩和される.表 1に示した条件以外でも同様に近接度が緩和される.特異値計算には MATLAB の組み込み関数の svd 関数を用いる.この関数は行列のサイズが大きくなるとメモリオーバーをする.そのため,特異値計算を固有値分解に置き換える.AA> の固有値分解を行う.組み込み関数 eig を用いると [D, U ] =eig(AA>)で求まる.本実験では svd 関数と eig 関数の 2 通りを用いる.本実験での svd の数値計算誤差は O(10−10) からO(10−12) である.eig での数値計算誤差は O(10−7) から O(10−8) である.精度の異なる SVDルーチンにおける本提案手法の効果を比較する.実験には図 2 (b)の画像を用いる.サンプル画像の提案手法を用いない場合の PSNR は 49.3dB である.表 2 に幅 `,ふちどり場所をかえたときの提案手法の従来法に対する変化量を示す.ふちどり画像を 10 種類作成し PSNR が最良となるものを選ぶ.表 2 (a) に svd ,表 2 (b) に eig による実験結果を示す.表 2 から若干 PSNR が悪化するときもあるが,むしろ良くなる方が多い.svd と eig の差は見られない.ふちどりの幅 `,ふちどりの場所による提案手法の従来法に対する変化はない.そのため,使用する状況に応じて簡便な方法をとればいい.

    6 フィルタの量子化に関する数値実験画像分解フィルタ行列 U は画像の再構成に必要である.そのため画像データとともに保存

    する必要がある.U の各要素に必要なバイト数は小さいほうが望ましい.本実験の SVD 計算は全て double 型で演算を行う.フィルタ行列 U を保存するときにフィルタ行列の量子化を行う.U の型を double 型 (8バイト)から float型 (4バイト),int64型 (8バイト),int32型 (4

    8

  • 表 3: 提案手法の PSNR の従来法 (37.4 dB) に対する変化量 (lena, eig).

    左 右 上 下 周回` = 2 0 0 0 0 0

    ` = 5 −0.1 0 −0.1 0 0` = 10 0 0 0 0 0

    ` = 20 0 0 −0.1 0 −0.2` = 50 0 0 0 0 −0.2` = 100 0 0 −0.1 −0.1 −0.3

    表 4: U の型変換による圧縮画像の PSNR (lena).

    0.5 bpp 1.0 bpp 1.5 bpp

    double 33.47 dB 37.42 dB 40.20 dB

    float 33.47 dB 37.42 dB 40.20 dB

    int64 33.47 dB 37.42 dB 40.20 dB

    int32 33.47 dB 37.42 dB 40.20 dB

    int16 33.47 dB 37.41 dB 40.20 dB

    int8 29.23 dB 30.31 dB 30.72 dB

    バイト),int16型 (2バイト),int8型 (1バイト)にそれぞれ型変換させた場合の圧縮画像への影響を検証する.型変換されたフィルタ U による圧縮画像の PSNR を表 4に示す.表 4よりフィルタ U が float 型, int64 型, int32 型, int16 型では double 型と全く同じ PSNR である.フィルタ U が int8 型のみ PSNRは悪化する.以上より,フィルタ U の精度は 2 バイト以上が要求条件であり,フィルタの保存に必要なデータサイズは 1/4 倍に圧縮可能である.

    7 まとめ本論では特異値の近接度を緩和するアルゴリズムを提案した.実験により近接度が緩和され

    ることを示した.提案手法は画像の近接度の高低にかかわらず圧縮画像の PSNR の悪化は全くない.左特異ベクトルを整数型 2 バイトに型変換することでフィルタの保存サイズは 1/4倍に圧縮可能である.

    参考文献[1] R. Ashino, A. Morimoto, M. Nagase, and R. Vaillancourt, Image compression with mul-

    tiresolution singular value decomposition and other methods, Math. Comput. Model. 41

    (2005), 773–790.

    9

  • [2] 越智宏,黒田秀夫,JPEG & MPEG図解でわかる画像圧縮技術,日本実業出版社,2006.

    [3] 福原隆浩,JPEG2000詳細解説,CQ 出版,2004.

    [4] M. Iwasaki, and Y. Nakamura, Accurate computation of singular values in terms of shifted

    integrable schemes, Japan J. Indust. Appl. Math. 23, to appear.

    [5] R. Kakarala and O. P. Ogunbona, Signal analysis using a multiresolution form of the

    singular value decomposition, IEEE Trans. Image Process. 10 (2001), 724–735.

    [6] B. N. Parlett, and O. A. Marques, An implementation of the dqds algorithm (positive

    case), Lin. Alg. Appl. 309 (2000), 217–259.

    [7] A. Said, and A. W. Pearlman, A new fast and efficient image codec based on set parti-

    tioning in hierarchical trees, IEEE Trans. on Circuits and Systems for Video Technology

    6 (1996), 243–250.

    [8] 高田雅美,木村欣司,岩崎雅史,中村佳正,高速特異値分解のためのライブラリ開発,情報処理学会論文誌:コンピューティングシステム 47:SIG7(ACS14) (2006), 91–104.

    [9] D. S. Taubman, and M, W. Marcellin, JPEG2000 — Image Compression Fundamentals,

    Standards and Practice, Kluwer Academic Publishers, 2002.

    10