《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 業(yè)界動態(tài) > 基于S32V來實現(xiàn)人臉識別的應用

基于S32V來實現(xiàn)人臉識別的應用

2019-11-20
來源:廣州立功科技股份有限公司
關鍵詞: S32V 人臉識別 ADAS

  摘要:汽車行業(yè)ADAS功能需求日益增長,,防疲勞駕駛是一個熱門方向,對于駕駛員狀態(tài)的檢測,,人臉識別是基礎,,只有快速準確地識別到人臉,才能對人臉狀態(tài)進行分析,。本文將介紹基于S32V來實現(xiàn)人臉識別的應用,。

  一、S32V視覺處理平臺

  NXP于2015開始推出S32V平臺,,現(xiàn)在已經(jīng)推出了第二代型號S32V234,,第三代目前已經(jīng)在樣品階段,該平臺定位為ADAS視覺處理,提供了視覺系統(tǒng)應用所需的性能和功能,。

  對于圖像處理,,S32V具有自己的特色,硬件方面:具有兩路CSI和兩路并口攝像頭接口,,提供了可圖形化編程的ISP,、APEX,以及3D渲染的GPU,。其中可編程的ISP可以對通過CSI輸入的攝像頭圖像數(shù)據(jù)進行處理,,支持HDR、顏色轉換,、色調映射等。APEX提供了并行圖像處理的能力,。還提供了H264硬件編解碼等,,基本覆蓋了圖像處理所需要的硬件資源。

  軟件方面:提供了VSDK,,包含S32V平臺的各個外設驅動,,并配有相關例程。API方面提供了OpenCV,、FFmpeg,、OpenCL、OpenGL,、EGL等常用圖像處理相關庫,。

基于S32V來實現(xiàn)人臉識別的應用476.png

  圖1 S32V內部框圖

  二、人臉識別方案介紹

  采用索尼的IMX224攝像頭作為圖像輸入,,移植人臉識別庫,,建立演示demo將檢測到的人臉實時用方框標記出來。

  1.方案框圖

基于S32V來實現(xiàn)人臉識別的應用587.png

  

圖 2 人臉識別方案框圖

  2.Demo搭建

  獲取攝像頭數(shù)據(jù)

  首先,,基于VSDK實現(xiàn)iMX224攝像頭的數(shù)據(jù)獲取,。通過NXP提供S32 Design Studio for Vision Version軟件建立iMX224的ISP處理流程,如下圖所示,。

基于S32V來實現(xiàn)人臉識別的應用713.png

  圖 3 ISP處理流程

  這里通過運行在IPUS0中的debayer_rgb_simple_interleaced,,實現(xiàn)了攝像頭Debayer數(shù)據(jù)轉RGB,然后通過FDMA傳輸?shù)紻DR中供算法調用,。如果對于圖像有特殊要求的,,可以自己建立對應的IPUS核,對圖像數(shù)據(jù)進行相關處理,。

  交叉編譯相關庫

  移植人臉識別算法庫,,該庫基于NCNN神經(jīng)網(wǎng)絡上搭建人臉識別系統(tǒng),依賴的庫有OpenCV、NCNN以及Sqlit3,。這些庫需要交叉編譯,,其中OpenCV和Sqlit3的ARM版S32V已經(jīng)提供不需要再進行編譯,編譯后的NCNN和人臉識別算法庫都是靜態(tài)庫,,不需要拷貝到目標板上,。

  人臉檢測demo

  通過Qt來實現(xiàn)界面顯示,首先在pro文件中添加VSDK中獲取攝像頭數(shù)據(jù)的相關庫,,算法移植的相關庫,,然后通過如下API接口獲取圖像數(shù)據(jù)。

  int getCImg(cv::Mat &cimg);

  再調用如下接口進行人臉檢測:

  void detectMaxFace(ncnn::Mat& img_, std::vector<Bbox>& finalBbox);

  3.Demo效果

  最后將檢測結果通過Qt界面顯示出來,,如下圖所示,。

基于S32V來實現(xiàn)人臉識別的應用1224.png

  圖4 人臉檢測結果

  通過測試,人臉檢測耗時如下所示:

1574260395(1).png



本站內容除特別聲明的原創(chuàng)文章之外,,轉載內容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點。轉載的所有的文章,、圖片,、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創(chuàng)文章及圖片等內容無法一一聯(lián)系確認版權者,。如涉及作品內容,、版權和其它問題,請及時通過電子郵件或電話通知我們,,以便迅速采取適當措施,,避免給雙方造成不必要的經(jīng)濟損失。聯(lián)系電話:010-82306118,;郵箱:[email protected],。