Intelligence Architecture けんきうノート

◆ GitBookに移行します

G-norm

[Math rendered by jsMath]

- 定義

2次元平面 \(x=(x_1, x_2)\) 上に与えられた(濃淡)画像 \(v=v(x)\) に対して、

\[ |v|_G = \min\{|g|_\infty; \ v=\nabla\cdot g\} \]

を定義します。 ここで \(g=g(x)=(g_1(x_1,x_2), g_2(x_1,x_2))\) であり、2次元平面上に定義された2次元ベクトルです。 また、 \[ |g|_\infty = \max\{|g(x)|; \ \forall x\} \] です。 これは「関数」のノルムであることに注意しましょう。 一方で \(|g(x)|\) は普通のベクトルのユークリッドノルムです。

\(|v|_G\) はGノルムと呼ばれています。

- 1次元の例

\(\cos \omega x = {d \over dx}(\frac1\omega\sin \omega x)\) なので、 \(|\cos \omega x|_G = |\frac1\omega\sin \omega x|_\infty = |\frac1\omega|\) となります。

つまり、Total Variationが「小さい値→画像が滑らか」だったのに対して、Gノルムは「小さい値→画像の振動性」を表していることが分かります。 数式的にも、TVは微分の1-ノルムで、Gノルムは積分(的なもの)の \(\infty\)-ノルム(スープノルム)と、対のような関係にあることが感じられます。

- 振動成分の抽出

Gノルムを利用して、与えられた画像 \(u_0\) の振動成分を取り出すことを考えてみます。

- 最適化問題

\[ \min_v \int\frac12(v-u_0)^2dx \ \text{ s.t. } |v|_G\le\mu \] つまり、Gノルムが一定の値 \(\mu\) 以下となる(=ある程度振動している)画像のなかで、\(u_0\) に最も近いものを探すことにします。

- 式変形

まず制約条件 \( |v|_G = \min\{|g|_\infty; \ v=\nabla\cdot g\}\le\mu \) ですが、「\(v=\nabla\cdot g\) となる無数の \(g\) のうち、どれかひとつでも \(|g|_\infty\le\mu\) となるものを見つけることができれば、当然 \(\min\{|g|_\infty\}\le\mu\) となる」、つまり \[ |v|_G\le\mu \ \leftrightarrow \ \exists g, |g|_\infty\le\mu, v=\nabla\cdot g \] と解釈できます。また \[ |g|_\infty\le\mu \ \leftrightarrow \ \forall x, |g(x)|\le\mu \] は定義から明らかです。

なので結局、 \[ \min_g \int\frac12(\nabla\cdot g-u_0)^2dx \ \text{ s.t. } g^2-\mu^2\le0 \] という \(g\) に関する最適化問題を解いて、\(v=\nabla\cdot g\) を求めることになりました。

- ラグランジュの未定乗数法

制約条件に対応するラグランジュ乗数を \(\alpha=\alpha(x)\) とします。 するとラグランジアンは \[ L(g,\alpha)=\int\frac12(\nabla\cdot g-u_0)^2dx +\int\frac12\alpha(g^2-\mu^2)dx \] と定義できます。\(L\) の \(g\) に対する第1変分は \[\eqalign{ \delta_g L&=\int(\nabla\cdot g-u_0)(\nabla\cdot \delta g)dx +\int\alpha g\cdot\delta g dx \\ &=-\int(\nabla(\nabla\cdot g-u_0))\cdot\delta g dx +\int\alpha g\cdot\delta g dx \\ &=\int\delta g\cdot(\nabla(u_0-\nabla\cdot g)+\alpha g)dx }\] なので、KKT条件のうち \(\delta_g L = 0\) から \( \nabla u_0-\nabla(\nabla\cdot g)+\alpha g=0 \) が導けます。

おや?TV最小化アルゴリズムの \(\delta L = 0\) の式と似てきました。 さらに寄せてみましょう。 \(p=g/\mu\) と置くと \[ \nabla u_0-\mu\nabla(\nabla\cdot p)+\mu\alpha p=0 \] で、制約条件は \(p^2\le1\) となります。 結局TV最小化アルゴリズムで \((g,\lambda) \rightarrow (p,\mu)\) とした場合と一致するので、そこで定義されている \(H\) を用いて、 \[\cases{ H_\mu(p)-|H_\mu(p)|p=0 \\ p^2\le1 }\] と書け、これはやはり \[ p^{t+1} = { p^t + \tau H_\mu(p^t) \over 1+\tau|H_\mu(p^t)| } \] のアルゴリズムで反復計算して解くことができるわけです。 (\(p\) が求まったら \(v=\mu \ \nabla\cdot p\) で振動成分抽出画像が求まる。)

- TV最小化問題との関係

まとめると、今回の最小化問題 \[ \min_v \int\frac12(v-u_0)^2dx \ \text{ s.t. } |v|_G\le\mu \] の解 \(v\) と、TV最小化問題(\(\lambda=\mu\)) \[ \min_u \left( \int|\nabla u|dx + \frac1{2\mu}\int(u-u_0)^2dx \right) \] の解 \(u\) との間には、\(u_0=u+v\) という関係が成り立ちそうです。

- Structure-Texture分離