1. 程式人生 > >關鍵點檢測——無監督

關鍵點檢測——無監督

《Unsupervised Discovery of Object Landmarks as Structural Representations》
  • CVPR2018,Yuting Zhang et al。

本文使用無監督的方式來發現結構表現的目標關鍵點。
網路結構:
這裡寫圖片描述
採用的是名為 hourglass 的網路構架,以圖片作為輸出,該網路輸出 k+1 個 channel,含有 k 個 landmark 和背景。對不同 landmark 用 softmax 生成 confidence。

在如圖公式中,Dk(u,v) 意思是第 k channel 中座標為 (u,v) 的值,Dk 是 weight map,與對應座標相乘,再除以總的權重和座標乘積的和,從而生成該 channel 的 landmark 的 normalized 座標。
soft constrain:
為了保證我們生成的諸landmark及其座標是表達的我們想要的landmark而非其他latent representations,文章提出了幾個soft constrain。

1,concentration constrain:

計算兩個座標軸上座標的方差,設計如圖示loss是為了使方差儘可能小

這裡做了一個近似,使之轉換成了Gau dis,更低的熵值意味著peak處更多的分佈,換句話說,就是使landmark儘可能地突出出來。

2,separation constrain:

由於剛剛開始訓練時候的輸入是純random distribution,故可能導致提取出的landmark聚集在中心,可能會導致separation效果不好,因此而落入local optima,故設計了該loss。
這個loss也不難理解,將不同channel間的座標做差值,使得不同landmark儘可能不重疊。

3,Equivariance constraint:
這個比較好理解,就是某一個landmard在另一個image中變換座標時應該仍能夠很好地定位,在這裡,作者介紹了他們實現landmark變換座標的幾個trick。

4,Cross-object correspondence:

本文模型認為不能保證同一object在不同情況檢測時絕對的correspondence,文章認為這應該主要依賴於該特定pattern能夠在網路生成的啟用值展現一定的共性。

Local latent descriptors
這個des的目的是解決一個delimma:除了我們定義的landmark,可能還有一些latent representation,要復原一個image,僅僅landmarks是絕對不夠的,所以需要一些其他的資訊作為一個補充,但表達他們又有可能影響landmark的表達。


在這裡,文章又用了另一個hourglass network,如圖中左下角的F,就在我們之前提到的concentration costrain中,用一個高斯分佈來將該channel對應的landmark突出出來,在這裡,文章將他當做soft mask來用,用mask提取後再用一個linear operator來講這些feature map對映到一個更低維的空間,至此,local latent descriptor就被生成了。

Landmark-based decoder

第一步,raw score map
這裡寫圖片描述
第二步,normalize

第三步,生成最終影象
在這裡,wk是landmark-specific operator。
簡言之,Dk是我們提出的landmark位置資訊,fk是對應landmark的descriptor。
這裡又提到了一個dilemma:在用mask的時候,越多的pixel被納入是最理想的,但納入太多又使得邊緣的銳利不能體現,因為該文用了多個不同的超引數來嘗試。
但是無監督的關鍵點學習是有用的,同人類的感知類似,潛在的發現物件的結構。

訓練結果:

如同所示,自動的可以發現在語義上有意義的和固定位置的關鍵點,例如額頭中心,眼,眼眉,鼻子和嘴角等。

注:博眾家之所長,叢集英之薈萃。