<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          實(shí)操教程|人臉識(shí)別模型的動(dòng)手實(shí)踐!

          共 3880字,需瀏覽 8分鐘

           ·

          2021-10-02 12:59

          ↑ 點(diǎn)擊藍(lán)字 關(guān)注極市平臺(tái)

          作者 | 宋志龍 
          來(lái)源 | Datawhale
          編輯 | 極市平臺(tái)

          極市導(dǎo)讀

           

          本文將向大家簡(jiǎn)單介紹活體檢測(cè),并動(dòng)手完成一個(gè)活體檢測(cè)模型的訓(xùn)練,最終實(shí)現(xiàn)對(duì)攝像頭或者視頻中的活體進(jìn)行識(shí)別。 >>加入極市CV技術(shù)交流群,走在計(jì)算機(jī)視覺(jué)的最前沿

          人臉識(shí)別已經(jīng)成為生活中越來(lái)越常見(jiàn)的技術(shù),其中最關(guān)鍵的問(wèn)題就是安全,而活體檢測(cè)技術(shù)又是保證人臉識(shí)別安全性的一個(gè)重要手段,本文將向大家簡(jiǎn)單介紹活體檢測(cè),并動(dòng)手完成一個(gè)活體檢測(cè)模型的訓(xùn)練,最終實(shí)現(xiàn)對(duì)攝像頭或者視頻中的活體進(jìn)行識(shí)別。

          我們可以達(dá)成的效果

          人臉識(shí)別的技術(shù)關(guān)鍵——活體檢測(cè)

          一般提到人臉識(shí)別技術(shù),即指人臉比對(duì)或人臉匹配,即將待識(shí)別的人臉和系統(tǒng)中已經(jīng)提前錄入的人臉信息(如身份證照片)進(jìn)行特征的比對(duì),而在使用神經(jīng)網(wǎng)絡(luò)提取特征進(jìn)行比對(duì)之前,需要首先對(duì)識(shí)別到的人臉進(jìn)行活體檢測(cè),以確定攝像頭前的人是個(gè)活人。因此整個(gè)人臉識(shí)別過(guò)程一般為(并非一定要這樣):人臉檢測(cè) -> 關(guān)鍵點(diǎn)檢測(cè) -> 人臉對(duì)齊 -> 活體檢測(cè) -> 人臉特征提取 -> 人臉比對(duì)。

          模型簡(jiǎn)介

          本項(xiàng)目使用基于resnet18的二分類(lèi)模型對(duì)RGB圖像進(jìn)行活體、非活體的分類(lèi)識(shí)別, 網(wǎng)絡(luò)結(jié)構(gòu)如圖所示,有關(guān)于resnet的知識(shí)可自行查閱。

          數(shù)據(jù)集簡(jiǎn)介

          本項(xiàng)目數(shù)據(jù)集使用中科院大型人臉活體檢測(cè)數(shù)據(jù)庫(kù)CASIA-SURF,這是一個(gè)包含大量不同年齡段人的多模態(tài)(RGB, Depth,IR)的數(shù)據(jù)集,其中包含大量真實(shí)活體人臉樣本,也包含了對(duì)應(yīng)的攻擊樣本(數(shù)據(jù)集已上傳至開(kāi)源數(shù)據(jù)平臺(tái)Graviti)。如圖所示,圖例中的攻擊樣本是以打印出來(lái)的人臉作為攻擊樣本,或者露出五官中的部分結(jié)合打印人臉一起作為攻擊樣本,當(dāng)然還有別的攻擊樣本制作的形式。因此模型訓(xùn)練的目標(biāo)就是要在遇到這些攻擊樣本的時(shí)候能夠正確識(shí)別出它不是一個(gè)活體。

          其中,RGB表示RGB圖片,Depth表示深度圖,IR表示近紅外圖。三個(gè)模態(tài)的數(shù)據(jù)可以都用來(lái)訓(xùn)練,以使模型適應(yīng)不同圖像采集設(shè)備的需求。為了簡(jiǎn)單,本項(xiàng)目?jī)H使用RGB圖像訓(xùn)練。數(shù)據(jù)集目錄結(jié)構(gòu)如圖所示:

          Training中為訓(xùn)練集圖片,Val為驗(yàn)證集圖片,train_list.txt為訓(xùn)練集各個(gè)樣本的路徑及標(biāo)簽,val_private_list.txt為驗(yàn)證集各個(gè)樣本的路徑及標(biāo)簽,val_public_list.txt本項(xiàng)目暫時(shí)不用

          代碼簡(jiǎn)介

          項(xiàng)目環(huán)境:python 3.7.4 、pytorch 1.4.0、其余的opencv、numpy啥的看缺啥裝啥吧。。。項(xiàng)目代碼目錄如圖所示(代碼地址見(jiàn)文末):

          其中,alive_detect為自定義的文件夾,里面存放了一些測(cè)試視頻,人臉檢測(cè)模型權(quán)重等等文件。loss文件夾內(nèi)存放了一些損失函數(shù)的實(shí)現(xiàn) model文件夾內(nèi)存放了一些模型的實(shí)現(xiàn)models文件夾是模型訓(xùn)練過(guò)程中權(quán)重的保存路徑 process文件夾內(nèi)存放了一些關(guān)于數(shù)據(jù)處理相關(guān)的代碼metric.py實(shí)現(xiàn)了一些指標(biāo)的計(jì)算utils.py實(shí)現(xiàn)了一些訓(xùn)練或測(cè)試用到的小功能函數(shù)train_CyclicLR.py是訓(xùn)練代碼,執(zhí)行這個(gè)代碼即可啟動(dòng)訓(xùn)練train_Fusion_CyclicLR.py是多模態(tài)數(shù)據(jù)的訓(xùn)練代碼。即同時(shí)使用上述數(shù)據(jù)集中的三種模態(tài)的數(shù)據(jù)進(jìn)行訓(xùn)練face_recognize.py是使用訓(xùn)練好的模型進(jìn)行活體檢測(cè)測(cè)試的代碼項(xiàng)目代碼中給出了訓(xùn)練好的模型權(quán)重示例,models/baseline_color_32/checkpoint/global_min_acer_model.pth。執(zhí)行腳本face_recognize.py,即可調(diào)用訓(xùn)練好的模型完成活體檢測(cè)。

          訓(xùn)練過(guò)程示例

          以resnet18模型為例,使用數(shù)據(jù)集中的RGB圖片進(jìn)行訓(xùn)練,輸入模型尺寸大小為32。

          開(kāi)始訓(xùn)練:

          cd alive_recognize_project#開(kāi)啟訓(xùn)練#--model baseline , 以resnet18為例,可選其他模型,自行探索#--image_size 32 , 輸入活體檢測(cè)模型的人臉圖像大小為32#--cycle_num 5,訓(xùn)練5個(gè)cycle周期#--cycle_inter 50, 每個(gè)cycle周期內(nèi)訓(xùn)練50個(gè)epoch#--mode train , 開(kāi)啟訓(xùn)練模型python train_CyclicLR.py --model baseline --image_mode color --image_size 32 --cycle_num 5 --cycle_inter 50 --mode train 

          對(duì)cycle_num和cycle_inter參數(shù)的說(shuō)明,本項(xiàng)目學(xué)習(xí)率衰減策略采用周期性余弦衰減,cycle_num表示周期數(shù),cycle_inter表示一個(gè)周期內(nèi)訓(xùn)練的epoch數(shù),即每經(jīng)過(guò)cycle_inter個(gè)epoch,學(xué)習(xí)率從初始值下降到最低值,如下圖所示。

          然后就開(kāi)始訓(xùn)練了,期間會(huì)打印出一些訓(xùn)練過(guò)程中的loss、acc、acer等信息,如需要?jiǎng)e的日志信息可自行修改。

          訓(xùn)練完成后的模型保存在路徑models/baseline_color_32/checkpoint下,默認(rèn)保存每個(gè)周期內(nèi)最低acer模型、最后一個(gè)epoch訓(xùn)練結(jié)束的模型和全局最低acer模型,如下圖所示。

          在驗(yàn)證集上測(cè)試模型

          python train_CyclicLR.py --mode infer_test --model baseline --image_mode color --image_size 32 --batch_size 8

          驗(yàn)證集上結(jié)果,ACER=0.0358

          模型效果測(cè)試

          調(diào)用訓(xùn)練好的模型,對(duì)視頻中的人臉進(jìn)行活體檢測(cè)。(也可以檢測(cè)攝像頭前的自己,本項(xiàng)目以視頻文件為例)測(cè)試腳本face_recognize.py參數(shù):--alive_detect_model:活體檢測(cè)模型權(quán)重--key_point_detect_model:關(guān)鍵點(diǎn)檢測(cè)模型,路徑為alive_detect/shape_predictor_68_face_landmarks.dat--detect_vidio:待檢測(cè)的視頻片段存放路徑--detect_res:視頻片段的檢測(cè)結(jié)果存放路徑

          測(cè)試代碼示例:

          python face_recognize.py --alive_detect_model models/baseline_color_32/checkpoint/global_min_acer_model.pth --key_point_detect_model alive_detect/shape_predictor_68_face_landmarks.dat --detect_vidio alive_detect/video_demo.mov --detect_res alive_detect/res_video_demo.avi

          注:--detect_res保存的視頻文件默認(rèn)avi格式,若需要保存其他格式可以自行修改代碼。測(cè)試結(jié)果示例

          擴(kuò)展

          1. 關(guān)于模型訓(xùn)練,可繼續(xù)調(diào)參以期在驗(yàn)證集獲得更好的效果。
          2. 關(guān)于數(shù)據(jù)集,可以使用全部三種模態(tài)的數(shù)據(jù),使用FaceBagNet模型進(jìn)行多模態(tài)人臉活體檢測(cè)模型的訓(xùn)練。已經(jīng)給出相關(guān)代碼,可自行查看。

          數(shù)據(jù)集獲取:https://gas.graviti.cn/dataset/datawhale/CASIA-SURF

          代碼地址:https://github.com/ZJUTSong/Alive_Detect


          極市干貨
          神經(jīng)網(wǎng)絡(luò):視覺(jué)神經(jīng)網(wǎng)絡(luò)模型優(yōu)秀開(kāi)源工作:timm庫(kù)使用方法和最新代碼解讀
          技術(shù)綜述:綜述:神經(jīng)網(wǎng)絡(luò)中 Normalization 的發(fā)展歷程CNN輕量化模型及其設(shè)計(jì)原則綜述
          算法技巧(trick):8點(diǎn)PyTorch提速技巧匯總圖像分類(lèi)算法優(yōu)化技巧


          CV技術(shù)社群邀請(qǐng)函 #

          △長(zhǎng)按添加極市小助手
          添加極市小助手微信(ID : cvmart4)

          備注:姓名-學(xué)校/公司-研究方向-城市(如:小極-北大-目標(biāo)檢測(cè)-深圳)


          即可申請(qǐng)加入極市目標(biāo)檢測(cè)/圖像分割/工業(yè)檢測(cè)/人臉/醫(yī)學(xué)影像/3D/SLAM/自動(dòng)駕駛/超分辨率/姿態(tài)估計(jì)/ReID/GAN/圖像增強(qiáng)/OCR/視頻理解等技術(shù)交流群


          每月大咖直播分享、真實(shí)項(xiàng)目需求對(duì)接、求職內(nèi)推、算法競(jìng)賽、干貨資訊匯總、與 10000+來(lái)自港科大、北大、清華、中科院、CMU、騰訊、百度等名校名企視覺(jué)開(kāi)發(fā)者互動(dòng)交流~



          覺(jué)得有用麻煩給個(gè)在看啦~  


          瀏覽 40
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  69视频看黄片 | 天堂网一区二区三区 | 亚洲伊人影院 | 欧美日韩视频高清 | 国产高清无码在线不卡视频 |