AIGC: RePaint 筆記
無監(jiān)督的擴散去噪模型是個好東西,但是我們需要讓模型去適用于不同的任務(wù),RePaint (2201.09865) 就是將現(xiàn)有的去噪模型用在圖像修復(fù)任務(wù)上的一種方法。
Inpainting
Repaint 的整體思路很簡單,假設(shè)我們有一個訓(xùn)練好的 DDPM 或 DDIM?模型。一個二進制遮罩(binary mask)用??來表示, 所以
?代表圖像中被遮罩的區(qū)域,而
就代表了未被遮罩的區(qū)域。
然后我們進行“逆向”過程——從噪音生成圖片,然后,我們對遮罩和未遮罩的部分,分別以不同的方式計算下一步?.
對于遮罩的部分,我們直接利用正向過程來計算,即在原圖像上面添加高斯噪聲——
對于未遮罩的部分,我們利用 DDPM 的逆向過程來計算,
所以現(xiàn)在,我們得到了兩張圖像??和
. 然后我們將兩張圖像合并起來,獲得
?步時的圖像:

Resampling
以上的 inpainting 方法有一個缺點,就是生成的圖片會缺失一些結(jié)構(gòu)上的信息。為什么會出現(xiàn)這種現(xiàn)象?因為對于??我們是直接從原圖像加噪而獲得的,所以并沒有考慮到??
?所帶來的影響。所以,為了把
?也考慮進去,我們使用一種叫做重新采樣(resampling)的方法。
我們將獲得的??重新利用正向過程
?來獲得,然后再做一次上述的逆向過程,獲得
. 我們當然還可以繼續(xù)做正向過程獲得?
. 上述過程可以重復(fù)循環(huán)地做,其重復(fù)的次數(shù),我們用?
?來表示(
就代表我們重復(fù)10次上述顛來倒去的操作)
這里我們再引入一個跳躍步長(jump length)的概念,用??來表示。也就是說,我們連續(xù)做?
?步逆向過程獲得
,然后再返回到?
.(很明顯,上一小節(jié)里面
)
所以整個流程如下


完。
B站的公式編輯器經(jīng)常掛,如果遇到 tex error?之類的問題時,刷新一下頁面一般可以解決。