0
本文作者: AI研習社-譯站 | 2019-03-20 10:19 |
本文為 AI 研習社編譯的技術博客,原標題 :
A Brief History of Computer Vision (and Convolutional Neural Networks)
作者 | Rostyslav Demush
翻譯 | 鱷魚艾德克、小先生愛你
校對 | 醬番梨 審核 | 約翰遜·李加薪 整理 | 立魚王
原文鏈接:
https://hackernoon.com/a-brief-history-of-computer-vision-and-convolutional-neural-networks-8fe8aacc79f3
盡管計算機視覺近期突然興起(重大突破時刻發(fā)生在2012年,那時AlexNet網(wǎng)絡贏得ImageNet的冠軍),它確實不是以一個新的科學領域。
世界范圍內(nèi)的計算機方面的科學家在過去的六十年一直嘗試尋找使得機器能夠在視覺數(shù)據(jù)中提取出含義,計算機視覺的歷史是非常令人著迷的,這個方面是大多數(shù)人所不了解的。
在這篇文章中,我將會嘗試介紹現(xiàn)代計算機視覺系統(tǒng)是如何通過卷積神經(jīng)網(wǎng)絡驅(qū)動的。
我將會從一個二十世紀五十年代出現(xiàn)的,和軟件工程毫不相關的作品開始。
計算機視覺中最有影響力的論文之一由兩位神經(jīng)生理學家David Hubel和Torsten Wiesel于1959年發(fā)表。他們的出版物題為“貓的紋狀皮層中單個神經(jīng)元的感受野”,描述了視覺皮層神經(jīng)元的核心反應特性。以及貓的視覺體驗如何塑造其皮質(zhì)結(jié)構(gòu)。
兩人進行了一些非常精細的實驗。他們將電極放入麻醉貓腦的初級視皮層區(qū)域,觀察或至少試圖在該區(qū)域進行神經(jīng)元活動,同時向動物展示各種圖像。他們的第一次努力沒有結(jié)果——他們無法讓神經(jīng)細胞對任何事情做出反應。
然而,在研究的幾個月后,他們注意到,一個神經(jīng)元在他們將一個新的幻燈片滑入投影機時被發(fā)射,而不是偶然。這是一次幸運的意外。經(jīng)過一些初步的混淆,Hubel和Wiesel意識到讓神經(jīng)元興奮的是由玻璃片的鋒利邊緣的陰影所產(chǎn)生的線條的運動。
https://goodpsychology.wordpress.com/2013/03/13/235/
研究人員通過實驗發(fā)現(xiàn)初級視覺皮層含有許多簡單和復雜的神經(jīng)元,并且視覺處理過程總是從類似特定方向邊緣的這類簡單結(jié)構(gòu)開始。
聽起來是不是挺熟悉?這就是隱藏于深度學習之后的核心準則。
計算機視覺歷史中下一個值得關注的是第一臺數(shù)字圖像掃描儀的發(fā)明。
在1959年,Russell和他的同學研制了一臺可以把圖片轉(zhuǎn)化為被二進制機器所理解的灰度值的儀器。正是由于他們的成果,我們現(xiàn)在能夠用不同的方法處理數(shù)字圖像。
第一張被數(shù)字掃描的圖片是Russell的嬰兒照。它僅僅是一副5cm*5cm的關于30976(176*176)個像素所構(gòu)成的圖片,但它變得舉世聞名是因為原始圖片被保存在波特蘭藝術博物館。
https://www.engadget.com/2010/06/30/russell-kirsch-helped-create-them-now-he-wants-to-kill-square-p/
接下來討論Lawrence Roberts的“三維固體的機器感知”,這本在1963年出版的書被廣泛認為是現(xiàn)代計算機視覺的前導之一。
在他的博士論文中,Larry描述了從二維圖片中推導三維信息的過程。他把視覺世界所看到的簡化為幾何形狀。
http://www.packet.cc/files/mach-per-3D-solids.html
他在論文中描述和編寫程序的目的是將二維圖像處理成線條,然后利用這些線條建立起三維重示,最終顯示物體移除了所有隱藏線條的三維結(jié)構(gòu)。
在三維到二維展示之后,Larry寫下了二維到三維的構(gòu)造是計算機輔助三維系統(tǒng)的一個良好開端,他完全正確。
我們應該注意到Lawrence并沒有在計算機視覺這方面花費太多精力,相反他加入了DARPA,現(xiàn)在以因特網(wǎng)發(fā)明被人所熟知的項目。
在1960s,AI成為了一門學科,一些研究人員關于這塊領域的未來非常樂觀,他們相信用不了25年時間就能造出和人類一樣智能的計算機。同一時期,MITAI實驗室的Seymour Papert教授決定啟動夏季視覺項目,并在幾個月內(nèi)解決機器視覺問題。
他認為一小群MIT的學生在夏天開發(fā)了視覺系統(tǒng)的重要組成部分。Seymour和Gerald Sussman協(xié)調(diào)學生將設計一個可以自動執(zhí)行背景/前景分割,并從真實世界的圖像中提取非重疊物體的平臺。
這個課題沒有成功,50年之后,我們?nèi)匀辉谙蚪鉀Q計算機視覺前進。據(jù)許多人說,這個項目是計算機視覺作為一個科學領域的正式誕生的標志。
在1982年,一個英國神經(jīng)學家David Marr發(fā)表了另一篇有影響的論文-“愿景:對人類表現(xiàn)和視覺信息處理的計算研究”。
基于Hubel和Wiesel的想法(他們發(fā)現(xiàn)視覺處理不是從整體對象開始),David給了我們下一個重要的見解:他確定了這個愿景是等級的,視覺系統(tǒng)的主要功能是創(chuàng)建環(huán)境的3維表示,以便我們可以與之交互。
他介紹了一個視覺框架,其中檢測邊緣,曲線,角落等的低級算法被用作對視覺數(shù)據(jù)進行高級理解的鋪墊。
David Marr的視覺代表框架包括:
圖像的原始草圖,其中表示邊緣,條形,邊界等(這顯然受到Hubel和Wiesel研究的啟發(fā));
2?維的草圖表示,其中表面,圖像上的深度和不連續(xù)性信息拼接在一起;
根據(jù)曲面和體積基元分層組織的3維模型。
David Marr的成果在當時是開創(chuàng)性的,但它非常抽象和高級。 它沒有包含任何可以在人工視覺系統(tǒng)中使用的數(shù)學建模的信息,也沒有提到任何類型的學習過程。
大約在同一時間,日本計算機科學家Kunihiko Fukushima也受到Hubel和Wiesel的啟發(fā),建立了一個自組織的簡單和復雜細胞的人工網(wǎng)絡,可以識別模式并且不受位置變化的影響。 網(wǎng)絡Neocognitron包括幾個卷積層(通常是矩形的),他的感受野具有權(quán)重向量(稱為濾波器)。
這些濾波器的功能是在輸入值的二維數(shù)組(例如圖像像素)上滑動,并在執(zhí)行某些計算后,產(chǎn)生激活事件(2維數(shù)組),這些事件將用作網(wǎng)絡后續(xù)層的輸入。
Fukushima的Neocognitron可以說是第一個神經(jīng)網(wǎng)絡; 它是今天的神經(jīng)網(wǎng)絡的祖父。
幾年后,在1989年,一位年輕的法國科學家Yann LeCun將一種后向傳播風格學習算法應用于Fukushima的卷積神經(jīng)網(wǎng)絡結(jié)構(gòu)。 在完成該項目幾年后,LeCun發(fā)布了LeNet-5--這是第一個引入我們今天仍在CNN中使用的一些基本成分的現(xiàn)代網(wǎng)絡。
在他面前的Fukushima,LeCun決定將他的發(fā)明應用于角色識別,甚至發(fā)布了用于閱讀郵政編碼的商業(yè)產(chǎn)品。
除此之外,他的工作創(chuàng)建手寫數(shù)字的MNIST數(shù)據(jù)集 - 這可能是機器學習中最著名的基準數(shù)據(jù)集。
1997年,一位伯克利教授Jitendra Malik(以及他的學生Jianbo Shi)發(fā)表了一篇論文,描述了他試圖解決感性分組的問題。
研究人員試圖讓機器使用圖論算法將圖像分割成合理的部分(自動確定圖像上的哪些像素屬于一起,并將物體與周圍環(huán)境區(qū)分開來)。
他們沒有走得太遠; 感知分組的問題仍然是計算機視覺專家正在努力解決的問題。
在1990s,計算機視覺作為一個領域,在很大程度上改變了它的關注點。
大約在1999年,許多研究人員停止嘗試通過創(chuàng)建它們的3維模型(Marr提出的路徑)來重建對象,而是將他們的努力轉(zhuǎn)向基于特征的對象識別。 David Lowe的作品“來自局部尺度不變特征的物體識別”特別表明了這一點。
文章描述了一種視覺識別系統(tǒng),該系統(tǒng)使用對旋轉(zhuǎn),位置和部分照明變化不變的局部特征。 根據(jù)Lowe的說法,這些特征有點類似于在顳下皮層中發(fā)現(xiàn)的神經(jīng)元的特性,這些特征涉及靈長類視覺中的物體檢測過程。
不久之后,在2001年,Paul Viola 和Michael Jones推出了第一個實時工作的人臉檢測框架。 雖然不是基于深度學習,但算法仍然具有深刻的學習風格,因為在處理圖像時,它了解哪些特征(非常簡單,類似Haar的特征)可以幫助定位面部。
https://www.researchgate.net/figure/Haar-features-used-for-Viola-Jones-face-detection-method_fig1_268348020
Viola / Jones面部探測器仍被廣泛使用。 它是一個強大的二元分類器,由幾個弱分類器構(gòu)成; 在學習階段,在這種情況下非常耗時,使用Adaboost訓練弱級分類器的級聯(lián)。
為了找到感興趣的對象(面部),模型將輸入圖像分割成矩形塊并將它們?nèi)刻峤唤o弱檢測器的級聯(lián)。 如果補丁通過級聯(lián)的每個階段,則將其歸類為正數(shù),否則,算法會立即拒絕它。 該過程在各種規(guī)模上重復多次。
該論文發(fā)表五年后,F(xiàn)ujitsu 發(fā)布了一款具有實時人臉檢測功能的相機,該功能依賴于Viola / Jones算法。
隨著計算機視覺領域不斷發(fā)展,社區(qū)迫切需要基準圖像數(shù)據(jù)集和標準評估指標來比較其模型的性能。
2006年,Pascal VOC項目啟動。 它提供了用于對象分類的標準化數(shù)據(jù)集以及用于訪問所述數(shù)據(jù)集和注釋的一組工具。 創(chuàng)始人還在2006年至2012年期間舉辦了年度競賽,該競賽允許評估不同對象類識別方法的表現(xiàn)。
2009年,另一個重要的基于特征的模型由Pedro Felzenszwalb,David McAllester和Deva Ramanan - 可變形零件模型開發(fā)。
從本質(zhì)上講,它將對象分解為部分集合(基于Fischler和Elschlager在20世紀70年代引入的圖像模型),在它們之間強制實施一組幾何約束,并將被模擬的潛在對象中心視為潛在變量。
DPM在對象檢測任務(使用邊界框用于本地化對象)和擊敗模板匹配以及當時流行的其他對象檢測方法方面表現(xiàn)出色。
你可能聽說過的ImageNet大規(guī)模視覺識別競賽(ILSVRC)始于2010年。繼PASCAL VOC之后,它也每年舉辦一次,包括一個賽后研討會,參與者討論他們從中學到了什么。 最具創(chuàng)意的作品。
與只有20個對象類別的Pascal VOC不同,ImageNet數(shù)據(jù)集包含超過一百萬個圖像,手動清理,跨越1k個對象類。
自成立以來,ImageNet挑戰(zhàn)已成為跨越大量對象類別的對象類別分類和對象檢測的基準。
在2010年和2011年,ILSVRC的圖像分類錯誤率徘徊在26%左右。 但是自從2012年,來自多倫多大學的一個團隊進入了一個卷積神經(jīng)網(wǎng)絡模型(AlexNet)進入競爭,這改變了一切。 該模型與Yann LeCun的LeNet-5結(jié)構(gòu)相似,誤差率為16.4%。
這是CNN的突破性時刻。
在接下來的幾年中,ILSVRC中圖像分類的錯誤率下降到幾個百分點,自2012年以來,獲勝者一直是卷積神經(jīng)網(wǎng)絡。
正如我前面提到的,自20世紀80年代以來,卷積神經(jīng)網(wǎng)絡已經(jīng)存在。 那么為什么它們需要這么長時間才能變得流行呢?
那么,我們當前的CNN流行有三個因素:
由于摩爾定律,與20世紀90年代發(fā)布LeNet-5相比,我們的機器現(xiàn)在速度更快,功能更強大。
NVIDIA的可并行化圖形處理單元幫助我們在深度學習方面取得了重大進展。
最后,今天的研究人員可以訪問大型,標記的高維視覺數(shù)據(jù)集(ImageNet,Pascal等)。 因此,他們可以充分培養(yǎng)他們的深度學習模型,避免過度擬合。
結(jié)論
盡管最近取得了令人印象深刻的進展,但我們?nèi)匀粵]有接近解決計算機視覺問題。 然而,已經(jīng)有多家醫(yī)療機構(gòu)和企業(yè)找到了將由CNN驅(qū)動的計算機視覺系統(tǒng)應用于現(xiàn)實問題的方法。 這種趨勢不太可能很快停止。
想要繼續(xù)查看該篇文章相關鏈接和參考文獻?
點擊【計算機視覺(及卷積神經(jīng)網(wǎng)絡)簡史】或長按下方地址:
https://ai.yanxishe.com/page/TextTranslation/1518
AI研習社今日推薦:雷鋒網(wǎng)雷鋒網(wǎng)雷鋒網(wǎng)
李飛飛主講王牌課程,計算機視覺的深化課程,神經(jīng)網(wǎng)絡在計算機視覺領域的應用,涵蓋圖像分類、定位、檢測等視覺識別任務,以及其在搜索、圖像理解、應用、地圖繪制、醫(yī)學、無人駕駛飛機和自動駕駛汽車領域的前沿應用。
加入小組免費觀看視頻:https://ai.yanxishe.com/page/groupDetail/19
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。