萌新初入手圖像處理,想知道feature map 和activation map分別是指什麼?
剛跳入圖像處理的坑,在看gbvs圖像的演算法,但是裡面頻繁出現的feature map 和activation map 讓我不知所措,演算法也不能完全看懂,希望來大神幫幫我啊!
謝 @張旭 邀
gbvs(graph based visual saliency)[1]是基於圖論的視覺顯著性演算法,發表在2006 NIPS,是一種自底向上的顯著性演算法。演算法分為兩步:
1 特徵提取,與itti演算法[2]基本一致;2 生成顯著性映射(saliency map,大白話就是生成顯著性圖),用的馬爾科夫鏈,(itti是簡單的線性組合)。feature map的意思在計算機視覺領域基本一致,可以草率的翻譯成特徵圖,例如rgb,所有點的r組成一個feature map,(在cnn裡面也是一致的)。gbvs用了大約42個特徵。
activation map在gbvs中是對feature map 的進一步處理。
假設一feature map M:[n]^2→R, 其activation map A:[n]^2→R,當M(i,j)與周圍(neighbor)歧義(unusual)時,A(i,j)的值大。gbvs作者在論文中將此演算法分為三步:
1. 特徵提取(extraction),這裡生成的就是feature map(原文用了feature vector)了。(和itti幾乎一樣)2. 生成(form)activation maps using the feature vectors。3. 綜合(combine)activation maps成一個single map,就是saliency map。
[1]J. Harel, C. Koch, P. Perona. Graph-based visual saliency. Advances in Neural Information Processing Systems, 19:545-552, 2006.
[2] L itti. A model of saliency-based visual attention for rapid scene analysis. IEEE TRANSCATION ON PARTTERN ANALYSIS AND MACHINE INTELLIGENCE, 1998,20(11):1254-1259.ps:手機打字,湊合看。
ps:你也可以諮詢一下侯曉迪(Filestorm),曾經在本科階段發表過一篇譜殘差的顯著性演算法(很簡潔,引用量也很高,不過演算法不是很嚴謹,存在commend的地方,他自己在pami上文章也有討論過;目前延伸出一種演算法,計算量是其一半,少做一半的fft,不過也不嚴謹)。他是學術牛人,是視覺顯著性方面的專家(當然也是其他方面專家)。你說的是卷積神經網路(CNN)里的概念吧?
在每個卷積層,數據都是以三維形式存在的。
你可以把它看成許多個二維圖片疊在一起,其中每一個稱為一個feature map。在輸入層,如果是灰度圖片,那就只有一個feature map;如果是彩色圖片,一般就是3個feature map(紅綠藍)。層與層之間會有若干個卷積核(kernel),上一層和每個feature map跟每個卷積核做卷積,都會產生下一層的一個feature map。
activation map我倒是沒有聽說過……不過倒是會提到一個神經元的activation這個概念。一個神經元的輸出一般是它的輸入的非線性函數,這個函數稱為activation function。照理來說應該是輸出叫作activation,不過據我觀察activation一般指輸入。推薦閱讀:
※當前主流的圖像分割研究方向都有哪些?
※幾乎無C/C++基礎的前提下,如何去學習OpenCV?
※運算量很大的圖像處理演算法有什麼意義呢?
※做圖像處理的研究生除了要學習MATLAB外,還要學習什麼編程語言,利用什麼編程軟體?謝謝回答。謝謝?
※opencv,halcon與matlab都有圖像處理的相關功能,它們有什麼聯繫和區別?