近年來(lái),隨著人工智能技術(shù)的不斷發(fā)展,相應(yīng)的AI算法與產(chǎn)品方案也層出不窮。但是技術(shù)門(mén)檻高,產(chǎn)品穩(wěn)定性參差不齊成為了制約行業(yè)發(fā)展的主要瓶頸。M1808 AI核心板是ZLG布局AI及計(jì)算機(jī)視覺(jué)領(lǐng)域的重要產(chǎn)品,旨在為用戶提供“嵌入式”+“AI”解決方案平臺(tái),以AI算法賦能傳統(tǒng)嵌入式硬件,除了提供穩(wěn)定可靠的硬件平臺(tái)之外,同時(shí)免費(fèi)提供基于各種應(yīng)用數(shù)據(jù)集訓(xùn)練的AI算法,極大降低了“嵌入式”和“AI”的開(kāi)發(fā)門(mén)檻。
在當(dāng)前熱門(mén)的人臉識(shí)別領(lǐng)域,ZlG將人臉識(shí)別算法免費(fèi)植入M1808 AI核心板中,為用戶提供“硬件+軟件+算法”系統(tǒng)化解決方案。這一方案既能夠滿足客戶快速開(kāi)發(fā)的需求,又能最大程度保證驗(yàn)證結(jié)果的精準(zhǔn)度,可廣泛應(yīng)用于火車(chē)站、安檢卡口、校園、小區(qū)、寫(xiě)字樓等出入管理場(chǎng)景。
本文將從主控平臺(tái),配套硬件以及檢測(cè)Demo這三個(gè)方面對(duì)ZLG人臉識(shí)別解決方案做具體介紹。
一、主控平臺(tái)
人臉識(shí)別的應(yīng)用領(lǐng)域廣泛,但解決方案的框架大體類(lèi)似。ZLG緊跟行業(yè)發(fā)展,歸納出如下圖所示人臉識(shí)別方案的框圖。
圖1.1
由框圖可知,主控平臺(tái)選擇ZLG最新推出的M1808 AI核心板。作為一款面向人工智能開(kāi)發(fā)平臺(tái)的產(chǎn)品,M1808在視覺(jué)處理方面有著高運(yùn)算速率、高運(yùn)算精度以及低功耗的高性能表現(xiàn)。
圖1.2 M1808核心板產(chǎn)品
如上圖所示,M1808 AI核心板板載1.6GHz雙核64位Cortex-A35架構(gòu)的處理器RK1808,集成NPU峰值算力可達(dá)3.0TOPs,支持INT8/INT16/FP16混合運(yùn)算,最大程度兼顧性能、功耗、運(yùn)算精度,并支持TensorFlow/MXNet/PyTorch/Caffe等一系列框架的網(wǎng)絡(luò)模型轉(zhuǎn)換,兼容性強(qiáng)。其VPU視頻處理單元支持全格式的1080P視頻編解碼,支持?jǐn)z像頭視頻信號(hào)輸入,并具有內(nèi)置ISP。如圖1.3所示為RK1808芯片功能方框圖。
圖1.3 處理器RK1808功能方框圖
核心板整體功能特點(diǎn)一覽:
MPU采用高性能64位的Cortex-A35處理器RK1808,工作頻率可達(dá)1.6GHz;
集成 32KByte 一級(jí)指令緩存;集成 32KByte 一級(jí)數(shù)據(jù)緩存;
集成NPU(神經(jīng)網(wǎng)絡(luò)處理單元)協(xié)處理器;
支持最大1920 Int8 MAC operations per cycle;
支持最大64 FP16 MAC operations per cycle;
支持最大192 Int16 MAC operations per cycle;
512Kbyte內(nèi)部緩沖空間;
支持支持全格式的H.264 1080p@60fps解碼和H.264 1080p@30fps編碼;
集成高品質(zhì)的JPEG編/解碼器;
內(nèi)存:1GByte DDR4 SDRAM;
存儲(chǔ):4GByte eMMC;
Linux操作系統(tǒng)。
如圖1.4所示為M1808_EV_Board評(píng)估板產(chǎn)品圖片。
圖1.4 M1808_EV_Board評(píng)估板產(chǎn)品
二、配套硬件
圖像數(shù)據(jù)采集方面,M1808_EV_Board評(píng)估板為開(kāi)發(fā)用戶提供了1路CSI攝像頭接口和1路可擴(kuò)展USB接口。人臉檢測(cè)識(shí)別方案可以選用USB接口的雙目攝像頭,以支持具有活體檢測(cè)功能的人臉識(shí)別算法庫(kù)。雙目攝像頭如圖1.5所示。
圖1.5 雙目攝像頭
圖像顯示方面,M1808評(píng)估板為用戶提供MIPI-DSI接口和RGB接口兩種液晶顯示接口。本文介紹的人臉識(shí)別Demo運(yùn)行顯示是采用一款由ZLG生產(chǎn)的10.1寸LVDS接口的液晶顯示屏LCD-1280800W101TC,如圖1.6所示。攝像頭采集的人臉將會(huì)以實(shí)時(shí)方框形式在液晶屏上標(biāo)記顯示。
圖1.6 LCD-1280800W101TC 10.1寸LVDS液晶顯示屏套件
三、人臉識(shí)別檢測(cè)Demo
1.開(kāi)發(fā)環(huán)境搭建
將M1808平臺(tái)的交叉編譯工具m1808-sdk-1.0-ga.tar.gz拷貝至開(kāi)發(fā)主機(jī)Ubuntu下,并執(zhí)行如下命令解壓安裝:
sudo mkdir -p /opt/zlg
sudo tar -xf m1808-sdk-1.0-ga.tar.gz –C /opt/zlg
在用戶配置文件~/.bashrc中添加如下語(yǔ)句,保存后重新打開(kāi)終端就可以直接使用該平臺(tái)工具鏈,完成工具鏈環(huán)境搭建:
export PATH=/opt/zlg/m1808-sdk-1.0-ga/host/bin:$PATH
2.Demo程序
Demo采用Qt圖形界面開(kāi)發(fā)框架。在工程文件中添加OpenCV庫(kù)、Sqlite3庫(kù)和由ZLG算法團(tuán)隊(duì)研發(fā)的人臉識(shí)別算法庫(kù)等相關(guān)庫(kù),之后內(nèi)部程序通過(guò)調(diào)用相關(guān)庫(kù)提供的各種接口,包括數(shù)據(jù)存儲(chǔ)、模型構(gòu)建初始化、人臉檢測(cè)、人臉比對(duì)等API進(jìn)行相關(guān)人臉檢測(cè)識(shí)別功能的實(shí)現(xiàn)。
例如有關(guān)人臉檢測(cè)功能實(shí)現(xiàn),先定義rockx_handle_t類(lèi)型的句柄,通過(guò)操作該句柄調(diào)用如下API完成指定功能模塊的初始化:
rockx_ret_t rockx_create(rockx_handle_t* handle,rockx_module_t m,void* config,size_t config_size);
再調(diào)用人臉檢測(cè)API實(shí)現(xiàn)人臉檢測(cè)功能:
rockx_ret_t rockx_face_detect(rockx_handle_t handle,rockx_image_t* in_img,rockx_object_array_t* face_array,rockx_async_callback callback);
Demo整體流程框圖如下圖1.7所示:
圖1.7 Demo程序流程圖
3.Demo效果
實(shí)際檢測(cè)的人臉以綠色選框標(biāo)記出來(lái),Demo運(yùn)行顯示效果展示如圖1.8所示:
圖1.8 Demo展示效果
M1808 AI核心板在不同維度的卓越硬件功能,使其具備了成為一款高端產(chǎn)品的基本要素。相信這款產(chǎn)品對(duì)于構(gòu)建智能物聯(lián)系統(tǒng),助力創(chuàng)造AIoT無(wú)限可能會(huì)有很好的推動(dòng)作用,ZLG未來(lái)也將致力更多此類(lèi)優(yōu)質(zhì)產(chǎn)品的研發(fā)。