黄色三级免费_亚洲男女性高爱潮网站_婷婷五月天超碰日日草人人_人妻少妇精品无码专区无码_無碼少婦豐滿熟婦一區二區_午夜視頻一區_国产亚洲精品俞拍视频_污宅男666在线永久免费观看_午夜一级a成年大片在线_边摸边吃奶边做爽小视频

EsDA工控單板
EPC6450-AWI/EPC1107-LI/EPC3568系列工控板
MPC-ZC1迷你工控主板
Cortex?-A5,拖拽式開發(fā),40pin擴(kuò)展引腳
2.5寸工控單板
EPC-6Y2C-L網(wǎng)絡(luò)控制器
Cortex?-A7,800MHz,8路串口,數(shù)字音頻
IoT-6Y2C-L物聯(lián)網(wǎng)關(guān)控制器
Cortex?-A7,800MHz,8路串口,支持藍(lán)牙
EPC-6G2C-L網(wǎng)絡(luò)控制器
Cortex?-A7,528MHz,8路串口,數(shù)字音頻
IoT-6G2C-L物聯(lián)網(wǎng)關(guān)控制器
Cortex?-A7,528MHz,8路串口,支持藍(lán)牙
3.5寸工控單板
IoT7000A-LI物聯(lián)網(wǎng)網(wǎng)關(guān)控制器
Cortex?-A7,雙MiniPCIe接口支持無(wú)線模塊擴(kuò)展
IoT-9608I-L網(wǎng)絡(luò)控制器
Cortex?-A8,800MHz,6種無(wú)線通訊方式
EPC-9600I-L工控主板
Cortex?-A8,800Mhz
IoT9000A-LI工控主板
Cortex?-A9,強(qiáng)勁編解碼,專注多媒體
IoT9100A-LI工業(yè)IoT網(wǎng)絡(luò)控制器Cortex?-A9,1GHz
SX-3568系列主板Cortex?-A55,雙核心GPU
MD-3568LI工控板Cortex?-A55,雙網(wǎng)口

ZLG深度解析——人臉識(shí)別核心技術(shù)

隨著計(jì)算機(jī)技術(shù)以及光學(xué)成像技術(shù)的發(fā)展,集成了人工智能、機(jī)器學(xué)習(xí)、視頻圖像處理等技術(shù)的人臉識(shí)別技術(shù)也逐漸成熟。未來(lái)五年,我國(guó)人臉識(shí)別市場(chǎng)規(guī)模平均復(fù)合增長(zhǎng)率將達(dá)到25%,到2021年人臉識(shí)別市場(chǎng)規(guī)模將達(dá)到51億元左右,具有巨大的市場(chǎng)需求與前景。

安防、金融是人臉識(shí)別切入細(xì)分行業(yè)較深的兩個(gè)領(lǐng)域,移動(dòng)智能硬件終端成為人臉識(shí)別新的快速增長(zhǎng)點(diǎn)。因此,這三大領(lǐng)域?qū)⑹侨四樧R(shí)別快速增長(zhǎng)的最大驅(qū)動(dòng)力。

2017年,我國(guó)安防行業(yè)總產(chǎn)值達(dá)到6200億,同比增長(zhǎng)16.98%,維持強(qiáng)勁發(fā)展勢(shì)頭。從細(xì)分產(chǎn)業(yè)來(lái)看,視頻監(jiān)控是構(gòu)建安防系統(tǒng)中的核心,在中國(guó)的安防產(chǎn)業(yè)中所占市場(chǎng)份額最大。而人臉識(shí)別在視頻監(jiān)控領(lǐng)域具有相當(dāng)?shù)膬?yōu)勢(shì),應(yīng)用前景廣闊。

市面上的人臉識(shí)別解決方案也越來(lái)越多,但在系統(tǒng)框架上基本大同小異,大體框架如下圖所示:

接下來(lái)對(duì)人臉識(shí)別算法各技術(shù)點(diǎn)逐一進(jìn)行詳細(xì)介紹,包括人臉檢測(cè)、人臉定位、人臉校準(zhǔn)、人臉比對(duì)、人臉反欺詐以及算法優(yōu)化等。

1. 人臉檢測(cè)

人臉檢測(cè)算法繁多,我們采用由粗到精的高效方式,即先用計(jì)算量小的特征快速過濾大量非人臉窗口圖像,然后用復(fù)雜特征篩選人臉。這種方式能快速且高精度的檢測(cè)出正臉(人臉旋轉(zhuǎn)不超過45度)。該步驟旨在選取最佳候選框,減小非人臉區(qū)域的處理,從而減小后續(xù)人臉校準(zhǔn)及比對(duì)的計(jì)算量。

以下為人臉檢測(cè)算法的初始化接口,根據(jù)實(shí)際應(yīng)用場(chǎng)景設(shè)置人臉的相關(guān)參數(shù),包括最小人臉尺寸、搜索步長(zhǎng)、金字塔縮放系數(shù)等:

人臉檢測(cè)實(shí)測(cè)效果如下圖所示:

在人臉檢測(cè)領(lǐng)域比較權(quán)威的測(cè)試集FDDB上進(jìn)行評(píng)測(cè), 100誤檢時(shí)的召回率達(dá)到85.2%, 1000誤檢時(shí)的召回率達(dá)到89.3%。

2. 人臉定位

面部特征點(diǎn)定位在人臉識(shí)別、表情識(shí)別、人臉動(dòng)畫等人臉分析任務(wù)中至關(guān)重要的一環(huán)。人臉定位算法需要選取若干個(gè)面部特征點(diǎn),點(diǎn)越多越精細(xì),但同時(shí)計(jì)算量也越大。兼顧精確度和效率,我們選用雙眼中心點(diǎn)、鼻尖及嘴角五個(gè)特征點(diǎn)。經(jīng)測(cè)試,它們?cè)诒砬椤⒆藨B(tài)、膚色等差異上均表現(xiàn)出很好的魯棒性。

人臉定位接口程序如下所示,需要先加載預(yù)先訓(xùn)練好的模型,再進(jìn)行定位檢測(cè):

人臉定位程序的效果如下所示:

本算法在AFLW數(shù)據(jù)集上的定位誤差及與其他算法的對(duì)比情況:

3. 人臉校準(zhǔn)

本步驟目的是擺正人臉,將人臉置于圖像中央,減小后續(xù)比對(duì)模型的計(jì)算壓力,提升比對(duì)的精度。主要利用人臉定位獲得的5個(gè)特征點(diǎn)(人臉的雙眼、鼻尖及嘴角)獲取仿射變換矩陣,通過仿射變換實(shí)現(xiàn)人臉的擺正。 目標(biāo)圖形以(x,y)為軸心順時(shí)針旋轉(zhuǎn)Θ弧度,變換矩陣為:

人臉校準(zhǔn)C++代碼可參考如下所示:

一般此步驟不建議使用外部庫(kù)做變換,所以這里提供仿射變換python源碼以供參考:

人臉校準(zhǔn)的效果如圖所示:

4. 人臉比對(duì)

人臉比對(duì)和人臉身份認(rèn)證的前提是需要提取人臉獨(dú)有的特征點(diǎn)信息。在人臉校準(zhǔn)之后可以利用深度神經(jīng)網(wǎng)絡(luò),將輸入的人臉進(jìn)行特征提取。如將112×112×3的臉部圖像提取256個(gè)浮點(diǎn)數(shù)據(jù)特征信息,并將其作為人臉的唯一標(biāo)識(shí)。在注冊(cè)階段把256個(gè)浮點(diǎn)數(shù)據(jù)輸入系統(tǒng),而認(rèn)證階段則提取系統(tǒng)存儲(chǔ)的數(shù)據(jù)與當(dāng)前圖像新生成的256個(gè)浮點(diǎn)數(shù)據(jù)進(jìn)行比對(duì)最終得到人臉比對(duì)結(jié)果。

人臉比對(duì)流程的示意圖如下所示:

通過神經(jīng)網(wǎng)絡(luò)算法得到的特征點(diǎn)示意圖如下:

而人臉比對(duì)則是對(duì)256個(gè)浮點(diǎn)數(shù)據(jù)之間進(jìn)行距離運(yùn)算。計(jì)算方式常用的有兩種,一種是歐式距離,一種是余弦距離。x,y向量歐式距離定義如下:

x,y向量之間余弦距離定義如下:

余弦距離或歐式距離越大,則兩個(gè)特征值相似度越低,屬于同一個(gè)人的可能性越小。如下圖,他們的臉部差異值為0.4296 大于上文所說的該模型最佳閾值0.36,此時(shí)判斷兩人為不同的人,可見結(jié)果是正確的。

把歸一化為-1到1的圖像數(shù)據(jù)、特征點(diǎn)提取模型的參數(shù)還有人臉數(shù)據(jù)庫(kù)輸入到人臉比對(duì)的函數(shù)接口face_recgnition,即可得人臉認(rèn)證結(jié)果。程序接口的簡(jiǎn)單調(diào)用方式如下所示:

人臉比對(duì)算法的準(zhǔn)確率方面是以查準(zhǔn)率為保證的,AUC (Area under curve)=0.998,ROC

模型 ZalFacedlibResnet-18

曲線圖如下所示:

我們?cè)O(shè)計(jì)的比對(duì)模型主要特點(diǎn)是模型參數(shù)少、計(jì)算量少并能保證高的準(zhǔn)確率,一定程度上適合在嵌入端進(jìn)行布置。對(duì)比其他人臉比對(duì)模型差異如下表格所示:

參數(shù)量(parameter)3.7M5.0M11.07M
理論浮點(diǎn)計(jì)算量(Flops)50M310M1372M
lfw98.12+-0.76%97.58+-0.80%99.10+-0.40%
lfw far@1e-390.47+-2.80% 90.23+-2.37%93.68+-6.6%
agedb_3088.71+-2.35%90.56+-1.84%88.95+-0.41%
agedb_30 far@1e-332.50+-4.41%35.73%+-6.41%25.67+-3.38%
cfp_ff97.84+-0.70%97.89+-1.08%98.49+-0.41%
cfp_ff far@ 1e-390.85+-2.36%87.86+-2.40%87.80+-3.48%

(1)far@1e-3表示將反例判定為正例的概率控制在千分之一以下時(shí),模型仍能保持的準(zhǔn)確率;

(2)dlib在實(shí)際測(cè)試中,存在detector檢測(cè)不出人臉的情況,導(dǎo)致最終效果與官網(wǎng)上有一定差異;

(3)resnet-18為pytorch的playground標(biāo)準(zhǔn)模型;

(4)lfw/agedb_30/cfp_ff為標(biāo)準(zhǔn)人臉比對(duì)測(cè)試庫(kù),測(cè)試過程中圖片已經(jīng)過人臉居中處理。

5. 人臉反欺詐

從技術(shù)角度來(lái)說,人臉是唯一不需要用戶配合就可以采集的生物特征信息。人臉不同于指紋、掌紋、虹膜等,用戶不愿意被采集信息就無(wú)法獲得高質(zhì)量的特征信息。人臉信息簡(jiǎn)單易得,而且質(zhì)量還好,所以這引發(fā)了有關(guān)個(gè)人數(shù)據(jù)安全性的思考。而且在沒有設(shè)計(jì)人臉反欺詐算法的人臉識(shí)別系統(tǒng)使用手機(jī)、ipad或是打印的圖片等都能對(duì)輕松欺騙系統(tǒng)。

所以我們采用多傳感器融合技術(shù)的方案,使用紅外對(duì)管與圖像傳感器數(shù)據(jù)進(jìn)行深度學(xué)習(xí)來(lái)判斷是否存在欺詐。紅外對(duì)管進(jìn)行用戶距離的判斷,距離過近則懷疑欺詐行為。圖像傳感器用深度學(xué)習(xí)算法進(jìn)行二分類,把正常用戶行為與欺詐用戶行為分為兩類,對(duì)欺詐用戶進(jìn)行排除。

二分類算法能夠有效抵抗一定距離的手機(jī)、ipad或是打印圖片的欺詐攻擊。對(duì)人臉欺詐數(shù)據(jù)集與普通人臉數(shù)據(jù)集預(yù)測(cè)如圖所示:

本二分類算法在100萬(wàn)張圖片中準(zhǔn)確分類的概率為98.89%,所以并不會(huì)對(duì)整體系統(tǒng)的準(zhǔn)確率進(jìn)行影響,保障系統(tǒng)的可靠性。

6. 算法優(yōu)化

在使用神經(jīng)網(wǎng)絡(luò)算法解決問題的時(shí)候,算法效率問題是必要的考量的。特別是在資源與算力不足的嵌入式端,更是頭等大問題。除了依托TensorFlow、Keras等開源框架,根據(jù)其前向傳播的原理寫成C++程序,還有必要的編譯優(yōu)化外,模型權(quán)重參數(shù)的清洗和算法計(jì)算的向量化都是比較有效的手段。

1) 模型權(quán)重參數(shù)清洗

權(quán)重參數(shù)清洗對(duì)神經(jīng)網(wǎng)絡(luò)算法的效率影響相當(dāng)大,沒有進(jìn)行清洗的權(quán)重參數(shù)訪問與操作非常低效,與清洗后的權(quán)重參數(shù)相比往往能效率相差6-8倍。這差距在算力不足的嵌入式端非常明顯,往往決定一個(gè)算法是否能落地。具體的方法就是先讀取原模型進(jìn)行重組,讓參數(shù)變得緊湊且能在計(jì)算時(shí)連續(xù)訪問計(jì)算,最后獲得重組后的模型與對(duì)應(yīng)的重組模型的計(jì)算方法。這個(gè)步驟需要一定的優(yōu)化實(shí)踐經(jīng)驗(yàn)以達(dá)到滿意的效果,對(duì)模型讀取效率與運(yùn)算效率都會(huì)有顯

2) 算法計(jì)算向量化

對(duì)于算法的向量化的做法就是讓算法的計(jì)算能夠使用向量乘加等運(yùn)算,而特別是在使用神經(jīng)網(wǎng)絡(luò)算法情況下,大量的計(jì)算沒有前后相關(guān)性且執(zhí)行相類似的步驟,所以向量化計(jì)算會(huì)對(duì)算法有明顯的提升,一般能把算法效率提升三倍左右。

使用NEON指令集的SIMD指令取代Arm?通用的SISD指令,是一個(gè)常用的算法向量化方法。在基于Arm?V7-A和Arm?V7-R的體系架構(gòu)上基本采用了NEON技術(shù),Arm?V8也支持并與Arm?V7兼容。

以IMX6ULL芯片為例,可以通過查閱官方的參考手冊(cè)查看其NEON相關(guān)信息:

下面舉例說明普通的編程寫法與NEON instrinsics編程、NEON assembly編程區(qū)別。以下為普通的編程寫法:

以下為轉(zhuǎn)化為NEON instrinsics的編程:
以為轉(zhuǎn)為NEON assembly的編程:
無(wú)冗余飽和順序訪存模式
T TT無(wú)冗余飽和順序模式
TTF無(wú)冗余飽和亂序模式
TFT無(wú)冗余非飽和順序模式
TFF無(wú)冗余非飽和亂序模式
FTT冗余飽和順序模式
F TF冗余飽和亂系模式
FFT冗余非飽和順序模式
FFF冗余非飽和亂序模式

一般NEONinstrinsics已經(jīng)能做到三倍的提速效果,而NEONassembly效果會(huì)更好一些。但是程序向量化需要特殊訪存規(guī)則,如果不符合則會(huì)對(duì)導(dǎo)致提速效果大打折扣。

訪存特征詳細(xì)分類如表所示:

其中,無(wú)冗余飽和順序模式是理想的訪問模式,能夠發(fā)揮算法計(jì)算向量化的效果。但是我們神經(jīng)網(wǎng)絡(luò)算法的最基本的卷積、全連接等計(jì)算卻是冗余飽和非順序模式的計(jì)算,這要如何解決呢?

查閱相關(guān)論文、期刊對(duì)這程序向量化非規(guī)則訪存的研究,可以發(fā)現(xiàn)程序向量化有以下步驟:

如上圖所示,需要對(duì)卷積、全連接等冗余飽和非順序模式計(jì)算通過向量混洗為無(wú)冗余飽和順序的模式,以達(dá)到優(yōu)化的效果。

7.人臉識(shí)別效果展示

基于PC的人臉識(shí)別展示demo如下視頻所示:

我們的人臉識(shí)別算法已經(jīng)成功移植到了Cortex?-a7的EPC-6Y2C-L平臺(tái),并已經(jīng)進(jìn)行了一定的優(yōu)化,后面會(huì)進(jìn)行進(jìn)一步的優(yōu)化。人臉檢測(cè)效率為166ms左右,人臉定位效率為125ms左右,人臉比對(duì)的效率為493ms左右,合計(jì)人臉識(shí)別總耗時(shí)788.3ms左右。下面是在EPC-6Y2C-L的實(shí)測(cè)效果: