【卷積】圖像分塊與卷積特征提取與自然圖像靜態統計特性


Main Page - Ufldl http://deeplearning.stanford.edu/wiki/index.php/Main_Page

卷積特征提取—處理大型圖像 - CSDN博客 http://blog.csdn.net/u013884378/article/details/21700363

     仿真表明,如果將整幅圖像運用imresize函數進行壓縮,則訓練樣本過少。如果采用圖像分塊的方式,獲取了大量的樣本,並且確定了網絡參數。那接下來如何運用這個參數去提取整幅圖像的特征呢?

     教程中舉了一個例子。96*96的圖像,假設訓練時采用的8*8的patch,且隱含層節點100個。(我突然想到,關於稀疏自編碼的棧式編碼方式我貌似沒有理解,以前的理解是錯誤的)。按教程中的方式來看,96*96的圖像將會被分成(96-8+1)*(96-8+1),即89*89塊,每一塊的大小是8*8。將這些分出來的塊輸入到已經訓練好的網路中,輸入是:64*(89*89),W1是100*64,W1*輸入,則隱含層的輸出是100*(89*89),這也是教程中所說的將得到100個集合,每個集合中含有89*89特征的含義所在。

      這樣問題有來了,每一幅圖像都得到100*(89*89)的特征矩陣,這個太大了,如果用這個去訓練分類器顯然是不可能的。那我們怎么辦呢?未完待續。。。

 

在這里插一段圖像的靜態特性。

       教程中說,自然圖像具有靜態特性,即圖像某一部分的統計特性和其他部分是相同的,這是用某一部分學習出的特征(即權值)去卷積整幅圖像,對整幅圖像進行特征表示的理論基礎。所以特地查了下到底什么是圖像的統計特性。看了一些PPT,圖像的統計特性是指圖像信號(亮度、色度或其抽樣值)本身或對他們進行某種方式處理(比如計算像素的均值,中值,方差等等)以后的輸出值的隨機統計特性。看了一篇英文文章:

Torralba A, Oliva A. Statistics of natural image categories[J]. Network: computation in neural systems, 2003, 14(3): 391-412.

       該文章探討了自然圖像的統計特性,並使用這些統計特性對目標和場景進行分類。討論了二階統計特性(second-order statistics)與圖像類別,場景規模和目標的相關關系。We propose how scene categorization(場景分類) could be computed in a feedforward manner in order to provide top-down(自頂向下)  and contextual(上下文信息) information very early in the visual processing chain(視覺處理鏈)。實驗表明low-level features is benefit to 識別問題。同時,提出簡單的統計特性可以用來預測圖像中是否有某一物體。

       關於自然圖像的靜態特性主要位於Section 2:

(1)自然圖像的1/f光譜(到底什么是光譜?)


(2)各類圖像的光譜特征

(3)場景尺度和圖像尺度

        不同尺度場景的圖像統計特性是不同的。



(4)非靜態統計特性

       自然圖像的另一個重要特性是隨着空間位置(observer的位置?)的改變圖像統計特性是怎樣改變的。當人眼在各個方向變化時,我們希望自然圖像的靜態特性是尺度不變和靜態的(特征同樣是關於位置的分布)。


   上圖中的關鍵句:As scene scale increases,the image statistic become non-staionary.

   遺憾的是,讀了這篇文章,還是不理解這句話(上面這篇文章明顯說明不同location的圖像統計特性不同啊):

  Natural images have the property of being stationary, meaning that the statistics of one part of the image are the same as any other part. This suggests that the features that we learn at one part of the image can also be applied to other parts of the image, and we can use the same features at all locations.

       

      關於圖像的卷積問題(卷積和濾波似乎是同一概念)。

(1)圖像的卷積:

     本教程代碼中,由特征(權值)reshape的矩陣極為卷積核(注意卷積核的行、列元素個數都是奇數,也不一定,經過仿真驗證,偶數貌似也可以,這個問題可以研究下)。下圖說明什么是卷積濾波:

 

舉個例子:

(2)那matlab的conv2是做什么的呢?

     終於把matlab的conv2卷積運算搞清楚了,額的神吶。

     矩陣卷積一般用於圖像處理中,一般分為如下四個步驟;

     a.卷積核繞自己的核心元素順時針旋轉180讀。

     b.移動卷積核,使其位於待處理圖像的左上方。旋轉后的卷積核右下角元素與待處理矩陣左上方元素重合。此處想起解釋卷積那個打板子案例,某一時刻的輸出不僅與此時的輸入有關還與此時刻之前的輸入有關。(‘’full''下矩陣位數為:(m+n-1,m+n-1))。

     c.在旋轉后的卷積核中,將輸入圖像的像素值作為權重相乘。

     d.第三部結果的核作為輸入像素對應的輸出像素。

 

C = conv2(...,'shape') returnsa subsection of the two-dimensional convolution, as specified by theshape parameter:

full

Returns the full two-dimensional convolution (default).

same

Returns the central part of the convolution of the samesize asA.

valid

Returns only those parts of the convolution that arecomputed without the zero-padded edges. Using this option,C hassize[ma-mb+1,na-nb+1] whenall(size(A) >= size(B)).Otherwiseconv2returns[]

 

     繼續上面的卷積,前已述,獲取到的卷積特征維數很大。教程中給出的方法是,pooling,翻譯成池化還是匯總,貌似匯總意義更加明確。基本思路是這樣的,將學習到的特征向量變成一個矩陣,然后按照某一定值維數對該矩陣進行分塊,對於每一塊,取均值(mean pooling)或者最大值(max pooling)作為該塊的代表,理論依據何在?還是前述自然圖像的靜態特性,不懂啊。。。下面的工作就是做大量仿真了。。。


其他可能有用的圖像分塊和卷積文獻:

圖像分塊分層結構在海量數據處理中的應用 - 豆丁網 http://www.docin.com/p-1451593281.html

基於多層卷積神經網絡學習的單幀圖像超分辨率重建方法_百度文庫 https://wenku.baidu.com/view/17b5a91f53d380eb6294dd88d0d233d4b14e3fbc.html 劉娜、李翠華

 

基於多尺度分塊卷積神經網絡的圖像目標識別算法 - 豆丁網 http://www.docin.com/p-1609748296.html?docfrom=rrela

基於多尺度分塊卷積神經網絡的圖像目標識別算法--《計算機應用》2016年04期 http://www.cnki.com.cn/Article/CJFDTotal-JSJY201604030.htm

基於分塊卷積的大圖像輸入卷積神經網絡加速 - 其它論文 - 道客巴巴 http://www.doc88.com/p-1915216195143.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM