图像数据与边缘检测
學(xué)習(xí)目標(biāo)
- 目標(biāo) - 了解卷積網(wǎng)絡(luò)的歷史
- 了解邊緣檢測(cè)相關(guān)概念以及卷積運(yùn)算過程
 
- 應(yīng)用 - 無
 
3.1.1 為什么需要卷積神經(jīng)網(wǎng)絡(luò)
在計(jì)算機(jī)視覺領(lǐng)域,通常要做的就是指用機(jī)器程序替代人眼對(duì)目標(biāo)圖像進(jìn)行識(shí)別等。那么神經(jīng)網(wǎng)絡(luò)也好還是卷積神經(jīng)網(wǎng)絡(luò)其實(shí)都是上個(gè)世紀(jì)就有的算法,只是近些年來電腦的計(jì)算能力已非當(dāng)年的那種計(jì)算水平,同時(shí)現(xiàn)在的訓(xùn)練數(shù)據(jù)很多,于是神經(jīng)網(wǎng)絡(luò)的相關(guān)算法又重新流行起來,因此卷積神經(jīng)網(wǎng)絡(luò)也一樣流行。
- 1974年,Paul Werbos提出了誤差反向傳導(dǎo)來訓(xùn)練人工神經(jīng)網(wǎng)絡(luò),使得訓(xùn)練多層神經(jīng)網(wǎng)絡(luò)成為可能。
- 1979年,Kunihiko Fukushima(福島邦彥),提出了Neocognitron, 卷積、池化的概念基本形成。
- 1986年,Geoffrey Hinton與人合著了一篇論文:Learning representations by back-propagation errors。
- 1989年,Yann LeCun提出了一種用反向傳導(dǎo)進(jìn)行更新的卷積神經(jīng)網(wǎng)絡(luò),稱為LeNet。
- 1998年,Yann LeCun改進(jìn)了原來的卷積網(wǎng)絡(luò),LeNet-5。
3.1.1.2 圖像特征數(shù)量對(duì)神經(jīng)網(wǎng)絡(luò)效果壓力
假設(shè)下圖是一圖片大小為28 * 28 的黑白圖片時(shí)候,每一個(gè)像素點(diǎn)只有一個(gè)值(單通道)。那么總的數(shù)值個(gè)數(shù)為 784個(gè)特征
?
那現(xiàn)在這張圖片是彩色的,那么彩色圖片由RGB三通道組成,也就意味著總的數(shù)值有28?28?3 = 2352個(gè)值。
?
從上面我們得到一張圖片的輸入是2352個(gè)特征值,即神經(jīng)網(wǎng)路當(dāng)中與若干個(gè)神經(jīng)元連接,假設(shè)第一個(gè)隱層是10個(gè)神經(jīng)元,那么也就是23520個(gè)權(quán)重參數(shù)。
如果圖片再大一些呢,假設(shè)圖片為1000?1000?3,那么總共有3百萬數(shù)值,同樣接入10個(gè)神經(jīng)元,那么就是3千萬個(gè)權(quán)重參數(shù)。這樣的參數(shù)大小,神經(jīng)網(wǎng)絡(luò)參數(shù)更新需要大量的計(jì)算不說,也很難達(dá)到更好的效果,大家就不傾向于使用多層神經(jīng)網(wǎng)絡(luò)了。
所以就有了卷積神經(jīng)網(wǎng)絡(luò)的流行,那么卷積神經(jīng)網(wǎng)絡(luò)為什么大家會(huì)選擇它。那么先來介紹感受野以及邊緣檢測(cè)的概念。
3.1.2 感受野
1962年Hubel和Wiesel通過對(duì)貓視覺皮層細(xì)胞的研究,提出了感受野(receptive field)的概念,Fukushima基于感受野概念提出的神經(jīng)認(rèn)知機(jī)(neocognitron)可以看作是卷積神經(jīng)網(wǎng)絡(luò)的第一個(gè)實(shí)現(xiàn)網(wǎng)絡(luò)。
單個(gè)感受器與許多感覺神經(jīng)纖維相聯(lián)系,感覺信息是通過許多感受神經(jīng)纖維發(fā)放總和性的空間與時(shí)間類型不同的沖動(dòng),相當(dāng)于經(jīng)過編碼來傳遞。
?
3.1.3 邊緣檢測(cè)
為了能夠用更少的參數(shù),檢測(cè)出更多的信息,基于上面的感受野思想。通常神經(jīng)網(wǎng)絡(luò)需要檢測(cè)出物體最明顯的垂直和水平邊緣來區(qū)分物體。比如
?
看一個(gè)列子,一個(gè) 6×6的圖像卷積與一個(gè)3×3的過濾器(Filter or kenel)進(jìn)行卷積運(yùn)算(符號(hào)為?),?也可能是矩陣乘法所以通常特別指定是卷積的時(shí)候代表卷積意思。
- 相當(dāng)于將 Filter 放在Image 上,從左到右、從上到下地(默認(rèn)一個(gè)像素)移動(dòng)過整個(gè)Image,分別計(jì)算 ImageImage 被 Filter 蓋住的部分與 Filter的逐元素乘積的和
?
在這個(gè)6×6 的圖像中,左邊一半像素的值全是 10,右邊一半像素的值全是 0,中間是一條非常明顯的垂直邊緣。這個(gè)圖像與過濾器卷積的結(jié)果中,中間兩列的值都是 30,兩邊兩列的值都是 0,即檢測(cè)到了原 6×66×6 圖像中的垂直邊緣。
注:雖然看上去非常粗,是因?yàn)槲覀兊膱D像太小,只有5個(gè)像素長、寬,所以最終得到結(jié)果看到的是兩個(gè)像素位置,如果在一個(gè)500 x 500的圖當(dāng)中,就是一個(gè)豎直的邊緣了。
?
隨著深度學(xué)習(xí)的發(fā)展,我們需要檢測(cè)更復(fù)雜的圖像中的邊緣,與其使用由人手工設(shè)計(jì)的過濾器,還可以將過濾器中的數(shù)值作為參數(shù),通過反向傳播來學(xué)習(xí)得到。算法可以根據(jù)實(shí)際數(shù)據(jù)來選擇合適的檢測(cè)目標(biāo),無論是檢測(cè)水平邊緣、垂直邊緣還是其他角度的邊緣,并習(xí)得圖像的低層特征。
總結(jié)
 
                            
                        - 上一篇: BN与神经网络调优
- 下一篇: python 爬取手机app的信息
