藉助PowerVR GPU和OpenCL實現人臉檢測和識別
在前面的文章中,我們向大家展示了使用神經網路實現一些諸如物體識別、數字化識別等功能。本篇文章我們將向大家展示視覺處理方面更實際的一個Demo,在PowerVR GPU上運行AI和機器學習演算法。這個Demo展示了我們如何使用硬體(比如GPU)的計算能力來獲取攝像頭採集的視頻並採用多個卷積神經網路(CNNs)進行處理。
經過神經網路演算法處理後會在畫面中標出每張人臉的位置,並且提供「標識符」指向每張人臉。我們採用FDDB庫(包括5171張人臉圖片)和VGG庫(包括2622張不同識別特徵的圖片)對網路進行了訓練。下面的視頻展示了這個Demo的運行情況,還使用了PowerVR深度神經網路(DNN)庫,這兩者都是由PowerVR研究團隊和視覺團隊開發的。這個深度神經網路庫採用高級指令、權值和偏差並轉換成GPU可以處理的數據,然後我們繼續採用OpenCL庫對這個網路進行實時處理。
這個Demo運行在宏碁(Acer)筆記本上,集成的是聯發科(MTK)MT8173 SoC和PowerVR GX6250 GPU,運行頻率在455MHz。筆記本電池充滿電後開始運行人臉識別Demo,總共持續了將近六個小時,充分體現了PowerVR GPU的功率效率和性能。
從上面的圖片中我們可以看出這個Demo能夠同時識別三個用戶的特徵。
這個Demo展示的是一個實際應用的案例,人臉檢測和識別需要融入我們的日常生活中。界面上它模仿了一個TV系統,識別用戶的同時還能找出適合他們的電影內容。
首先我們使用GoogLeNet單鏡頭檢測(SSD)神經網路識別網路攝像機採集畫面中的每一張人臉,會將每一張人臉用方形框標記出來。然後我們將臉部內容隔離開,在同一個位置運行另一個神經網路,這樣就會返回給我們一個「標識符」,這個標識符類似於每張人臉被採集的畫面幀,這同時也意味著向系統添加標記識別已經不重要了,從上面的視頻中大家可以看到我們是如何識別每一張之前沒有訓練過的人臉圖像,如何使用標識符在下次能夠直接識別出對應的人臉圖像。
下面是這個Demo的設計框圖:
我們可以想像到這項技術的多種用途,比如智能TV,其本身已經具備運行神經網路的硬體基礎,用戶可以採用人臉識別進行註冊,然後系統會自動載入用戶喜歡的電影內容、App應用和快捷方式等,這無疑會大大提升用戶體驗效果。
另一個潛在的用途是實時檢測用戶是否正在看著設備,從而可以持續跟蹤用戶對哪些內容感興趣以及用戶的習慣等,這種功能可以用於市場營銷或者個性化設計,無需用戶下意識的關注。
另一個應用的實例是智能門鈴,通過人臉識別確定每一個到訪者,並且可以為每個用戶自定義提示音,目前這些相似產品已經是市場上存在,比如基於AI的安全攝像頭系統等。
這只是一個圖像識別的演示Demo,展示了如何高效快捷應用PowerVR GPU,我希望大家持續關注我們的博客,我們會持續更新關於機器學習演算法和PowerVR高級性能方面的內容。
權威發布有關Imagination公司CPU,GPU以及連接IP、無線IP最新資訊,提供有關物聯網、可穿戴、通信、汽車電子、醫療電子等應用信息,每日更新大量信息,讓你緊跟技術發展,歡迎關注!伸出小手按一下二維碼我們就是好朋友!


TAG:Imagination Tech |