在人工智能深度學習技術中,有一個很重要的概念就是卷積神經網絡 CNN(Convolutional Neural Networks)。
卷積神經網絡被廣泛地運用到計算機視覺中,用于提取圖像數據的特征,其中發揮關鍵作用的步驟就是卷積層中的卷積運算。
卷積到底是什么?深度學習中的卷積運算與傳統的信號與系統中的卷積算子有什么不同?為什么卷積運算可以提取圖像的特征呢?下3分鐘帶你讀懂卷積運算與圖像處理。
了解卷積運算
卷積神經網絡中的核心即為 卷積運算,其相當于圖像處理中的 濾波器運算。對于一個 m×n大小的卷積核:
卷積一詞最開始出現在信號與系統中,是指兩個原函數產生一個新的函數的一種算子。
卷積運算在運算過程可以概括為翻轉、平移再加權求和三個步驟,其中的加權求和就是乘加操作。
另外,卷積運算還有一個重要的特性:空間域卷積=頻域乘積,這一點可以解釋為什么卷積運算可以自動地提取圖像的特征。
在卷積神經網絡中,對數字圖像做卷積操作其實就是利用卷積核(黃底部分)在圖像(綠底部分)上滑動,將圖像上的像素灰度值與對應卷積核上的數值相乘,然后將所有相乘后的值相加作為此時的輸出值(紅底部分),并最終滑動遍歷完整副圖像的過程。
動圖來源于stanford.edu, Feature extraction using convolution
仔細觀察上述動圖,圖像中的卷積操作相比于信號與系統中的卷積少了點什么?
我們可以看到,圖像中卷積的計算過程只有平移和乘加兩個步驟,相對于信號與系統的卷積算子缺少了翻轉。
那么,圖像的卷積操作是否需要進行翻轉呢?
事實上,深度學習中卷積核是無需進行翻轉的,因為卷積核中的所有權重都是隨機初始化,開始不是確定的。網絡每次更新迭代都是為了尋找一個最合適的卷積核權重值,所以是否翻轉也就無關緊要了。除此之外,圖像處理中的卷積核一般是對稱的,翻轉也就顯得不那么必要。
卷積神經網絡被廣泛運用到計算機視覺的最大一個原因,就是卷積層可以自動地提取圖像特征。
提取圖像特征
圖像中的特征通常指代圖像中物體的輪廓與紋理信息,而通常物體的細節(可以簡單地理解為圖像中像素點灰度值變換緩慢的地方)帶來的信息量較少。我們通常所說的圖像特征提取的過程是在保留圖像輪廓和紋理的同時,去掉冗余信息的過程。
物體輪廓
物體紋理,圖片來源The Berkeley Segmentation Dataset and Benchmark
那么如何區分圖像的特征與圖像的冗余信息量呢?
如下面這幅人物圖像,如果我們不對原始圖像做處理,很難將圖像的特征與冗余信息量區分開來。
我們可以換一個角度,不從時空區域來區分,而是抓住圖像細節和圖像輪廓紋理的頻率不一樣這一特征,把一副圖像放在頻域中以區分圖像的細節與圖像的輪廓紋理。
我們將這幅人物圖像(左)轉換到頻域中的該圖像(右),離中心點越近的分量頻率越低,離中心點越遠的分量頻率越高。
原圖
頻域圖像,圖片來源CMU, Computational Photography, Fall 2019
現在我們將用一個模板來分離高低頻分量。
如左圖所示的模板1中,其數值取值范圍為0到1。模板中的點越黑其數值越接近于0,越白越接近于1.
將模板1與頻域圖像相乘后,就可以只保留高頻部分去除離中心點較近的低頻分量,再將圖像轉換回到空間域中,可以看到圖像的高頻分量(右)是輪廓和紋理特征。
模板1
高頻分量,圖片來源:CMU, Computational Photography, Fall 2019
同樣的操作方式,將模板2與頻域圖像相乘,頻域圖中的低頻分量可以被選取出來,再將低頻分量轉到空間域中,可以看到低頻分量代表著細節特征。這時我們就可以成功地將圖像的輪廓紋理細節信息從頻率的角度分開來了。
模板2
低頻分量,圖片來源CMU, Computational Photography, Fall 2019
以上處理過程,實際就是在頻域中將模板與頻域圖像相乘,以區分圖像輪廓紋理與細節信息的過程。
而頻域相乘就等于空間域卷積,這是剛才提及到的卷積的重要特性。那么上述在頻域中的操作等同于空間中的圖像與空間域中的模板做卷積,這樣從頻域的角度,就可以解釋卷積操作能夠提取圖像特征的原因。
-
神經網絡
+關注
關注
42文章
4779瀏覽量
101047 -
人工智能
+關注
關注
1794文章
47642瀏覽量
239651
發布評論請先 登錄
相關推薦
評論