chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

深度學(xué)習(xí)中動作識別網(wǎng)絡(luò)學(xué)習(xí)

英特爾物聯(lián)網(wǎng) ? 來源:英特爾物聯(lián)網(wǎng) ? 作者:英特爾物聯(lián)網(wǎng) ? 2021-06-25 10:32 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

動作識別網(wǎng)絡(luò)

深度學(xué)習(xí)在人體動作識別領(lǐng)域有兩類主要的網(wǎng)絡(luò),一類是基于姿態(tài)評估,基于關(guān)鍵點實現(xiàn)的動作識別網(wǎng)絡(luò);另外一類是直接預(yù)測的動作識別網(wǎng)絡(luò)。關(guān)于姿態(tài)評估相關(guān)的網(wǎng)絡(luò)模型應(yīng)用,我們在前面的文章中已經(jīng)介紹過了。OpenVINO2021.2版本中支持的動作識別網(wǎng)絡(luò)都不是基于關(guān)鍵點輸出的,而是基于Box直接預(yù)測,當(dāng)前支持動作識別的預(yù)訓(xùn)練模型與識別的動作數(shù)目支持列表如下:

12dd20c8-d50f-11eb-9e57-12bb97331649.png

表-1

這些網(wǎng)絡(luò)的輸出都是基于SSD檢測頭實現(xiàn)對象檢測與動作預(yù)測。

輸入與輸出格式

以person-detection-action-recognition-0005模型為例說明它們的輸入與輸出數(shù)據(jù)格式支持,我也不知道什么原因(個人猜測因為Caffe框架的原因),網(wǎng)絡(luò)的輸出居然都是SSD原始檢測頭,怎么解析,我有妙招,稍后送上!先看一下輸入與輸出格式說明:

輸入格式:

格式 NCHW=[1x3x400x680] ,Netron實際查看:

注意:OpenVINO2021.2安裝之后的文檔上格式說明是NHWC

輸出格式:

輸出有七個分支頭的數(shù)據(jù),它們的名稱跟維度格式列表如下:

12f04c16-d50f-11eb-9e57-12bb97331649.png

表-2

關(guān)于輸出格式的解釋,首先是num_priors值是多少,骨干網(wǎng)絡(luò)到SSD輸出頭,是實現(xiàn)了16倍的降采樣,最終輸出的h x w=25x43然后每個特征點預(yù)測4個PriorBox, 每個特征點預(yù)測動作,總計有三類的動作,所以動作預(yù)測輸出為: [b, 3, h, w] = [1x3x25x43],總計PriorBoxes數(shù)目為:num_priors=25x43x4=4300,這些都是SSD檢測頭的原始輸出,沒有非最大抑制,沒有經(jīng)過轉(zhuǎn)換處理,所以想直接解析它們對開發(fā)應(yīng)用的人來說是一個大麻煩!

輸出數(shù)據(jù)解析與處理問題

person-detection-action-recognition-0005網(wǎng)絡(luò)推理之后的輸出數(shù)據(jù)解析跟后處理特別的復(fù)雜,怎么解析原始輸出頭是個技術(shù)活,我從示例代碼中提取跟整理出來兩個C++文件,它們是:

action_detector.h

cnn.h

以及它們的實現(xiàn)文件:

action_detector.cpp

cnn.cpp

這個其中最重要的就是有個ActionDetection類,它有幾個方法,分別是:

void enqueue(const cv::Mat &frame)

void submitRequest()

void wait()

DetectedActions fetchResults()

這幾個方法的解釋分別如下:

enqueue方法的就是實現(xiàn)了推理請求創(chuàng)建與圖像數(shù)據(jù)的輸入設(shè)置,它的代碼實現(xiàn)如下:

if (!request) {

request = net_.CreateInferRequestPtr();

}

width_ = static_cast《float》(frame.cols);

height_ = static_cast《float》(frame.rows);

Blob::Ptr inputBlob = request-》GetBlob(input_name_);

matU8ToBlob《uint8_t》(frame, inputBlob);

enqueued_frames_ = 1;

submitRequest方法,就是執(zhí)行推理,支持同步與異步推理執(zhí)行模型,它的代碼實現(xiàn)如下:

if (request == nullptr) return;

if (isAsync) {

request-》StartAsync();

}

else {

request-》Infer();

}

wait方法,當(dāng)同步推理時候無需調(diào)用,異步推理調(diào)用

fetchResults方法,該方法是推理過程中最復(fù)雜的部分,負(fù)責(zé)解析輸出的七個分支數(shù)據(jù),生成Box與action標(biāo)簽預(yù)測。簡單的說它的執(zhí)行過程是這樣,首先獲取輸出的七個輸出數(shù)據(jù),然后轉(zhuǎn)換為基于Mat的數(shù)據(jù),然后循環(huán)每個特征圖的特征點預(yù)測Box與置信得分,大于閾值的置信得分對應(yīng)的預(yù)測Box與PriorBox計算真實的BOX坐標(biāo),同時閾值化處理Action的置信得分,最終對結(jié)果完整非最大抑制之后輸出,得到數(shù)據(jù)結(jié)構(gòu)為:

struct DetectedAction {

/** @brief BBox of detection */

cv::Rect rect;

/** @brief Action label */

int label;

/** @brief Confidence of detection */

float detection_conf;

/** @brief Confidence of predicted action */

float action_conf;

這樣就完成了對輸出的數(shù)據(jù)解析。

這個就是上述四個相關(guān)依賴文件,我已經(jīng)把其他不相關(guān)的或者非必要的依賴全部去掉,基于這四個相關(guān)文件,就可以實現(xiàn)對表-1中動作識別模型的推理與解析輸出顯示。

動作識別代碼演示

動作識別代碼演示基于person-detection-action-recognition-0005網(wǎng)絡(luò)模型完成,該模型是基于室內(nèi)場景數(shù)據(jù)訓(xùn)練生成的,適合于教育智慧教室應(yīng)用場景。首先需要初始化動作檢測類與初始化推理引擎加載,然后配置動作檢測類的相關(guān)參數(shù),這些參數(shù)主要包括以下:

- 模型的權(quán)重文件路徑

- 推理引擎的計算設(shè)備支持

- 對象檢測閾值

- 動作預(yù)測閾值

- 支持動作類別數(shù)目

- 是否支持異步推理

等等。

配置完成之后設(shè)置與初始化ActionDetection類,然后就可以直接調(diào)用上述提到幾個類方法完成整個推理與輸出,根據(jù)輸出結(jié)果繪制與顯示即可,這部分的代碼如下:

cv::Mat frame = cv::imread(“D:/action_001.png”);

InferenceEngine::Core ie;

std::unique_ptr《AsyncDetection《DetectedAction》》 action_detector;

// Load action detector

ActionDetectorConfig action_config(model_xml);

action_config.deviceName = “CPU”;

action_config.ie = ie;

action_config.is_async = false;

action_config.detection_confidence_threshold = 0.1f;

action_config.action_confidence_threshold = 0.1f;

action_config.num_action_classes = 3;

action_detector.reset(new ActionDetection(action_config));

action_detector-》enqueue(frame);

action_detector-》submitRequest();

DetectedActions actions = action_detector-》fetchResults();

std::cout 《《 actions.size() 《《 std::endl;

for (int i = 0; i 《 actions.size(); i++) {

std::cout 《《 actions[i].rect 《《 std::endl;

std::cout 《《 actions[i].label 《《 std::endl;

cv::rectangle(frame, actions[i].rect, cv::Scalar(0, 0, 255), 2, 8, 0);

putText(frame, action_text_labels[actions[i].label], actions[i].rect.tl(), cv::FONT_HERSHEY_SIMPLEX, 0.75, cv::Scalar(0, 0, 255), 2, 8);

}

cv::imshow(“動作識別演示”, frame);

cv::waitKey(0);

return 0;

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴

原文標(biāo)題:OpenVINO? 室內(nèi)動作識別

文章出處:【微信號:英特爾物聯(lián)網(wǎng),微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    深度學(xué)習(xí)賦能:正面吊車載箱號識別系統(tǒng)的核心技術(shù)

    在現(xiàn)代物流與智慧港口建設(shè),集裝箱的高效精準(zhǔn)識別是提升作業(yè)效率的關(guān)鍵環(huán)節(jié)?;贠CR+AI深度學(xué)習(xí)技術(shù)的正面吊車載箱號識別系統(tǒng),憑借99%以
    的頭像 發(fā)表于 05-07 10:10 ?196次閱讀

    軍事應(yīng)用深度學(xué)習(xí)的挑戰(zhàn)與機遇

    ,并廣泛介紹了深度學(xué)習(xí)在兩個主要軍事應(yīng)用領(lǐng)域的應(yīng)用:情報行動和自主平臺。最后,討論了相關(guān)的威脅、機遇、技術(shù)和實際困難。主要發(fā)現(xiàn)是,人工智能技術(shù)并非無所不能,需要謹(jǐn)慎應(yīng)用,同時考慮到其局限性、網(wǎng)絡(luò)安全威脅以及
    的頭像 發(fā)表于 02-14 11:15 ?538次閱讀

    BP神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)的關(guān)系

    BP神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)之間存在著密切的關(guān)系,以下是對它們之間關(guān)系的介紹: 一、BP神經(jīng)網(wǎng)絡(luò)的基本概念 BP神經(jīng)網(wǎng)絡(luò),即反向傳播神經(jīng)
    的頭像 發(fā)表于 02-12 15:15 ?855次閱讀

    GPU在深度學(xué)習(xí)的應(yīng)用 GPUs在圖形設(shè)計的作用

    隨著人工智能技術(shù)的飛速發(fā)展,深度學(xué)習(xí)作為其核心部分,已經(jīng)成為推動技術(shù)進步的重要力量。GPU(圖形處理單元)在深度學(xué)習(xí)扮演著至關(guān)重要的角色,
    的頭像 發(fā)表于 11-19 10:55 ?1618次閱讀

    深度學(xué)習(xí)的卷積神經(jīng)網(wǎng)絡(luò)模型

    深度學(xué)習(xí)近年來在多個領(lǐng)域取得了顯著的進展,尤其是在圖像識別、語音識別和自然語言處理等方面。卷積神經(jīng)網(wǎng)絡(luò)作為
    的頭像 發(fā)表于 11-15 14:52 ?845次閱讀

    深度學(xué)習(xí)RNN的優(yōu)勢與挑戰(zhàn)

    循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)是深度學(xué)習(xí)領(lǐng)域中處理序列數(shù)據(jù)的基石。它們通過在每個時間步長上循環(huán)傳遞信息,使得網(wǎng)絡(luò)能夠捕捉時間序列數(shù)據(jù)的長期依賴關(guān)系
    的頭像 發(fā)表于 11-15 09:55 ?1322次閱讀

    NPU在深度學(xué)習(xí)的應(yīng)用

    隨著人工智能技術(shù)的飛速發(fā)展,深度學(xué)習(xí)作為其核心驅(qū)動力之一,已經(jīng)在眾多領(lǐng)域展現(xiàn)出了巨大的潛力和價值。NPU(Neural Processing Unit,神經(jīng)網(wǎng)絡(luò)處理單元)是專門為深度
    的頭像 發(fā)表于 11-14 15:17 ?1907次閱讀

    pcie在深度學(xué)習(xí)的應(yīng)用

    深度學(xué)習(xí)模型通常需要大量的數(shù)據(jù)和強大的計算能力來訓(xùn)練。傳統(tǒng)的CPU計算資源有限,難以滿足深度學(xué)習(xí)的需求。因此,GPU(圖形處理單元)和TPU(張量處理單元)等專用硬件應(yīng)運而生,它們通過
    的頭像 發(fā)表于 11-13 10:39 ?1344次閱讀

    GPU深度學(xué)習(xí)應(yīng)用案例

    GPU在深度學(xué)習(xí)的應(yīng)用廣泛且重要,以下是一些GPU深度學(xué)習(xí)應(yīng)用案例: 一、圖像識別 圖像
    的頭像 發(fā)表于 10-27 11:13 ?1362次閱讀

    激光雷達(dá)技術(shù)的基于深度學(xué)習(xí)的進步

    信息。這使得激光雷達(dá)在自動駕駛、無人機、機器人等領(lǐng)域具有廣泛的應(yīng)用前景。 二、深度學(xué)習(xí)技術(shù)的發(fā)展 深度學(xué)習(xí)是機器學(xué)習(xí)的一個分支,它通過模擬人
    的頭像 發(fā)表于 10-27 10:57 ?1065次閱讀

    AI大模型與深度學(xué)習(xí)的關(guān)系

    AI大模型與深度學(xué)習(xí)之間存在著密不可分的關(guān)系,它們互為促進,相輔相成。以下是對兩者關(guān)系的介紹: 一、深度學(xué)習(xí)是AI大模型的基礎(chǔ) 技術(shù)支撐 :深度
    的頭像 發(fā)表于 10-23 15:25 ?2884次閱讀

    FPGA做深度學(xué)習(xí)能走多遠(yuǎn)?

    的性能和效率。同時,也可能會出現(xiàn)一些新的基于 FPGA 的深度學(xué)習(xí)算法創(chuàng)新,拓展其應(yīng)用領(lǐng)域。 ? 應(yīng)用領(lǐng)域的拓展:除了在圖像識別、語音處理、自動駕駛等領(lǐng)域的應(yīng)用,F(xiàn)PGA 在
    發(fā)表于 09-27 20:53

    深度識別算法包括哪些內(nèi)容

    深度識別算法是深度學(xué)習(xí)領(lǐng)域的一個重要組成部分,它利用深度神經(jīng)網(wǎng)絡(luò)模型對輸入數(shù)據(jù)進行高層次的理解和
    的頭像 發(fā)表于 09-10 15:28 ?841次閱讀

    深度識別人臉識別有什么重要作用嗎

    深度學(xué)習(xí)人臉識別技術(shù)是人工智能領(lǐng)域的一個重要分支,它利用深度學(xué)習(xí)算法來識別和驗證個人身份。這項技
    的頭像 發(fā)表于 09-10 14:55 ?1141次閱讀

    深度識別人臉識別在任務(wù)為什么有很強大的建模能力

    深度學(xué)習(xí)人臉識別技術(shù)是人工智能領(lǐng)域中的一個重要分支,它利用深度學(xué)習(xí)算法來識別和驗證人臉。這項技術(shù)
    的頭像 發(fā)表于 09-10 14:53 ?837次閱讀