哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

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

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

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

深度學習中動作識別網(wǎng)絡學習

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

掃碼添加小助手

加入工程師交流群

動作識別網(wǎng)絡

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

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

表-1

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

輸入與輸出格式

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

輸入格式:

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

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

輸出格式:

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

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

表-2

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

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

person-detection-action-recognition-0005網(wǎng)絡推理之后的輸出數(shù)據(jù)解析跟后處理特別的復雜,怎么解析原始輸出頭是個技術(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ù)的輸入設置,它的代碼實現(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方法,當同步推理時候無需調(diào)用,異步推理調(diào)用

fetchResults方法,該方法是推理過程中最復雜的部分,負責解析輸出的七個分支數(shù)據(jù),生成Box與action標簽預測。簡單的說它的執(zhí)行過程是這樣,首先獲取輸出的七個輸出數(shù)據(jù),然后轉(zhuǎn)換為基于Mat的數(shù)據(jù),然后循環(huán)每個特征圖的特征點預測Box與置信得分,大于閾值的置信得分對應的預測Box與PriorBox計算真實的BOX坐標,同時閾值化處理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)絡模型完成,該模型是基于室內(nèi)場景數(shù)據(jù)訓練生成的,適合于教育智慧教室應用場景。首先需要初始化動作檢測類與初始化推理引擎加載,然后配置動作檢測類的相關(guān)參數(shù),這些參數(shù)主要包括以下:

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

- 推理引擎的計算設備支持

- 對象檢測閾值

- 動作預測閾值

- 支持動作類別數(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;

責任編輯:haq

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

    關(guān)注

    73

    文章

    5607

    瀏覽量

    124629

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

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

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

掃碼添加小助手

加入工程師交流群

    評論

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

    人工智能-Python深度學習進階與應用技術(shù):工程師高培解讀

    深度學習的工程化落地,早已不是紙上談兵的事。從卷積神經(jīng)網(wǎng)絡到Transformer,從目標檢測到大模型私有化部署,技術(shù)棧不斷延伸,工程師面臨的知識體系也越來越龐雜。現(xiàn)根據(jù)際賽威工程師
    的頭像 發(fā)表于 04-21 11:01 ?303次閱讀
    人工智能-Python<b class='flag-5'>深度</b><b class='flag-5'>學習</b>進階與應用技術(shù):工程師高培解讀

    深度學習驅(qū)動的超構(gòu)表面設計進展及其在全息成像的應用

    可實現(xiàn)高質(zhì)量圖像的獲取?;谏窠?jīng)網(wǎng)絡深度學習方法進行超構(gòu)表面設計的文章數(shù)量日益增多,但關(guān)于該主題的綜述仍較為匱乏。據(jù)麥姆斯咨詢報道,近期,中國計量大學田穎教授等人
    的頭像 發(fā)表于 04-09 13:55 ?134次閱讀
    <b class='flag-5'>深度</b><b class='flag-5'>學習</b>驅(qū)動的超構(gòu)表面設計進展及其在全息成像<b class='flag-5'>中</b>的應用

    機器學習深度學習需避免的 7 個常見錯誤與局限性

    無論你是剛?cè)腴T還是已經(jīng)從事人工智能模型相關(guān)工作一段時間,機器學習深度學習中都存在一些我們需要時刻關(guān)注并銘記的常見錯誤。如果對這些錯誤置之不理,日后可能會引發(fā)諸多麻煩!只要我們密切關(guān)注數(shù)據(jù)、模型架構(gòu)
    的頭像 發(fā)表于 01-07 15:37 ?349次閱讀
    機器<b class='flag-5'>學習</b>和<b class='flag-5'>深度</b><b class='flag-5'>學習</b><b class='flag-5'>中</b>需避免的 7 個常見錯誤與局限性

    穿孔機頂頭檢測儀 機器視覺深度學習

    ,能適用惡劣工況,在粉塵、高溫、氧化皮等惡劣環(huán)境均可正常工作。 測量原理 利用頂頭與周圍的物質(zhì)(水、空氣、導盤等)紅外輻射能量的差異,用熱成像相機拍攝出清晰的圖片,再通過深度學習短時間內(nèi)深度
    發(fā)表于 12-22 14:33

    如何深度學習機器視覺的應用場景

    檢測應用 微細缺陷識別:檢測肉眼難以發(fā)現(xiàn)的微小缺陷和異常 紋理分析:對材料表面紋理進行智能分析和缺陷識別 3D表面重建:通過深度學習進行高精度3D建模和檢測 電子行業(yè)應用 PCB板復雜
    的頭像 發(fā)表于 11-27 10:19 ?328次閱讀

    如何在機器視覺中部署深度學習神經(jīng)網(wǎng)絡

    圖 1:基于深度學習的目標檢測可定位已訓練的目標類別,并通過矩形框(邊界框)對其進行標識。 在討論人工智能(AI)或深度學習時,經(jīng)常會出現(xiàn)“神經(jīng)網(wǎng)絡
    的頭像 發(fā)表于 09-10 17:38 ?1049次閱讀
    如何在機器視覺中部署<b class='flag-5'>深度</b><b class='flag-5'>學習</b>神經(jīng)<b class='flag-5'>網(wǎng)絡</b>

    深度學習對工業(yè)物聯(lián)網(wǎng)有哪些幫助

    深度學習作為人工智能的核心分支,通過模擬人腦神經(jīng)網(wǎng)絡的層級結(jié)構(gòu),能夠自動從海量工業(yè)數(shù)據(jù)中提取復雜特征,為工業(yè)物聯(lián)網(wǎng)(IIoT)提供了從數(shù)據(jù)感知到智能決策的全鏈路升級能力。以下從技術(shù)賦能、場景突破
    的頭像 發(fā)表于 08-20 14:56 ?1205次閱讀

    自動駕駛Transformer大模型會取代深度學習嗎?

    [首發(fā)于智駕最前沿微信公眾號]近年來,隨著ChatGPT、Claude、文心一言等大語言模型在生成文本、對話交互等領(lǐng)域的驚艷表現(xiàn),“Transformer架構(gòu)是否正在取代傳統(tǒng)深度學習”這一話題一直被
    的頭像 發(fā)表于 08-13 09:15 ?4367次閱讀
    自動駕駛<b class='flag-5'>中</b>Transformer大模型會取代<b class='flag-5'>深度</b><b class='flag-5'>學習</b>嗎?

    深度學習遇上嵌入式資源困境,特征空間如何破局?

    多層神經(jīng)網(wǎng)絡的非線性變換擬合規(guī)律,理論上幾乎可以描述和模擬一切規(guī)律,但實際上該過程效率極低 —— 其計算復雜度往往呈指數(shù)級增長。這一特性使得深度學習與端側(cè)設備的資源約束存在根本性矛盾,導致其在端側(cè) AI 實施過程
    發(fā)表于 07-14 14:50 ?1323次閱讀
    當<b class='flag-5'>深度</b><b class='flag-5'>學習</b>遇上嵌入式資源困境,特征空間如何破局?

    使用MATLAB進行無監(jiān)督學習

    無監(jiān)督學習是一種根據(jù)未標注數(shù)據(jù)進行推斷的機器學習方法。無監(jiān)督學習旨在識別數(shù)據(jù)隱藏的模式和關(guān)系,無需任何監(jiān)督或關(guān)于結(jié)果的先驗知識。
    的頭像 發(fā)表于 05-16 14:48 ?1600次閱讀
    使用MATLAB進行無監(jiān)督<b class='flag-5'>學習</b>

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

    在現(xiàn)代物流與智慧港口建設,集裝箱的高效精準識別是提升作業(yè)效率的關(guān)鍵環(huán)節(jié)。基于OCR+AI深度學習技術(shù)的正面吊車載箱號識別系統(tǒng),憑借99%以
    的頭像 發(fā)表于 05-07 10:10 ?672次閱讀
    改则县| 安龙县| 锡林郭勒盟| 汉寿县| 渝北区| 惠安县| 无极县| 贵阳市| 宜阳县| 科技| 开阳县| 抚州市| 迁安市| 清远市| 梅河口市| 综艺| 大渡口区| 永修县| 高雄县| 栖霞市| 柞水县| 徐汇区| 罗江县| 娄烦县| 奉新县| 洛扎县| 宁武县| 舞阳县| 宁强县| 赤峰市| 余江县| 桂平市| 都兰县| 承德市| 五河县| 五指山市| 文化| 奉贤区| 莱阳市| 邻水| 合水县|