計算機視覺發展及主要研究方向


計算機視覺(Computer Vision)研究如何讓計算機可以像人類一樣去理解圖片、視頻等多媒體資源內容。例如用攝影機和計算機代替人眼對目標進行識別、 

跟蹤和測量等,並進一步處理成更適合人眼觀察或進行儀器檢測的圖像。

 

  • 圖像處理和計算機視覺

    圖像處理:對輸入的圖像做某種變換,輸出仍然是圖像,基本不涉及或者很少涉及圖像內容的分析。比較典型的有圖像變換,圖像增強,圖像去噪,

    像壓縮,圖像恢復,二值圖像處理等。

    計算機視覺:對圖像的內容進行分析,提取出有意義的特征,再對得到的特征進行分析,提取場景的語義表示,從而讓計算機具有人眼和人腦的能力。

    它處理的是多幅圖像或者序列圖像,當然也包括部分單幅圖像。

    計算機視覺更關注於圖像中的高層語義,可以認為是圖像理解。圖像處理關注於圖像中的低層信息,不涉及理解。另外,計算機視覺中還包括三維重建

    等不包含在圖像處理中的內容。如今計算機視覺跟機器學習,模式識別,深度學習等緊密相關,圖像處理可以是計算機視覺的一個小的部分。

 

  • 計算機視覺發展史

    1. 二維數字圖像的分析和識別  

       20世紀50年代,Russell和他的同學研制了一台可以把圖片轉化為被二進制機器所理解的灰度值的儀器——這是第一台數字圖像掃描儀,使處理數

       字像開始成為可能。這一時期,研究的主要對象如光學字符識別、工件表面、顯微圖片和航空圖片的分析和解釋等。

    2. 三維視覺理解

       20世紀60年代,人們已不滿足於僅對圖像進行簡單的處理,而是希望計算機能像人一樣去理解圖像的內容,描述它所看到的東西,更具體來講就是

       希望計算機能回答:目標是什么、目標在三維空間中的位置關系、目標的三維形狀及其改變、目標的位移、符號

       首先想到的是從人類看東西的方法中獲得借鑒:

       1)當時人們認為,人類能看到並理解事物,是因為人類通過兩只眼睛可以立體地觀察事物。因此要想讓計算機理解它所看到的圖像,須先將

          的三維結構從二維的圖像中恢復出來,這就是所謂的“三維重建”的方法。

       2)人們認為人之所以能識別出一個蘋果,是因為人們已經知道了蘋果的先驗知識,比如蘋果是紅色的、圓的、表面光滑的,如果給機器也建立一個

          這的知識庫,讓機器將看到的圖像與庫里的儲備知識進行匹配,是否可以讓機器識別乃至理解它所看到的東西呢?這是所謂的“先驗知識庫”。

       1965年,Lawrence Roberts在《三維固體的機器感知》描述了從二維圖片中推導三維信息的過程。這本書被廣泛認為是現代計算機視覺的前導之一,

       開創了理解三維場景為目的的計算機視覺研究。利用計算機程序將數字圖像處理成線條,然后把這些物體表示為基本幾何形狀的組合,再到知識庫中

       去搜索可能的視角投影,跟待識別的圖像進行匹配。

    3. 馬爾計算機視覺理論

       1977年David Marr在MIT的AI實驗室提出了計算機視覺理論(Computational Vision),這是與Lawrence Roberts當初引領的積木世界分析方法截然

       不同的理論。計算機視覺理論成為80年代計算機視覺重要理論框架,標志着計算機視覺成為了一門獨立的學科。

       Marr將系統分為基元圖、2.5維圖(部分的、不完整的三維信息,缺少深度信息)和三維模型三個層次來表達視覺信息的處理過程,而每層的表達將

       適當的信息明朗化。

       1)基元圖:使亮度變化(邊沿)的信息明朗化,如角點、邊緣、紋理、線條、邊界等基本特征。

       2)2.5維圖:使表面朝向的信息明朗化,如場景可見部分的深度、法線方向、輪廓等。

       3)三維模型:物體的形狀與空間位置信息明朗化。

       馬爾認為,大腦的神經計算和計算機的數值計算沒有本質區別,所以,馬爾沒有對“算法實現”進行任何探討。從現在神經科學的進展看,神經計算

       與數值計算在有些情況下會產生本質區別。

    4. 多視幾何與分層三維重建

       多視圖幾何是主要研究用幾何的方法,通過若干幅多視圖幾何二維圖像,來恢復三維物體。

       分層三維重建,就是指從多幅二維圖像恢復歐幾里德空間的三維結構,不是從圖像一步到歐幾里德空間下的三維結構,而是分步分層地進行。即先

       從多幅圖像的對應點重建射影空間下的對應空間點,然后把射影空間下重建的點提升到仿射空間下,最后把仿射空間下重建的點再提升到歐幾里德

       空間。

    5. 基於學習的視覺

       指以機器學習為主要技術手段的計算機視覺研究。基於學習的視覺研究,文獻中大體上分為二個階段:21世紀初的以流形學習( manifold Learning)

       為代表的子空間法( subspace method)和目前以深度神經網絡和深度學習(deep neural networks and deep learning)為代表的視覺方法。

       深度學習是人工神經網絡的一個分支,具有深度網絡結構的人工神經網絡是深度學習最早的網絡模型。

       1980年,基於傳統的感知器結構,深度學習創始人傑弗里·辛頓采用多個隱含層的深度結構來代替代感知器的單層結構,多層感知器模型是其中最

       具代表性的,而且多層感知器也是最早的深度學習網絡模型。

       1986年,深度學習之父傑弗里·辛頓提出了一種適用於多層感知器的反向傳播算法——BP算法。BP算法在傳統神經網絡正向傳播的基礎上,增加了

       誤差的反向傳播過程。反向傳播過程不斷地調整神經元之間的權值和閾值,直到輸出的誤差減小到允許的范圍之內。

       但是由於八十年代計算機的硬件水平有限,如:運算能力跟不上,這就導致當神經網絡的規模增大時,再使用BP算法會出現“梯度消失”的問題,很

       容易在訓練網絡參數時收斂於局部極小值。此外,反向傳播法訓練網絡需要大量的標簽樣本,權值的修正隨着反向傳播層數的增加逐漸削弱。這使得

       BP法的發展受到了很大的限制。再加上90年代中期,以SVM為代表的其它淺層機器學習算法被提出,並在分類、回歸問題上均取得了很好的效果,其

       原理又明顯不同於神經網絡模型,所以人工神經網絡的發展進入了瓶頸期。

       淺層學習模型能夠有效地解決簡單或者具有復雜條件限制的問題,但受限於只含一個隱含層,所以淺層學習模型特征構造的能力有限,不能有效處理

       包含復雜特征的問題。2006年,傑弗里·辛頓提出了深度學習的概念,隨后與其團隊在文章《A fast Learning Algorithm for Deep Belief Nets》中

       提出了深度學習模型之一——深度信念網絡(DBN),並給出了一種高效的半監督算法:逐層貪心算法,來訓練深度信念網絡的參數,打破了長期以來深

       度網絡難以訓練的僵局。受DBN方法的啟發,2007年,另一位深度學習大牛Benigo將DBN中的每層RBM替換為自動編碼機,提出了層疊自動編碼機(SAE)

       的深度結構。此時,深度學習的三種常用的基本架構就是DBN結構、SAE結構與1998年LeCun提出的卷積神經網絡結構(CNN)。

.      2012年,在著名的ImageNet圖像識別大賽中,傑弗里·辛頓領導的小組采用深度學習模型AlexNet一舉奪冠。AlexNet采用ReLU激活函數,從根本上解決

      了梯度消失問題,並采用GPU極大的提高了模型的運算速度。

       隨着深度學習技術的不斷進步以及數據處理能力的不斷提升,2014年,Facebook基於深度學習技術的DeepFace項目,在人臉識別方面的准確率已經能達

       到97%以上,跟人類識別的准確率幾乎沒有差別。這樣的結果也再一次證明了深度學習算法在圖像識別方面的一騎絕塵。

    

  • 計算機視覺的主要研究方向

    計算機視覺本身包括了諸多不同的研究方向,比較基礎和熱門的幾個方向主要有:

    1. 圖像分類:給定一組各自被標記為單一類別的圖像,我們對一組新的測試圖像的類別進行預測,並測量預測的准確性結果。圖像分類問題需要面臨以

       下幾個挑戰:視點變化,尺度變化,類內變化,圖像變形,圖像遮擋,照明條件和背景雜斑。目前較為流行的圖像分類架構是卷積神經網絡(CNN),

       將圖像送入網絡,然后網絡對圖像數據進行分類。在2012年出現的AlexNet網絡之后,又涌現了很多種使用卷積神經網絡作為核心,並取得優秀成果的

       模型,如 ZFNet(2013),GoogLeNet(2014), VGGNet(2014), RESNET(2015),DenseNet(2016)等。

    2. 物體識別和檢測(Object Detection):給定一張輸入圖片,算法能夠自動找出圖片中的常見物體,並將其所屬類別及位置輸出出來,簡言之,就

       是將物體在原圖中框出。因此,衍生了人臉檢測、車輛檢測、文字識別等細分檢測算法。常用的模型有R-CNN,Fast R-CNN,近年來,主要的目標檢

       測算法已經轉向更快、更高效的檢測系統。這種趨勢在 You Only Look Once(YOLO),Single Shot MultiBox Detector(SSD)和基於區域的全卷

       積網絡( R-FCN )算法中尤為明顯,這三種算法轉向在整個圖像上共享計算。

    3. 語義分割(Semantic Segmentation):將輸入圖像的每一個像素點進行歸類,用一張圖可以清晰地描述出來其內層意義。例如,我們可能需要區分

       圖像中屬於汽車的所有像素,並把這些像素塗成藍色。常用的模型有全卷積網絡( FCN ),SegNet等。

    4. 運動和跟蹤(Motion & Tracking):在一段給定的視頻中,在第一幀給出被跟蹤物體的位置及尺度大小,在后續的視頻當中,跟蹤算法需要從視頻

       中尋找被跟蹤物體的位置,並適應視頻中光照變化、運動模糊及表觀的變化等。而實際上,跟蹤是一個不適定問題,比如跟蹤一輛車,如果從車尾開

       始跟蹤,如果車輛在行進過程中外觀發生很大變化,如旋轉180度,現在的跟蹤算法可能會出現“跟丟”的情況。所以,這一研究領域還有極大提升

       間,也不屬於非常熱門的方向。鑒於 CNN 在圖像分類和目標檢測方面的優勢,它已成為計算機視覺和視覺跟蹤的主流深度模型。 一般來說,大規模

       的卷積神經網絡可作為分類器和跟蹤器來訓練。具有代表性的跟蹤算法有全卷積網絡跟蹤器( FCNT )和多域卷積神經網絡( MD Net )。

    5. 視覺問答(Visual Question & Answering):視覺問題的研究目的是根據輸入圖像,由用戶進行提問,而算法自動根據提問內容進行回答。除此之

       外,還有一種標題生成算法,即計算機根據圖像自動生成一段描述該圖像的文本,而不進行問答。對於此類跨越兩種數據形態(如文本和圖像)的算

       法,也可稱之為多模態或跨模態問題。

    6. 動作識別(Action Recognition):識別視頻中的動作是一個充滿挑戰而又具有較高實際應用價值的任務。相比圖像來說,視頻內容和背景更加復雜

       多變,不同的動作類別之間具有相似性,而相同的類別在不同環境下又有着不同的特點。此外,由於拍攝造成的遮擋、抖動、視角變化等也為動作識

       進一步帶來了困難。在實際應用中,精確的動作識別有助於輿情監控,廣告投放,以及很多其他視頻理解相關的任務。

    7. 三維重建(3D Reconstruction):通過攝像機獲取場景物體的二維數據圖像,並對此圖像進行分析處理,再結合計算機視覺知識推導出現實環境中

       物體的三維信息。

    2D視覺領域幾乎被基於學習的方法統治,尤其是深度學習;3D視覺領域仍以基於幾何的方法為主,比如三維重建、視覺SLAM等。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM