天天看點

【任務名額】Matting任務裡的Gradient與Connectivity名額

Matting任務裡的Gradient與Connectivity名額

主要背景

【任務名額】Matting任務裡的Gradient與Connectivity名額

Matting

任務就是把α(不透明度, 也就是像素屬于前景的機率)、F(前景色)和B(背景色)三個變量給解出來.

C為圖像目前可觀察到的顔色, 這是已知的. 問題是一個等式解不出三個變量, 是以就必須引入額外的限制使這個方程可解, 這個額外的限制就是由使用者指定的

trimap

(有人譯為

三元圖

)圖, 或者是僅僅在前景和背景畫幾筆的草圖(scribbles).

主要的手段

  • 傳統方法: Poisson Matting/Bayes Matting/Closed Form Matting/KNN Matting
    • Color sampling方法, 以Bayesian Matting為代表, 通過對前景和背景的顔色采樣建構高斯混合模型, 但是這種方法需

      要高品質的trimap, 不易擷取

    • Propagation的方法, 根據像素親和度将使用者繪制的資訊傳播到不确定像素, 以Poisson Matting和KNN matting為代

      表, 但是也不是自動摳圖

  • CNN方法:
    • Natural Image Matting Using Deep CNN(ECCV 2016)
    • Deep Automatic Portrait Matting(ECCV 2016)
    • Automatic Portrait Segmentation for Image Stylization(2016)
    • Deep Image Matting(CVPR 2017)
    • Semantic Human Matting(2018)等

主要評價名額

來自于論文:

Christoph Rhemann, Carsten Rother, Jue Wang, Margrit Gelautz, Pushmeet Kohli, Pamela Rott. A Perceptually Motivated Online Benchmark for Image Matting. Conference on Computer Vision and Pattern Recognition (CVPR), June 2009.

  • Gradient
  • Connectivity
  • SAD
  • MSE

一些相關的術語, 來自參考連結[1]

SAD(Sum of Absolute Difference)= SAE(Sum of Absolute Error)即絕對誤差和

SATD(Sum of Absolute Transformed Difference)即hadamard變換後再絕對值求和

SSD(Sum of Squared Difference)= SSE(Sum of Squared Error)即內插補點的平方和

MAD(Mean Absolute Difference)= MAE(Mean Absolute Error)即平均絕對內插補點

MSD(Mean Squared Difference)= MSE(Mean Squared Error)即平均平方誤差

大緻内容

【任務名額】Matting任務裡的Gradient與Connectivity名額

因為若是僅僅考慮SAD和MSE名額, 在和人類判斷的對比中, 發現, 并不能很好地反映人類的實際判斷标準. 為此文章引入了兩個新的名額, 梯度和連通性. 先來說下連通性.

【任務名額】Matting任務裡的Gradient與Connectivity名額

這個圖基于

matting

任務中獲得的

alpha matte

圖, 這是一個灰階圖, 表示的就是前面的公式裡的\(\alpha\).

由于這裡的圖上出現了幾個參數, \(\alpha_i \, \Omega, d_i, l_i, i\), 下面結合具體的公式來了解.

\[\sum_{i}\left(\varphi\left(\alpha_{i}, \Omega\right)-\varphi\left(\alpha_{i}^{*}, \Omega\right)\right)^{p}

\]

這裡的p是自定義參數. 具體見後.

該公式給出了連通性誤差的計算方法, 這裡是對整個預測出來的

alpha matte

圖和對應的真值的圖的對應的差異的累和. 這裡的關鍵是裡面的\(\varphi\left(\alpha_{i}, \Omega\right)\)函數.

首先要解釋這裡的\(\Omega\), 它表示的是對于預測結果圖和真值共有的最大的值為1的連通區域, 被稱為"源域(source region)", 也就是在上圖中紅線區域大緻表示的範圍. 這裡的\(\varphi\)計算的是有着透明度\(\alpha_i\)的像素i, 與源域的連通度(degree of connectivity), 當其為1則認為該像素與源域全連通, 等于0表示完全不連通. 另一個加星号的表示真值圖上的對應像素的連通度的計算. 二者計算差異, 來累計誤差. 好的結果應該有着更低的誤差, 更相似的連通情況.

公式裡的\(l_i\)表示像素i四連通到源域所需要的最大門檻值, 也就是上圖中的虛線, 用它對

alpha matte

進行二值化, 正好處于使像素i與源域連通(實際需要四連通)/不連通的臨界. 若是對于一個像素而言, 它的\(l=\alpha\), 那麼就可以認為它與源域是全連通的.

而公式裡的\(d_i\)如圖所示, 表示的就是像素i處的\(\alpha\)值和對應的臨界門檻值\(l_i\)的差距.

\[\varphi\left(\alpha_{i}, \Omega\right)=1-\left(\lambda_{i} \cdot \delta\left(d_{i} \geq \theta\right) \cdot d_{i}\right)

這裡的\(\theta\)是自定義參數, 具體見後. 它用在訓示函數\(\delta\)裡作為一個門檻值, 來忽略小于它的\(d_i\)的情況, 認為小于它就已經是全連通了, 使得誤差計算更為靈活.

其中的\(\lambda_{i}=\frac{1}{|K|} \sum_{k \in K} dist_{k}(i)\)用來對\(d_i\)進行權重, 這裡的K表示\(l_i\)到\(\alpha_i\)之間的離散\(\alpha\)值的集合, \(dist_k\)計算了設定為門檻值\(k\)時, 對于像素i距離最近的連通到源域的像素, 與像素i之間的标準化歐式距離. 實際情況中, 遠離連通區域的像素, 獲得的權重\(\lambda\)也應該相應會更大些, 這樣導緻得到的\(\varphi\)會更小些, 也就是認為連通度更小.

主要計算的是預測的alpha matte \(\alpha\)和ground truth \(\alpha^{*}\)的之間的梯度差異, 定義如下:

\[\sum_{i}\left(\nabla \alpha_{i}-\nabla \alpha_{i}^{*}\right)^{q}

這裡的q是自定義參數. 具體見後

這裡的\(\nabla \alpha_{i}\)和\(\nabla \alpha_{i}^{*}\)表示的是對應的

alpha matte

的歸一化梯度, 這是通過将

matte

與具有方差\(σ\)的一階Gaussian導數濾波器進行卷積計算得到的. 二者計算差異, 進而累計損失. 總體越相似, 名額值越小.

這裡的方差\(σ\)也是自定義參數, 具體見後

關于參數的選擇

對于這裡存在四個需要人工設定的參數: \(\theta, p, q\), 在參考文章3中, 有進一步的測試與設定, 文章最終選擇了這樣的設定: \(\sigma=1.4, q=2, \theta=0.15, p=1\).

參考文章

  1. https://zhidao.baidu.com/question/1701594942558730300.html
  2. http://alphamatting.com/index.html
  3. Christoph Rhemann, Carsten Rother, Jue Wang, Margrit Gelautz, Pushmeet Kohli, Pamela Rott. A Perceptually Motivated Online Benchmark for Image Matting. Conference on Computer Vision and Pattern Recognition (CVPR), June 2009.`

本文來自部落格園,作者:lart

創作不易,轉載請注明原文連結:https://www.cnblogs.com/lart/p/10627821.html

歡迎關注我的公衆号,文章更新提醒更及時哦。由于論文分析類文章遷移到公衆号格式處理甚是麻煩,是以号上主要會整理一些平時關于編碼和生活的思考。

繼續閱讀