文章由我們熟悉的一維連續(xù)時(shí)間信號(hào)的卷積逐漸過渡到圖像卷積。文章是循序漸進(jìn)的,希望想要了解的朋友們可以耐心讀一讀。本人理解有限,如有錯(cuò)誤還請(qǐng)指出。
(1)先看連續(xù)時(shí)間信號(hào)的卷積:
可以看到對(duì)與連續(xù)時(shí)間信號(hào)而言,卷積是一種特殊的積分運(yùn)算,它的過程就是一個(gè)函數(shù)固定不動(dòng),另一個(gè)函數(shù)先以y軸為對(duì)稱軸反轉(zhuǎn),然后不斷執(zhí)行相乘,積分,滑動(dòng)。
(2.)當(dāng)我們把連續(xù)時(shí)間信號(hào)離散化后,卷積的定義便成為了:
其中x(n)和h(n)是參與運(yùn)算的離散時(shí)間信號(hào)。在這個(gè)定義中,卷積的過程尤為清晰:
在坐標(biāo)軸上讓x(n)保持不動(dòng),先把h(n)反轉(zhuǎn),然后不斷執(zhí)行二者重合部分相乘求和然后讓h(n)滑動(dòng)的過程。離散時(shí)間信號(hào)可以看作是一串序列,它是一維的,如果我們把它擴(kuò)充為二維序列,那不就是圖像了嗎?圖像的本質(zhì)就是灰度值的二維序列。
(3.)下面我們來看什么是圖像的卷積:
在這幅圖中,source pixel 是我們的圖像,它本質(zhì)是灰度的二維序列,圖中的convolution kernel是什么呢?這個(gè)我們稱它為卷積核,這個(gè)卷積核就相當(dāng)于是一維離散信號(hào)卷積中的一個(gè)參與卷積的信號(hào),圖像本身就相當(dāng)于是一維離散信號(hào)卷積中的另一個(gè)離散序列信號(hào),圖像卷積的過程與一維的情況十分類似:圖像卷積就是卷積核在圖像上按行滑動(dòng)遍歷像素時(shí)不斷的相乘求和的過程。舉個(gè)例子:如圖中所示,目前卷積核滑動(dòng)到了圖像左上角,我們把圖像上的9個(gè)值與卷積核的9個(gè)數(shù)值按照對(duì)應(yīng)位置相乘再相加得到一個(gè)和,這個(gè)和就是我們得到的卷積值。然后把卷積核向右移動(dòng)一個(gè)像素,再執(zhí)行對(duì)應(yīng)位置相乘再相加的過程得到第二個(gè)卷積值,當(dāng)把所有像素遍歷完成之后我們得到的結(jié)果就構(gòu)成了一幅圖像。這就是卷積得到的圖像。
(4)在圖像處理中,我們不會(huì)為了卷積而去卷積,為什么呢?按照卷積的定義,它是與卷積核相乘求和的結(jié)果,如果圖像本身像素的數(shù)據(jù)類型是8位無符號(hào)數(shù),那么它的灰度范圍就是0(黑色)到255(白色),這樣以來相乘后的值很容易大于255,那么怎么辦呢?一般就是截?cái)酁?55。從我這幾行的描述可以看到,單單卷積確實(shí)沒什么用,因?yàn)閳D像卷積的用武之處不在于此。
(5)圖像卷積常常用于圖像濾波(平滑化),圖像梯度,開運(yùn)算,閉運(yùn)算,黑帽運(yùn)算,頂帽運(yùn)算等形態(tài)處理,以及基于梯度運(yùn)算的邊緣提取中。
比如均值濾波的卷積核是這樣的:
它也是按照卷積運(yùn)算的過程相乘求和再滑動(dòng),只不過它的核里每個(gè)值都是1,在求和之后還除以核的大小來取平均。
比如高斯濾波是這樣的:
高斯濾波的時(shí)候它的核是離中心越近值越大,也就是不同位置的權(quán)重不同。在相乘求和之后會(huì)除以核內(nèi)數(shù)值的求和值以保證灰度值不會(huì)超出范圍
看到這里大家應(yīng)該會(huì)有疑惑,不是正在說卷積嗎,怎么就開始扯濾波了?情況是這樣的:什么是濾波?它的本質(zhì)就是卷積,是按照一定的特殊規(guī)則去卷積,此時(shí)使用的卷積核不是隨意的,而是有既定的規(guī)矩的,比如卷積核應(yīng)取3x3,5x5這樣的具有中心的核,而且核內(nèi)數(shù)值的分布也是有規(guī)定的,視不同的濾波方式而定。
講了這么多我還沒有說什么是卷積核,卷積核就是一種求和的規(guī)則,是一種映射的規(guī)則。原圖像像素點(diǎn)的值與對(duì)應(yīng)位置上的卷積核的值相乘然后按權(quán)重相加處理,這個(gè)過程用數(shù)學(xué)去表示不就是src(原圖像) x kernel(映射規(guī)則)=result(卷積的結(jié)果) 嗎?所以卷積核就是一種運(yùn)算的規(guī)則,由卷積核規(guī)則的不同衍生出了不同的濾波方式,不同的梯度運(yùn)算方式等。
講到這里我還想再說一說濾波,為什么卷積一下就濾波了呢?我舉個(gè)例子:就比如上文寫到的均值濾波,它的映射規(guī)則(就是卷積核)不就是全部都是1除以核大小嗎?也就是說原圖像與這樣的卷積核卷積的結(jié)果就是原圖像的像素值乘以卷積核對(duì)應(yīng)位置的值相加,很巧合的是核內(nèi)的值都是1/25(這是對(duì)于5x5大小的核來說的),那這樣看很顯然,卷積的結(jié)果就是把原圖像像素值相加取平均值。這樣一來像素與像素之間的差異性就變小了,圖像中分明的線條和邊界就是像素值迥然的差異所導(dǎo)致的,差異性減小導(dǎo)致邊界就模糊了,圖像自然就變得平滑了。說到這里還是沒說濾波這個(gè)概念,我們?cè)?a target="_blank">數(shù)字信號(hào)處理中接觸的諸如高通濾波就是為了濾除高頻信號(hào)(分布在π附近的信號(hào)),在圖像濾波中也是如此。我剛才說濾波后像素與像素之間的差異性減小了,這不就意味著濾除了高頻成分嗎?高頻信號(hào)的定義就是變化很快的信號(hào),在圖像中,如果兩個(gè)像素差異很大就意味著移動(dòng)一個(gè)像素的距離帶來的變化就是巨大的,而當(dāng)這巨大的變化連接起來就是圖像中的圖形的邊界或線條,這樣就是為什么線條被稱之為高頻信號(hào)。
我想看到這里大家應(yīng)該就理解了為什么卷積一下就能濾波了吧,卷積的一種應(yīng)用形式就是濾波,當(dāng)然不同的卷積核有不同的卷積效果,所以卷積還有諸如梯度運(yùn)算等其他的應(yīng)用形式,差別就在于卷積核的不同
總結(jié)起來就是:圖像卷積靠卷積核完成,卷積核規(guī)定了運(yùn)算的規(guī)則,濾波是卷積運(yùn)算所帶來的效果。不同的卷積核所得到的卷積效果不同,故衍生出了不同種類的濾波,形態(tài)運(yùn)算,梯度運(yùn)算等等概念。由此可見:卷積是圖像處理的基礎(chǔ),許許多多處理方式都是離不開卷積的
-
濾波
+關(guān)注
關(guān)注
10文章
679瀏覽量
57162 -
圖像處理
+關(guān)注
關(guān)注
27文章
1325瀏覽量
57728 -
高斯濾波
+關(guān)注
關(guān)注
0文章
18瀏覽量
8131 -
卷積
+關(guān)注
關(guān)注
0文章
95瀏覽量
18701
發(fā)布評(píng)論請(qǐng)先 登錄
FFT與DFT計(jì)算時(shí)間的比較及圓周卷積代替線性卷積的有效性實(shí)
關(guān)于對(duì)信號(hào)的反卷積問題
CNN之卷積層
卷積神經(jīng)網(wǎng)絡(luò)一維卷積的處理過程
簡談卷積—幽默笑話談卷積
實(shí)驗(yàn)一 連續(xù)時(shí)間系統(tǒng)卷積的數(shù)值計(jì)算
一維卷積、二維卷積、三維卷積具體應(yīng)用

一種輕量級(jí)時(shí)間卷積網(wǎng)絡(luò)設(shè)計(jì)方案

信號(hào)與系統(tǒng)中卷積分析和總結(jié)

評(píng)論