格靈深瞳 CEO 趙勇深度總結:揭開國內智能安防與人臉識別的真實現狀
AI 技術的成熟,使得由人工智慧來自動消化海量監控視頻數據成為可能。目前,人工智慧已經逐步滲透到安防行業,最終將會把以視頻網路為核心的安防產業,重塑為以結構化數據為核心,以精確情報生產為目標的智慧物聯網產業。
作為智能安防的先行者,格靈深瞳在近 4 年間推出多款應用於安防的 AI 產品,包括基於三維計算機視覺技術的皓目行為分析儀、基於結構化數據的威目視圖大數據分析平台、威目車輛特徵識別系統、威目人臉識別系統,以及全新產品深瞳人眼攝像機。
在這期雷鋒網硬創公開課上,格靈深瞳 CEO 趙勇博士基於自己多年的研究和行業經驗,深入分享 AI 技術將怎樣以智能硬體、大數據挖掘和物聯網的形式,深刻地變革整個安防行業。
嘉賓介紹
趙勇,格靈深瞳 CEO,布朗大學計算機工程博士。
趙勇博士曾供職於谷歌總部研究院,任資深研究員。他是安卓操作系統中圖像處理架構的設計者,也是谷歌眼鏡(Google Glass)最早期的核心研發成員,與此同時,他還負責探索谷歌未來針對高性能圖像分析處理的雲計算架構設計。回國後,趙勇博士於 2013 年 4 月創立格靈深瞳。
本次公開課包括以下內容:
基於人工智慧的最先進的人臉、人體和車輛識別技術
安防產業為什麼需要智能硬體
基於仿生原理的人眼相機,是怎樣實現大場景、遠距離人臉識別的
當前的人臉識別技術,在解決實際安防問題過程中面臨的挑戰
深層大數據挖掘在人工智慧物聯網中的意義
公開課視頻:共 95 分鐘。
註:本次公開課中,趙勇博士展示大量生動的案例和視頻,並回答多個網友精彩問題,所以推薦優先觀看視頻。
大家好,我是格靈深瞳的創始人趙勇。
很高興在雷鋒網的硬創公開課上與大家交流,給大家分享人工智慧在安防監控中的一些機會和經驗。
一、傳統安防的現狀和急需解決的問題
安防監控行業大家可能是既熟悉又陌生,如果你不是這個行業的從業者,對你來說布滿攝像頭的整個街道便是安防監控最重要的一種表現形式。中國是全世界最大的安防市場,十幾年前國家就開始建設平安城市體系,這個體系基本決定了中國安防行業的組成和現狀。
1.傳統安防行業的現狀
從產品角度講,平安城市的建設會布置大量攝像頭,這些攝像頭產生大量錄像數據。大量錄像機背後有著龐大的視頻網路,而這些影像數據需要傳到監控中心。在監控中心,人們幾乎可以看到任何地方的視頻。
在中國平安城市建設里,大多數攝像頭都已實現了數字化和網路化。如果想要了解中國的安防行業,我覺得可參考一下全世界規模最大的安防企業海康威視官網。我發現一件特別有意思的事,當我打開海康威視的官網時,他們這樣定位自己:
海康威視對自己的定位是:以視頻為核心的物聯網解決方案提供商。
以視頻為核心是一句很精確的話。在今天的安防監控行業里,幾乎所有組成都是以視頻為核心:攝像頭是視頻的生產者,錄像機是視頻的存儲者,網路是視頻的傳播者,監控中心是視頻呈現的地方。
海康威視的產品欄有網路攝像機、模擬攝像機、數字攝像機、攝像機配件,顯示與控制產品、存儲產品、傳輸產品、編解碼產品、完全是以視頻為核心的。
目前國內物聯網規模已非常巨大,一位硬碟公司的朋友告訴我,他們公司生產的硬碟,每兩塊就有一塊進入了安防行業。
以北京為例,屬於政府和社會公共機構的攝像頭總數超過 200 萬個,這些攝像頭和我們手機攝像頭不一樣的地方在於它每分每秒都在保持錄像,它每天就會產生長達 200 多萬天的錄像,摺合成年就是 5000 多年。
所以我們整個安防體系,從攝像頭到存儲都是一個擁有極大數據量的網路。這個網路的數據是由誰生產?當然是攝像頭生產的。但這些數據是由誰消費呢?大家想想這個問題。
在我們當前的安防監控視頻網路上,唯一的消費者就是監控中心裡的工作人員。簡單來說就是警方,他們在破案時會去查看很多錄像,個數據生產的速度遠超過數據消化的速度,這就導致今天安防監控行業的一個主要矛盾:我們產生了太多的視頻,可這些視頻卻沒辦法消化。
《速度與激情 7》裡面有一個場景,這個場景就是里有個非常強大且神秘的技術系統。
這個系統可從全世界所有的監控攝像頭裡面自動搜索和跟蹤任何目標。好萊塢顯然對視頻安防行業了解甚少,觀眾也以為今天的 FBI、CIA 以及國內的公安局都已經開始用這樣的體系,但現實並不是這樣。
當今全世界的安防監控體系自動化程度離電影描述的場面相差非常遙遠。
2.急需解決的問題:把普通視頻數據變為有意義的「情報」
我們現在來看一下今天的視頻安防網路,如海康威視所描述:它是一個以視頻數據為核心的網路,這個網路產生了大量的視頻數據。
那麼這些數據需要誰去消化呢?當然需要人去消化,通過人工分析得到有意義的情報。
客戶需要的永遠是有意義的情報。無論它是出於對安全因素破案,還是因為管理因素希望了解這個城市裡發生的一些事情,這些均是有意義的情報。在《速 7》中呈現了幾個技術細節,如人的檢測、人臉識別、車輛識別、車輛跟蹤等等。這些情節在兩、三年以前,每項功能和精確度並不是很高。但隨著人工智慧技術,尤其是深度學習的成熟,現在車輛識別、人臉識別這些基礎模塊的性能、精度已大大提升。
目前以視頻數據為核心的安防監控體系,其實給客戶帶來了大量的麻煩。因為你產生了非常多的數據,把這些數據放在客戶跟前,然後尋找線索,這好比大海撈針。所以整個行業都把希望寄托在智能化上,所謂智能化就是能夠把人工智慧引進來,把所有的視頻數據除了人以外,引進人工智慧 Consumer,能自動把這些視頻數據裡面的內容和目標變成結構化數據。
何為結構化數據?
結構化數據就是數據能夠直接表達目標的性狀、屬性以及身份。
這種數據可以大規模去檢索,大規模地分析、統計。智能化是希望 AI 能夠變成以視頻數據為核心的物聯網裡面,這些數據的 Consumer,這時候 Consumer 的 Output 就是結構化數據。
結構化數據也不能直接拿來使用,因為這些數據一旦實現了大規模結構化後,數據量仍舊非常龐大。
我們來想這麼一件事,我個人對物聯網的理解就是當互聯網發展到一定程度,它的網民就不僅僅是人了,有很多設備也與人一樣屬於互聯網。這些設備會自動產生數據,有一些設備會自動消化數據。
在安防監控網路上,數據的產生者是攝像頭、錄像機。數據的消化者是人工智慧和人。
但是當人工智慧把這麼多的錄像轉變成結構化數據後,就會產生一個新的數據海洋:結構化數據海洋。如果數據沒有經過很好的挖掘,那它也不是有意義的情報。
結構化數據目前已經可以使用非常成熟的手段去挖掘,這個過程中會有一些非常淺度地挖掘、簡單的篩選:比如黑名單。檢測到一輛車時,車牌號碼是一個嫌疑犯車牌號,當我檢測到車牌號碼時,這輛車就被後台預警。
再比如說我要檢測一個人:假設我有一張逃犯的照片,當我在某個地鐵站的攝像頭裡看到一個人長得像這個逃犯時,它可能就變成了一個有意義的情報。
在醫院裡也可以有一個非常淺度的挖掘,如在醫院會發現有些人來鬧事,它可以把這些人提前放在「醫鬧庫」里。當這些人來到醫院時,醫院的保安就能第一時間得到警告。
事實上還有很多挖掘是比上述的挖掘複雜得多,比如醫院挂號的地方有很多號販子,這些人擾亂了醫院的服務的秩序,如何把這些號販子找出來?怎樣能夠挖掘出號販子和普通正常病人的差別?這裡就要對號販子的行為做一些分析,從大量的人臉數據和行為數據中自動把這些特定的人員挑選出來。
除此之外,還有一件有趣的事,當人工智慧產生大量的結構化數據後,會有大量空間需要去做針對應用的數據挖掘。因為以前在沒有結構化數據時期,不同客戶使用的攝像頭和錄像機都是標準設備,他只要看到畫面就行。它從畫面里觀察得到的信息如何體現到它的業務內容,這些事情需要人去做的。
當今天這些數據變成了結構化數據以後,在不同行業、不同場景要有大量的數據挖掘應用才能夠有效地把結構化數據變成有意義的情報。
所以我認為未來人工智慧在安防監控行業會有大量應用軟體的市場空間,為各個垂直行業去做針對性的數據挖掘。
二、圖像識別在垂直安防行業的成果
我們給大家簡單地展示一下圖像識別技術在一些不同垂直領域的應用成果。
1.已經成熟的車輛識別
現在下面視頻是利用深度學習演算法開發的車輛大數據結構化引擎。
從畫面可以看到每個交通單元中,無論是機動車還是非機動車都可被檢測與跟蹤,對應每一個目標的屬性也會被識別出來:可以檢測出車牌號碼、生產商、型號、年檢標的狀態,甚至具體是哪個年份的型號也可以被識別出來。
車輛識別問題在今天看來已經被解決了,車輛是一種非常特殊的目標,因為它有著一個獨一無二的 ID:車牌號碼。合法車牌號碼具有唯一性,一旦把車牌號碼識別出來整個問題就比較好解決。
從去年開始,車輛大數據產品已被很多廠商推出,未來也會越來越普及。
這裡面有一個重要的機遇,道路上客戶的攝像頭分 3 種:電警、卡口、監控攝像頭。
所謂電警和卡口,通常是在十字路口或者高速公路的進出口上搭了一個龍門架,或者有一個裝了攝像頭的架子。
這些攝像頭使用了很高的解析度,角度也非常合適,它可以在正面增加識別的成功率。但是像電井和卡口這樣的攝像頭,它只佔整個道路周邊攝像頭數量的很小一部分。以北京為例,電警和卡口攝像頭的數量佔道路全部攝像頭數量的千分之一左右。
還有更多攝像頭是普通的視頻監控攝像頭,這些攝像頭數量很多,解析度也不是特別高,因為它們要錄製視頻。一般在安裝的時候都是為了監控整個大場景,所以視場角較大,視場角變大的壞處就是針對每一個目標它所能夠分配的像素數量會降低。
這個時候,監控視頻里看到很多目標並不是很清晰:沒有補光、照明不夠、圖像模糊現象很嚴重。如何在這種低質量的數據、不理想的環境下仍然把視頻識別做好?這在某些方面決了定我們能否把道路監控大視頻、大數據這個事情做好,這一領域的產品其實還有很多的改進空間。
當基礎數據被識別出來後,基於這些數據就可做各種各樣的大數據分析。以格靈深瞳為例,我們開發了一個車輛大數據的平台叫威目大數據平台。
給大家做一個非常簡單地演示,我們在客戶的現場選擇了一些攝像頭,之後選擇一個區域。然後就可以搜索一些不同品牌的車,比如奧迪、寶馬等等。在搜索「奧迪」之後,你可以選擇其中任何一輛車然後看看它出現在了什麼地方、什麼時間,隨後可在地圖裡做進一步搜索。
大家可以想像,當我在一個空間里能夠得到很多搜索結果時,這些不同結果的時空關係會為我們提供一個軌跡信息。這些軌跡信息會給我們更強有力的分析手段去分析一些人的行為,這裡面有各種各樣的戰法,所謂戰法就是警方客戶在破案或在分析一些數據時採用的一些不同的手段和流程。
2.人物屬性識別
剛才是車,我們現在來看一下關於人的識別。
這套視覺系統能夠對畫面里的行人和他的屬性結構化,也就是對人物的基本屬性做一些判斷:如性別、大致年齡、行李屬性、衣服顏色、衣服類型。如果可以看到正面的話,就可以看清他的有沒有戴口罩和戴眼鏡,有沒有留鬍子等信息。
這些信息其實跟人臉識別不太一樣,它是一種短效、對解析度要求不高時得到信息的一種途徑。
當我們很多人對安防監控不熟悉的話,就會覺得街頭上的安防監控攝像頭一定會把人臉識別出來。但事實上,今天絕大多數普通的安防監控攝像頭根本不可以滿足人臉識別解析度的條件。
首先它們的視場角往往設置的比較廣,第二是他們離人的距離比較遠。
在這種情況下,雖然可以看清這個人的外形,但要想看清他的面部,尤其想在面部區域得到一個比較高的解析度,至少是 80×80,或是 100×100,解析度高是提升人臉識別效果非常重要的因素。
當今街道上這些普通監控攝像視頻裡面,雖然看不清臉,無法做人臉識別,但是我們如果能夠從他身上得到他的其他屬性,也是很重要的元素。
舉一個例子,比如有一個小孩走失了,目擊證人提供的線索是看到一個穿著紅顏色衣服的中年婦女抱著這個孩子。那麼我們就可以根據上述提到的屬性去搜索:中年、女性、紅色衣服、抱著孩子,把這 4 個特徵輸到搜索系統當中,即可迅速地找到目標。
3.人臉識別
我們再來看下人臉識別,要想得到一個比較靠譜的識別結果,畫面的距離如下圖展示的這樣。
在這裡,我們聯通了一個普通的高清攝像頭。在這個攝像頭中我們特地選擇了一個焦距比較長,為 15 毫米以上的鏡頭放在一個辦公室的走廊頂端。我們發現,環境里差不多有效識別人臉的寬度最多為三米。當然也可以使用一些更長焦的鏡頭把識別寬度推到更遠的地方,或用短鏡頭把識別寬度放在離相機比較近的地方。但是無論你怎麼試,它真正有效的識別寬度也就三米左右。
通常我們得到一張低解析度的人臉,比如說 30×30 以下,那麼它在一個很大的資料庫里去做搜索的效果,肯定非常不理想。通常要求一個人臉最好是達到 100×100 個像素以上時,它的搜索結果就會非常精確,甚至可以在一個很大,如幾百萬、幾千萬人的資料庫里做有意義的搜索。
人臉識別技術在過去幾年進展非常大。和 3 年前相比,我們去看一個標準測試集時,錯誤率可能已經小了上千倍。我們訓練人臉模型時,尤其要注意光照、角度、表情問題,能不能夠去抗干擾。
視頻中大家也可以看到,人員自己去做一個挑戰,每一位員工在工作期間無論在辦公室里還是在外面的院子,都能被我們的人臉識別系統拍到很多照片。
我故意讓他們走到攝像頭跟前來做鬼臉,看看誰可以把臉做如此誇張以至於人臉識別系統會產生錯誤的識別。大家可以看到有一些人在做鬼臉,有些人在弄亂自己的髮型。
三、AI 應該用在前端還是後台?
未來智能化一定會在安防監控行業非常普遍且深入的發生,但它在實現時可放在不同的設備里,有時候可以把智能放在前端,如攝像頭裡,甚至錄像機里。也可以把一些智能放在後台的數據中心、伺服器上去運算,到底什麼樣的分配是一種比較合理的分配。關於這個問題,我想給大家分析一下。
1.把智能放在前端的好處
我覺得智能放在前端最大的好處是針對一個視頻流時,它所有的運算資源都專註於前端。放在前端有一個好處就是大量數據,用不著通過非常擁擠的網路傳到數據中心去。
我們要意識到安防監控網路上的數據都是視頻文件,它的碼流、數據量比其他任何形式的文件大很多。
你想像一下,如果你有一個千兆的乙太網,那麼這個千兆的乙太網能夠同時傳多少視頻?
一般來說,一個高清的視頻碼流都會到 2 到 4 MB,也就是說在一個千兆乙太網上,可能最多放個一兩百個視頻就會把這個網路全部佔滿,所以把智能放在前端的好處可以節省一些帶寬。
2.智能放在後台的好處
把智能放在後台的好處有點像雲計算,雲計算的一大優點是分享,我在後台可以用非常強大的硬體、非常複雜的軟體把識別性能做得非常好,因為人們對識別的精度要求永遠是無止境的。但這樣會導致對識別演算法、硬體要求比較高,如果放在伺服器里可以達到這個條件,同時分享給不同的前端。
其次,如果把這些設備放到後台,那麼它的演算法升級、運維都會比較可靠,不像前端攝像頭如果發生了軟、硬體故障。尤其是硬體的故障,維護會非常麻煩。
3.哪些功能應該放在前端攝像頭中
我個人是這麼看這個問題的,視頻裡面的檢測、跟蹤、去重:檢測就是對目標的檢測,跟蹤就是跟蹤這個目標在攝像頭裡畫面中的移動,去重就是我把它送去識別時,從多次的檢測中選一個比較好的視角去檢測,把很多重複的檢測去掉。
這 3 項內容特別適合也應該放在攝像頭裡面去做,為什麼呢?因為這些內容跟攝像頭畫面里到底有沒有目標是無關的。你如果不檢測也不知道有沒有目標。
這部分運算是隨著視頻流的啟動,一直需要開動,它不存在分享這件事。這樣識別應該放在這個攝像頭的前端來做。通過檢測、跟蹤、去重後,把識別的對象作為照片流通過網路傳到後台,這時候它已經是一個截屏圖像或者是截圖的一小部分,數據量很小。而且這個數據量和目標的多少,以及場景裡面活動的激烈程度相關:當人比較多時數據就多一些。當夜深人靜人比較少的時候,它就沒有數據。
這樣一來,把識別放在後台伺服器來做,就可保障識別精度做得更高。比對就不用說了,因為你每識別出一個物體,就要跟一些客戶的敏感目標庫做比對,看他是不是一個值得關注的對象。
近期,我在市場上發現了這麼一個跡象,早期很多客戶安裝了智能化產品,它的路數不是很多。所以很多時候就是把傳統的 IP Camera 和後台的伺服器直接連接起來,這樣早期的方式是可行的,但是他會給客戶的帶寬頻來很大的負擔。
4.哪些功能不該放在前端攝像頭攝像
當智能化產品進行推廣時,我相信這種方式很難快速進行。所以當下急需解決的事就是前端智能化。我發現有一些廠商試圖把識別和比對放在攝像頭裡去做,我認為這是有問題的,為什麼呢?你在攝像頭裡做識別,識別產生人臉特徵。由於每個公司各自的演算法不同,就要求客戶後台的比對系統只能對接這種特徵。這樣一來的話就給客戶帶來很大麻煩,假如我今年採購這個廠商的設備,那我的後台也需要依據這些設備來建設。
到了明年,我想採購不同廠商設備時,就會發現不兼容性。我認為圖片是最兼容的、供通行的數據,所以得從客戶的角度看待問題,識別演算法和比對不要放在攝像頭前端,回頭會給客戶帶來很多不靈活的負擔。
比對我覺得就更不應該放在前端,因為比對需要把客戶的核心資源對比庫放在攝像頭上,在很多公安應用裡面這些都是核心機密。你可以想像,如果有黑客攻擊了攝像頭就會從裡面獲取跟黑名單相關的核心信息。我認為核心信息應該永遠待在數據中心,待在客戶最核心的保密網路里,而非前端。這就是我對智能前端和後端分工的看法。
四、人臉識別的真實現狀
接下來我想給大家講講人臉識別的現狀和進展。
這裡面有一種分裂,怎樣一種分裂呢?
一些人工智慧公司宣傳,他們一般都會把人臉識別的性能吹得非常懸,說錯誤率已經達到億分之一的程度等等。雖然這是事實,的確有時候我們發現有一些識別錯誤率已經低於億分之一,但這是有前提的,譬如說靜態人臉識別:如擺拍等。
還有一種場景是門禁的應用,人們為了過一個通道,然後就盯著攝像頭,這時候成像條件都很好。但是對安防而言,更多時候被觀測的對象沒有意識到自己被觀測,它的角度也不是很理想,離相機也比較遠,光照也比較複雜。而且整個目標在運動中碰到照片時,它的人臉識別結果也完全不一樣了。
很多公司認為人臉識別已經做得很好,但另一方面,如果大家去調查一下如果使用了人臉識別,尤其是使用動態人臉識別的客戶,大多數客戶都認為誤報率太高,而且高到基本上這個系統就沒有辦法使用。
1.是人臉技術不好,還是大家在撒謊?
今天趁這個機會,我也想非常坦誠地跟大家分享一下這裡面的原因。到底是人臉識別技術還不夠好,還是大家在撒謊。
做人臉識別它的優點是速度快,一張顯卡每秒鐘可產生幾百張臉的特徵,完成數千萬張臉的比對,這個目前已經可以做到了。它的成本也低,使得這項技能可以快速複製、大規模地部署,性能很穩定且可持續提升。人工智慧的缺點是應對複雜問題應對能力差,除此之外是對環境變化的適應能力弱。
人類的智能跟人工智慧相比,幾乎是完全相反的。
人類智能的優點正好是人工智慧的缺點,人類對複雜問題的應對能力和對環境變化的適應能力很強,但缺點就是速度慢、成本高,比較難快速複製、不大可能大規模地部署、性能也不穩定(容易受到精神狀態的影響)。
2. 1 比 1 的人臉驗證
我們來看一下人工智慧的不同應用,先介紹下 1:1 的人臉驗證。
在金融支付領域裡面,有些公司開發的軟體幫助客戶去驗證用戶的身份。這類應用本質上是在回答一個問題。客戶的攝像頭拍一張照片,然後將照片傳到後台,後台知道驗證的對象是誰,並且有驗證對象的身份證照片。那麼它要回答的問題是「這兩個人是同一個人嗎?」,答案是「是」或者「否」。所以總共回答這麼一個問題。
3. 1 比 N 的人臉識別(靜態人臉比對)
我們再來看一下 1:N 的人臉的識別,也叫靜態人臉對比。
假如客戶選擇一張照片,然後他擁有 N 個人的對比庫。舉個例子,比如在某個省的公安廳,這個省有 5000 萬個有身份證的公民。這時候警方看到一個嫌疑人想調查這個人的身份,這個人是誰?
在做這件事情的過程中,事實上人臉識別就要回答很多問題。這個人是張三嗎?這個人是李四嗎?是王五嗎?然後它要回答 N 個問題,可能還有一個最困難的問題也就是第 N+1 個問題:這個人可能誰都不是。這就叫靜態人臉比對。很顯然,與人臉驗證相比,靜態人臉比對就是更為複雜的問題。因為它總共要回答的問題總數是 N+1 個,當這個 N 比較大的時候,問題回答的難度和出錯誤幾率就大大提升。
但靜態人臉比對使用的頻率比較低,只有當客戶要做一次搜索時它才會使用。它使用的場景允許用戶參與交互和確認。簡單說就像一個搜索引擎,我在搜索結果里挑一個我認為對的,或者是我把搜索結果呈現的前幾名看上去都很像,分別調查後能夠快速幫客戶縮小調查範圍。
這種產品在過去一、兩年內的推廣也比較快,而且可用性相對較高。
3. M 比 N 人臉識別(動態人臉比對)
我們再往下看來看一下 M 比 N 的人臉識別,通常這個叫動態認識。
何為動態人臉識別?就是客戶安裝的攝像頭每看到一個人後,就在一個庫里去比對這個人是誰,「M」代表的就是攝像頭,或者網路里所有攝像頭抓到的人臉數目。「N」 就是對比庫中的目標數目,抓到的每一張臉都得「問」一遍:這是張三嗎?是李四嗎,那真的是王五嗎?然後對於這個人你要問 N+1 個問題。對於看到所有 M 個人,問題的總數也就是 M×N+1 個。而且動態人臉使用頻率非常高,因為它是一個全自動體系。
以北京地鐵站為例,我聽說北京 1000 多個地鐵站裡面平均每站都有上百個攝像頭,如果這裡面 100 個攝像頭每個地鐵站流通 8 到 10 萬人是很常見的,可能在一些比較繁忙的地鐵站有上百萬人。
對於看到的每一個人都要回答 N+1 個問題,如果這個 N 是一個很大的庫,比如是一個擁有十幾萬人的全國逃犯資料庫,這就是一個天文數字。而且在這個使用場景中,它不存在用戶交互,客戶期待你最後產生報警,而且這個警報是值得信賴的。
我們先來看一下這個問題:
一台動態人臉抓拍機每天產生以下問題:首先假設每個相機每天看見 1 萬張臉,在很多公共場所這並不是一個很誇張的假設。
我們假設對比庫里有 1 萬個目標,這可能對公安來說也不是一個大的目標庫。如果基於該假設的話,這個相機每天要回答的問題就是一億零一萬個。如果人工智慧每回答 100 萬個人臉比對問題就犯一個錯誤,那麼每一天在每一台相機上就會犯 100 個錯誤,也就是產生 100 個誤報或者漏報。
我剛才假設每回答 100 萬個問題才會犯一個錯誤,其實也是非常誇張的假設,因為在動態人臉識別里,很多時候人的面孔角度是不理想的,解析度也不一定很理想,光線可能也不是很好,還可能有運動模糊。
這種情況下,如果哪個公司真的可以達到百萬分之一的錯誤率,我相信已經非常優秀。我們想像一下,如果一個大客戶裝了 1000 台人臉識別相機,坦率來講 1000 台量也不是很大,跟今天城市裡已經存在的攝像頭數量相比並不多。
這時候系統每天要回答 1000 億個問題,如果人工智慧回答 100 萬個問題就會犯一個錯誤,那麼客戶每天就會收到 100 萬個錯誤,也就是 100 萬個誤報或者漏報。我們想像一下當一個客戶每天會收到 100 萬個報警時,他會怎麼辦?那它肯定會崩潰的,因為這個系統根本不能用。而 1000 台 1 萬個庫的目標,每個攝像頭每天看 1 萬個面孔,這些假設也根本不是一個很苛刻的假設。
4.人臉識別解決公共安全問題仍然微不足道
我們能夠意識到人臉識別儘管在過去幾年有著巨大進展,可以在金融領域做身份驗證,但它對解決公共安全問題來說是仍然微不足道的。
這個事實說明人臉識別技術不夠好嗎?我覺得也不盡然。人臉識別技術今天已確定超越人類。科學實驗數據稱,正常人最多能夠記住 500 張臉,有一些銷售等職業以及特異功能擁有者記住 5000 張臉也已經是極限了。
動態人臉識別的問題假如想像有一天在北京有 100 萬個動態人臉識別的攝像機,而北京有 3000 萬人口,在這種背景下,它每天產生的問題高達數以萬萬計。在這種情況下,發生錯誤的機率即使再低,但乘以這麼大的基數也會產生海量的誤報。所以這個問題的規模非常殘酷。
在這種情況下我們該怎麼做呢?
五、智能安防接下來該怎麼走?
1.人工智慧+人類智能
在此我推薦一種方法,就是海量的原始問題進來以後,先由人工智慧引擎回答,然後產生人工智慧的答案,但這些答案里的多數答案是錯的,這種情況下可以把這些答案交給專業人員去驗證。人類驗證的好處是當一個答案可以通過人類的驗證,結果對於客戶來說這個情報至少是值得關注的。
另外,那些沒有通過真人驗證的錯誤答案,也都是很有意義的答案數據。通常它們都是比較接近正確答案的錯誤答案,這類數據對提高機器學習模型的改善和迭代也是非常有意義的。
如果我們在產品里設計出這麼一個流程,使得人工智慧識別引擎在精度不斷提高同時,客戶也能夠得到比較有意義的情報。
把大量的人工智慧和少量人類智能結合起來,會產生一個較好的互補效應。
2.人工智慧+大數據
另外一種手段就是人工智慧+大數據。
為什麼需要大數據?剛才我也提到,當我們有了底層結構化數據再到完成客戶整個業務體系,本來就需要很多大數據挖掘應用,但更重要的一件事情是隨著結構化數據規模上漲,大規模智能系統產生的誤報會顯著上漲,以至於正確的情報會淹沒在海量誤報中。這件事情必然會發生,尤其對於人臉識別而言。
我現在覺得全國各地的城市已經開始擁有一定規模的人臉識別,但我相信很快所有的客戶都會踢到鐵板,誤報會大規模地上升。現在已經看到很多客戶發現了這件事,這種情況下有沒有解?當然有,我認為解企業要通過大規模的、多模態數據整合來提升人工智慧的精度。
這是什麼意思呢?如果我們單看一個單點人工智慧的識別結果,它的錯誤率並沒有足夠好,就算可以做到千萬隻分之一的錯誤率,但只要問題數量過多,誤導還是很多。
但是當你使用了更多規模的數據,比如一個人在運動時。他在軌跡路線上是否能夠被反覆識別,或者說軌跡所體現的行為,同時能夠印證這個人的可疑性,或者說關於一個目標的多模態數據:他的車輛、消費記錄、手機信號、wifi探針、社交關係,把這些不同模式的數據能夠整合起來。
我再給大家舉個例子,比如說小明和小王是同班同學、好朋友。我在北京某個地方看到一個人長得像小明,那麼結果可能不一定是小明,可能只是一個跟小明長得很像的人。但是我如果在同一個地方又看到了這個小王(小明的朋友),那麼確認這個人是小明的概率就加大許多。
這只是一個例子,其實有大量的規律、模態、組合可以把這個任務做得更好。所以我覺得是未來人工智慧產品必須注意的一個方向,也是我個人覺得成功的人工智慧公司必須具備的條件:要有很強的大數據分析能力。
六、前沿生物視覺技術在安防領域的應用
接下來我給大家分享一些在安防領域裡面落地的前沿且有趣的技術。
大自然是一個非常豐富的知識庫,我們可以從裡面學到很多知識。計算機視覺是關於「視覺」的,所以我們來關注一下人的眼睛以及動物的眼睛。
從眼睛模型中我們可以看到它有個「快門」,也就是所謂的瞳孔,「鏡頭」是我們眼睛的晶狀體,「感測器」則是眼球裡面的視網膜。
其實人的眼球跟數碼相機本質上沒有特別大的差別,但相機實際上已發明 100 多年,今天我們的相機無論是很貴的數碼單反還是 iPhone 上的相機,它其實和 1839 年發明的第一台相機在成像原理上沒有本質的不同。不過是通過小孔成像原理,把真實的物體通過倒影呈現在背景的感測器上。這麼多年唯一發生變化的就是鏡頭變得越來越好了,感測器變得越來越好了。但是在這個過程中呢,成像的基本原理還只是一個投影問題。
1.怎樣解決三維變二維時丟失的距離信息
我們的世界是一個三維世界,每一個物體都是三維的,它投影的結果是在一個平面上,無論它是相機底片平面,還是眼球的球面。最終還是變成了一個兩維的數據,在這個過程中三維壓縮到兩維,丟失了什麼嗎?丟失的是深度信息,也就是縱深方向距離的信息。
我再給大家舉個例子,在這張照片里幾輛汽車放在一起。與此同時有一輛玩具車被一個人拿在手裡,如果不是因為照片里的手指,很多人都誤以為這就是停車場上的一輛真車。你可以看到圖像里物體真實的大小不代表它的實際大小。最近這輛紅色的跑車其實是很小的,可是遠處一輛在樹背後的車看上去很小,但實際上真實車的尺寸比較大。一個物體在圖像中的尺寸跟他的真實尺度不一定有什麼關係,當你失去了尺度,就沒辦法衡量尺寸、距離、速度、加速度。這種情況下,我們去分析物體的行為就有了很大的問題。
我們再來看一個自然界的現象,這裡顯示了一些動物照片,這些動物都有共同特點:都有兩個眼睛。而且兩個眼睛都有比較大的視場角重疊,大家有沒有意識到所有捕食動物的眼睛都朝前長的,所以他們兩個眼睛的視野重疊比較大,重疊最大的好處是可通過兩個眼睛對圖像的視差的分析,能夠計算出這個目標的深度,有了深度以後就可以去追捕他。
而所有被捕食的動物,比如羊、駱駝、馬的眼睛都長到了側面,然後形成了一個 360 度的全景。它最大的優勢就是可以更有效地去防範周圍的捕食者,它可一邊吃草,一邊看腦袋後面有沒有捕食者在靠近。
其實在計算機視覺領域,就有很多技術可以利用多視場能夠計算出來物體的深度。
格靈深瞳根據這種原理推出一款名為皓目行為分析儀的產品,皓目行為分析儀用一種結構光的方式生成 Depth Video,然後基於數據去分析人的行為。
我給大家看一個簡單的展示,在這個展示裡面有很多人在相機跟前走動,他們之間產生了很多遮擋。
但是即使在遮擋發生的情況下,我們仍然可以很好地把每一個人跟蹤下來,給每個人腰上套了一個圈,這個圈有不同的顏色,畫面的左下角是一個俯視的雷達圖,雷達圖上方代表相機,下方代表它視野,然後每一個點它的顏色和視頻里這個人腰圈的顏色是對應的,所以你可以看到每一個人的軌跡。通過這種方式就可在一個比較複雜的場所分析人們軌跡的行為。
比如說有沒有人在追逐、停留很久、徘徊,我們也可以分析人是不是摔倒了,有沒有劇烈動作等等。
如果要分析劇烈動作,需要對他身體的姿態動作做一個更深入地分析。在這裡面我們開發了一套演算法,能夠從圖像里把他的關節、胳膊、腿的位置計算出來。大家可能會意識到類似的功能在微軟或者 Primesense 等公司的人機交互產品裡面實現過。
格靈深瞳則是開發了一套專門針對於安防監控的識別演算法,不同的地方是它可以在監控視角,快速實現初始化比較好的工作。
2.昆蟲複眼原理給光場相機的啟發
此時有人會有質疑,不是所有的動物都有兩隻眼睛,昆蟲就不是,昆蟲的眼睛叫複眼,有幾千個鏡頭。
這是怎麼回事呢?這組照片上顯示了很多昆蟲的眼睛,你一眼看上去的確是看到了複眼,但即使是複眼,它們也有個共同點,第一是它們有一對複眼,第二個是他們的眼睛針對他們的頭部來說很大。
為什麼要長這麼大的眼睛呢?作為相機來說,它的感光量是很重要的指標。如果感光量不夠多、不夠大,很難形成清晰的照片,因為形成照片需要光子跟感測器發生能量的交換。能量的交換要能夠被測量下來才能形成對顏色、亮度的識別,這就是為什麼好的相機比如說單反相機它有很大的光圈。
但是昆蟲身子的尺寸非常小,在這種情況下為了保障進光量,就要盡量大地增加光圈的尺寸,所以這就是昆蟲的眼睛為什麼這麼大。
第二件事情就是為什麼昆蟲的每個眼睛變成了複眼?如果你要給昆蟲用傳統的光學模式設計眼睛,你會面臨什麼挑戰?假設你是蜜蜂,在你的生活中要不斷去尋找鮮花采蜜,有的時候你要看到幾十里外的目標,然後飛過去。可是當你在采蜜的時候站在花瓣上要能夠看到花粉在哪個花蕊上,然後去收集它。
也就是說,你要既可以看到很遠的物體,又能夠看到很近的物體。在這種情況下,它對變焦鏡頭的變焦動態範圍要求非常高。普通鏡頭很難做到在這樣一個範圍內去變焦,尤其鏡頭體積還有大量的限制,這就是為何昆蟲在自然界中自然進化出了這種形態的眼睛。
今天我們把這種成像模式稱作 Plenoptics,簡單來說就是一個鏡頭或者感測器陣列。這種陣列的特點是能夠在一個平面上去接受更大的光場,然後把光分布,包括它的方向等信息捕捉下來。廣場是四維的、光學的 Representation,獲得光場之後可通過演算法把不同的成像方式的結果全部計算出來。今天這種技術已經可用來做一些有趣的產品。
比如美國加州有一個公司,他們有一個基於光場原理的相機,你在拍照的時候可以直接拍。但是你回到家以後,可對這個照片做重新聚焦的修改,也就是先拍照片,然後再去定它的焦距。
我們今天會發現,如果想要實現一個非常大的、動態的變焦範圍,最有效的方式就是來做光場相機。而昆蟲的複眼就是非常精確的光場相機,這是一個非常奇妙的現象。
接下來,我們來看一個例子,在這個例子是討論人臉識別的。
在這個畫面的左上方是 2013 年 4 月 15 號在波士頓發生的馬拉松暴恐案,事件爆發以後警方得到了這張照片,很顯然這張照片是從一個監控的攝像頭上拍攝的。在這張照片里,兩個嫌疑人離鏡頭都不算太遠,前面這個人可能離鏡頭有兩、三米,後面那個人大概五、六米。但我們發現在這麼近距離的情況下兩人的面部是看不清楚的。
後來美國警方使用眾包的方法來尋找線索,把這張照片在電視台上滾動播出,大概在 36 個小時以內有很多馬拉松觀眾用自己的相機拍了很多照片,這些照片裡面正巧有幾張拍到了嫌疑犯。在畫面右上方和左下方就是遊客後來提供給警方的照片。其中左下方這張照片幫了很大的忙,因為這兩張照片是兩個嫌疑人,肩並肩站在一起並且正面對著鏡頭。
根據這張照片兩人成功被舉報,右下方 3 張照片是這兩個人的生活照,根據這個線索,這兩個人最終被抓住了。
在這個過程中,我們發現這麼一個現象。今天大多數人臉識別還是卡口式的人臉識別,比如我把這個東西裝在地鐵的出口,商場入口等等,因為人們必須從這些地方經過,你就不得不被相機看到。但事實上,假設你是一個犯罪分子,如果你看到了一個相機離你這麼近,那就可能不從這兒過了,或者你頭會故意低下來,讓相機看不到臉。
其實人臉識別的應用必須發生在人完全不配合的場景中,他完全注意不到附近有一個攝像頭。當他不知道附近有攝像頭時,那他被抓拍的幾率就很高。所以格靈深瞳開發的人眼相機產品主要是為了實現這個目標,我們現在識別的距離可以達到 50 。我們自己做過一個實驗,當你站在一個地方,然後你要想確保你周圍 50 米內都沒有一個攝像頭的話,這是比較難的一件事,因為空間比較大。
3.人眼原理給相機的啟發
這是辦公室停車場的一個案例,當格靈深瞳的人眼相機對接到了我們的動態人臉識別引擎上來,面部就會被抓取到。
最遠的可能 50 米,一部分為二三十米,然後他們的面部就和員工照片庫進行實時的比對。
人眼相機的原理其實和哺乳動物的眼球工作原理非常相似,人用裸眼看這個世界時是可以看得比較遠,我自己在開車時發現一個非常特殊的現象,我大概可以發現我至少可以看到前方大概 30 米到 50 米的車牌號碼。可是當我安裝了一個行車記錄儀時,我發現我把視頻調出來看,當前面的車離我的距離超過八米到十米時,我就看不清這個畫面里的車牌號碼。
那這意味著什麼?人眼的解析度真比高清攝像頭高很多嗎?其實並不是的,只是我們的人眼的視網膜里有一個特殊的區域,叫黃斑。
黃斑非常小,尺寸有多大呢?如果你把眼球的中心跟黃斑連接起來,那麼這個椎體的角度只有 2.5 度左右,但在這麼小的一個地方,集中了人眼 75% 的有效像素,剩下 25% 的像素分散在整個 160 度的視場角上。一個人的單眼視場角是 160 度,通過一個視場角很廣但解析度不高的一個注意力檢測系統和一個視場角很小但解析度很高的黃斑系統共同工作,實現對世界的觀察。
我們讀書不斷地掃描每一行文字,我們開車時眼球的注意力也在不同的目標上切換,這就是眼睛工作的原理。人眼還有一個重要特點,它的光學系統和它的識別系統緊密地結合在一起,並且相互反饋。在一個瞬間我們的餘光注意到一個物體,如果我們認為它重要的話,大腦就會指揮眼球轉動,把我們的黃斑會迅速聚焦在物體上面。
這種反饋使得眼睛非常的靈敏,人眼相機就是實現了光學系統和人的檢測,以及人臉識別系統接對接和反饋。從大自然的角度來講,我們發明了一個工作方式與人類眼睛一致的設備。
這就我今天的分享,謝謝大家。
雷鋒網註:文字部分為趙勇講述的核心內容,除此之外,還有多個問答內容(問答環節有 30 分鐘)也非常精彩,可在視頻內觀看。
※谷歌最新研究成果:手工搭建神經網路太費勁?來試試精確度高達94.6%的進化演算法
※麻省理工學院創業團隊做快遞無人車,用手機APP隨叫隨到
※畢馬威:上海超紐約、北京,成全球最具潛力科創中心
TAG:雷鋒網 |
※「機場安檢智能識別系統」實現全流程人臉識別
※安全還是隱私,美國舊金山禁用人臉識別技術,現代科技的利與弊
※厲害了!OPPO發布結構光人臉識別技術,成安卓陣營首家!
※智能貓眼融入人臉識別 家居安全智能化加速
※安防監控中的非配合型動態人臉識別
※人臉識別的三大信息安全隱患
※演算法+晶元,宇泛智能深入推動人臉識別產品落地
※人臉識別技術的背後:商業利益、安全監控與個人隱私
※AI賦能人臉識別應用場景 持續探索智能技術普適未來生活
※先進人臉識別技術 助力北京大興新機場智能安檢系統
※人臉識別技術全面總結:從傳統方法到深度學習
※當人臉識別遇見同卵雙胞胎,智能鎖能否守住安全底線?
※美國「聰明」的螳螂,「笨笨」的人臉識別
※全球權威人臉識別競賽成績公布,看全球AI區域競爭力
※人臉識別成小兒科,智能安防硬體突破口何在?
※揭秘安博會獲獎產品:威盛人臉識別智能終端
※手機中的人臉識別成為「智商檢測專用功能」,聰明人從來都不用!
※專註 AI 人臉識別場景化,「魔點科技」聯合釘釘發布智能門禁
※全球權威人臉識別競賽成績公布,中國人工智慧演算法繼續領跑世界
※人工智慧之Python人臉識別技術,人人都能做識別!