Convolutional Implementation of Sliding Windows

前言

如何解決Sliding Windows計算成本過高的問題。

內容

  • Turning FC layer into convolutional layers

  • 首先,想辦法將CNN model中,原本最後三層FC layer轉成conv layer。
  • 第一層FC轉conv
    • 替換一個5x5x16(跟input相同) filter,400個(原本fc的個數)。
    • 所以生成400個值。
  • 第二層FC轉conv
    • 替換一個1x1x400(跟input相同) filter,400個(原本fc的個數)。
    • 所以生成400個值。
  • 第三層FC轉output
    • 替換一個1x1x400(跟input相同) filter,4個(output個數)。
  • Convolution implementation of sliding windows

  • 測試數據 16x16x3
    • 擷取成4張14x14x3的圖片
  • 原本做法,是將4張圖分別通過CNN model去判別是否有物品存在,但效率低,計算成本高。
  • 這4張圖,其實有大量重複的部分,所以直接用原圖丟入模型,一次行的計算,完成原本4次計算的結果。
    • 產生的output變大了(1x1x4 -> 2x2x4)
    • 其中2x2 = 4,其實也就是原本4張圖的結果合併。
  • Convolution implementation of sliding windows

該學到的

  • 如何將原本FC轉成conv。
  • 瞭解Convolution implementation是如何加速計算。

results matching ""

    No results matching ""