人們常說:眼睛是心靈的窗戶,通過眼睛人們可以輕易地交流情感,眼睛也是與外界交流的窗口,這些都是通過“看”來完成的。
人們可以很容易“看到”一幅畫,但這一“簡單”過程并不如此簡單,大致上它可以分為以下幾個階段:首先是通過眼睛將圖成像在視網膜上;其次大腦對圖像進行理解;最后根據處理的結果做出反應。用比較專業一點的語言來描述,該過程包括了識別、描述與理解三個層次;這其中還隱含了邊緣檢測(各物體的輪廓等)、圖像的分割(各物體區域的劃分)等階段。以上實際上概述了視覺系統的三個層次,即低層階段:基于圖像特征提取及分割階段;中層階段:基于物體的幾何模型與圖像特性表達階段;高層階段:基于景物知識的描述、識別與理解階段,這是根據先驗知識介入的程度劃分的,且實現起來也越來越困難。
毫無疑問,如何人工實現這一過程是極具挑戰性和應用前景的一項工作,計算機視覺也因此而應運而生。計算機視覺是研究用計算機和成像設備來模擬人和生物視覺系統功能的技術學科,其目標是從圖像或圖像序列中獲取對外部世界的認知和理解,即利用二維圖像恢復三維環境中物體的幾何信息,比如形狀、位置、姿態、運動等,并能描述、識別與理解。
計算機視覺的基礎是各種成像設備,例如CCD(Charge Coupled Device )攝像機(數碼相機屬于此類型)、紅外攝像機、醫學上常用的核磁共振成像、X射線成像等,這些設備不僅可以成像,還可以獲取比人眼更豐富的圖像,人們可以形象地把攝像機看成計算機視覺的視網膜部分。可以說從人類拍攝出第一幅圖像開始,就為計算機視覺的誕生奠定了基礎。
而計算機視覺的核心是數字電子計算機,其發展可謂突飛猛進,在計算和存儲能力上,人腦已經無法與之相比,人們的目標就是利用計算機非凡的計算處理能力來代替人腦實現對圖像的理解,而計算機日新月異的發展也使得這一愿望越來越成為可能。
用于指導“計算機”這個大腦運作的核心是計算機視覺的理論方法,計算機視覺使用的理論方法主要基于幾何、概率和運動學計算與三維重構的視覺計算理論,它的基礎包括射影幾何學、剛體運動力學、概率論與隨機過程、圖像處理、人工智能等理論。 在20世紀70年代,視覺研究大多采用模式識別的方法;80年代,開始采用空間幾何的方法以及物理知識進行視覺研究;90年代以后,隨著智能機器人視覺研究的發展,引入了許多新的理論與技術如主動視覺理論、不變量理論、融合技術等,并應用于許多計算機視覺系統中。
研究計算機視覺,不得不提的是英國已故科學家戴維?馬爾(David Marr),他在計算機視覺發展史上可謂寫下了濃重的一筆。在20世紀70年代末,他提出了第一個較為完善的視覺系統框架,即計算視覺理論框架。他認為視覺是一個復雜的信息處理過程,并有不同的信息表達方式和不同層次的處理過程,而最終的目的是實現計算機對外部世界的描述。由此,他提出了三個層次的研究方法,即計算理論層、表征與算法層以及實現層。并且設想出了自下而上,沒有反饋的視覺處理框架,他認為視覺的主要任務是獲得物體的三維形狀,并把獲取過程分為三個階段,即原始基元圖(primal sketch)→2.5維圖( 2.5dimensional sketch)→3維模型表示。其中,基元圖由二維圖像中的邊緣點、直線、曲線、頂點等基本幾何元素或特征組成;2.5維圖是指對基元圖進行一系列處理運算,推導出可見表面的朝向、輪廓等幾何信息,是在觀察者坐標系下描述的部分的、不完整的三維物體形狀(另一部分是物體的背面或被遮擋的部分);3維模型表示則描述物體坐標系下的各種形狀及其空間組織。
迄今為止,研究者們在Marr計算視覺理論框架下,進行了大量的研究,并取得了豐富的成果,最矚目也最完善的成果當屬基于幾何方法的計算機視覺理論體系。
圖1 攝像機成像的針孔模型
日常生活中最常用的成像設備-數碼相機的理想成像模型是針孔模型,很多視覺研究內容都是在這種模型下進行的。如圖1所示,可以看出:景物點、針孔、景物點的像三點共線。為了方便起見,通常認為圖像平面在針孔的前面,即虛擬圖像的位置,除了是相互倒立的外,二者是完全等價的。利用成像設備,獲取了圖像,這時圖像點的位置已經確定,如果針孔的位置也可以確定的話,那么根據三點共線的約束,可知景物點一定在這條射線上,但是這條射線上的每一點成像都是相同的,所以僅從一幅圖像是無法確定景物點距離攝像機光心(即針孔位置)的深度的。這樣,若再有一幅包含上述景物點的圖像(同一景物點在不同相機下的像稱為一對對應點),則存在另一條射線,兩條射線相交,從而可以確定出景物點的空間位置,如圖2所示,對于兩幅或多幅圖像上的每對對應點都進行類似的處理,則可獲得物體的三維形狀信息,如圖3所示。這種由兩幅或多幅兩維圖像恢復物體三維幾何形狀的方法,即是立體視覺方法,這一過程就是三維重建。其間包含了許多步工作,例如特征提取、匹配、攝像機標定、運動估計等,每一步都凝結了眾多研究者的心血,并取得了大量優秀的研究成果,像Canny邊緣檢測算子,Harris角點檢測,Tsai塊標定,張正友的平面模板標定等。
圖2 立體視覺
圖3 兩幅圖像的三維重建
在Marr計算視覺理論框架下,觀測者(計算機)只是被動地分析獲取的靜態圖像,并不對成像設備(攝像機)做任何控制,這使得許多視覺任務(如識別、導航等)難以完成。可以想一下人類的視覺,人們在看的時候,眼球通常不自覺地或半自覺地跳動或轉動,這說明大腦在主動且交互式地接受外界的信息。因此,有學者提出了主動視覺、有目的的視覺、定性視覺等理論,但主動視覺的研究往往與有目的的以及定性視覺的研究結合在一起。在主動視覺系統中,攝像機的狀態參數如焦距、縮放、聚散度都可以控制,加之具有可以精確控制的平臺,使得許多不適定的視覺任務變為適定的。圖4為一主動視覺平臺,下方是一小車,最上方是兩個攝像機,計算機可以控制車和攝像機的運動、調整攝像機的注視點,并通過精確控制平臺的運動,可以獲得攝像機的運動參數,從而使一些原本是非線性的問題變成線性問題,提高了計算速度和準確性,這對實時地獲取外界信息并做出反應(如避障)是非常重要的。
圖4 主動視覺系統平臺
除了重建,視覺的另一個任務是識別。其基本方法是首先建立物體模型,然后使用各種匹配算法從圖像中識別出與物體模型最相似的物體。這里,就用到了先驗知識,即識別前,物體模型需事先存儲在計算機中,這是很顯然的事情。平常人們能從圖中認出事物,是因為大腦對它們的特征有了事先的認識。在物體識別中,“假設檢驗”是一種很重要的識別方法,又稱為基于模型的識別方法,如圖5所示。從圖像進行重建人們已經粗略地作了介紹,用其重建出的部分模型與模型庫中的物體模型作比較,方法是先“假設”,后“檢驗”,即假設待識物體是模型庫中的某個物體,然后為了減少匹配時間,只利用部分幾何元素來判斷它們是否匹配,如果不匹配,則改變假設;反之,則用其他幾何元素在圖像中對該匹配做“檢驗”,以此來判斷是否需要再修改假設,并重復上述過程。因此,這是一種自下而上與自上而下策略的結合。
圖5 假設檢驗方法
可以看出,識別過程涉及了視覺中從低到高所有層次,它是當前計算機視覺領域最困難但也是最活躍的領域。之所以困難,可以借用宋朝著名詩人蘇軾的一首詩概括:“橫看成嶺側成峰,遠近高低各不同”,這說明同一事物,因觀測的角度不同甚至會產生截然相反的圖像,但是即使同一幅圖像,也可能有天壤之別的感受,如圖6所示,左圖中看起來凹的,而右圖像是凸的,但是這是同一幅圖像,只不過倒置了一下,但卻讓人們看到了如此有趣的現象。
圖6 一對倒置圖
由于計算機視覺系統發展遭遇到眾多瓶頸問題,如:圖像分割的不穩定性、二維圖形到三維立體的病態問題、機器缺少大規模并行處理能力等,使得現有的計算機視覺系統在識別能力、實時性上與人類視覺相差甚遠,更不可比擬的是,選擇性注意的能力,即人類視覺分分秒秒都在接受外界的信息,但是人們并不會對所有的信息都處理,而是對很多都會“視而不見”。從總體的理論研究和應用角度來說,國內外在計算機視覺的研究水平還是處于起步階段,目前還沒有一個完整的理論體系能統一和解決所有的計算機視覺問題。
圖7 工業機器人識別和定位零件系統示意圖
圖8 Rocky7
雖然困難重重,然而計算機視覺技術正在蓬勃地發展著,且已經有了廣泛的應用。例如:零件識別與定位,圖7是一個具有簡單視覺的工業機器人系統示意圖,其視覺系統由一個位于零件傳輸帶上方的攝像機和相關的視覺信息處理系統組成。為了有利于視覺系統將零件從傳輸帶上分離出來,并進行識別和定位,可以選擇與零件顏色差別較大的傳輸帶。由于工業環境的結構、照明等因素可以嚴格地控制,使得這種機器人視覺系統在工業生產和裝配中得到了成功的應用;再如,移動機器人導航,圖8是美國NASA/JPL開發的Rocky7火星探測移動機器人,在其后部、前部及桅桿上都安裝了一對黑白CCD攝像機,另外,在桅桿上還安裝了一個用于近距離成像的攝像機。借助于這些視覺系統,Rocky7可以進行障礙檢測、自身車輛檢查、挖掘/傾倒核查等任務;其他的象安全鑒別、監視與跟蹤;運動分析;工業產品、農作物生長及食品檢測;智能交通系統;娛樂等。更可喜的是,在我國,指紋識別已達到實用階段,人臉識別也已研究成功。
目前,基于內容的圖像數據查詢、基于內容的圖像自動索引等成為很熱門的研究和應用課題,可應用于數字圖書館、體育圖像自動分析、運動物體自動跟蹤等系統,根據物體的二維圖像提取相應的特征不變量進行識別和分類也是一個十分重要的研究方向。同時,三維物體識別也開始進入了實用階段。可以看到,視覺技術在如此多的領域都已經成功地得到了應用,而且越來越貼近生活,雖然這些還只是計算機視覺研究與應用的冰山一角,只是邁出了萬里長征的第一步,但人們有理由相信有一天計算機會擁有人一樣的視覺識別和理解能力,為人們帶來精彩的生活。
參考文獻:
[1] 馬頌德, 張正友. 計算機視覺: 計算理論與算法基礎[M]. 科學出版社, 1997.
[2] 賈云得, 機器視覺[M]. 科學出版社, 2000.
[3] D.馬爾著, 姚國正, 劉磊, 汪云九譯. 視覺計算理論[M]. 科學出版社, 1988.
[4] 朱淼良, 計算機視覺[M]. 浙江大學出版社, 1997.
[5] D. A. Forsyth, J.Ponce著, 林學