1.3 更多边缘检测内容-深度学习第四课《卷积神经网络》-Stanford吴恩达教授
| 1.2 邊緣檢測(cè)示例 | 回到目錄 | 1.4 Padding |
更多邊緣檢測(cè)內(nèi)容 (More Edge Detection Example)
你已經(jīng)見(jiàn)識(shí)到用卷積運(yùn)算實(shí)現(xiàn)垂直邊緣檢測(cè),在本視頻中,你將學(xué)習(xí)如何區(qū)分正邊和負(fù)邊,這實(shí)際就是由亮到暗與由暗到亮的區(qū)別,也就是邊緣的過(guò)渡。你還能了解到其他類型的邊緣檢測(cè)以及如何去實(shí)現(xiàn)這些算法,而不要總想著去自己編寫一個(gè)邊緣檢測(cè)程序,讓我們開始吧。
還是上一個(gè)視頻中的例子,這張6×6的圖片,左邊較亮,而右邊較暗,將它與垂直邊緣檢測(cè)濾波器進(jìn)行卷積,檢測(cè)結(jié)果就顯示在了右邊這幅圖的中間部分。
現(xiàn)在這幅圖有什么變化呢?它的顏色被翻轉(zhuǎn)了,變成了左邊比較暗,而右邊比較亮。現(xiàn)在亮度為10的點(diǎn)跑到了右邊,為0的點(diǎn)則跑到了左邊。如果你用它與相同的過(guò)濾器進(jìn)行卷積,最后得到的圖中間會(huì)是-30,而不是30。如果你將矩陣轉(zhuǎn)換為圖片,就會(huì)是該矩陣下面圖片的樣子。現(xiàn)在中間的過(guò)渡部分被翻轉(zhuǎn)了,之前的30翻轉(zhuǎn)成了-30,表明是由暗向亮過(guò)渡,而不是由亮向暗過(guò)渡。
如果你不在乎這兩者的區(qū)別,你可以取出矩陣的絕對(duì)值。但這個(gè)特定的過(guò)濾器確實(shí)可以為我們區(qū)分這兩種明暗變化的區(qū)別。
再來(lái)看看更多的邊緣檢測(cè)的例子,我們已經(jīng)見(jiàn)過(guò)這個(gè)3×3的過(guò)濾器,它可以檢測(cè)出垂直的邊緣。所以,看到右邊這個(gè)過(guò)濾器,我想你應(yīng)該猜出來(lái)了,它能讓你檢測(cè)出水平的邊緣。提醒一下,一個(gè)垂直邊緣過(guò)濾器是一個(gè)3×3的區(qū)域,它的左邊相對(duì)較亮,而右邊相對(duì)較暗。相似的,右邊這個(gè)水平邊緣過(guò)濾器也是一個(gè)3×3的區(qū)域,它的上邊相對(duì)較亮,而下方相對(duì)較暗。
這里還有個(gè)更復(fù)雜的例子,左上方和右下方都是亮度為10的點(diǎn)。如果你將它繪成圖片,右上角是比較暗的地方,這邊都是亮度為0的點(diǎn),我把這些比較暗的區(qū)域都加上陰影。而左上方和右下方都會(huì)相對(duì)較亮。如果你用這幅圖與水平邊緣過(guò)濾器卷積,就會(huì)得到右邊這個(gè)矩陣。
再舉個(gè)例子,這里的30(右邊矩陣中綠色方框標(biāo)記元素)代表了左邊這塊3×3的區(qū)域(左邊矩陣綠色方框標(biāo)記部分),這塊區(qū)域確實(shí)是上邊比較亮,而下邊比較暗的,所以它在這里發(fā)現(xiàn)了一條正邊緣。而這里的-30(右邊矩陣中紫色方框標(biāo)記元素)又代表了左邊另一塊區(qū)域(左邊矩陣紫色方框標(biāo)記部分),這塊區(qū)域確實(shí)是底部比較亮,而上邊則比較暗,所以在這里它是一條負(fù)邊。
再次強(qiáng)調(diào),我們現(xiàn)在所使用的都是相對(duì)很小的圖片,僅有6×6。但這些中間的數(shù)值,比如說(shuō)這個(gè)10(右邊矩陣中黃色方框標(biāo)記元素)代表的是左邊這塊區(qū)域(左邊6×6矩陣中黃色方框標(biāo)記的部分)。這塊區(qū)域左邊兩列是正邊,右邊一列是負(fù)邊,正邊和負(fù)邊的值加在一起得到了一個(gè)中間值。但假如這個(gè)一個(gè)非常大的1000×1000的類似這樣棋盤風(fēng)格的大圖,就不會(huì)出現(xiàn)這些亮度為10的過(guò)渡帶了,因?yàn)閳D片尺寸很大,這些中間值就會(huì)變得非常小。
總而言之,通過(guò)使用不同的過(guò)濾器,你可以找出垂直的或是水平的邊緣。但事實(shí)上,對(duì)于這個(gè)3×3的過(guò)濾器來(lái)說(shuō),我們使用了其中的一種數(shù)字組合。
但在歷史上,在計(jì)算機(jī)視覺(jué)的文獻(xiàn)中,曾公平地爭(zhēng)論過(guò)怎樣的數(shù)字組合才是最好的,所以你還可以使用這種: [10?120?210?1]\left[\begin{matrix} 1 & 0 & -1 \\ 2 & 0 & -2 \\ 1 & 0 & -1 \\ \end{matrix}\right]???121?000??1?2?1???? ,叫做Sobel的過(guò)濾器,它的優(yōu)點(diǎn)在于增加了中間一行元素的權(quán)重,這使得結(jié)果的魯棒性會(huì)更高一些。
但計(jì)算機(jī)視覺(jué)的研究者們也會(huì)經(jīng)常使用其他的數(shù)字組合,比如這種:[30?3100?1030?3]\left[\begin{matrix} 3 & 0 & -3 \\ 10 & 0 & -10 \\ 3 & 0 & -3 \\ \end{matrix}\right]???3103?000??3?10?3????,這叫做Scharr過(guò)濾器,它有著和之前完全不同的特性,實(shí)際上也是一種垂直邊緣檢測(cè),如果你將其翻轉(zhuǎn)90度,你就能得到對(duì)應(yīng)水平邊緣檢測(cè)。
隨著深度學(xué)習(xí)的發(fā)展,我們學(xué)習(xí)的其中一件事就是當(dāng)你真正想去檢測(cè)出復(fù)雜圖像的邊緣,你不一定要去使用那些研究者們所選擇的這九個(gè)數(shù)字,但你可以從中獲益匪淺。把這矩陣中的9個(gè)數(shù)字當(dāng)成9個(gè)參數(shù),并且在之后你可以學(xué)習(xí)使用反向傳播算法,其目標(biāo)就是去理解這9個(gè)參數(shù)。
當(dāng)你得到左邊這個(gè)6×6的圖片,將其與這個(gè)3×3的過(guò)濾器進(jìn)行卷積,將會(huì)得到一個(gè)出色的邊緣檢測(cè)。這就是你在下節(jié)視頻中將會(huì)看到的,把這9個(gè)數(shù)字當(dāng)成參數(shù)的過(guò)濾器,通過(guò)反向傳播,你可以學(xué)習(xí)這種 [10?110?110?1]\left[\begin{matrix} 1&0&-1\\ 1&0&-1\\ 1&0&-1\\ \end{matrix}\right]???111?000??1?1?1???? 的過(guò)濾器,或者Sobel過(guò)濾器和Scharr過(guò)濾器。還有另一種過(guò)濾器,這種過(guò)濾器對(duì)于數(shù)據(jù)的捕捉能力甚至可以勝過(guò)任何之前這些手寫的過(guò)濾器。相比這種單純的垂直邊緣和水平邊緣,它可以檢測(cè)出45°或70°或73°,甚至是任何角度的邊緣。所以將矩陣的所有數(shù)字都設(shè)置為參數(shù),通過(guò)數(shù)據(jù)反饋,讓神經(jīng)網(wǎng)絡(luò)自動(dòng)去學(xué)習(xí)它們,我們會(huì)發(fā)現(xiàn)神經(jīng)網(wǎng)絡(luò)可以學(xué)習(xí)一些低級(jí)的特征,例如這些邊緣的特征。盡管比起那些研究者們,我們要更費(fèi)勁一些,但確實(shí)可以動(dòng)手寫出這些東西。不過(guò)構(gòu)成這些計(jì)算的基礎(chǔ)依然是卷積運(yùn)算,使得反向傳播算法能夠讓神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)任何它所需要的3×3的過(guò)濾器,并在整幅圖片上去應(yīng)用它。這里,這里,還有這里(左邊矩陣藍(lán)色方框標(biāo)記部分),去輸出這些,任何它所檢測(cè)到的特征,不管是垂直的邊緣,水平的邊緣,還有其他奇怪角度的邊緣,甚至是其它的連名字都沒(méi)有的過(guò)濾器。
所以這種將這9個(gè)數(shù)字當(dāng)成參數(shù)的思想,已經(jīng)成為計(jì)算機(jī)視覺(jué)中最為有效的思想之一。在接下來(lái)的課程中,也就是下個(gè)星期,我們將詳細(xì)去探討如何使用反向傳播去讓神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)這9個(gè)數(shù)字。但在此之前,我們需要先討論一些其它細(xì)節(jié),比如一些基礎(chǔ)的卷積運(yùn)算的變量。在下面兩節(jié)視頻中,我將與你們討論如何去使用padding,以及卷積各種不同的發(fā)展,這兩節(jié)內(nèi)容將會(huì)是卷積神經(jīng)網(wǎng)絡(luò)中卷積模塊的重要組成部分,所以我們下節(jié)視頻再見(jiàn)。
課程板書
| 1.2 邊緣檢測(cè)示例 | 回到目錄 | 1.4 Padding |
總結(jié)
以上是生活随笔為你收集整理的1.3 更多边缘检测内容-深度学习第四课《卷积神经网络》-Stanford吴恩达教授的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 1.2 边缘检测示例-深度学习第四课《卷
- 下一篇: 1.4 Padding-深度学习第四课《