天天看點

Brief Summary of Template Matching Based on CNN1. 前言2. QATM3. 其它參考文獻

1. 前言

圖像比對問題是圖像領域中較為基礎的課題,其發展也從最簡單粗暴的模闆比對到現在基于CNN表達的特征比對,比對的時效與準确性得到了很大提升。其實從某種意義上來講模闆比對與目标跟蹤存在着一些關聯性,對于現有的一些跟蹤算法運作過程中目标丢失的情況可以考慮使用模闆比對的方式進行找回,但是這裡就需要考慮很多東西了,如目标姿态、光照變化等等因素的影響。如何得到更加魯棒的模闆比對算法也是一個隻得思考的問題。

在下面的内容中主要介紹本人認為還不錯的算法QATM,并且在之後的内容總結了一些基于CNN的模闆比對算法,以提供給各位參考。

2. QATM

論文名稱:《QATM:Quality-Aware Template Matching For Deep Learning》

參考代碼:

  1. QATM-TF
  2. QATM_pytorch

這篇文章提出了一種采用CNN網絡進行模闆圖像比對的算法,将模闆圖與目标圖分别送入這個CNN網絡,之後通過文章提出的QATM方法構模組化闆圖和目标圖的響應程度。不過需要指出的是文章的方法是檢測框的大小是根據模闆圖像固定的,這就導緻其對多尺度相容性比較弱,同時輸出的檢測框對目标的貼合程度不高,可以在此基礎上引入網絡進行訓練借以提升模闆比對魯棒性。不過這樣便會使得其與目标跟蹤的差異越來越小了。

文章的方法将模闆比對問題轉換為尋找區域最大響應問題,則可以描述為:

R ∗ = arg max ⁡ R { ∑ r ∈ R m a x { { Q u a l i t y ( s , t ) , t ∈ T } } R^{*}=\argmax_{R}\{\sum_{r\in R}max\{\{Quality(s,t),t\in T\}\} R∗=Rargmax​{r∈R∑​max{{Quality(s,t),t∈T}}

其中, T , S T,S T,S分别代表的是模闆圖與目标圖, R R R代表的是搜尋區域。文章的具體的算法可以描述為:

Brief Summary of Template Matching Based on CNN1. 前言2. QATM3. 其它參考文獻

不過其實際的運算流程會不太一樣具體可以參考:

# qatm_pytorch.py#L159
class QATM():
    def __init__(self, alpha):
        self.alpha = alpha
        
    def __call__(self, x):
        batch_size, ref_row, ref_col, qry_row, qry_col = x.size()
        x = x.view(batch_size, ref_row*ref_col, qry_row*qry_col)
        xm_ref = x - torch.max(x, dim=1, keepdim=True)[0]
        xm_qry = x - torch.max(x, dim=2, keepdim=True)[0]
        confidence = torch.sqrt(F.softmax(self.alpha*xm_ref, dim=1) * F.softmax(self.alpha * xm_qry, dim=2))
        conf_values, ind3 = torch.topk(confidence, 1)
        ind1, ind2 = torch.meshgrid(torch.arange(batch_size), torch.arange(ref_row*ref_col))
        ind1 = ind1.flatten()
        ind2 = ind2.flatten()
        ind3 = ind3.flatten()
        if x.is_cuda:
            ind1 = ind1.cuda()
            ind2 = ind2.cuda()
        
        values = confidence[ind1, ind2, ind3]
        values = torch.reshape(values, [batch_size, ref_row, ref_col, 1])
        return values
           

3. 其它參考文獻

  1. 《2017-DDIS:Template Matching with Deformable Diversity Similarity》
  2. 《2017-Deep Learning Improves Template Matching by Normalized Cross Correlation》
  3. 《2017-Fast Screening Algorithm for Rotation and Scale Invariant Template》
  4. 《2018-OATM:Occlusion Aware Template Matching by Consensus Set Maximization》
  5. 《2019-Explaining Away Results in Accurate and Tolerant Template Matching》
  6. 《2019-Multi-scale Template Matching with Scalable Diversity Similarity in an Unconstrained Environment》
  7. 《2021-Deep-DIM:Robust Template Matching via Hierarchical Convolutional Features from a Shape Biased CNN》
  8. 《2021-PatchNet:Short-range Template Matching for Efficient Video Processing》

繼續閱讀