編輯傳播論文AppWand解讀

最近看到好幾篇論文如Colorization,poisson image editing等都使用線性系統求解泊松方程。今天找一篇文章簡單推導一下:

參考論文:AppWand: Editing Measured Materials using Appearance-Driven Optimization, SIGGRAPH 07
在這裏插入圖片描述
論文是編輯傳播領域的經典論文,用於將局部的編輯,傳播到圖像的所有區域,實現全局合理的顏色編輯。論文的核心能量函數爲:

E=i(eigi)2wi+ijNi(eiej)2zij1E =\sum_i{(e_i-g_i})^2w_i +\sum_i\sum_{j\in N_i }(e_i-e_j)^2z_{ij } (1)

其中,eie_i爲待求的編輯參數, gig_i爲已知的編輯部分,如果第 ii 個像素被着色了, 那麼 wi=1w_i = 1, 否則 wi=0w_i = 0zijz_{ij} 爲已知量的表示像素 ii 和像素 jj 的相似度。

我們對(1)中 eie_i 求導有:

E/ei=i2(eigi)wi+ijNi2(eiej)zij+ijNi2(ejei)zji\partial E /\partial e_i= \sum_i{2(e_i-g_i})w_i +\sum_i\sum_{j\in N_i }2(e_i-e_j)z_{ij} + \sum_i\sum_{j\in N_i }2(e_j-e_i)z_{ji}

注意最後一項,因爲 eie_ieje_j 相鄰,所以, eie_i 同樣會出現在所有鄰居的鄰居中。
令上式爲0:

E/ei=i2(eigi)wi+ijNi2(eiej)zij+ijNi2(ejei)zji=0\partial E /\partial e_i= \sum_i{2(e_i-g_i})w_i +\sum_i\sum_{j\in N_i }2(e_i-e_j)z_{ij} + \sum_i\sum_{j\in N_i }2(e_j-e_i)z_{ji} = 0

i(eigi)wi+ijNi2(eiej)zij=0\sum_i{(e_i-g_i})w_i +\sum_i\sum_{j\in N_i }2(e_i-e_j)z_{ij} = 0

ieiwi+ijNi2(eiej)zij=igiwi\sum_i{e_iw_i} +\sum_i\sum_{j\in N_i }2(e_i-e_j)z_{ij} =\sum_i{g_iw_i}

實際上已經構建了一個Ae=bAe = b的線性系統:

Aij={wi+2jNizij,i=j2zij,jNi0,otherwise.A_{ij} = \begin{cases} w_i +2 \sum_{j\in N_i}z_{ij} ,& i = j\\ -2z_{ij} ,& j \in N_i\\ 0, & otherwise\end{cases}.

上述案例其實完全可以手動推導,只需要給定如下的水平放置的3個像素即可推導。
在這裏插入圖片描述
總的能量公式爲:

E=(e1g1)2w1+(e3g3)2w3+(e1e2)2z12+(e1e3)2z13+(e2e1)2z21+(e2e3)2z23+(e3e1)2z31+(e3e2)2z32E = (e_1-g_1)^2w_1 + (e_3-g_3)^2w_3 + (e_1-e_2)^2z_{12} +(e_1-e_3)^2z_{13}+(e_2-e_1)^2z_{21} + (e_2-e_3)^2z_{23}+(e_3-e_1)^2z_{31} + (e_3-e_2)^2z_{32}

E/e1=2(e1g1)w1+4(e1e2)z12+4(e1e3)z13\partial E /\partial e_1 =2(e_1-g_1)w_1+4(e_1-e_2)z_{12}+4(e_1-e_3)z_{13}

E/e2=4(e2e1)z21+4(e2e3)z23\partial E /\partial e_2 =4(e_2-e_1)z_{21}+4(e_2-e_3)z_{23}

E/e3=2(e3g3)w3+4(e3e1)z31+4(e3e2)z32\partial E /\partial e_3 =2(e_3-g_3)w_3+4(e_3-e_1)z_{31}+4(e_3-e_2)z_{32}

令幾個偏導數 = 0:

e1(w1+2z12+2z13)2e2z122e3z13=g1w1e_1(w_1+2z_{12}+2z_{13}) -2e_2z_{12}-2e_3z_{13} = g_1w_1

e2(z12+z23)e1z12e3z23=0e_2(z_{12}+z_{23}) -e_1z_{12}-e_3z_{23} = 0

e3(w3+2z31+2z32)2e1z312e2z32=g3w3e_3(w_3+2z_{31}+2z_{32}) -2e_1z_{31}-2e_2z_{32} = g_3w_3

因此,跟上面的公式保持一致。

如果直接從矩陣形式推導應該也可以,可能會用到如下幾個簡單矩陣求導公式:
在這裏插入圖片描述

參考一本矩陣書:https://www.math.uwaterloo.ca/~hwolkowi/matrixcookbook.pdf

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章