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

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

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

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

瑞芯微(EASY EAI)RV1126B 人體關(guān)鍵點(diǎn)識(shí)別

廣州靈眸科技有限公司 ? 2026-01-23 10:13 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. 人體關(guān)鍵點(diǎn)識(shí)別簡(jiǎn)介

人體關(guān)鍵點(diǎn)識(shí)別是一種基于深度學(xué)習(xí)的對(duì)人進(jìn)行檢測(cè)定位與姿勢(shì)估計(jì)的模型,廣泛應(yīng)用于體育分析、動(dòng)物行為監(jiān)測(cè)和機(jī)器人等領(lǐng)域,幫助機(jī)器實(shí)時(shí)解讀物理動(dòng)作。本算法具有運(yùn)行效率高、實(shí)時(shí)性強(qiáng)的特點(diǎn)。

本人員檢測(cè)算法在數(shù)據(jù)集表現(xiàn)如下所示:

v2-8e98634f9a76dea635681674a0c6f58a_720w.webp

基于EASY-EAI-Nano-TB(RV1126B)硬件主板的運(yùn)行效率:

v2-5c40b7ca81d033ddb29ef5fe9621e7ac_720w.webp

17個(gè)人體關(guān)鍵點(diǎn)索引定義:

v2-8d9d180a2b1333b8b8a73383cacacc4e_720w.webp

2. 快速上手

2.1 開(kāi)發(fā)環(huán)境準(zhǔn)備

如果您初次閱讀此文檔,請(qǐng)閱讀《入門(mén)指南/開(kāi)發(fā)環(huán)境準(zhǔn)備/Easy-Eai編譯環(huán)境準(zhǔn)備與更新》,并按照其相關(guān)的操作,進(jìn)行編譯環(huán)境的部署。

在PC端Ubuntu系統(tǒng)中執(zhí)行run腳本,進(jìn)入EASY-EAI編譯環(huán)境,具體如下所示。

cd ~/develop_environment ./run.sh 2204

v2-e1127efd76bcca3331922be6d17e546f_720w.webp

2.2 源碼下載

在EASY-EAI編譯環(huán)境下創(chuàng)建存放源碼倉(cāng)庫(kù)的管理目錄:

cd /opt mkdir EASY-EAI-Toolkit cd EASY-EAI-Toolkit

通過(guò)git工具,在管理目錄內(nèi)克隆遠(yuǎn)程倉(cāng)庫(kù)

git clone https://github.com/EASY-EAI/EASY-EAI-Toolkit-1126B.git

v2-67d8e73ccfe13280db05364195d1679f_720w.webp

注:

* 此處可能會(huì)因網(wǎng)絡(luò)原因造成卡頓,請(qǐng)耐心等待。

* 如果實(shí)在要在gitHub網(wǎng)頁(yè)上下載,也要把整個(gè)倉(cāng)庫(kù)下載下來(lái),不能單獨(dú)下載本實(shí)例對(duì)應(yīng)的目錄。

2.3 模型部署

要完成算法Demo的執(zhí)行,需要先下載人體關(guān)鍵點(diǎn)檢測(cè)算法模型。

百度網(wǎng)盤(pán)鏈接為:https://pan.baidu.com/s/13BsL5MZ4NQ8jDDe-5WLXDw?pwd=1234(提取碼:1234 )。

v2-57d70d817362f8e219435c67ec2dfd5d_720w.webp

同時(shí)需要把下載的人體關(guān)鍵點(diǎn)檢測(cè)算法模型復(fù)制粘貼到Release/目錄:

v2-651d4b8a2f00772217babab89377b45f_720w.webp

2.4 例程編譯

進(jìn)入到對(duì)應(yīng)的例程目錄執(zhí)行編譯操作,具體命令如下所示:

cd EASY-EAI-Toolkit-1126B/Demos/algorithm-person_pose/ ./build.sh cpres

注:

* 由于依賴(lài)庫(kù)部署在板卡上,因此交叉編譯過(guò)程中必須保持/mnt掛載。

* 若build.sh腳本帶有cpres參數(shù),則會(huì)把Release/目錄下的所有資源都拷貝到開(kāi)發(fā)板上。

v2-21dc694006096fcbe2c2efe340c87651_720w.webp

2.5 例程運(yùn)行及效果

通過(guò)串口調(diào)試或ssh調(diào)試,進(jìn)入板卡后臺(tái),定位到例程部署的位置,如下所示:

cd /userdata/Demo/algorithm-person_pose/

v2-df370f73e0bf17454fe5ac7c7e970ffd_720w.webp

運(yùn)行例程命令如下所示:

sudo ./test-person_pose person_pose_m.model test.jpg

v2-4f0f14c1decb15fbab1042e486365815_720w.webp

在EASY-EAI編譯環(huán)境可以取回測(cè)試圖片:

cp /mnt/userdata/Demo/algorithm-person_pose/result.jpg .

v2-2665010f3db626110b98c749ab17b21f_720w.webp

結(jié)果圖片如下所示:

v2-641b13ed29c22c9e7a4a1b004079e4ad_720w.webp

API的詳細(xì)說(shuō)明,以及API的調(diào)用(本例程源碼),詳細(xì)信息見(jiàn)下方說(shuō)明。

3. 人體關(guān)鍵點(diǎn)檢測(cè)API說(shuō)明

3.1 引用方式

為方便客戶(hù)在本地工程中直接調(diào)用我們的EASY EAI api庫(kù),此處列出工程中需要鏈接的庫(kù)以及頭文件等,方便用戶(hù)直接添加。

v2-0dbb8d64b46aa969826afc4626c63637_720w.webp

3.2 人體關(guān)鍵點(diǎn)識(shí)別初始化函數(shù)

人體關(guān)鍵點(diǎn)識(shí)別初始化函數(shù)原型如下所示。

int person_pose_init(const char *c, person_pose_context_t *p_person_pose, int cls_num)

具體介紹如下所示。

v2-26e57a86515d6c0e50fdf3d94c203e7c_720w.webp

3.3 人體關(guān)鍵點(diǎn)識(shí)別運(yùn)行函數(shù)

人體關(guān)鍵點(diǎn)識(shí)別運(yùn)行函數(shù)person_pose_run原型如下所示。

std::vector person_pose_run(cv::Mat image, person_pose_context_t *p_person_pose, float nms_threshold, float conf_threshold);

具體介紹如下所示。

v2-5146db8577c536f750f68790b467b0d2_720w.webp

3.4 人體關(guān)鍵點(diǎn)識(shí)別釋放函數(shù)

人體關(guān)鍵點(diǎn)識(shí)別釋放函數(shù)原型如下所示。

int person_pose_release(person_pose_context_t* p_person_pose)

具體介紹如下所示。

v2-72d4df529968b99f1b99dcfe13e2a17a_720w.webp

4. 人體關(guān)鍵識(shí)別算法例程

例程目錄為Demos/algorithm-person_pose/test-person_pose.cpp,操作流程如下。

v2-9060feceef34f5011d569d1d5b4a4a05_720w.webp

參考例程如下所示。

#include #include #include #include #include "person_pose.h" #include // 畫(huà)線 cv::Mat draw_line(cv::Mat image, float *key1, float *key2, cv::Scalar color) { if (key1[2] > 0.1 && key2[2] > 0.1) { cv::Point pt1(key1[0], key1[1]); cv::Point pt2(key2[0], key2[1]); cv::circle(image, pt1, 2, color, 2); cv::circle(image, pt2, 2, color, 2); cv::line(image, pt1, pt2, color, 2); } return image; } // 繪制結(jié)果: // 0鼻子, 1左眼, 2右眼,3左耳,4右耳,5左肩,6右肩,7左肘,8右肘,9左腕,10右腕,11左髖關(guān)節(jié),12右髖關(guān)節(jié),13左膝,14右膝,15左腳踝,16右腳踝 cv::Mat draw_image(cv::Mat image, std::vector results) { long unsigned int i =0; for (i = 0; i < results.size(); i++) { // 繪制臉部 image = draw_line(image, results[i].keypoints[0], results[i].keypoints[1], CV_RGB(0, 255, 0)); image = draw_line(image, results[i].keypoints[0], results[i].keypoints[2], CV_RGB(0, 255, 0)); image = draw_line(image, results[i].keypoints[1], results[i].keypoints[3], CV_RGB(0, 255, 0)); image = draw_line(image, results[i].keypoints[2], results[i].keypoints[4], CV_RGB(0, 255, 0)); image = draw_line(image, results[i].keypoints[3], results[i].keypoints[5], CV_RGB(0, 255, 0)); image = draw_line(image, results[i].keypoints[4], results[i].keypoints[6], CV_RGB(0, 255, 0)); // 繪制上半身 image = draw_line(image, results[i].keypoints[5], results[i].keypoints[6], CV_RGB(0, 0, 255)); image = draw_line(image, results[i].keypoints[5], results[i].keypoints[7], CV_RGB(0, 0, 255)); image = draw_line(image, results[i].keypoints[7], results[i].keypoints[9], CV_RGB(0, 0, 255)); image = draw_line(image, results[i].keypoints[6], results[i].keypoints[8], CV_RGB(0, 0, 255)); image = draw_line(image, results[i].keypoints[8], results[i].keypoints[10], CV_RGB(0, 0, 255)); image = draw_line(image, results[i].keypoints[5], results[i].keypoints[11], CV_RGB(0, 0, 255)); image = draw_line(image, results[i].keypoints[6], results[i].keypoints[12], CV_RGB(0, 0, 255)); image = draw_line(image, results[i].keypoints[11], results[i].keypoints[12], CV_RGB(0, 0, 255)); // 繪制下半身 image = draw_line(image, results[i].keypoints[11], results[i].keypoints[13], CV_RGB(255, 255, 0)); image = draw_line(image, results[i].keypoints[13], results[i].keypoints[15], CV_RGB(255, 255, 0)); image = draw_line(image, results[i].keypoints[12], results[i].keypoints[14], CV_RGB(255, 255, 0)); image = draw_line(image, results[i].keypoints[14], results[i].keypoints[16], CV_RGB(255, 255, 0)); cv::Rect rect(results[i].left, results[i].top, (results[i].right - results[i].left), (results[i].bottom - results[i].top)); cv::rectangle(image, rect, CV_RGB(255, 0, 0), 2); } return image; } /// 主函數(shù) int main(int argc, char **argv) { if (argc != 3) { printf("%s \n", argv[0]); return -1; } const char *p_model_path = argv[1]; const char *p_img_path = argv[2]; printf("Model path = %s, image path = %s\n\n", p_model_path, p_img_path); cv::Mat image = cv::imread(p_img_path); printf("Image size = (%d, %d)\n", image.rows, image.cols); int ret; person_pose_context_t yolo11_pose; memset(&yolo11_pose, 0, sizeof(yolo11_pose)); person_pose_init(p_model_path, &yolo11_pose, 1); double start_time = static_cast(cv::getTickCount()); std::vector results = person_pose_run(image, &yolo11_pose, 0.35, 0.35); double end_time = static_cast(cv::getTickCount()); double time_elapsed = (end_time - start_time) / cv::getTickFrequency() * 1000; std::cout << "person pose run time: " << time_elapsed << " ms" << std::endl; // 繪制結(jié)果 image = draw_image(image, results); cv::imwrite("result.jpg", image); printf("Detect size = %ld\n", results.size()); ret = person_pose_release(&yolo11_pose); return ret; }

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

    關(guān)注

    88

    文章

    11684

    瀏覽量

    218601
  • 瑞芯微
    +關(guān)注

    關(guān)注

    27

    文章

    740

    瀏覽量

    53931
  • EASY-EAI靈眸科技
    +關(guān)注

    關(guān)注

    4

    文章

    64

    瀏覽量

    3479
  • RV1126B
    +關(guān)注

    關(guān)注

    0

    文章

    50

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    全新AI視覺(jué)芯片RV1126B:多場(chǎng)景智能終端方案介紹

    微電子股份有限公司正式推出新一代AI視覺(jué)芯片——RV1126B作為智能視覺(jué)芯片家族中的
    的頭像 發(fā)表于 07-16 17:00 ?4159次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>全新AI視覺(jué)芯片<b class='flag-5'>RV1126B</b>:多場(chǎng)景智能終端方案介紹

    (EASY EAI)RV1126B 音頻輸入

    1.聲卡資源介紹EASY-EAI-Nano-TB僅有一塊由RV1126B主控輸出的聲卡。通過(guò)串口調(diào)試或ssh調(diào)試,可以進(jìn)入開(kāi)發(fā)板終端。執(zhí)行aplay命令查看聲卡相關(guān)的詳細(xì)信息,如下所示
    的頭像 發(fā)表于 12-18 13:41 ?1927次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> 音頻輸入

    (EASY EAI)RV1126B PWM使用

    1.PWM簡(jiǎn)介1.1開(kāi)發(fā)板PWM資源1.2查找PWM節(jié)點(diǎn)rv1126b的pwm資源表如下:【PWM1CH0】對(duì)應(yīng)的是pwm1_4ch_0,寄存地址為20700000?!綪WM1CH1】對(duì)應(yīng)
    的頭像 發(fā)表于 01-06 10:49 ?4879次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b>(<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b>)<b class='flag-5'>RV1126B</b> PWM使用

    如何用RV1126B核心板贏得AI紅利?

    在邊緣AI從概念邁向規(guī)?;涞氐漠?dāng)下,RV1126B處理器以精準(zhǔn)契合場(chǎng)景剛需的技術(shù)優(yōu)勢(shì),為端側(cè)智能提供了強(qiáng)大算力支撐。而飛凌嵌入式FET112
    的頭像 發(fā)表于 01-09 09:41 ?6058次閱讀
    如何用<b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RV1126B</b>核心板贏得AI紅利?

    EASY EAI Nano-TB(RV1126B)開(kāi)發(fā)板試用】+初識(shí)篇

    Nano-TB是靈眸科技研發(fā)的一款應(yīng)用于AIoT領(lǐng)域的開(kāi)發(fā)板,它基于RV1126B處理器,集成了4個(gè)Cortex-A53及獨(dú)立的NEON協(xié)處理器,它支持4K@30fps的H.
    發(fā)表于 10-25 22:06

    EASY EAI Nano-TB(RV1126B)開(kāi)發(fā)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-燈閃

    接上文【EASY EAI Nano-TB(RV1126B)開(kāi)發(fā)板試用】開(kāi)箱測(cè)評(píng) https://pan.baidu.com/s/15pnbJXPN5TrfV2KfsKaZyQ?pwd=1234 打開(kāi)
    發(fā)表于 11-01 21:26

    EASY EAI Nano-TB(RV1126B)開(kāi)發(fā)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈項(xiàng)目

    接上文【EASY EAI Nano-TB(RV1126B)開(kāi)發(fā)板試用】通過(guò)wifi連接,使用ssh登錄EASY EAI Nano-TB(
    發(fā)表于 11-02 18:34

    EASY EAI Nano-TB(RV1126B)開(kāi)發(fā)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈按鈕項(xiàng)目

    0接上文【EASY EAI Nano-TB(RV1126B)開(kāi)發(fā)板試用】命令行功能測(cè)試-shell腳本進(jìn)行IO控制-紅綠燈項(xiàng)目-實(shí)現(xiàn)開(kāi)機(jī)起動(dòng) EASYEAINano-TB(RV1126B
    發(fā)表于 11-03 10:00

    請(qǐng)問(wèn)各位大佬,如何解決, RV1126B 使用 mpp 自帶工具 調(diào)試時(shí),內(nèi)核直接報(bào)錯(cuò)崩潰!

    請(qǐng)問(wèn)各位大佬,如何解決, RV1126B 使用 mpp 自帶工具 調(diào)試時(shí),內(nèi)核直接報(bào)錯(cuò)崩潰! 調(diào)試輸出如下:
    發(fā)表于 11-19 16:01

    EASY EAI Nano-TB(RV1126B)開(kāi)發(fā)板試用】+1、開(kāi)箱上電

    ,避免因接觸不良導(dǎo)致顯示或采集異常。 2 硬件解析:強(qiáng)勁AI核心與豐富接口 2.1 核心處理器性能 EASY EAI Nano-TB開(kāi)發(fā)板的核心基于
    發(fā)表于 11-19 21:39

    EASY EAI Nano-TB(RV1126B)開(kāi)發(fā)板試用】介紹、系統(tǒng)安裝

    ,并介紹了系統(tǒng)鏡像安裝部署的相關(guān)流程。 介紹 EASY-EAI-Nano-TB是靈眸科技研發(fā)的一款應(yīng)用于AIoT領(lǐng)域的AIOT主板。 核心板基于
    發(fā)表于 12-23 18:05

    RV1126系列選型指南:從RV1126RV1126B,一文看懂升級(jí)差異

    2025年7月,正式發(fā)布新一代AI視覺(jué)芯片RV1126B。作為其金牌方案商,EASYEAI靈眸科技同步推出搭載該芯片的AIoT核心板EAI11
    的頭像 發(fā)表于 09-04 10:50 ?4133次閱讀
    <b class='flag-5'>RV1126</b>系列選型指南:從<b class='flag-5'>RV1126</b>到<b class='flag-5'>RV1126B</b>,一文看懂升級(jí)差異

    【免費(fèi)試用】EASY EAI Nano-TB(RV1126B)開(kāi)發(fā)套件評(píng)測(cè)

    EASY-EAI-Nano-TB是靈眸科技研發(fā)的一款應(yīng)用于AIoT領(lǐng)域的AIOT主板。核心板基于RV1126B處理器設(shè)計(jì),并引入了新
    的頭像 發(fā)表于 09-23 08:09 ?947次閱讀
    【免費(fèi)試用】<b class='flag-5'>EASY</b> <b class='flag-5'>EAI</b> Nano-TB(<b class='flag-5'>RV1126B</b>)開(kāi)發(fā)套件評(píng)測(cè)

    RV1126B特性概述

    RV1126BRockchip在2025年第二季度全新推出的Arm架構(gòu)AI視覺(jué)芯片,搭載4核Cortex-A53與自研3Tops算力NPU。全面替代上一代的
    的頭像 發(fā)表于 10-09 11:22 ?1530次閱讀
    <b class='flag-5'>瑞</b><b class='flag-5'>芯</b><b class='flag-5'>微</b><b class='flag-5'>RV1126B</b>特性概述

    替代升級(jí)實(shí)錘!實(shí)測(cè)RV1126B,CPU性能吊打RV1126

    AI智能芯片迭代提速,推出了全新的Arm架構(gòu)AI視覺(jué)芯片RV1126B,是否替換RV1126,CPU性能是擠牙膏還是大突破。帶著這些核
    的頭像 發(fā)表于 12-11 17:13 ?1985次閱讀
    替代升級(jí)實(shí)錘!實(shí)測(cè)<b class='flag-5'>RV1126B</b>,CPU性能吊打<b class='flag-5'>RV1126</b>