關鍵點檢測——無監督
《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被納入是最理想的,但納入太多又使得邊緣的銳利不能體現,因為該文用了多個不同的超引數來嘗試。
但是無監督的關鍵點學習是有用的,同人類的感知類似,潛在的發現物件的結構。
訓練結果:
如同所示,自動的可以發現在語義上有意義的和固定位置的關鍵點,例如額頭中心,眼,眼眉,鼻子和嘴角等。