上篇文章討論了“人工的機器視覺”和“機器的機器視覺”,本文重點討論如何才是“機器的機器視覺”,“機器的機器視覺”與傳統的“人工的機器視覺”相比具有哪些特征和特點,以及“機器的機器視覺”研究的最終目標和實現路徑等話題。
(一) “機器的機器視覺”的目標
現在讓最有想象力的科學家來談談“機器眼”,估計也不會超出人類眼睛的范疇。讓機器人擁有一雙智慧生物一樣的眼睛,是從事機器視覺技術的科研人員夢寐以求的目標。如果說拿人眼的功能作為“機器眼”的遠大目標,估計沒有人會提出反對意見,而且,拿人眼來做比較和類比,更容易解釋和理解。
讓我們從機器視覺的角度來討論一下人眼的非凡功能,并且用這樣的功能來要求一下“機器眼”。我們可以設想一下,能否也讓機器人有一雙智慧生物一樣的眼睛?我們目前的機器視覺技術與這樣的功能要求還有多大的差距?如果有一些可能的話,未來我們如何向這樣的目標努力?
用機器視覺的指標來對人眼的功能進行類比的話,從“感”的角度來說,人眼的視覺細胞為1億多個,可以隨時自動根據被視物體的距離自動調整焦距,根據亮度自動調整瞳孔(光圈),人眼的色彩感知相當于目前的彩色相機,視覺反應范圍水平約120°,垂直約115°,還可以方便的360°旋轉。從動態響應的指標來說,人眼可感知的變化大約為24次/秒。采用雙眼成像在大腦合成彩色三維立體圖像……
在機器視覺“感”的方面,在單項指標上基本能夠達到人眼的水平,而且在某些方面的性能完全超過人眼,例如:顯微鏡對于微觀物體的觀察、望遠鏡對于宏觀世界的觀察、超聲波和紅外成像、高速攝影、精確測量、大容量長時間的視覺記憶,等等……以上這些領域內,機器視覺的某種表現已經遠遠超出人眼的視覺能力。
雖然機器視覺在“感”的方面,單項指標可能超過人眼,但在綜合能力上存在巨大的差距。這些差距突出表現在三維高速被動視覺感知的功能上面,同時,人眼所具有的高速、高分辨率、高動態、高適應性、全自動、全自主、低功耗、精巧的結構等等,在這些方面,機器視覺難以企及。
從“知”的角度來說,人類的雙眼與大腦通過視神經緊密相連,在看到物體的同時,通過大腦的解算,可高速、低功耗地得到物體和外部場景的彩色三維高分辨率圖像,能夠對視場內的物體自動進行空間分離,得到物體位置、尺寸、紋理、色彩和運動狀態的詳細特征和屬性,能夠根據物體視覺特征快速獲取被視物體的名稱、類別和分類等等屬性信息。這樣的“知道”的能力,對于機器視覺來說望塵莫及。目前機器視覺在“知”的能力上,只有在特定場景下對特定物體通過專業編程才能夠具有一些初級的“知”的能力。
綜合分析,現有的機器視覺與人眼的最大的差距表現在以下三個方面,它也是未來“機器的機器視覺”的努力方向和奮斗的目標,是真正“機器眼”的最終定義:
1、被動式、實時、高精度、低功耗的三維圖像生成能力;
2、被視物體和場景的空間及運動的快速感知和識別能力;
3、所見即所得的自動視覺學習、歸納、總結的能力。
以上三個差距暨三條奮斗目標,借用微軟亞洲研究院童欣研究員關于機器視覺的目標論述,總結為:“everyone”、“everywhere”和“everytime”的三維成像。
“everyone”就是“機器眼”完全的自動化、模塊化和標準化。無需復雜的圖像處理編程和專業系統設計,像通用傳感器一樣,其輸出可直接用于三維圖像顯示以及后續的智能分析和判斷,無需專業圖像工程人員的參與。“everyone”意味著這樣的機器視覺手段任何人都可以使用,可直接應用在各類無人汽車、無人機、智能機器人等智能設備上。
“everywhere”就是說“機器眼”應該像生物的眼睛一樣,采用被動式光學成像原理,無需借助外界輔助光源和其他輔助手段,無需人工干預包括調整光圈、調整焦距、手工對焦,無需借助于輔助照明、激光、紅外光、結構光、預處理和標定等輔助手段,能夠自動適應復雜場景和環境變化,能夠在任意環境和條件下,自動地完成成像和視覺感知。
“everytime”的意思是隨時隨地都可以完成的成像和視覺感知。強調的是及時和實時性以及簡單可靠,計算時間需要滿足使用中的要求,不能有太多的延時和拖延,計算設備不能過于龐大,可便攜,便于連接和隨時隨地能夠投入運行。
所以,對于什么是“機器的機器視覺”這樣一個問題,我們可以給出一個總結性的答案,“機器的機器視覺”就是要像智慧生物的眼睛所具有的視覺功能一樣,不論在任何環境下、任何人(機器)、任何時間都可以自動獲取外界的屬于視覺功能要求范疇內的東西,并且從機器的視覺角度出發,對這樣的東西自動生成機器在視覺范疇上的認知和理解。
(二)“機器的機器視覺”的實現路徑
從上述“機器的機器視覺”的三個遠大目標來分析,可以劃分出兩個類別,一個為“視”和“感”,另一個是“覺”與 “知”?!皺C器的機器視覺”的第一個目標——被動式、實時、高精度、低功耗的三維圖像生成能力屬于“視”和“感”的范疇,它的第二個和第三個目標屬于“覺”和“知”的范疇。
以上三個目標并非并列,而屬于逐層遞進的關系。“視”和“感”是“覺”和“知”的前提條件,只有完成“視”和“感”才能實現“覺”和“知”,才能完整地稱為“視覺”和“感知”,只有通過對外界世界大量和充分的“覺”和“知”,才能最后形成對世界萬象的視覺歸納、總結,最后實現機器對外部世界的“理解”。
所以,對于“機器的機器視覺”的三個遠大目標,在技術上必須采取分步實施的方式逐步完成。其實現路徑就是:首先要求依靠“機器眼”,使機器能夠完整、客觀、快速、準確地接收外部世界的視覺信息。當機器獲得了這些信息后,接著對其進行自動加工和處理,得到關于外部世界的視覺模型;依靠這樣的模型,機器得到對外部世界的視覺記憶;通過對視覺記憶的比較、分類、整理,得到機器對外部世界的客觀“視覺”感覺;通過不斷輸入的大量的客觀“視覺”感覺,依靠學習和分析最后達到對客觀世界的“視覺理解”。以上這個過程,就是“機器的機器視覺”的實現過程和路徑。
這樣的實現路徑,可以用幼兒睜眼看世界來做個類比。我們可以設想當幼小的孩子第一次看到蘋果后的一系列反應:他通過眼睛看到了蘋果的圖像,按照人眼的功能,他可以看出蘋果的外部形狀和大小尺寸,看到表面顏色和紋理,當聽到父母把它稱為“蘋果”時,當他吃到“蘋果”時,他關于“蘋果”的視覺記憶以及相關的屬性和概念記憶就初步成型了。當再給他一個梨的時候,如果沒有父母的提醒,八成他會把梨當作蘋果,當父母再給出“梨”的概念后,他就會形成關于蘋果和梨在視覺上的區別化記憶。這樣的過程,與當前流行的建立在龐大數據集上的機器視覺學習存在根本的不同,我們可以稱為“一次性示范學習”,或稱為是建立在物體準確的空間幾何模型上的視覺感知、學習和理解。
(三)三維圖像生成能力是實現“機器的機器視覺”的前提
對于三維圖像生成能力是實現“機器的機器視覺”的前提這樣一個命題,我們是根據智慧生物的眼睛的功能簡單的進行類比而得出的,這樣的命題如果不做出令人信服的論證,相信許多人會提出反對意見,特別是對于如今火熱的機器視覺學習專家來說,難以接受。因為,基于二維圖像上的機器視覺學習,已經解決了大量的機器視覺的問題,包括:機器認字、機器識別雙胞胎、機器視頻檢測、網絡圖像分類等等,而且隨著技術發展,大量的機器視覺問題都會得到逐一攻克。所以許多人就會認為既然二維圖像已經解決了大量的機器視覺問題,我們有什么必要去費力地把圖像由二維變成三維呢?既然三維圖像生成能力是實現“機器的機器視覺”的前提,是否說沒有三維圖像就實現不了“機器的機器視覺”了呢?
對于采用二維圖像最終能否實現“機器的機器視覺”這個問題,很難簡單的回答,但如果我們換一個角度來思考,假設我們能夠得到一張理想的三維圖像,同時把機器學習建立在三維圖像的基礎上,那么是否可以拋掉對大量圖像數據集的學習,實現一次性的示范學習呢?同時,如果把機器視覺建立在三維圖像的基礎上,是否能在機器的視覺感知和理解上帶來意料之外的好處呢?
對于三維圖像生成能力是實現“機器的機器視覺”的前提這樣一個命題,我們嘗試從以下幾個角度來進行討論:
1、二維圖像是三維客觀世界在平面上的投影,單幅二維圖像的信息,不足以完整、快速、客觀的反映真實世界。
讓我們來分析一下為什么幼兒可以通過“一次性示范學習”快速形成對事物的視覺認知,而目前的機器學習必須建立在龐大的數據集上。
我們認為最主要的原因,在于幼兒的視覺是對于空間景物的三維真實感知,是對客觀世界的充分和完整的反應,只有在視覺信息建立在真實和客觀的前提下,才能保證他的視覺能夠快速客觀的對外部世界做出準確的感知和反應。
當前視覺領域的機器學習,需要海量的平面圖像數據集以及強大計算能力作為支撐,是因為二維圖像是三維客觀世界在像平面上的一個投影,這個投影過程遵守針孔成像原理,存在近大遠小的透視定律,這樣的投影方式必然造成成像后的圖像失真。用信息論來解釋,就是在用二維圖像獲取客觀真實世界的信息過程中,信號出現了衰減和干擾,噪聲信號淹沒了一部分真實信號。而機器學習的過程,就是從二維圖像信息中提取三維世界的真實信息的過程,從大量含有噪聲的信息中進行分類統計,還原出三維空間的真實客觀存在,而且還原后的信息也不是一個明晰的幾何具像或信號,其中的判斷過程還是一個黑箱過程。
2、三維空間幾何的直觀、清晰、準確、可計算、可測量性直接消除了平面圖像視覺信息的歧義,不用辨別和判斷,僅依靠基本的幾何和紋理特征,不用通過大量學習過程,就可以實現直接分類,達到和實現視覺上的感知和理解。
從幾何學角度分析,三維客觀世界的空間分布是可以被直接、直觀觀察的,是可以通過幾何分析進行精確描述的。通過三維建模,可從物體的形狀、大小、位置、紋理、空間分布、光反射性能等直觀給出物體的屬性和分類,這種直觀和直接的觀察和描述是客觀真實的、精確的、非離散連續的、幾乎是無歧義的,可以實現被視物的精確判斷和分類。所以,“機器眼”的三維能力對于下步的視覺識別和視覺理解十分重要。
用智慧生物的眼睛功能來類比,幼兒之所以可以實現“一次性示范學習”,是因為人的雙眼圖像,經過非凡的人類大腦進行運算后,能夠準確地解算出外部世界真實的三維面貌。對于幼兒來說,根據物體的空間分布狀況及其邊緣輪廓和表面紋理信息可以清晰地、輕而易舉地對視場范圍內的物體進行背景分離;根據物體外形形狀、大小尺寸、表面紋理和顏色,能夠準確的對被視物體基本視覺屬性進行識別和確認;根據物體在不同時間段上的空間位置或尺度的變化,能夠快速得到物體關于運動和軌跡方面的趨勢和屬性判斷。由于幼兒擁有這樣的三維視覺能力,他對于周圍空間及物體的認識是真實、客觀和全面的,一個幼兒在成長過程中,當大腦不斷得到長期的、準確的、海量的視覺信息充實以后,對于物體和場景的視覺屬性的分類和識別就變成順理成章的了。
再對照看一下當前的機器視覺學習技術現狀。由于不具備很強的三維能力,一般采用二維圖像的處理來解決視覺理解問題,其過程復雜,而且還需要大量的個性化技術處理。將不同物體在平面圖像上的投影在空間上分離,就是一件復雜的技術問題。再根據平面物體的邊緣形狀或紋理判斷物體的類別,根據類別和平面投影的位置判斷物體的距離和大小,還原出真實的三維世界,技術上難度逐步增大。再要讓建立在這樣二維圖像上的機器視覺達到對真實世界的理解和認識,幾乎是難上加難。
所以,綜合以上分析,三維圖像生成能力是實現“機器的機器視覺”的前提。
(四)如何讓機器具有
自動高速的三維圖像生成能力
既然三維圖像生成能力是實現“機器的機器視覺”的前提,那么,這樣的技術是否存在?如何讓機器具有自動和快速的三維圖像生成能力呢?北京清影機器視覺技術有限公司通過完全自主創新,自行開發完成“通用式三維即時成像技術”,研制成功具有通用視覺的三維“矩陣相機”。目前,該“矩陣相機”首先實現的是自動三維“感覺”,在秒級以內自動獲得被視場景的三維影像,其下步的目標就是“知道”。我們今后的目標,就是依托“矩陣相機”的自動三維視覺傳感能力,最終實現“機器的機器視覺”。關于清影公司的“矩陣相機”的相關技術,我們在下面的系列文章中進行詳細介紹。
我們的一小步,機器世界的一大步……