天天看點

基于深度學習的智能安防系統結構探讨基于深度學習的智能安防系統結構探讨

智能安防的概念提出已經有相當長時間了,但是道路并不平坦,受限于計算機視覺算法和前端裝置處理能力,許多功能一直無法成熟應用。但是廠商在宣傳智能水準方面往往有誇大的沖動,使得産品在部署使用後,實際性能與使用者期待相去甚遠。雖然這種情況使得安防領域的智能化陷入了一段尴尬時期,同時也降低了使用者的期望值,使使用者更加理性的看待智能安防技術,也使得真正優秀的智能安防産品能得到機會。最近數年來深度學習算法的快速發展,在各類人工智能問題上的優異表現給智能安防領域帶來了新的機遇。在深度學習迅速發展的大背景下,本文就智能安防系統如何采用最新的技術提升産品性能做一些抛磚引玉的探讨。

責任編輯:editor006 |  2017-09-18 15:55:55 本文摘自:慧聰安防網

基于深度學習的智能安防系統結構探讨基于深度學習的智能安防系統結構探讨

深度學習是機器學習的一個分支,它基于試圖使用包含複雜結構或由多重非線性變換構成的多個處理層對資料進行高層抽象的一系列算法。卷積神經網絡是目前深度學習領域最為廣泛使用的深度學習結構,卷積神經網絡由一個或多個卷積層和頂端的全連接配接層(對應經典的神經網絡)組成,同時也包括關聯權重和池化層。自深度學習出現以來,它已成為很多領域,尤其是在計算機視覺和語音識别中,成為各種領先系統的一部分。在通用的用于檢驗的資料集,例如語音識别中的TIMIT和圖像識别中的ImageNet,Cifar10上的實驗證明,深度學習能夠大幅度提高識别的精度。深度學習算法也是最先在某些識别任務上達到和人類表現具備同等競争力的算法,例如人臉識别領域使用廣泛的測試集LFW,基于深度學習的算法基本都能達到99.5以上的性能,這已經超過了人類的得分。

深度學習給智能安防帶來機遇的同時,也帶來了挑戰。硬體的進步是深度學習獲得關注的重要因素,高性能圖形處理器的出現極大地提高了數值和矩陣運算的速度,使得機器學習算法的運作時間得到了顯著的縮短。這些高性能圖像處理器目前最廣泛使用的是英偉達生産的支援CUDA計算的一系列高端顯示卡,這些顯示卡通常功耗都過百瓦,價格也從數千到上萬不等。而對應的前端裝置上的嵌入式處理晶片必須滿足嚴格的功耗、成本限制,目前數字攝像頭中使用的處理晶片功耗通常在瓦級,價格在幾十元人民币量級,顯然這兩者之間存在巨大的鴻溝。這要求安防廠商從傳統的智能攝像頭向前後端複合的智能安防系統思路轉變。筆者認為未來智能安防系統的發展将會分為兩個階段。

第一個階段是由前端智能攝像頭和後端智能分析伺服器共同構成,利用後端基于深度學習的分析伺服器來提升目前智能安防系統的性能。一個簡便易行的前後端協作方式是前端負責尋找可能剛興趣的關鍵幀并發送到後端,後端負責對該幀進行深入分析,判斷是否發生了感興趣的事件。

目前我們在智能安防中的需求中實際上有相當一部分是不需要對視訊進行分析的,通過單幅圖像進行分析就可以完成,隻是傳統圖像算法不足夠強大,必須依賴連續視訊才能抽取需要的資訊。比如廣場人員密度分析,如果是人工進行分析,隻需要單張圖檔就可以判斷目前畫面中的人員密度,是否達到預警的條件,而不需要對連續視訊進行分析。但是許多做這方面工作的傳統算法通常都依賴于對連續視訊的處理,需要通過連續視訊做一些前景提取的工作。由于依賴連續視訊,這些算法還很容易受到環境光照變化的影響。在深度學習出現以後,基于卷積神經網絡設計的算法通常都是針對單張圖檔進行的,并且在人員密度分析上精确度大幅度上升。雖然基于深度學習的算法可以僅僅依靠單張圖檔就可以分析,但是如果我們不加區分的每幀或是間隔數幀持續傳回截圖,對網絡帶寬和後端處理能力都會造成很大的負擔。我們可以要求前端裝置通過對連續視訊的分析僅僅負責尋找場景内大量前景目标時,進行截圖并發送到後端,由後端來分析該幀内的人員分布密度,這樣可以在前端充分利用連續視訊的資訊,降低系統對網絡帶寬和後端處理能力的需求。

在建構類似系統的硬體平台方面,目前國内前端數字攝像頭主流晶片為海思和德州電器兩家廠商生産,這兩家廠商的部分晶片都支援使用者進行智能圖像處理算法的開發,隻是方案略有不同。海思通過SOC内置的IVE硬體智能算法加速引擎來支援傳統智能算法的設計,該加速引擎可以支援一些在傳統計算機算法中常用的算子,開發人員通過調用這些算子來構成應用級算法。而德州電器的達芬奇系列處理器則通過ARM和DSP的異構多核政策來提供對算法設計的支援,圖像處理算法主要運作SOC内內建的高性能DSP上。這些晶片雖然無法執行複雜的深度學習算法,但是用來執行一些針對連續視訊處理的相對簡單的算法,例如前景提取、人臉檢測等,性能是足夠的。是以目前基于現有的成熟晶片開發具備一定智能的前端數字攝像頭是有很成熟方案的,由于是成熟晶片,是以成本也可控。後端裝置采用基于英偉達顯示卡的伺服器即可,面向深度學習的各類軟體架構也比較成熟,是以目前階段建構基于前後端混合的智能安防系統在軟硬體條件上都是具備的,可以迅速完成産品研發投入市場。

第二階段是随着專用卷積神經網絡加速器硬體的發展,在功耗、成本都滿足需求的前提下,将深度學習算法直接運作在前端裝置上。目前已經有可以支援一定規模卷積神經網絡的嵌入式處理晶片,最著名的是英偉達釋出的TegraK1和X1。這兩塊晶片性能強大,同時成本高昂,并且兩者由于功耗和成本的限制,在執行深度學習算法時與桌面顯示卡相比成本效益非常低。例如X1隻有256個CUDA核心,GTX1060則具備1280個CUDA核心,并且前者為MAXWELL架構頻率為1000MHZ,後者為PASCAL架構頻率高達1708MHZ,再考慮兩者在存儲容量、速度上的顯著差距,兩者的性能差距是相當大的,但是X1主晶片的售價就超過200美元,GTX10603G顯存版本的零售價隻要大約1500人民币。

除了Tegra這類具備通用計算加速單元的晶片之外,其他還有一些初創企業在開發完全針對深度學習的晶片,例如國内創投圈知名的寒武紀。寒武紀開發的晶片在硬體結構設計上,從存儲到計算單元的設計,完全針對卷積神經網絡的需求進行,進而最大程度的提升在執行這類應用時晶片的能效比,據目前透露的資料在保持低功耗的前提下,性能可以比目前的主流顯示卡高一個數量級。Intel收購的深度學習晶片公司Nervana也推出了在性能上與目前主流顯示卡有量級提升的深度學習晶片,相信Intel收購以後在生态、資本方面給予的大力支援,可以促進深度學習專用加速晶片更快的進入市場。

随着未來硬體平台的持續發展和逐漸成熟,在功耗、成本、性能都滿足要求的前提下,将整個人工智能算法全部都放在前端裝置上仍然是最終的方向。在前端直接執行可以使得整個人工智能算法獲得最完整的輸入資料,而不是僅僅局限于由于前端較為簡單的智能分析算法獲得的單張圖檔或是部分特征,進而獲得更好的智能分析效果。

本文轉自d1net(轉載)

繼續閱讀