摘要:最近有合作公司的項目需要服務(wù)端人臉識別的開發(fā),于是就用了公司的人臉識別開發(fā),由于之前對服務(wù)端開發(fā)介紹的資料比較少,正好這次又做了這個項目,花了幾天的開發(fā),這里就簡單分享一下個人的見解。
最近有合作公司的項目需要服務(wù)端人臉識別的開發(fā),于是就用了公司的人臉識別SDK開發(fā),由于之前對服務(wù)端開發(fā)介紹的資料比較少,正好這次又做了這個項目,花了幾天的開發(fā),這里就簡單分享一下個人的見解。
影響性能的幾個關(guān)鍵點 1、人臉檢測人臉檢測接口就是可以把一張圖片的人臉照片圖, 經(jīng)過FaceEngine的處理,檢測出人人臉框信息。檢測模式有兩種,image模式和video模式,image模式對于人臉檢測準(zhǔn)確率比較高,但性能沒有video模式高。video模式適用于在視頻流模式下,在視頻流模式有更快的處理性能和更好的人臉框穩(wěn)定性。Video模式下,處理一幀圖片在10毫秒內(nèi),所以在30幀的視頻中,可以輕松的對每幀進(jìn)行人臉檢測。
2、特征提取特征提取是在檢測出人臉框的基礎(chǔ)上,尋找出該人臉最具特別性的描述,該描述可被傳輸和保存,在ArcFace2.0中,一個特征占用1032字節(jié),特征提取要花100-150毫秒,所以每幀都做特征提取是不可行的,但借助TrackID,可以做到一張人臉只要提取一次人臉特征。
人臉比對即特征比對,對兩張人臉照片圖分別提取特征,然后進(jìn)行比較,獲取相似度。該比對的時間是微妙級的,但在實際的應(yīng)用過程中,往往是幾千個特征甚至幾萬個特征進(jìn)行比對,所以處理時間要成倍的增加。假設(shè)處理一個特征需要3微妙,那么在5萬的特征庫中進(jìn)行比較,時間就是3*50000=150毫秒
無感是永遠(yuǎn)的痛
人臉識別經(jīng)常用在一些實時性比較高的場合,比如門禁這類系統(tǒng),客戶往往要求我們要“無感”通過。這些實時性高的系統(tǒng),通常利用網(wǎng)絡(luò)傳輸視頻流,服務(wù)器來處理再反饋結(jié)果,如果沒有在網(wǎng)絡(luò),內(nèi)存,CPU上做足夠的優(yōu)化,往往帶來的就是延遲高,響應(yīng)慢。
光看上面文字,大家可能沒什么印象。咱們還是來一張圖,一起來直觀的感受一下耗時分析
咱們來算算,假設(shè)100個設(shè)備,每秒鐘30幀的照片,每幀100K,那么每秒鐘有多少流量?每分鐘有多少?每天呢?
按照標(biāo)準(zhǔn)的算法,每個設(shè)備每秒鐘流量:1*30幀*100KB=3MB
換算到分的話3MB*60秒=16MB/分
1天的話16MB*60分鐘*24小時=23040MB/天
100個設(shè)備的話23040MB*100=2T/天,也就是每天有T級別流量
哇,這么一算,一般的服務(wù)器和網(wǎng)絡(luò)怎么受得了
老規(guī)矩,咱們看圖來分析下現(xiàn)狀
如上圖,照片實時上傳到服務(wù)器,服務(wù)器人臉檢測和特征提取,服務(wù)器特征比對,排序,結(jié)果輸出。
全部交給服務(wù)器處理,服務(wù)器壓力太了,讓客戶端分擔(dān)點吧 。
優(yōu)化后...
把人臉檢測和特征提取全放客戶端,客戶端每次上傳人臉特征,服務(wù)端做特征比對、排序,結(jié)果輸出。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/74124.html
摘要:引言使用了免費的人臉識別算法,感覺還是很不錯的,但是初次接觸的話會對一些接口的參數(shù)有些疑問的。這里分享一下我對一些參數(shù)的驗證結(jié)果這里以版本為例,基本一樣,希望能更好的幫助各位接入虹軟的人臉識別算法。 引言 使用了免費的人臉識別算法,感覺還是很不錯的,但是初次接觸的話會對一些接口的參數(shù)有些疑問的。這里分享一下我對一些參數(shù)的驗證結(jié)果(這里以windows版本為例,linux、android...
閱讀 3755·2021-11-22 13:52
閱讀 3628·2019-12-27 12:20
閱讀 2401·2019-08-30 15:55
閱讀 2154·2019-08-30 15:44
閱讀 2271·2019-08-30 13:16
閱讀 585·2019-08-28 18:19
閱讀 1893·2019-08-26 11:58
閱讀 3447·2019-08-26 11:47