干貨 | 基于 OpenVINO 的交互式人臉檢測演示
Created by Openvino Technical Support
Copyright ? Openvino community Technical Support Team. This material, including documentation and any related computer programs, is protected by copyright controlled by Openvino community Technical Support Team. All rights are reserved. Copying, including reproducing, storing, adapting or translating, any or all of this material requires the prior written consent of Openvino community Technical Support Team.
前言
本文主要針對英特Openvino提供的開(kāi)源模型演示交互式人臉檢測應用:展示了使用神經(jīng)網(wǎng)絡(luò )應用于面部識別的對象檢測任務(wù)。該演示執行了四個(gè)并行推理過(guò)程,用于同時(shí)運行的“年齡/性別識別”,“頭部姿勢估計”,“情緒識別”和“面部標志檢測”網(wǎng)絡(luò )。在本應用的演示中使用以下5個(gè)預訓練的模型。
交互式人臉檢測模型設計5個(gè)預訓練模型,具體如下: face-detection-adas-0001,這是查找人臉的主要檢測網(wǎng)絡(luò ) age-gender-recognition-retail-0013,它會(huì )在第一個(gè)模型的結果之上執行,并報告檢測到的每個(gè)面孔的估計年齡和性別 head-pose-estimation-adas-0001在第一個(gè)模型的結果之上執行,并報告以Tait-Bryan角度估計的頭部姿勢 emotions-recognition-retail-0003,它會(huì )在第一個(gè)模型的結果之上執行,并報告每個(gè)檢測到的臉部的情緒 facial-landmarks-35-adas-0002,它是在第一個(gè)模型的結果之上執行的,并報告估計的面部標志的標準化坐標 -模型使用目的和下載鏈接 通過(guò)OpenCV 提供視頻輸入支持 通過(guò)人臉檢測網(wǎng)絡(luò )可視化生成的人臉邊界框 可視化每個(gè)檢測到的臉部的年齡/性別,頭部姿勢,情感信息和面部標志位置 模型(bin文件和xml文件)下載鏈接(本文以FP16為例,其他格式模型應用可以參考本文)
a) 通過(guò)OpenCV 提供視頻輸入支持 b) 通過(guò)人臉檢測網(wǎng)絡(luò )可視化生成的人臉邊界框 c) 可視化每個(gè)檢測到的臉部的年齡/性別,頭部姿勢,情感信息和面部標志位置 d) 模型(bin文件和xml文件)下載鏈接(本文以FP16為例,其他格式模型應用可以參考本文)
序號 | 模型名稱(chēng) | 鏈接 |
---|---|---|
1 | face-detection-adas-0001 | https://download.01.org/opencv/2020/openvinotoolkit/2020.2/open_model_zoo/models_bin/2/face-detection-adas-0001/FP16/ |
2 | age-gender-recognition-retail-0013 | https://download.01.org/opencv/2020/openvinotoolkit/2020.2/open_model_zoo/models_bin/2/age-gender-recognition-retail-0013/FP16/ |
3 | head-pose-estimation-adas-0001 | https://download.01.org/opencv/2020/openvinotoolkit/2020.2/open_model_zoo/models_bin/2/ head-pose-estimation-adas-0001/FP16/ |
4 emotions-recognition-retail-0003 https://download.01.org/opencv/2020/openvinotoolkit/2020.2/open_model_zoo/models_bin/2/ emotions-recognition-retail-0003/FP16/ 5 The Godfatherfacial-landmarks-35-adas-0002 https://download.01.org/opencv/2020/openvinotoolkit/2020.2/open_model_zoo/models_bin/2/ facial-landmarks-35-adas-0002/FP16/
運行模型的方法
a) 該應用程序讀取命令行參數,并根據推理引擎的選項最多加載五個(gè)網(wǎng)絡(luò )。 b) 該應用程序從OpenCV VideoCapture獲取幀(可以通過(guò)攝像頭也可以通過(guò)視頻)。 c) 該應用程序在人臉檢測網(wǎng)絡(luò )上執行推理。 d) 如果在命令行中指定了年齡/性別,頭姿勢,情緒和面部地標檢測網(wǎng)絡(luò ),則應用程序將同時(shí)執行四個(gè)推斷。 e) 可以使用異步API新的“推斷請求”。
使用該-h選項運行應用程序會(huì )輸出幫助信息: ./interactive_face_detection_demo -h 推理引擎: API版本............ <版本> 構建.................. <數字> Interactive_face_detection_demo [OPTION] 選項: -h打印用法消息 -i“ <路徑>”是必需的。視頻文件的路徑(指定“ cam”以用于攝像機)。 -o“ <路徑>”可選。輸出視頻文件的路徑。 -m“ <路徑>”必需。具有經(jīng)過(guò)訓練的人臉檢測模型的.xml文件的路徑。 -m_ag“ <路徑>”可選。具有經(jīng)過(guò)訓練的年齡/性別識別模型的.xml文件的路徑。 -m_hp“ <路徑>”可選。具有經(jīng)過(guò)訓練的頭部姿勢估計模型的.xml文件的路徑。 -m_em“ <路徑>”可選。具有經(jīng)過(guò)訓練的情緒識別模型的.xml文件的路徑。 -m_lm“ <路徑>”可選。具有經(jīng)過(guò)訓練的面部地標估計模型的.xml文件的路徑。 -l“ <absolute_path>”對于CPU自定義層是必需的。使用內核實(shí)現的共享庫的絕對路徑。 要么 -c“ <absolute_path>”是GPU自定義內核所必需的。具有內核描述的.xml文件的絕對路徑。 -d“ <設備>”可選。人臉檢測網(wǎng)絡(luò )的目標設備(可用設備列表如下所示)。默認值為CPU。使用“ -d HETERO:<逗號分隔的設備列表>”格式來(lái)指定HETERO插件。該演示將為指定的設備尋找合適的插件。 -d_ag“ <設備>”可選。年齡/性別識別網(wǎng)絡(luò )的目標設備(可用設備列表如下所示)。默認值為CPU。使用“ -d HETERO:<逗號分隔的設備列表>”格式來(lái)指定HETERO插件。該演示將為指定的設備尋找合適的插件。 -d_hp“ <設備>”可選。頭部姿勢估計網(wǎng)絡(luò )的目標設備(可用設備列表如下所示)。默認值為CPU。使用“ -d HETERO:<逗號分隔的設備列表>”格式來(lái)指定HETERO插件。該演示將為指定的設備尋找合適的插件。 -d_em“ <設備>”可選。情緒識別網(wǎng)絡(luò )的目標設備(可用設備列表如下所示)。默認值為CPU。使用“ -d HETERO:<逗號分隔的設備列表>”格式來(lái)指定HETERO插件。該演示將為指定的設備尋找合適的插件。 -d_lm“ <設備>”可選。面部地標估計網(wǎng)絡(luò )的目標設備(可用設備列表如下所示)。默認值為CPU。使用“ -d HETERO:<逗號分隔的設備列表>”格式來(lái)指定HETERO插件。該演示將為指定的設備尋找合適的插件。 -n_ag“ <num>”可選。年齡/性別識別網(wǎng)絡(luò )最多可同時(shí)處理的面部數量(默認為16) -n_hp“ <num>”可選。頭部姿勢估計網(wǎng)絡(luò )的最大同時(shí)處理的面部數(默認為16) -n_em“ <num>”可選。情緒識別網(wǎng)絡(luò )可同時(shí)處理的最大臉數(默認為16) -n_lm“ <num>”可選?!叭四樀貥斯烙嫛本W(wǎng)絡(luò )最多可同時(shí)處理的人臉數量(默認為16) -dyn_ag可選。為年齡/性別識別網(wǎng)絡(luò )啟用動(dòng)態(tài)批量大小 -dyn_hp可選。為“頭姿勢估計”網(wǎng)絡(luò )啟用動(dòng)態(tài)批次大小 -dyn_em可選。為情緒識別網(wǎng)絡(luò )啟用動(dòng)態(tài)批量大小 -dyn_lm可選。為面部地標估計網(wǎng)絡(luò )啟用動(dòng)態(tài)批量 -async可選。啟用異步模式 -no_wait可選。不后的按鍵要等待最。 -no_show可選。不顯示已處理的視頻。 -pc可選。啟用每層性能報告 -r可選。將推斷結果輸出為原始值 -t可選。檢測的概率閾值 -bb_enlarge_coef可選。放大/縮小檢測到的面部周?chē)倪吙虺叽绲南禂?/span> -dx_coef可選。使邊界框沿檢測軸沿Ox軸移動(dòng)的系數 -dy_coef可選。沿Oy軸圍繞檢測到的臉部移動(dòng)邊界框的系數 -fps可選。播放視頻的最大FPS -loop_video可選。啟用循環(huán)播放視頻 -no_smooth可選。不平滑人物屬性 -no_show_emotion_bar可選。不顯示情緒吧 -u可選。最初顯示的監視器列表。 在選項列表為空的情況下運行應用程序會(huì )產(chǎn)生上面給出的用法消息和錯誤消息。 注意:在使用經(jīng)過(guò)訓練的模型運行演示之前,請確保下載openvino模型推理引擎格式(* .xml + * .bin)。
a) 打開(kāi)命令行窗口,設置環(huán)境變量并測試是否可以成功導入opencv cd “C:Program Files (x86)IntelSWToolsopenvinobin” setupvars.bat python import cv2 b) 找到安裝路徑下的interactive_face_detection_demo目錄 C:UsersxxxDocumentsIntelOpenVINOomz_demos_buildintel64Releaseinteractive_face_detection_demo.exe c) 確保5個(gè)pre-trained模型下載成功 face-detection-adas-0001l age-gender-recognition-retail-0013 head-pose-estimation-adas-0001 emotions-recognition-retail-0003 facial-landmarks-35-adas-0002 d) 理解參數,創(chuàng )建face-age-emotion-head.bat,并Run bat文件 C:UsersxxxDocumentsIntelOpenVINOomz_demos_buildintel64Releaseinteractive_face_detection_demo.exe ^ -m C:mydownloadintelface-detection-retail-0004FP16face-detection-retail-0004.xml ^ -m_ag C:mydownloadintelage-gender-recognition-retail-0013FP16age-gender-recognition-retail-0013.xml ^ -m_em C:mydownloadintelemotions-recognition-retail-0003FP16emotions-recognition-retail-0003.xml ^ -m_lm C:mydownloadintelfacial-landmarks-35-adas-0002FP16facial-landmarks-35-adas-0002.xml ^ -m_hp C:mydownloadintelhead-pose-estimation-adas-0001FP16head-pose-estimation-adas-0001.xml ^ #-i "cam" ^(使用攝像頭) -i C:Tempsample-videos-masterfbb.avi ^(使用視頻文件) -d CPU ^ -d_ag CPU ^ -d_em CPU ^ -d_lm MYRIAD ^(如果有,使用intel 2代神經(jīng)計算棒) -d_hp CPU ^ e) 結果輸出(以在CPU推斷為例)
評論